summaryrefslogtreecommitdiff
path: root/recipes/gcc/gcc-4.4.0/fix-ICE-in-arm_unwind_emit_set.diff
diff options
context:
space:
mode:
authorKhem Raj <raj.khem@gmail.com>2009-04-25 09:40:12 -0700
committerKhem Raj <raj.khem@gmail.com>2009-04-25 09:40:12 -0700
commitaa12d953b9924ccfdbb97cab9e97fb9ec18ce8a0 (patch)
tree796cc6e7c314d49879a1e9d3b190008835f9cdcf /recipes/gcc/gcc-4.4.0/fix-ICE-in-arm_unwind_emit_set.diff
parentfb4dc83ea69ef1f4d5bd62351c221887f5634668 (diff)
gcc-4.4.0: Add recipes for latest gcc release 4.4.0
* This is a preliminary port. Now all patches has been ported yet.
Diffstat (limited to 'recipes/gcc/gcc-4.4.0/fix-ICE-in-arm_unwind_emit_set.diff')
-rw-r--r--recipes/gcc/gcc-4.4.0/fix-ICE-in-arm_unwind_emit_set.diff28
1 files changed, 28 insertions, 0 deletions
diff --git a/recipes/gcc/gcc-4.4.0/fix-ICE-in-arm_unwind_emit_set.diff b/recipes/gcc/gcc-4.4.0/fix-ICE-in-arm_unwind_emit_set.diff
new file mode 100644
index 0000000000..b8a147d3d9
--- /dev/null
+++ b/recipes/gcc/gcc-4.4.0/fix-ICE-in-arm_unwind_emit_set.diff
@@ -0,0 +1,28 @@
+--- /tmp/arm.c 2008-03-17 14:24:39.590464969 +0100
++++ gcc-4.3.0/gcc/config/arm/arm.c 2008-03-17 14:12:21.614701982 +0100
+@@ -15959,6 +15959,9 @@
+ int regno;
+ int lo_mask = mask & 0xFF;
+ int pushed_words = 0;
++ rtx e0;
++ rtx e1;
++ unsigned reg;
+
+ gcc_assert (mask);
+
+@@ -16025,6 +16028,15 @@
+
+ return;
+ }
++ 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
+ {
+ if (mask & 0xFF)