summaryrefslogtreecommitdiff
path: root/recipes/gcc/gcc-svn/arm-thumb.patch
diff options
context:
space:
mode:
Diffstat (limited to 'recipes/gcc/gcc-svn/arm-thumb.patch')
-rw-r--r--recipes/gcc/gcc-svn/arm-thumb.patch43
1 files changed, 43 insertions, 0 deletions
diff --git a/recipes/gcc/gcc-svn/arm-thumb.patch b/recipes/gcc/gcc-svn/arm-thumb.patch
new file mode 100644
index 0000000000..7b0b8b2ddc
--- /dev/null
+++ b/recipes/gcc/gcc-svn/arm-thumb.patch
@@ -0,0 +1,43 @@
+
+#
+# Patch managed by http://www.holgerschurig.de/patcher.html
+#
+
+Index: gcc-4.3.1/gcc/config/arm/lib1funcs.asm
+===================================================================
+--- gcc-4.3.1.orig/gcc/config/arm/lib1funcs.asm 2007-05-30 12:04:09.000000000 -0700
++++ gcc-4.3.1/gcc/config/arm/lib1funcs.asm 2008-08-28 21:51:17.000000000 -0700
+@@ -1225,11 +1225,12 @@
+ code here switches to the correct mode before executing the function. */
+
+ .text
+- .align 0
++ .align 1
+ .force_thumb
+
+ .macro call_via register
+ THUMB_FUNC_START _call_via_\register
++ .hidden SYM (_call_via_\register)
+
+ bx \register
+ nop
+@@ -1330,6 +1331,7 @@
+ .code 16
+
+ THUMB_FUNC_START _interwork_call_via_\register
++ .hidden SYM (_interwork_call_via_\register)
+
+ bx pc
+ nop
+Index: gcc-4.3.1/gcc/config/arm/t-linux
+===================================================================
+--- gcc-4.3.1.orig/gcc/config/arm/t-linux 2008-08-28 21:25:24.000000000 -0700
++++ gcc-4.3.1/gcc/config/arm/t-linux 2008-08-28 21:51:17.000000000 -0700
+@@ -6,6 +6,7 @@
+ LIB1ASMFUNCS = _udivsi3 _divsi3 _umodsi3 _modsi3 _dvmd_lnx \
+ _negdf2 _addsubdf3 _muldivdf3 _cmpdf2 _unorddf2 _fixdfsi _fixunsdfsi \
+ _truncdfsf2 _negsf2 _addsubsf3 _muldivsf3 _cmpsf2 _unordsf2 \
++ _call_via_rX \
+ _fixsfsi _fixunssfsi _floatdidf _floatdisf _floatundisf _floatundidf
+
+ # MULTILIB_OPTIONS = mhard-float/msoft-float