[Bug rtl-optimization/46315] [4.5 regression] -O2 -fno-strict-overflow causes wrong code generation

ebotcazou at gcc dot gnu.org gcc-bugzilla@gcc.gnu.org
Tue Nov 16 22:15:00 GMT 2010


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

--- Comment #9 from Eric Botcazou <ebotcazou at gcc dot gnu.org> 2010-11-16 22:13:56 UTC ---
Author: ebotcazou
Date: Tue Nov 16 22:13:52 2010
New Revision: 166827

URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=166827
Log:
    PR rtl-optimization/46315
    * rtl.h (remove_reg_equal_equiv_notes_for_regno): Declare.
    * rtlanal.c (remove_reg_equal_equiv_notes_for_regno): New function
    extracted from...
    * dce.c (delete_corresponding_reg_eq_notes): ...here.  Rename into...
    (remove_reg_equal_equiv_notes_for_defs): ...this.
    (delete_unmarked_insns): Adjust to above renaming.
    * ifcvt.c (dead_or_predicable): Remove REG_EQUAL and REG_EQUIV notes
    referring to registers set in the insns being moved, if any.

    * df-core.c (df_ref_dump): New function extracted from...
    (df_refs_chain_dump): ...here.  Call it.
    (df_regs_chain_dump): Likewise.
    * df-problems.c (df_chain_dump): Print 'e' for uses in notes.
    * df-scan.c (df_scan_start_dump): Likewise.  Fix long line.

Added:
    trunk/gcc/testsuite/gcc.dg/pr46315.c
Modified:
    trunk/gcc/ChangeLog
    trunk/gcc/dce.c
    trunk/gcc/df-core.c
    trunk/gcc/df-problems.c
    trunk/gcc/df-scan.c
    trunk/gcc/ifcvt.c
    trunk/gcc/rtl.h
    trunk/gcc/rtlanal.c
    trunk/gcc/testsuite/ChangeLog



More information about the Gcc-bugs mailing list