diff options
author | Solomon Peachy <pizza@shaftnet.org> | 2022-10-09 19:17:41 -0400 |
---|---|---|
committer | Solomon Peachy <pizza@shaftnet.org> | 2024-06-30 15:05:08 -0400 |
commit | 67dc833e46679c13f4b8d82cbb52d2393fef8fd8 (patch) | |
tree | 0eb34457d89beb5f612ec272d3e7d2d5596bd2b3 /tools/toolchain-patches/rockbox-multilibs-noexceptions-arm-elf-eabi-gcc-8.5.0.diff | |
parent | 36fdd3dfed29cf6e325c12b7b21cab66dc278529 (diff) | |
download | rockbox-67dc833e46679c13f4b8d82cbb52d2393fef8fd8.tar.gz rockbox-67dc833e46679c13f4b8d82cbb52d2393fef8fd8.zip |
Toolchains: Update to GCC 8.5.0
All toolchain dependencies are circa the GCC 8.5.0 release:
GCC 8.5.0, binutils 2.37, gmp 6.2.1, mpfr 4.1.0, mpc 1.2.1, isl 0.18
Native:
* arm (smoke tested on ipodvideo+mini2g)
* mips (seems to be stable on xDuoo X3)
* m68k (binaries untested)
Hosted:
* arm (binaries untested)
* mips (smoke tested on xDuoo X3ii)
Unchanged:
* Android NDK (unchanged at GCC 4.9.4)
Change-Id: I1c2fca5d87d4a11e50aa495fad75f4f9c938c766
Diffstat (limited to 'tools/toolchain-patches/rockbox-multilibs-noexceptions-arm-elf-eabi-gcc-8.5.0.diff')
-rw-r--r-- | tools/toolchain-patches/rockbox-multilibs-noexceptions-arm-elf-eabi-gcc-8.5.0.diff | 77 |
1 files changed, 77 insertions, 0 deletions
diff --git a/tools/toolchain-patches/rockbox-multilibs-noexceptions-arm-elf-eabi-gcc-8.5.0.diff b/tools/toolchain-patches/rockbox-multilibs-noexceptions-arm-elf-eabi-gcc-8.5.0.diff new file mode 100644 index 0000000000..b320b969a5 --- /dev/null +++ b/tools/toolchain-patches/rockbox-multilibs-noexceptions-arm-elf-eabi-gcc-8.5.0.diff | |||
@@ -0,0 +1,77 @@ | |||
1 | diff -Naur gcc-8.5.0/gcc/config/arm/arm_cmse.h gcc-8.5.0-patched/gcc/config/arm/ar | ||
2 | m_cmse.h | ||
3 | --- gcc-8.5.0/gcc/config/arm/arm_cmse.h 2021-05-14 04:42:08.000000000 -0400 | ||
4 | +++ gcc-8.5.0-patched/gcc/config/arm/arm_cmse.h 2023-04-17 14:32:56.547477547 -0400 | ||
5 | @@ -35,7 +35,7 @@ | ||
6 | #if __ARM_FEATURE_CMSE & 1 | ||
7 | |||
8 | #include <stddef.h> | ||
9 | -#include <stdint.h> | ||
10 | +//#include <stdint.h> | ||
11 | |||
12 | #ifdef __ARM_BIG_ENDIAN | ||
13 | |||
14 | diff -aur gcc-8.5.0/gcc/config/arm/t-arm-elf gcc-8.5.0-patched/gcc/config/arm/t-arm-elf | ||
15 | --- gcc-8.5.0/gcc/config/arm/t-arm-elf 2021-05-14 04:42:08.000000000 -0400 | ||
16 | +++ gcc-8.5.0-patched/gcc/config/arm/t-arm-elf 2022-11-26 23:16:30.714433566 -0500 | ||
17 | @@ -80,6 +80,10 @@ | ||
18 | MULTILIB_REQUIRED += marm/mfpu=auto/march=armv5te+fp/mfloat-abi=hard | ||
19 | MULTILIB_REQUIRED += mthumb/mfpu=auto/march=armv7+fp/mfloat-abi=hard | ||
20 | |||
21 | +# And we want to be able to disable interworking | ||
22 | +MULTILIB_OPTIONS += mno-thumb-interwork/mthumb-interwork | ||
23 | +MULTILIB_DIRNAMES += normal interwork | ||
24 | + | ||
25 | # PART 3 - Match rules | ||
26 | |||
27 | # Map all supported FPUs onto mfpu=auto | ||
28 | diff -aur gcc-8.5.0/libgcc/config/arm/t-bpabi gcc-8.5.0-patched/libgcc/config/arm/t-bpabi | ||
29 | --- gcc-8.5.0/libgcc/config/arm/t-bpabi 2021-05-14 04:42:10.000000000 -0400 | ||
30 | +++ gcc-8.5.0-patched/libgcc/config/arm/t-bpabi 2022-11-26 23:14:40.938038440 -0500 | ||
31 | @@ -17,4 +17,4 @@ | ||
32 | # On ARM, specifying -fnon-call-exceptions will needlessly pull in | ||
33 | # the unwinder in simple programs which use 64-bit division. Omitting | ||
34 | # the option is safe. | ||
35 | -LIB2_DIVMOD_EXCEPTION_FLAGS := -fexceptions | ||
36 | +LIB2_DIVMOD_EXCEPTION_FLAGS := -fno-exceptions -fno-non-call-exceptions | ||
37 | diff -aur gcc-8.5.0/libgcc/config/arm/cmse.c gcc-8.5.0-patch/libgcc/config/arm/cmse.c | ||
38 | --- gcc-8.5.0/libgcc/config/arm/cmse.c 2021-05-14 04:42:10.000000000 -0400 | ||
39 | +++ gcc-8.5.0-patched/libgcc/config/arm/cmse.c 2023-04-17 15:12:11.865456701 -0400 | ||
40 | @@ -36,7 +36,7 @@ | ||
41 | char *pb = (char *) p, *pe; | ||
42 | |||
43 | /* Check if the range wraps around. */ | ||
44 | - if (UINTPTR_MAX - (uintptr_t) p < size) | ||
45 | + if (__UINTPTR_MAX__ - (__UINTPTR_TYPE__) p < size) | ||
46 | return NULL; | ||
47 | |||
48 | /* Check if an unknown flag is present. */ | ||
49 | @@ -51,7 +51,7 @@ | ||
50 | |||
51 | /* Execute the right variant of the TT instructions. */ | ||
52 | pe = pb + size - 1; | ||
53 | - const int singleCheck = (((uintptr_t) pb ^ (uintptr_t) pe) < 32); | ||
54 | + const int singleCheck = (((__UINTPTR_TYPE__) pb ^ (__UINTPTR_TYPE__) pe) < 32); | ||
55 | switch (flags & known_secure_level) | ||
56 | { | ||
57 | case 0: | ||
58 | diff -aur gcc-8.5.0/libgcc/Makefile.in gcc-8.5.0-patched/libgcc/Makefile.in | ||
59 | --- gcc-8.5.0/libgcc/Makefile.in 2021-05-14 04:42:10.000000000 -0400 | ||
60 | +++ gcc-8.5.0-patched/libgcc/Makefile.in 2022-11-26 23:13:56.781304250 -0500 | ||
61 | @@ -526,7 +526,7 @@ | ||
62 | ifeq ($(LIB2_DIVMOD_EXCEPTION_FLAGS),) | ||
63 | # Provide default flags for compiling divmod functions, if they haven't been | ||
64 | # set already by a target-specific Makefile fragment. | ||
65 | -LIB2_DIVMOD_EXCEPTION_FLAGS := -fexceptions -fnon-call-exceptions | ||
66 | +LIB2_DIVMOD_EXCEPTION_FLAGS := -fno-exceptions -fno-non-call-exceptions | ||
67 | endif | ||
68 | |||
69 | # Build LIB2_DIVMOD_FUNCS. | ||
70 | @@ -847,7 +847,7 @@ | ||
71 | # libgcc_eh.a, only LIB2ADDEH matters. If we do, only LIB2ADDEHSTATIC and | ||
72 | # LIB2ADDEHSHARED matter. (Usually all three are identical.) | ||
73 | |||
74 | -c_flags := -fexceptions | ||
75 | +c_flags := -fno-exceptions | ||
76 | |||
77 | ifeq ($(enable_shared),yes) | ||