------- Comment #1 from kkojima at gcc dot gnu dot org  2008-07-10 01:27 -------
Created an attachment (id=15882)
 --> (http://gcc.gnu.org/bugzilla/attachment.cgi?id=15882&action=view)
A reduced test case for -O0

Before r137639, the insn in problem was

(insn 200 330 331 20 yyy.cc:181 (set (mem/c:SI (plus:SI (reg:SI 6 r6)
                (const_int 0 [0x0])) [0 D.2244+4 S8 A32])
        (reg:SI 1 r1 [261])) 175 {movsi_ie} (nil))

and now the memory address is reloaded like as

(insn 331 330 200 20 xxx.cc:181 (set (reg:SI 2 r2)
        (plus:SI (reg:SI 6 r6)
            (const_int 0 [0x0]))) 35 {*addsi3_compact} (nil))

(insn 200 331 332 20 xxx.cc:181 (set (mem/c:SI (reg:SI 2 r2) [0 D.2244+4 S8
A32])
        (reg:SI 1 r1 [261])) 175 {movsi_ie} (nil))

but SH has no add instruction whose destination and source differs.


-- 


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

Reply via email to