summaryrefslogtreecommitdiff
path: root/gcc/passes.def
diff options
context:
space:
mode:
authorhubicka <hubicka@138bc75d-0d04-0410-961f-82ee72b054a4>2014-06-24 03:07:13 +0000
committerhubicka <hubicka@138bc75d-0d04-0410-961f-82ee72b054a4>2014-06-24 03:07:13 +0000
commit3f1f2be06a873095fddb9ffbfc17f105f7119bf8 (patch)
treea51449e3f96f4e51de47700bc16b67cd2476d8ce /gcc/passes.def
parenta53da4fcdbdb1fdffdbaca9cd680934a80a38495 (diff)
downloadgcc-3f1f2be06a873095fddb9ffbfc17f105f7119bf8.tar.gz
* varpool.c (dump_varpool_node): Dump used_by_single_function.
* tree-pass.h (make_pass_ipa_single_use): New pass. * cgraph.h (used_by_single_function): New flag. * lto-cgraph.c (lto_output_varpool_node, input_varpool_node): Stream it. * passes.def (pass_ipa_single_use): Scedule. * ipa.c (BOTTOM): New macro. (meet): New function (propagate_single_user): New function. (ipa_single_use): New function. (pass_data_ipa_single_use): New pass. (pass_ipa_single_use): New pass. (pass_ipa_single_use::gate): New gate. (make_pass_ipa_single_use): New function. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@211925 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/passes.def')
-rw-r--r--gcc/passes.def2
1 files changed, 2 insertions, 0 deletions
diff --git a/gcc/passes.def b/gcc/passes.def
index 729be9cc90a..de4c69dde81 100644
--- a/gcc/passes.def
+++ b/gcc/passes.def
@@ -109,6 +109,8 @@ along with GCC; see the file COPYING3. If not see
NEXT_PASS (pass_ipa_inline);
NEXT_PASS (pass_ipa_pure_const);
NEXT_PASS (pass_ipa_reference);
+ /* This pass needs to be scheduled after any IP code duplication. */
+ NEXT_PASS (pass_ipa_single_use);
/* Comdat privatization come last, as direct references to comdat local
symbols are not allowed outside of the comdat group. Privatizing early
would result in missed optimizations due to this restriction. */