summaryrefslogtreecommitdiff
path: root/toolchain/gcc/patches/14.2.0
diff options
context:
space:
mode:
Diffstat (limited to 'toolchain/gcc/patches/14.2.0')
-rw-r--r--toolchain/gcc/patches/14.2.0/add-crtreloc.frv12
-rw-r--r--toolchain/gcc/patches/14.2.0/csky.patch12
-rw-r--r--toolchain/gcc/patches/14.2.0/libgcc-fdpic-bfin.patch12
-rw-r--r--toolchain/gcc/patches/14.2.0/nios2-softfp.patch14
4 files changed, 50 insertions, 0 deletions
diff --git a/toolchain/gcc/patches/14.2.0/add-crtreloc.frv b/toolchain/gcc/patches/14.2.0/add-crtreloc.frv
new file mode 100644
index 000000000..30de24cdc
--- /dev/null
+++ b/toolchain/gcc/patches/14.2.0/add-crtreloc.frv
@@ -0,0 +1,12 @@
+diff -Nur gcc-8.3.0.orig/gcc/config/frv/linux.h gcc-8.3.0/gcc/config/frv/linux.h
+--- gcc-8.3.0.orig/gcc/config/frv/linux.h 2018-01-03 11:03:58.000000000 +0100
++++ gcc-8.3.0/gcc/config/frv/linux.h 2019-10-08 10:52:00.176295821 +0200
+@@ -27,7 +27,7 @@
+
+ #undef STARTFILE_SPEC
+ #define STARTFILE_SPEC \
+- "%{!shared: %{pg|p|profile:gcrt1.o%s;pie:Scrt1.o%s;:crt1.o%s}} \
++ "%{!shared: %{pg|p|profile:gcrt1.o%s;pie:Scrt1.o%s;:crt1.o%s}} crtreloc.o%s \
+ crti.o%s %{static:crtbeginT.o%s;shared|pie:crtbeginS.o%s;:crtbegin.o%s}"
+
+ #undef ENDFILE_SPEC
diff --git a/toolchain/gcc/patches/14.2.0/csky.patch b/toolchain/gcc/patches/14.2.0/csky.patch
new file mode 100644
index 000000000..ee352951b
--- /dev/null
+++ b/toolchain/gcc/patches/14.2.0/csky.patch
@@ -0,0 +1,12 @@
+diff -Nur gcc-11.2.0.orig/libgcc/config/csky/linux-atomic.c gcc-11.2.0/libgcc/config/csky/linux-atomic.c
+--- gcc-11.2.0.orig/libgcc/config/csky/linux-atomic.c 2021-07-28 08:55:08.760307899 +0200
++++ gcc-11.2.0/libgcc/config/csky/linux-atomic.c 2021-12-14 14:19:23.685729233 +0100
+@@ -24,7 +24,7 @@
+ <http://www.gnu.org/licenses/>. */
+
+ /* Kernel helper for compare-and-exchange. */
+-inline int
++int
+ __kernel_cmpxchg (int oldval, int newval, volatile int *ptr)
+ {
+ register int _a0 asm ("a0") = oldval;
diff --git a/toolchain/gcc/patches/14.2.0/libgcc-fdpic-bfin.patch b/toolchain/gcc/patches/14.2.0/libgcc-fdpic-bfin.patch
new file mode 100644
index 000000000..df0b94fc9
--- /dev/null
+++ b/toolchain/gcc/patches/14.2.0/libgcc-fdpic-bfin.patch
@@ -0,0 +1,12 @@
+diff -Nur gcc-14.2.0.orig/libgcc/unwind-pe.h gcc-14.2.0/libgcc/unwind-pe.h
+--- gcc-14.2.0.orig/libgcc/unwind-pe.h 2024-08-01 10:17:17.000000000 +0200
++++ gcc-14.2.0/libgcc/unwind-pe.h 2025-03-10 10:40:25.191585648 +0100
+@@ -264,7 +264,7 @@
+
+ if (result != 0)
+ {
+-#if __FDPIC__
++#if defined(__FDPIC__) && !defined(__BFIN_FDPIC__)
+ /* FDPIC relative addresses imply taking the GOT address
+ into account. */
+ if ((encoding & DW_EH_PE_pcrel) && (encoding & DW_EH_PE_indirect))
diff --git a/toolchain/gcc/patches/14.2.0/nios2-softfp.patch b/toolchain/gcc/patches/14.2.0/nios2-softfp.patch
new file mode 100644
index 000000000..c677c6c2f
--- /dev/null
+++ b/toolchain/gcc/patches/14.2.0/nios2-softfp.patch
@@ -0,0 +1,14 @@
+diff -Nur gcc-6.2.0.orig/libgcc/config.host gcc-6.2.0/libgcc/config.host
+--- gcc-6.2.0.orig/libgcc/config.host 2016-05-17 08:15:52.000000000 +0200
++++ gcc-6.2.0/libgcc/config.host 2016-10-15 14:42:53.971919904 +0200
+@@ -962,6 +962,10 @@
+ ;;
+ esac
+ ;;
++nios2-*-linux-uclibc*)
++ tmake_file="$tmake_file nios2/t-nios2 nios2/t-linux t-libgcc-pic t-slibgcc-libgcc t-softfp-sfdf t-softfp"
++ md_unwind_header=nios2/linux-unwind.h
++ ;;
+ nios2-*-linux*)
+ tmake_file="$tmake_file nios2/t-nios2 nios2/t-linux t-libgcc-pic t-slibgcc-libgcc"
+ md_unwind_header=nios2/linux-unwind.h