------- 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