diff -r 000000000000 -r f0ae157444dc patches/gcc/4.6.1/000-gcc-bug-54369.patch --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/patches/gcc/4.6.1/000-gcc-bug-54369.patch Wed Sep 19 10:35:32 2012 +0200 @@ -0,0 +1,45 @@ +Author: ebotcazou +Date: Sun Sep 2 10:37:49 2012 +New Revision: 190860 + +URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=190860 +Log: + PR rtl-optimization/54369 + * config/mips/mips.c (mips_reorg): Invoke cleanup_barriers before + calling dbr_schedule. + * config/sparc/sparc.c (sparc_reorg): Likewise. + +Modified: + branches/gcc-4_6-branch/gcc/ChangeLog + branches/gcc-4_6-branch/gcc/config/mips/mips.c + branches/gcc-4_6-branch/gcc/config/sparc/sparc.c +--- +--- gcc-4_6-branch/gcc/config/mips/mips.c 2012/09/02 10:36:54 190859 ++++ gcc-4_6-branch/gcc/config/mips/mips.c 2012/09/02 10:37:49 190860 +@@ -15083,7 +15083,10 @@ + } + + if (optimize > 0 && flag_delayed_branch) +- dbr_schedule (get_insns ()); ++ { ++ cleanup_barriers (); ++ dbr_schedule (get_insns ()); ++ } + mips_reorg_process_insns (); + if (!TARGET_MIPS16 + && TARGET_EXPLICIT_RELOCS +--- gcc-4_6-branch/gcc/config/sparc/sparc.c 2012/09/02 10:36:54 190859 ++++ gcc-4_6-branch/gcc/config/sparc/sparc.c 2012/09/02 10:37:49 190860 +@@ -9456,7 +9456,10 @@ + /* We need to have the (essentially) final form of the insn stream in order + to properly detect the various hazards. Run delay slot scheduling. */ + if (optimize > 0 && flag_delayed_branch) +- dbr_schedule (get_insns ()); ++ { ++ cleanup_barriers (); ++ dbr_schedule (get_insns ()); ++ } + + /* Now look for specific patterns in the insn stream. */ + for (insn = get_insns (); insn; insn = next) +