diff options
author | Hauke Mehrtens <hauke@hauke-m.de> | 2018-01-27 14:28:46 +0100 |
---|---|---|
committer | Hauke Mehrtens <hauke@hauke-m.de> | 2018-01-27 19:54:52 +0100 |
commit | 1a8523c83530fcfc2607723e803e347dd5c50ec4 (patch) | |
tree | 2197bbab6c8be659021e16422389d2b315f494cd /toolchain/gcc/patches/7.3.0/900-bad-mips16-crt.patch | |
parent | 241e6dd3e92c4f215b8ac75379a4b5aeaeb92171 (diff) | |
download | upstream-1a8523c83530fcfc2607723e803e347dd5c50ec4.tar.gz upstream-1a8523c83530fcfc2607723e803e347dd5c50ec4.tar.bz2 upstream-1a8523c83530fcfc2607723e803e347dd5c50ec4.zip |
toolchain: gcc: update 7.x to 7.3.0
This version still generates broken code in our setup for MIPS.
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
Diffstat (limited to 'toolchain/gcc/patches/7.3.0/900-bad-mips16-crt.patch')
-rw-r--r-- | toolchain/gcc/patches/7.3.0/900-bad-mips16-crt.patch | 30 |
1 files changed, 30 insertions, 0 deletions
diff --git a/toolchain/gcc/patches/7.3.0/900-bad-mips16-crt.patch b/toolchain/gcc/patches/7.3.0/900-bad-mips16-crt.patch new file mode 100644 index 0000000000..f5cc0a74ee --- /dev/null +++ b/toolchain/gcc/patches/7.3.0/900-bad-mips16-crt.patch @@ -0,0 +1,30 @@ +commit 9dc38e48f7a6f88b7ac7bfaced91f53660204e46 +Author: Florian Fainelli <florian@openwrt.org> +Date: Fri Apr 5 12:36:06 2013 +0000 + + toolchain/gcc: .init and .fini need to pick one ISA + + The .init and .fini sections are built by concatenating code + fragments. Putting mips16 code in the middle of a mips32 code block + doesn't work. Make gcc built the magic crt stuff in no-mips16 mode. + + This is specific to 4.6-linaro but is probably portable to other gcc + flavors. Adding this to the t-libgcc-mips16 makefile fragment is a + hack not suitable for pushing upstream, but there is no mips/t-linux + or mips/t-uclibc and I am not going to touch gcc/configure for two + lines. + + Signed-off-by: Jay Carlson <nop@nop.com> + Signed-off-by: Florian Fainelli <florian@openwrt.org> + + SVN-Revision: 36200 + +--- a/libgcc/config/mips/t-mips16 ++++ b/libgcc/config/mips/t-mips16 +@@ -43,3 +43,6 @@ SYNC_CFLAGS = -mno-mips16 + + # Version these symbols if building libgcc.so. + SHLIB_MAPFILES += $(srcdir)/config/mips/libgcc-mips16.ver ++ ++CRTSTUFF_T_CFLAGS += -mno-mips16 ++CRTSTUFF_T_CFLAGS_S += -mno-mips16 |