34e8393019
arc-2016.09 is the most recent toolchain for ARC cores and it is based on top of upstream Binutils 2.27 and GCC 6.2.1. With updated major version of GCC we copied all GCC 6.x patches for ARC as well as Bintils 2.27 patches. Note that toochain sports ARCv4 ABI and so must be used with 4.8+ Linux kernels. Even though it will build v4.4 kernel perfectly fine on attempt to run user-space apps they won't work with older kernel. That said previuosly sent RFC patches with Linux kernel update are required: [1] https://patchwork.ozlabs.org/patch/726686/ [2] https://patchwork.ozlabs.org/patch/726687/ Signed-off-by: Alexey Brodkin <Alexey.Brodkin@synopsys.com>
19 lines
778 B
Diff
19 lines
778 B
Diff
--- a/gcc/config/arm/linux-eabi.h
|
|
+++ b/gcc/config/arm/linux-eabi.h
|
|
@@ -94,10 +94,15 @@
|
|
#define MUSL_DYNAMIC_LINKER \
|
|
"/lib/ld-musl-arm" MUSL_DYNAMIC_LINKER_E "%{mfloat-abi=hard:hf}.so.1"
|
|
|
|
+/* For armv4 we pass --fix-v4bx to linker to support EABI */
|
|
+#undef TARGET_FIX_V4BX_SPEC
|
|
+#define TARGET_FIX_V4BX_SPEC " %{mcpu=arm8|mcpu=arm810|mcpu=strongarm*"\
|
|
+ "|march=armv4|mcpu=fa526|mcpu=fa626:--fix-v4bx}"
|
|
+
|
|
/* At this point, bpabi.h will have clobbered LINK_SPEC. We want to
|
|
use the GNU/Linux version, not the generic BPABI version. */
|
|
#undef LINK_SPEC
|
|
-#define LINK_SPEC EABI_LINK_SPEC \
|
|
+#define LINK_SPEC EABI_LINK_SPEC TARGET_FIX_V4BX_SPEC \
|
|
LINUX_OR_ANDROID_LD (LINUX_TARGET_LINK_SPEC, \
|
|
LINUX_TARGET_LINK_SPEC " " ANDROID_LINK_SPEC)
|
|
|