mirror of
git://projects.qi-hardware.com/openwrt-xburst.git
synced 2024-12-27 21:15:11 +02:00
cc81d3493e
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@14554 3c298f89-4303-0410-b956-a3cf2f4a3e73
19 lines
577 B
Diff
19 lines
577 B
Diff
--- a/gcc/config/arm/arm.c
|
|
+++ b/gcc/config/arm/arm.c
|
|
@@ -15371,6 +15371,15 @@ arm_unwind_emit_set (FILE * asm_out_file
|
|
/* Move from sp to reg. */
|
|
asm_fprintf (asm_out_file, "\t.movsp %r\n", REGNO (e0));
|
|
}
|
|
+ else if (GET_CODE (e1) == PLUS
|
|
+ && GET_CODE (XEXP (e1, 0)) == REG
|
|
+ && REGNO (XEXP (e1, 0)) == SP_REGNUM
|
|
+ && GET_CODE (XEXP (e1, 1)) == CONST_INT)
|
|
+ {
|
|
+ /* Set reg to offset from sp. */
|
|
+ asm_fprintf (asm_out_file, "\t.movsp %r, #%d\n",
|
|
+ REGNO (e0), (int)INTVAL(XEXP (e1, 1)));
|
|
+ }
|
|
else
|
|
abort ();
|
|
break;
|