diff options
author | law <law@138bc75d-0d04-0410-961f-82ee72b054a4> | 2004-08-09 19:13:07 +0000 |
---|---|---|
committer | law <law@138bc75d-0d04-0410-961f-82ee72b054a4> | 2004-08-09 19:13:07 +0000 |
commit | a8046f6028a5b566796bea8409ceea78b0c9c5f2 (patch) | |
tree | 43d76704cc977318946377c4bb267eca1f611d0e /gcc/tree-flow.h | |
parent | d7ecac2ed2227fc3db9e50e13aab98bf92bd0e26 (diff) | |
download | gcc-a8046f6028a5b566796bea8409ceea78b0c9c5f2.tar.gz |
* Makefile.in (OBJC-common): Add tree-ssa-threadupdate.c
(tree-ssa-threadupdate.o): Add dependencies.
* tree-ssa-threadupdate.c: New file.
* tree-flow.h (incoming_edge_threaded): New flag in block annotation.
(rewrite_vars_out_of_ssa): Remove prototype.
(cleanup_tree_cfg): Returns a bool.
* tree.h (thread_through_all_blocks): Prototype.
* tree-outof-ssa.c (SSANORM_*): Move into here.
(remove_ssa_form): Now static.
(rewrite_vars_out_of_ssa): Kill.
* tree-ssa-live.c (register_ssa_partitions_for_vars): Kill.
* tree-ssa-live.h (SSANORM_*): Moved into tree-outof-ssa.c.
(remove_ssa_form, register_partitions_for_vars): Kill declarations.
* tree-cfg.c (cleanup_tree_cfg): Return a value indicating if
anything was changed.
* tree-phinodes.c (add_phi_arg): Get the block for the PHI
from the PHI's annotation rather than the edge associated with
the new argument.
* tree-ssa-dom.c (redirection_edges): Kill.
(redirect_edges_and_update_ssa_graph): Kill.
(tree_ssa_dominator_optimize): Do not reset forwardable flag
for blocks anymore. Do not initialize redirection_edges.
Call thread_through_all_blocks. Simplify code for cleanup
of the CFG and iterating. No longer call cleanup_tree_cfg
outside the iteration loop.
(thread_across_edge): No longer mess with forwardable blocks.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@85721 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/tree-flow.h')
-rw-r--r-- | gcc/tree-flow.h | 7 |
1 files changed, 5 insertions, 2 deletions
diff --git a/gcc/tree-flow.h b/gcc/tree-flow.h index f55943b5cdb..d470035470e 100644 --- a/gcc/tree-flow.h +++ b/gcc/tree-flow.h @@ -356,6 +356,10 @@ struct bb_ann_d GTY(()) /* Nonzero if this block contains an escape point (see is_escape_site). */ unsigned has_escape_site : 1; + /* Nonzero if one or more incoming edges to this block should be threaded + to an outgoing edge of this block. */ + unsigned incoming_edge_threaded : 1; + struct edge_prediction *predictions; }; @@ -474,7 +478,7 @@ extern void debug_loop_ir (void); extern void print_loop_ir (FILE *); extern void cleanup_dead_labels (void); extern void group_case_labels (void); -extern void cleanup_tree_cfg (void); +extern bool cleanup_tree_cfg (void); extern tree first_stmt (basic_block); extern tree last_stmt (basic_block); extern tree *last_stmt_ptr (basic_block); @@ -561,7 +565,6 @@ typedef bool (*walk_use_def_chains_fn) (tree, tree, void *); /* In tree-ssa.c */ extern void init_tree_ssa (void); -extern void rewrite_vars_out_of_ssa (bitmap); extern void dump_reaching_defs (FILE *); extern void debug_reaching_defs (void); extern void dump_tree_ssa (FILE *); |