http://gcc.gnu.org/bugzilla/show_bug.cgi?id=51125

Aldy Hernandez <aldyh at gcc dot gnu.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|UNCONFIRMED                 |NEW
   Last reconfirmed|                            |2011-11-18
                 CC|                            |aldyh at gcc dot gnu.org
     Ever Confirmed|0                           |1

--- Comment #4 from Aldy Hernandez <aldyh at gcc dot gnu.org> 2011-11-18 
21:12:01 UTC ---
Michael.

This regression was caused by the following patch.  Perhaps the reason nobody
caught it was because it came 5 hours after the transactional-memory branch was
merged, perhaps too close for everyone to have re-tested their patches.

Do you mind taking a look at this?

r181172 | matz | 2011-11-08 10:47:16 -0600 (Tue, 08 Nov 2011) | 44 lines

        * gengtype.c (write_field_root): Avoid out-of-scope access of newv.

        * tree-stdarg.c (execute_optimize_stdarg): Accept clobbers.
        * tree.h (TREE_CLOBBER_P): New macro.
        * gimple.h (gimple_clobber_p): New inline function.
        * gimplify.c (gimplify_bind_expr): Add clobbers for all variables
        that go out of scope and live in memory.
        * tree-ssa-operands.c (get_expr_operands): Transfer volatility also
        for constructors.
        * cfgexpand.c (decl_to_stack_part): New static variable.
        (add_stack_var): Allocate it, and remember mapping.
        (fini_vars_expansion): Deallocate it.
        (stack_var_conflict_p): Add early outs.
        (visit_op, visit_conflict, add_scope_conflicts_1,
        add_scope_conflicts): New static functions.
        (expand_used_vars_for_block): Don't call add_stack_var_conflict, tidy.
        (expand_used_vars): Add scope conflicts.
        (expand_gimple_stmt_1): Expand clobbers to nothing.
        (expand_debug_expr): Ditto.

Reply via email to