aboutsummaryrefslogtreecommitdiff
path: root/gcc/tree-flow.h
diff options
context:
space:
mode:
authorAndrew MacLeod <amacleod@redhat.com>2004-11-02 00:23:04 +0000
committerAndrew Macleod <amacleod@gcc.gnu.org>2004-11-02 00:23:04 +0000
commitedfaf675109ca666d7ddbd901c82c18383385255 (patch)
treeb53d70edc3071cf94765fb9657ab1326ec36c283 /gcc/tree-flow.h
parent8bf639fa5e1887d9313c9a251cfe550033708bef (diff)
downloadgcc-edfaf675109ca666d7ddbd901c82c18383385255.zip
gcc-edfaf675109ca666d7ddbd901c82c18383385255.tar.gz
gcc-edfaf675109ca666d7ddbd901c82c18383385255.tar.bz2
re PR tree-optimization/16447 (out of ssa generates bloated code)
2004-11-01 Andrew MacLeod <amacleod@redhat.com> PR tree-optimization/16447 * tree-cfg.c (bsi_commit_one_edge_insert): Rename from bsi_commit_edge_inserts_1, and make funtion external. Return new block. (bsi_commit_edge_inserts): Use renamed bsi_commit_one_edge_insert. * tree-optimize.c (pass_cleanup_cfg_post_optimizing): Enable listing. * tree-flow.h (bsi_commit_one_edge_insert): Extern decl. * tree-outof-ssa.c (rewrite_trees): Don't commit edges here. (same_stmt_list_p): New. Return TRUE if edge is to be forwarded. (identical_copies_p): New. Return true is two copies are the same. (identical_stmt_lists_p): New. Return true if stmt lists are the same. (analyze_edges_for_bb): New. Determine how best to insert edge stmts for a basic block. (perform_edge_inserts): New. Determine what to do with all stmts that have been inserted on edges. (remove_ssa_form): Analyze and commit edges from here. From-SVN: r89970
Diffstat (limited to 'gcc/tree-flow.h')
-rw-r--r--gcc/tree-flow.h1
1 files changed, 1 insertions, 0 deletions
diff --git a/gcc/tree-flow.h b/gcc/tree-flow.h
index 82ebd6d..9e77fe2 100644
--- a/gcc/tree-flow.h
+++ b/gcc/tree-flow.h
@@ -479,6 +479,7 @@ extern basic_block label_to_block (tree);
extern void tree_optimize_tail_calls (bool, enum tree_dump_index);
extern void bsi_insert_on_edge (edge, tree);
extern basic_block bsi_insert_on_edge_immediate (edge, tree);
+extern void bsi_commit_one_edge_insert (edge e, basic_block *);
extern void bsi_commit_edge_inserts (int *);
extern void notice_special_calls (tree);
extern void clear_special_calls (void);