aboutsummaryrefslogtreecommitdiff
path: root/gcc/tree-pass.h
diff options
context:
space:
mode:
authorRichard Guenther <rguenther@suse.de>2006-01-05 13:53:54 +0000
committerRichard Biener <rguenth@gcc.gnu.org>2006-01-05 13:53:54 +0000
commit3f519b3517efb1178aeec4be56d31c065f8d953f (patch)
tree6cf1f63c9110bc738fd2520546f623d74c55ebb4 /gcc/tree-pass.h
parentdb55bccb017fdb4e23c9e1bd58ac72050974f27f (diff)
downloadgcc-3f519b3517efb1178aeec4be56d31c065f8d953f.zip
gcc-3f519b3517efb1178aeec4be56d31c065f8d953f.tar.gz
gcc-3f519b3517efb1178aeec4be56d31c065f8d953f.tar.bz2
tree-pass.h (TODO_remove_unused_locals): Define.
2006-01-05 Richard Guenther <rguenther@suse.de> Diego Novillo <dnovillo@redhat.com> * tree-pass.h (TODO_remove_unused_locals): Define. * gimple-low.c (expand_var_p, remove_useless_vars, pass_remove_useless_vars): Remove. Update all users. * tree-ssa-live.c (mark_all_vars_used_1): Handle SSA names. (remove_unused_locals): New function. * tree-flow.h (remove_unused_locals): Declare. * passes.c (execute_todo): Call remove_unused_locals if TODO_remove_unused_locals is set. * tree-into-ssa.c (pass_build_ssa): Add TODO_remove_unused_locals. * tree-ssa-dce.c (pass_dce): Likewise. * tree-outof-ssa.c (pass_del_ssa): Likewise. * gcc.dg/tree-ssa/loop-11.c: Deal with removed vars pass. * gcc.dg/tree-ssa/loop-8.c: Likewise. * gcc.dg/tree-ssa/loop-1.c: Likewise. * gcc.dg/tree-ssa/pr23294.c: Likewise. * gcc.dg/tree-ssa/pr21985.c: Likewise. * gcc.dg/tree-ssa/loop-14.c: Likewise. * gcc.dg/tree-ssa/loop-2.c: Likewise. * gcc.dg/tree-ssa/loop-3.c: Likewise. * gcc.dg/tree-ssa/loop-4.c: Likewise. * gcc.dg/tree-ssa/pr21171.c: Likewise. * gcc.dg/tree-ssa/loop-5.c: Likewise. * gcc.dg/tree-ssa/loop-10.c: Likewise. * gcc.dg/tree-ssa/loop-6.c: Likewise. * treelang/compile/extravar.tree: Likewise. * g++.dg/tree-ssa/ssa-cast-1.C: Likewise. * g++.dg/tree-ssa/pointer-reference-alias.C: Likewise. * g++.dg/tree-ssa/ssa-sra-1.C: Likewise. * g++.dg/tree-ssa/ssa-sra-2.C: Likewise. * gcc.dg/tree-ssa/20031106-6.c: Disable SRA. Co-Authored-By: Diego Novillo <dnovillo@redhat.com> From-SVN: r109379
Diffstat (limited to 'gcc/tree-pass.h')
-rw-r--r--gcc/tree-pass.h6
1 files changed, 5 insertions, 1 deletions
diff --git a/gcc/tree-pass.h b/gcc/tree-pass.h
index ca9eab4..92dad1d 100644
--- a/gcc/tree-pass.h
+++ b/gcc/tree-pass.h
@@ -200,6 +200,11 @@ struct dump_file_info
renaming are processed. */
#define TODO_update_ssa_only_virtuals (1 << 10)
+/* Some passes leave unused local variables that can be removed from
+ cfun->unexpanded_var_list. This reduces the size of dump files and
+ the memory footprint for VAR_DECLs. */
+#define TODO_remove_unused_locals (1 << 11)
+
#define TODO_update_ssa_any \
(TODO_update_ssa \
| TODO_update_ssa_no_phi \
@@ -267,7 +272,6 @@ extern struct tree_opt_pass pass_forwprop;
extern struct tree_opt_pass pass_redundant_phi;
extern struct tree_opt_pass pass_dse;
extern struct tree_opt_pass pass_nrv;
-extern struct tree_opt_pass pass_remove_useless_vars;
extern struct tree_opt_pass pass_mark_used_blocks;
extern struct tree_opt_pass pass_rename_ssa_copies;
extern struct tree_opt_pass pass_expand;