summaryrefslogtreecommitdiff
path: root/packages/gcc/gcc-3.4.4
diff options
context:
space:
mode:
authorJohn Bowler <jbowler@nslu2-linux.org>2005-09-09 22:38:20 +0000
committerOpenEmbedded Project <openembedded-devel@lists.openembedded.org>2005-09-09 22:38:20 +0000
commit752cfd0f5f3ef6666c8be5c63d56c082b181569b (patch)
tree4ba02e54c843e9f46bde5f15deeb519919220c4b /packages/gcc/gcc-3.4.4
parent54e9c86c965874e1843b98fd0d625a333fe17289 (diff)
gcc(libgcc_s.so.1): fix the arm interwork _call_via_rX out of line ops
The interworking symbols were being built but not exported from libgcc (i.e. they were not in the version file), added a specific version file for them and updated t-linux. Forced the cross build to always generate ARM instructions (the thumb version does not currently work), bumped PRs.
Diffstat (limited to 'packages/gcc/gcc-3.4.4')
-rw-r--r--packages/gcc/gcc-3.4.4/gcc34-thumb-interwork.patch51
1 files changed, 51 insertions, 0 deletions
diff --git a/packages/gcc/gcc-3.4.4/gcc34-thumb-interwork.patch b/packages/gcc/gcc-3.4.4/gcc34-thumb-interwork.patch
new file mode 100644
index 0000000000..ee3a25c7ef
--- /dev/null
+++ b/packages/gcc/gcc-3.4.4/gcc34-thumb-interwork.patch
@@ -0,0 +1,51 @@
+--- gcc-3.4.4/gcc/config/arm/interwork.ver.orig 2005-09-08 21:59:26.000000000 -0700
++++ gcc-3.4.4/gcc/config/arm/interwork.ver 2005-09-08 22:11:10.211617698 -0700
+@@ -0,0 +1,37 @@
++# We need to add the _call_via_rX and _interwork... calls, follow
++# the same test as in the lib1funcs.asm file (note that this is
++# evaluated by gcc -E)
++%if (defined __ARM_ARCH_4T__ || defined __ARM_ARCH_5T__ || defined __ARM_ARCH_5TE__)
++GCC_3.4.4 {
++ _call_via_r0
++ _call_via_r1
++ _call_via_r2
++ _call_via_r3
++ _call_via_r4
++ _call_via_r5
++ _call_via_r6
++ _call_via_r7
++ _call_via_r8
++ _call_via_r9
++ _call_via_sl
++ _call_via_fp
++ _call_via_ip
++ _call_via_sp
++ _call_via_lr
++ _interwork_call_via_r0
++ _interwork_call_via_r1
++ _interwork_call_via_r2
++ _interwork_call_via_r3
++ _interwork_call_via_r4
++ _interwork_call_via_r5
++ _interwork_call_via_r6
++ _interwork_call_via_r7
++ _interwork_call_via_r8
++ _interwork_call_via_r9
++ _interwork_call_via_sl
++ _interwork_call_via_fp
++ _interwork_call_via_ip
++ _interwork_call_via_sp
++ _interwork_call_via_lr
++}
++%endif
+--- gcc-3.4.4/gcc/config/arm/t-linux.orig 2005-09-08 22:31:32.448528218 -0700
++++ gcc-3.4.4/gcc/config/arm/t-linux 2005-09-08 21:59:34.651848882 -0700
+@@ -10,6 +10,8 @@
+ _call_via_rX _interwork_call_via_rX \
+ _fixsfsi _fixunssfsi
+
++SHLIB_MAPFILES += $(srcdir)/config/arm/interwork.ver
++
+ # MULTILIB_OPTIONS = mhard-float/msoft-float
+ # MULTILIB_DIRNAMES = hard-float soft-float
+