diff options
author | Richard Henderson <rth@redhat.com> | 2004-07-21 19:48:27 -0700 |
---|---|---|
committer | Richard Henderson <rth@gcc.gnu.org> | 2004-07-21 19:48:27 -0700 |
commit | 727a31fab813e31263cc0ee9f56940ee6d95782f (patch) | |
tree | b73bc536f4dc7bf38bca669bed0165ada4082844 /gcc/cfgexpand.c | |
parent | eecbcf542827192523d9575520b7abdce5d946a9 (diff) | |
download | gcc-727a31fab813e31263cc0ee9f56940ee6d95782f.zip gcc-727a31fab813e31263cc0ee9f56940ee6d95782f.tar.gz gcc-727a31fab813e31263cc0ee9f56940ee6d95782f.tar.bz2 |
gimple-low.c (expand_var_p): Don't look at TREE_ADDRESSABLE...
* gimple-low.c (expand_var_p): Don't look at TREE_ADDRESSABLE,
TREE_THIS_VOLATILE, may_aliases, or optimization level.
(remove_useless_vars): Dump debugging info.
(expand_used_vars): Move ...
* cfgexpand.c (expand_used_vars): ... here. Make static.
* tree-flow-inline.h (set_is_used): New.
(set_default_def): Use get_var_ann.
* tree-flow.h: Update decls.
* tree-ssa-live.c (mark_all_vars_used_1, mark_all_vars_used): New.
(create_ssa_var_map): Use it.
* tree-ssa.c (set_is_used): Remove.
From-SVN: r85034
Diffstat (limited to 'gcc/cfgexpand.c')
-rw-r--r-- | gcc/cfgexpand.c | 21 |
1 files changed, 17 insertions, 4 deletions
diff --git a/gcc/cfgexpand.c b/gcc/cfgexpand.c index f4fe860..30004f2 100644 --- a/gcc/cfgexpand.c +++ b/gcc/cfgexpand.c @@ -37,6 +37,22 @@ Boston, MA 02111-1307, USA. */ #include "flags.h" +/* Expand variables in the unexpanded_var_list. */ + +static void +expand_used_vars (void) +{ + tree cell; + + cfun->unexpanded_var_list = nreverse (cfun->unexpanded_var_list); + + for (cell = cfun->unexpanded_var_list; cell; cell = TREE_CHAIN (cell)) + expand_var (TREE_VALUE (cell)); + + cfun->unexpanded_var_list = NULL_TREE; +} + + /* A subroutine of expand_gimple_basic_block. Expand one COND_EXPR. Returns a new basic block if we've terminated the current basic block and created a new one. */ @@ -420,10 +436,7 @@ tree_expand_cfg (void) /* Prepare the rtl middle end to start recording block changes. */ reset_block_changes (); - /* Expand the variables recorded during gimple lowering. This must - occur before the call to expand_function_start to ensure that - all used variables are expanded before we expand anything on the - PENDING_SIZES list. */ + /* Expand the variables recorded during gimple lowering. */ expand_used_vars (); /* Set up parameters and prepare for return, for the function. */ |