PR target/51337
* config/sh/sh.c (sh_secondary_reload): Add case when FPUL
register is being loaded from a pseudo in memory.
From-SVN: r181823
+2011-11-29 Oleg Endo <oleg.endo@t-online.de>
+
+ PR target/51337
+ * config/sh/sh.c (sh_secondary_reload): Add case when FPUL
+ register is being loaded from a pseudo in memory.
+
2011-11-29 DJ Delorie <dj@redhat.com>
* config.gcc (rl78-*-elf): New case.
if (rclass != GENERAL_REGS && REG_P (x)
&& TARGET_REGISTER_P (REGNO (x)))
return GENERAL_REGS;
+
+ /* If here fall back to loading FPUL register through general registers.
+ This case can happen when movsi_ie insn is picked initially to
+ load/store the FPUL register from/to another register, and then the
+ other register is allocated on the stack. */
+ if (rclass == FPUL_REGS && true_regnum (x) == -1)
+ return GENERAL_REGS;
+
return NO_REGS;
}