------- Comment #4 from kkojima at gcc dot gnu dot org  2009-08-10 23:15 -------
GDB backtrace shows a target problem.  I'm testing the patch below.

        * config/sh/sh.md (reload_outdf__RnFRm+4): Fix thinko.

--- ORIG/trunk/gcc/config/sh/sh.md      2009-07-06 23:27:44.000000000 +0900
+++ trunk/gcc/config/sh/sh.md   2009-08-11 07:54:41.000000000 +0900
@@ -6065,7 +6065,7 @@ label:
           /* If we have modified the stack pointer, the value that we have
             read with post-increment might be modified by an interrupt,
             so write it back.  */
-          if (REGNO (addr) == STACK_POINTER_REGNUM)
+          if (REGNO (XEXP (addr, 0)) == STACK_POINTER_REGNUM)
            emit_insn (gen_push_e (reg0));
           else
            emit_insn (gen_addsi3 (XEXP (operands[1], 0), XEXP (operands[1],
0), GEN_INT (-4)));


-- 

kkojima at gcc dot gnu dot org changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |kkojima at gcc dot gnu dot
                   |                            |org
             Status|UNCONFIRMED                 |NEW
          Component|middle-end                  |target
     Ever Confirmed|0                           |1
           Priority|P3                          |P4
   Last reconfirmed|0000-00-00 00:00:00         |2009-08-10 23:15:48
               date|                            |


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

Reply via email to