Commit graph

161 commits

Author SHA1 Message Date
Felix Fietkau
b050f87d13 gcc: prevent the use of LDRD/STRD on ARMv5TE
These instructions are for 64-bit load/store. On ARMv5TE, the CPU
requires addresses to be aligned to 64-bit. When misaligned, behavior is
undefined (effectively either loads the same word twice on LDRD, or
corrupts surrounding memory on STRD).

On ARMv6 and newer, unaligned access is safe.

Removing these instructions for ARMv5TE is necessary, because GCC
ignores alignment information in pointers and does unsafe optimizations
that have shown up as bugs in various places.

Signed-off-by: Felix Fietkau <nbd@openwrt.org>

SVN-Revision: 39638
2014-02-19 19:20:10 +00:00
Imre Kaloz
5e906232b0 upgrade Linaro GCC 4.8 to 2014.01
Signed-off-by: Imre Kaloz <kaloz@openwrt.org>

SVN-Revision: 39501
2014-02-06 10:28:45 +00:00
Imre Kaloz
b1f4f27fc4 upgrade Linaro GCC 4.8 to 4.8-2013.11
Signed-off-by: Imre Kaloz <kaloz@openwrt.org>

SVN-Revision: 38922
2013-11-26 18:42:32 +00:00
Felix Fietkau
5b1e1eff73 gcc 4.8-linaro: backport an upstream fix to fix asm goto miscompilation
Signed-off-by: Felix Fietkau <nbd@openwrt.org>

SVN-Revision: 38435
2013-10-17 11:57:44 +00:00
Imre Kaloz
6d13c47f57 upgrade Linaro gcc 4.8 to 4.8-2013.08
Signed-off-by: Imre Kaloz <kaloz@openwrt.org>

SVN-Revision: 37945
2013-09-11 13:19:43 +00:00
Florian Fainelli
cb6e729be7 toolchain: define MUSL dynamic linker for SPARC
SPARC builds are currently broken because we do not define the MUSL
dynamic linker name, fix that.

Signed-off-by: Florian Fainelli <florian@openwrt.org>

SVN-Revision: 37938
2013-09-11 12:08:27 +00:00
Felix Fietkau
258b2cf7aa toolchain/gcc: remove 4.6.3, it is unused and unmaintained
Signed-off-by: Felix Fietkau <nbd@openwrt.org>

SVN-Revision: 37924
2013-09-10 10:30:41 +00:00
Felix Fietkau
5f2e61addf gcc: merge a bugfix for a MIPS specific internal compiler error
Signed-off-by: Felix Fietkau <nbd@openwrt.org>

SVN-Revision: 37621
2013-07-31 08:54:56 +00:00
Felix Fietkau
e00aaea5df gcc: add a bugfix for an internal compiler error on mips64
Signed-off-by: Felix Fietkau <nbd@openwrt.org>

SVN-Revision: 37601
2013-07-29 10:11:07 +00:00
Felix Fietkau
98df29f9d7 gcc: add a patch to get rid of useless java class sections
Signed-off-by: Felix Fietkau <nbd@openwrt.org>

SVN-Revision: 37095
2013-06-30 07:54:47 +00:00
Felix Fietkau
2befaa2f0d gcc: fix arm libgcc issues with 4.8.0 and 4.8-linaro
Signed-off-by: Felix Fietkau <nbd@openwrt.org>

SVN-Revision: 36864
2013-06-05 23:37:12 +00:00
Felix Fietkau
7d3fca89c0 gcc: remove version 4.7
Signed-off-by: Felix Fietkau <nbd@openwrt.org>

SVN-Revision: 36694
2013-05-23 10:22:09 +00:00
Felix Fietkau
ba29b8f04f gcc: port missing patches from 4.6 to 4.8
Signed-off-by: Felix Fietkau <nbd@openwrt.org>

SVN-Revision: 36693
2013-05-23 10:21:59 +00:00
Felix Fietkau
6b4f3344df toolchain/gcc: add support for 4.8-linaro
Signed-off-by: Felix Fietkau <nbd@openwrt.org>

SVN-Revision: 36545
2013-05-04 13:37:41 +00:00
Felix Fietkau
f8d8aadb42 toolchain/gcc: forward port missing patches to gcc 4.8.0
Signed-off-by: Felix Fietkau <nbd@openwrt.org>

SVN-Revision: 36544
2013-05-04 13:37:37 +00:00
Jo-Philipp Wich
a98cdd9892 toolchain: add missing patch to gcc v4.8.0
SVN-Revision: 36511
2013-05-02 11:25:13 +00:00
Jonas Gorski
73b7c776e9 toolchain: gcc: backport fixes for gcc bug 54295
Fix "Widening multiply-accumulate operation uses wrong value extension"
for 4.7, 4.7-linaro and 4.6-linaro, which backported the broken code to 4.6.
Vanilla 4.6 is unaffected.

Fixes #13420.

Signed-off-by: Jonas Gorski <jogo@openwrt.org>

SVN-Revision: 36486
2013-04-29 15:40:21 +00:00
Florian Fainelli
9dc38e48f7 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
2013-04-05 12:36:06 +00:00
Florian Fainelli
a54e305a8b toolchain/gcc: add support for GCC 4.8.0
Signed-off-by: Florian Fainelli <florian@openwrt.org>

SVN-Revision: 36155
2013-04-02 16:00:35 +00:00
Imre Kaloz
2a390f5706 drop 4.5 support
SVN-Revision: 36149
2013-04-01 15:46:41 +00:00
Imre Kaloz
9231162c7e llvm is marked broken for two and a half year now, nuke it
SVN-Revision: 36145
2013-04-01 15:08:38 +00:00
Florian Fainelli
2935823a42 toolchain/gcc: refresh patches
Signed-off-by: Florian Fainelli <florian@openwrt.org>

SVN-Revision: 35808
2013-02-26 16:39:54 +00:00
Luka Perkov
098bd91f5e gcc: don't build documentation
This closes #13039.

Signed-off-by: Luka Perkov <luka@openwrt.org>

SVN-Revision: 35807
2013-02-26 16:16:33 +00:00
Luka Perkov
a85019072f gcc: remove support for 4.6.2
There are no good reasons for keeping this version around when 4.6.3 and
4.6-linaro are there.

Signed-off-by: Luka Perkov <luka@openwrt.org>

SVN-Revision: 35805
2013-02-26 14:31:24 +00:00
Florian Fainelli
fe766227a2 toolchain/gcc: fix the mips64 linker path to be more musl conforming
musl libc does not use /lib32 or /lib64 directories, just /lib

Signed-off-by: Florian Fainelli <florian@openwrt.org>

SVN-Revision: 35406
2013-01-29 23:05:46 +00:00
Florian Fainelli
5ae9a4f830 gcc: fix build for MIPS64 targets introduced by musl patch
Signed-off-by: Florian Fainelli <florian@openwrt.org>

SVN-Revision: 35046
2013-01-07 18:16:40 +00:00
Florian Fainelli
4801705d83 remove support for ubicom32
Signed-off-by: Florian Fainelli <florian@openwrt.org>

SVN-Revision: 34432
2012-11-30 10:53:55 +00:00
Florian Fainelli
bf9af32738 gcc/4.5-linaro: backport musl patch
Signed-off-by: Florian Fainelli <florian@openwrt.org>

SVN-Revision: 34425
2012-11-29 21:42:58 +00:00
Florian Fainelli
6b63716262 add preliminary support for musl
Musl is an alternative C-library, see http://www.musl-libc.org for more infos.

Signed-off-by: Florian Fainelli <florian@openwrt.org>

SVN-Revision: 34314
2012-11-23 20:02:29 +00:00
Florian Fainelli
bca3953ee5 gcc: remove support for 4.7.0
There are no good reasons for keeping this version around when 4.7.2 and
4.7-linaro are there.

Signed-off-by: Florian Fainelli <florian@openwrt.org>

SVN-Revision: 34296
2012-11-21 20:27:15 +00:00
Florian Fainelli
5013a897c5 gcc: add GCC 4.7.2
SVN-Revision: 33763
2012-10-14 13:35:19 +00:00
Florian Fainelli
ba446684e0 gcc: add GCC 4.6.3
SVN-Revision: 33762
2012-10-14 13:35:13 +00:00
Florian Fainelli
42c4a16172 gcc: update 4.7-linaro to 4.7-2012.10
SVN-Revision: 33759
2012-10-13 19:19:41 +00:00
Florian Fainelli
5d223006f9 gcc: update gcc-4.6-linaro to 4.6-2012.10
SVN-Revision: 33758
2012-10-13 19:19:38 +00:00
Florian Fainelli
a72cadbbb4 gcc: backport struct siginfo -> siginfo_t renaming
Otherwise newer eglibc toolchain will simply fail to build.

SVN-Revision: 33736
2012-10-12 14:42:25 +00:00
Florian Fainelli
95f1b6d415 gcc: add upstream fixes for GCC bug 54494
See: http://gcc.gnu.org/bugzilla/show_bug.cgi?id=54494 for more infos.

SVN-Revision: 33329
2012-09-07 10:31:58 +00:00
Florian Fainelli
11f1712b49 gcc: add upstream fixes for GCC bug 54369
See http://gcc.gnu.org/bugzilla/show_bug.cgi?id=54369 for more infos.

SVN-Revision: 33328
2012-09-07 10:31:54 +00:00
Imre Kaloz
880de62f91 switch to 2.6.38
SVN-Revision: 31546
2012-05-01 07:00:17 +00:00
Jo-Philipp Wich
e0c97d69c6 gcc: fix getenv() patches for 4.4.7 and 4.5-linaro
SVN-Revision: 31489
2012-04-27 12:05:34 +00:00
Mirko Vogt
47ea827dce remove screwed up patch for gcc 4.7-linaro which got committed by accident
SVN-Revision: 31393
2012-04-21 10:23:49 +00:00
Mirko Vogt
84307e4035 add support for GCC 4.7-linaro (based on GCC 4.7.1)
SVN-Revision: 31392
2012-04-21 09:58:31 +00:00
Jo-Philipp Wich
f79bfe6072 gcc: add patch to make the getenv() spec function nonfatal if requested environment variable is unset
SVN-Revision: 31390
2012-04-21 03:02:39 +00:00
Jo-Philipp Wich
b7e2959450 toolchain/gcc: gcc-4.7.0 upstream patch fixing uClibc problems
SVN-Revision: 31255
2012-04-12 07:48:02 +00:00
Imre Kaloz
ca6859aa29 upgrade to gcc 4.4.7
SVN-Revision: 31230
2012-04-09 17:00:03 +00:00
Mirko Vogt
626e171764 add support for gcc 4.7.0 - thanks to acoul!
SVN-Revision: 31216
2012-04-07 15:34:41 +00:00
Gabor Juhos
45d5b24190 toolchain/gcc-4.6.2: fix v4bx patch
SVN-Revision: 30970
2012-03-18 10:55:49 +00:00
Gabor Juhos
9c077ed0ae toolchain/gcc-4.6-linaro: fix v4bx patch
SVN-Revision: 30969
2012-03-18 10:55:47 +00:00
Felix Fietkau
d8c570a153 gcc: do not emit references to _savegpr_* and _restgpr_* on powerpc, as they are tricky to deal with wrt. libgcc. they cannot be linked dynamically
SVN-Revision: 30814
2012-03-05 00:51:01 +00:00
Felix Fietkau
a86e168c54 gcc: use .eh_frame sections for exception handling stack unwind - saves about 400 bytes on every executable or shared library
SVN-Revision: 30614
2012-02-17 16:55:08 +00:00
Felix Fietkau
dcfc40358b gcc 4.6: port over the missing patch 850-use_shared_libgcc.patch to prevent libgcc crap from leaking into every single binary
SVN-Revision: 30486
2012-02-12 20:25:47 +00:00