re PR rtl-optimization/46315 (-O2 -fno-strict-overflow causes wrong code generation)
authorEric Botcazou <ebotcazou@adacore.com>
Tue, 16 Nov 2010 22:13:52 +0000 (22:13 +0000)
committerEric Botcazou <ebotcazou@gcc.gnu.org>
Tue, 16 Nov 2010 22:13:52 +0000 (22:13 +0000)
commit885c9b5d3a53c531fca622b4a3b0ef03df92daed
treed3ce62c6785fad984002bec2dbfc693e299f8950
parent2b12962772d3b0e85d860609f32bfb28515d5ba9
re PR rtl-optimization/46315 (-O2 -fno-strict-overflow causes wrong code generation)

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.

From-SVN: r166827
gcc/ChangeLog
gcc/dce.c
gcc/df-core.c
gcc/df-problems.c
gcc/df-scan.c
gcc/ifcvt.c
gcc/rtl.h
gcc/rtlanal.c
gcc/testsuite/ChangeLog
gcc/testsuite/gcc.dg/pr46315.c [new file with mode: 0644]