Commit 2ce59df7 by Alexandre Oliva Committed by Alexandre Oliva

tree-ssa-live.c (remove_unused_scope_block_p): Keep variables that have value exprs.

* tree-ssa-live.c (remove_unused_scope_block_p): Keep variables
that have value exprs.

From-SVN: r148161
parent 78bd9046
2009-06-04 Alexandre Oliva <aoliva@redhat.com>
* tree-ssa-live.c (remove_unused_scope_block_p): Keep variables
that have value exprs.
2009-06-04 Alexandre Oliva <aoliva@redhat.com>
* dwarf2asm.c (dw2_force_const_mem): Defer creation of
declarations for constants until...
(dw2_output_indirect_constant_1): ... this point.
......
......@@ -435,6 +435,17 @@ remove_unused_scope_block_p (tree scope)
will be output to file. */
if (TREE_CODE (*t) == FUNCTION_DECL)
unused = false;
/* If a decl has a value expr, we need to instantiate it
regardless of debug info generation, to avoid codegen
differences in memory overlap tests. update_equiv_regs() may
indirectly call validate_equiv_mem() to test whether a
SET_DEST overlaps with others, and if the value expr changes
by virtual register instantiation, we may get end up with
different results. */
else if (TREE_CODE (*t) == VAR_DECL && DECL_HAS_VALUE_EXPR_P (*t))
unused = false;
/* Remove everything we don't generate debug info for. */
else if (DECL_IGNORED_P (*t))
{
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment