From a32bf38770a694d42d2fb763a3e54df3136ad09d Mon Sep 17 00:00:00 2001 From: kaloz Date: Wed, 16 Feb 2011 15:26:08 +0000 Subject: [toolchain/gcc/4.3.5]: additional avr32 fixes git-svn-id: svn://svn.openwrt.org/openwrt/trunk@25556 3c298f89-4303-0410-b956-a3cf2f4a3e73 --- .../4.3.5/948-avr32_fix_reorg_opt_bug11763.patch | 32 ++++++++++++++++++++++ 1 file changed, 32 insertions(+) create mode 100644 toolchain/gcc/patches/4.3.5/948-avr32_fix_reorg_opt_bug11763.patch (limited to 'toolchain/gcc/patches/4.3.5/948-avr32_fix_reorg_opt_bug11763.patch') diff --git a/toolchain/gcc/patches/4.3.5/948-avr32_fix_reorg_opt_bug11763.patch b/toolchain/gcc/patches/4.3.5/948-avr32_fix_reorg_opt_bug11763.patch new file mode 100644 index 000000000..661664004 --- /dev/null +++ b/toolchain/gcc/patches/4.3.5/948-avr32_fix_reorg_opt_bug11763.patch @@ -0,0 +1,32 @@ +--- a/gcc/config/avr32/avr32.c ++++ b/gcc/config/avr32/avr32.c +@@ -6501,12 +6501,23 @@ avr32_reorg_optimization (void) + continue; + + set = single_set (scan); +- if (set && rtx_equal_p (src_reg, SET_DEST (set))) +- { +- link = scan; +- break; +- } +- ++ // Fix for bug #11763 : the following if condition ++ // has been modified and else part is included to ++ // set the link to NULL_RTX. ++ // if (set && rtx_equal_p (src_reg, SET_DEST (set))) ++ if (set && (REGNO(src_reg) == REGNO(SET_DEST(set)))) ++ { ++ if (rtx_equal_p (src_reg, SET_DEST (set))) ++ { ++ link = scan; ++ break; ++ } ++ else ++ { ++ link = NULL_RTX; ++ break; ++ } ++ } + } + + -- cgit v1.2.3