--- Comment #5 from kkojima at gcc dot gnu dot org 2009-05-30 22:56 ---
*** Bug 40301 has been marked as a duplicate of this bug. ***
--
kkojima at gcc dot gnu dot org changed:
What|Removed |Added
---
--- Comment #4 from christian dot bruel at st dot com 2007-02-16 07:42
---
looks like a similar analysis for a bigger case was proposed in
http://gcc.gnu.org/ml/gcc-patches/2006-01/msg01395.html
--
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=30807
--- Comment #3 from christian dot bruel at st dot com 2007-02-16 07:04
---
Created an attachment (id=13053)
--> (http://gcc.gnu.org/bugzilla/attachment.cgi?id=13053&action=view)
Add testcase.
compile with sh-superh-elf-gcc (3.4.3) -O2 sh_postreload_bug.c -S -da
at line 28 of sh_postre
--- Comment #2 from christian dot bruel at st dot com 2007-02-15 15:55
---
Created an attachment (id=13052)
--> (http://gcc.gnu.org/bugzilla/attachment.cgi?id=13052&action=view)
Proposed fix for postreload combine
the following patch fixes the problem in the sh 3.4.3 compiler.
Since
--- Comment #1 from christian dot bruel at st dot com 2007-02-15 15:37
---
The bug might be clearer to explain like this
we have
16: (set reg:r1) (const_int 188)
17: (set reg:r1) (plus (reg:r1 reg:r2)
18: (set reg:r1) (mem (plus (reg:r1) (const_int 4))
is transformed into
16: (set reg