summaryrefslogtreecommitdiff
path: root/packages/gcc/gcc-3.4.4/gcc34-thumb-interwork.patch
blob: ee3a25c7ef97d02d910408b13be6754b133eb579 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
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