diff options
Diffstat (limited to 'meta/recipes-devtools/gcc/gcc-4.9/0033-gcc-armv4-pass-fix-v4bx-to-linker-to-support-EABI.patch')
-rw-r--r-- | meta/recipes-devtools/gcc/gcc-4.9/0033-gcc-armv4-pass-fix-v4bx-to-linker-to-support-EABI.patch | 40 |
1 files changed, 40 insertions, 0 deletions
diff --git a/meta/recipes-devtools/gcc/gcc-4.9/0033-gcc-armv4-pass-fix-v4bx-to-linker-to-support-EABI.patch b/meta/recipes-devtools/gcc/gcc-4.9/0033-gcc-armv4-pass-fix-v4bx-to-linker-to-support-EABI.patch new file mode 100644 index 0000000000..b236c37a52 --- /dev/null +++ b/meta/recipes-devtools/gcc/gcc-4.9/0033-gcc-armv4-pass-fix-v4bx-to-linker-to-support-EABI.patch | |||
@@ -0,0 +1,40 @@ | |||
1 | From 97e4591c20310425e7aca0e6712a8d9480e7744c Mon Sep 17 00:00:00 2001 | ||
2 | From: Khem Raj <raj.khem@gmail.com> | ||
3 | Date: Fri, 29 Mar 2013 09:30:32 +0400 | ||
4 | Subject: [PATCH 33/35] gcc: armv4: pass fix-v4bx to linker to support EABI. | ||
5 | |||
6 | The LINK_SPEC for linux gets overwritten by linux-eabi.h which | ||
7 | means the value of TARGET_FIX_V4BX_SPEC gets lost and as a result | ||
8 | the option is not passed to linker when chosing march=armv4 | ||
9 | This patch redefines this in linux-eabi.h and reinserts it | ||
10 | for eabi defaulting toolchains. | ||
11 | |||
12 | We might want to send it upstream. | ||
13 | |||
14 | Signed-off-by: Khem Raj <raj.khem@gmail.com> | ||
15 | |||
16 | Upstream-Status: Pending | ||
17 | --- | ||
18 | gcc/config/arm/linux-eabi.h | 6 +++++- | ||
19 | 1 file changed, 5 insertions(+), 1 deletion(-) | ||
20 | |||
21 | Index: gcc-4.9-20140316/gcc/config/arm/linux-eabi.h | ||
22 | =================================================================== | ||
23 | --- gcc-4.9-20140316.orig/gcc/config/arm/linux-eabi.h | ||
24 | +++ gcc-4.9-20140316/gcc/config/arm/linux-eabi.h | ||
25 | @@ -77,10 +77,14 @@ | ||
26 | %{mfloat-abi=soft*:" GLIBC_DYNAMIC_LINKER_SOFT_FLOAT "} \ | ||
27 | %{!mfloat-abi=*:" GLIBC_DYNAMIC_LINKER_DEFAULT "}" | ||
28 | |||
29 | +/* For armv4 we pass --fix-v4bx to linker to support EABI */ | ||
30 | +#undef TARGET_FIX_V4BX_SPEC | ||
31 | +#define TARGET_FIX_V4BX_SPEC "%{mcpu=arm8|mcpu=arm810|mcpu=strongarm*|march=armv4: --fix-v4bx}" | ||
32 | + | ||
33 | /* At this point, bpabi.h will have clobbered LINK_SPEC. We want to | ||
34 | use the GNU/Linux version, not the generic BPABI version. */ | ||
35 | #undef LINK_SPEC | ||
36 | -#define LINK_SPEC EABI_LINK_SPEC \ | ||
37 | +#define LINK_SPEC TARGET_FIX_V4BX_SPEC EABI_LINK_SPEC \ | ||
38 | LINUX_OR_ANDROID_LD (LINUX_TARGET_LINK_SPEC, \ | ||
39 | LINUX_TARGET_LINK_SPEC " " ANDROID_LINK_SPEC) | ||
40 | |||