summaryrefslogtreecommitdiff
path: root/gcc/tree-ssa-propagate.h
diff options
context:
space:
mode:
authoramacleod <amacleod@138bc75d-0d04-0410-961f-82ee72b054a4>2013-10-02 15:29:35 +0000
committeramacleod <amacleod@138bc75d-0d04-0410-961f-82ee72b054a4>2013-10-02 15:29:35 +0000
commit0f4161b1bbf72b9dc7be8c5158b0b64c2de98c9f (patch)
tree5c2214fabbf4c67fc675ef1f8b0c28a4e7685280 /gcc/tree-ssa-propagate.h
parent45ae37cf28ca90f34353a6d9fd0eec06e1ae1e4b (diff)
downloadgcc-0f4161b1bbf72b9dc7be8c5158b0b64c2de98c9f.tar.gz
2013-10-02 Andrew MacLeod <amacleod@redhat.com>
* tree-flow.h: Remove some prototypes. * gimple-fold.h: Add prototypes from gimple.h and tree-flow.h. * tree-ssa-propagate.h: Relocate prototypes from tree-flow.h. * tree-ssa-copy.c (may_propagate*, propagate_value, replace_exp, propagate_tree_value*): Move from here to... * tree-ssa-propagate.c (may_propagate*, propagate_value, replace_exp, propagate_tree_value*): Relocate here. * tree-ssa-propagate.h: Relocate prototypes from tree-flow.h. * gimple.h: Include gimple-fold.h, move prototypes into gimple-fold.h. * gimple-fold.c: Remove gimple-fold.h from include list. * tree-vrp.c: Remove gimple-fold.h from include list. * tree-ssa-sccvn.c: Remove gimple-fold.h from include list. * tree-ssa-ccp.c: Remove gimple-fold.h from include list. * tree-scalar-evolution.c: Add tree-ssa-propagate.h to include list. * tree-ssa-pre.c: Add tree-ssa-propagate.h to include list. * sese.c: Add tree-ssa-propagate.h to include list. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@203118 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/tree-ssa-propagate.h')
-rw-r--r--gcc/tree-ssa-propagate.h23
1 files changed, 15 insertions, 8 deletions
diff --git a/gcc/tree-ssa-propagate.h b/gcc/tree-ssa-propagate.h
index cd6f0254b4a..1b8bf9042e5 100644
--- a/gcc/tree-ssa-propagate.h
+++ b/gcc/tree-ssa-propagate.h
@@ -68,13 +68,20 @@ typedef bool (*ssa_prop_fold_stmt_fn) (gimple_stmt_iterator *gsi);
typedef tree (*ssa_prop_get_value_fn) (tree);
-/* In tree-ssa-propagate.c */
-void ssa_propagate (ssa_prop_visit_stmt_fn, ssa_prop_visit_phi_fn);
-bool valid_gimple_rhs_p (tree);
-void move_ssa_defining_stmt_for_defs (gimple, gimple);
-bool update_gimple_call (gimple_stmt_iterator *, tree, int, ...);
-bool update_call_from_tree (gimple_stmt_iterator *, tree);
-bool stmt_makes_single_store (gimple);
-bool substitute_and_fold (ssa_prop_get_value_fn, ssa_prop_fold_stmt_fn, bool);
+extern bool valid_gimple_rhs_p (tree);
+extern void move_ssa_defining_stmt_for_defs (gimple, gimple);
+extern bool update_gimple_call (gimple_stmt_iterator *, tree, int, ...);
+extern bool update_call_from_tree (gimple_stmt_iterator *, tree);
+extern void ssa_propagate (ssa_prop_visit_stmt_fn, ssa_prop_visit_phi_fn);
+extern bool stmt_makes_single_store (gimple);
+extern bool substitute_and_fold (ssa_prop_get_value_fn, ssa_prop_fold_stmt_fn,
+ bool);
+extern bool may_propagate_copy (tree, tree);
+extern bool may_propagate_copy_into_stmt (gimple, tree);
+extern bool may_propagate_copy_into_asm (tree);
+extern void propagate_value (use_operand_p, tree);
+extern void replace_exp (use_operand_p, tree);
+extern void propagate_tree_value (tree *, tree);
+extern void propagate_tree_value_into_stmt (gimple_stmt_iterator *, tree);
#endif /* _TREE_SSA_PROPAGATE_H */