diff options
author | matz <matz@138bc75d-0d04-0410-961f-82ee72b054a4> | 2012-05-29 14:41:53 +0000 |
---|---|---|
committer | matz <matz@138bc75d-0d04-0410-961f-82ee72b054a4> | 2012-05-29 14:41:53 +0000 |
commit | 7843e4bcb63ff8966e40b3498c00cb4a4c5783e1 (patch) | |
tree | 5534a3c29342dd48c087ead51be0face86e90762 /gcc/tree-ssa-live.c | |
parent | 87c952b895ebe6126c0c908e52d15dac3230678e (diff) | |
download | gcc-7843e4bcb63ff8966e40b3498c00cb4a4c5783e1.tar.gz |
* expr.c (expand_expr_real_1 <normal_inner_ref>): Don't allocate
a kept temp.
(expand_expr_real_1 <COMPOUND_LITERAL_EXPR>): Make unreachable.
* gimple-fold.c (canonicalize_constructor_val): Canonicalize
COMPOUND_LITERAL_EXPR.
* function.c (expand_function_start): Don't call expand_decl,
instead assert that we have RTL assigned.
* tree-ssa-live.c (remove_unused_locals): Clear
nonlocal_goto_save_area if its backing variable is removed.
* stmt.c (expand_asm_operands): Remove handling of non-lvalues
as mem inputs.
(expand_decl): Assert that this does nothing.
* calls.c (expand_call): Don't call mark_temp_addr_taken.
* c-tree.h (c_expand_decl): Remove prototype.
c-family/
* c-common.h (c_expand_decl): Remove prototype.
ada/
* gcc-interface/utils.c (create_var_decl_1): Don't call expand_decl.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@187962 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/tree-ssa-live.c')
-rw-r--r-- | gcc/tree-ssa-live.c | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/gcc/tree-ssa-live.c b/gcc/tree-ssa-live.c index dfbf110a015..252020624b4 100644 --- a/gcc/tree-ssa-live.c +++ b/gcc/tree-ssa-live.c @@ -835,6 +835,9 @@ remove_unused_locals (void) { if (var_ann (var)) remove_referenced_var (var); + if (cfun->nonlocal_goto_save_area + && TREE_OPERAND (cfun->nonlocal_goto_save_area, 0) == var) + cfun->nonlocal_goto_save_area = NULL; continue; } } |