mirror of
https://github.com/devkitPro/buildscripts.git
synced 2026-08-21 01:44:16 -05:00
Compare commits
16 Commits
devkitARM_
...
devkitARM_
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
cd5e224d6a | ||
|
|
b280c0af31 | ||
|
|
776be5894d | ||
|
|
87f8584b86 | ||
|
|
84ca4f5c18 | ||
|
|
a07a271bdb | ||
|
|
026a498a51 | ||
|
|
b5de354a1e | ||
|
|
ca6cded363 | ||
|
|
149a2358b8 | ||
|
|
426c8d0e62 | ||
|
|
a33bf405d2 | ||
|
|
eac2e40528 | ||
|
|
e377ef05f6 | ||
|
|
67b8703a8c | ||
|
|
df8b66a808 |
14
README.TXT
14
README.TXT
@@ -24,9 +24,9 @@ For building gcc libgmp, libmpfr and libmpc are required - these are built as
|
|||||||
static libraries to make packaging simpler. If you're building the tools for
|
static libraries to make packaging simpler. If you're building the tools for
|
||||||
personal use then the versions packaged by your chosen distro should suffice.
|
personal use then the versions packaged by your chosen distro should suffice.
|
||||||
|
|
||||||
http://gmplib.org/
|
https://gmplib.org/
|
||||||
http://www.mpfr.org/
|
https://www.mpfr.org/
|
||||||
http://www.multiprecision.org/
|
https://www.multiprecision.org/
|
||||||
|
|
||||||
sudo apt-get install libgmp-dev libmpfr-dev libmpc-dev
|
sudo apt-get install libgmp-dev libmpfr-dev libmpc-dev
|
||||||
|
|
||||||
@@ -34,10 +34,10 @@ Some of the tools for devkitARM and devkitPPC also require FreeImage, zlib,
|
|||||||
expat, and libusb. Again these are built as static libraries for ease of
|
expat, and libusb. Again these are built as static libraries for ease of
|
||||||
packaging but you can probably use the versions supplied by your distro.
|
packaging but you can probably use the versions supplied by your distro.
|
||||||
|
|
||||||
http://freeimage.sourceforge.net/
|
https://freeimage.sourceforge.net/
|
||||||
http://www.zlib.net
|
https://www.zlib.net
|
||||||
http://www.libusb.org
|
https://www.libusb.org
|
||||||
http://expat.sourceforge.net/
|
https://expat.sourceforge.net/
|
||||||
|
|
||||||
sudo apt-get install libfreeimage-dev zlib1g-dev libusb-dev libudev-dev libexpat1-dev
|
sudo apt-get install libfreeimage-dev zlib1g-dev libusb-dev libudev-dev libexpat1-dev
|
||||||
|
|
||||||
|
|||||||
@@ -1,8 +1,8 @@
|
|||||||
#!/usr/bin/env bash
|
#!/usr/bin/env bash
|
||||||
#---------------------------------------------------------------------------------
|
#---------------------------------------------------------------------------------
|
||||||
# devkitARM release 58
|
# devkitARM release 60
|
||||||
# devkitPPC release 40
|
# devkitPPC release 41
|
||||||
# devkitA64 release 19
|
# devkitA64 release 21
|
||||||
#---------------------------------------------------------------------------------
|
#---------------------------------------------------------------------------------
|
||||||
|
|
||||||
if [ 0 -eq 1 ] ; then
|
if [ 0 -eq 1 ] ; then
|
||||||
|
|||||||
@@ -1,7 +1,56 @@
|
|||||||
diff -NBaur gcc-12.1.0-RC-20220429/gcc/config/aarch64/aarch64.cc gcc-12.1.0-RC-20220429-dka64/gcc/config/aarch64/aarch64.cc
|
diff --git a/gcc/config.gcc b/gcc/config.gcc
|
||||||
--- gcc-12.1.0-RC-20220429/gcc/config/aarch64/aarch64.cc 2022-04-29 14:58:22.000000000 +0100
|
index c5064dd3766..decfa78fb7b 100644
|
||||||
+++ gcc-12.1.0-RC-20220429-dka64/gcc/config/aarch64/aarch64.cc 2022-05-02 21:50:30.090088643 +0100
|
--- a/gcc/config.gcc
|
||||||
@@ -19417,8 +19417,24 @@
|
+++ b/gcc/config.gcc
|
||||||
|
@@ -1093,7 +1093,14 @@ aarch64*-*-elf | aarch64*-*-fuchsia* | aarch64*-*-rtems*)
|
||||||
|
tmake_file="${tmake_file} aarch64/t-aarch64"
|
||||||
|
case $target in
|
||||||
|
aarch64-*-elf*)
|
||||||
|
+ default_use_cxa_atexit=yes
|
||||||
|
use_gcc_stdint=wrap
|
||||||
|
+ tm_file="${tm_file} devkitpro.h"
|
||||||
|
+ tm_defines="${tm_defines} TARGET_DEFAULT_ASYNC_UNWIND_TABLES=1"
|
||||||
|
+ extra_options="${extra_options} devkitpro.opt"
|
||||||
|
+ case ${enable_threads} in
|
||||||
|
+ "" | yes | posix) thread_file='posix' ;;
|
||||||
|
+ esac
|
||||||
|
;;
|
||||||
|
aarch64-*-fuchsia*)
|
||||||
|
tm_file="${tm_file} fuchsia.h"
|
||||||
|
diff --git a/gcc/config/aarch64/aarch64-elf-raw.h b/gcc/config/aarch64/aarch64-elf-raw.h
|
||||||
|
index d4d820a9d54..ed5dd440846 100644
|
||||||
|
--- a/gcc/config/aarch64/aarch64-elf-raw.h
|
||||||
|
+++ b/gcc/config/aarch64/aarch64-elf-raw.h
|
||||||
|
@@ -22,6 +22,7 @@
|
||||||
|
#ifndef GCC_AARCH64_ELF_RAW_H
|
||||||
|
#define GCC_AARCH64_ELF_RAW_H
|
||||||
|
|
||||||
|
+#define LINK_GCC_C_SEQUENCE_SPEC "--start-group %G %L %(libgloss) --end-group"
|
||||||
|
#define STARTFILE_SPEC " crti%O%s crtbegin%O%s crt0%O%s"
|
||||||
|
#define ENDFILE_SPEC \
|
||||||
|
" crtend%O%s crtn%O%s " \
|
||||||
|
diff --git a/gcc/config/aarch64/aarch64-opts.h b/gcc/config/aarch64/aarch64-opts.h
|
||||||
|
index 93572fe8330..9327c52a819 100644
|
||||||
|
--- a/gcc/config/aarch64/aarch64-opts.h
|
||||||
|
+++ b/gcc/config/aarch64/aarch64-opts.h
|
||||||
|
@@ -48,6 +48,12 @@ enum aarch64_tls_type {
|
||||||
|
TLS_DESCRIPTORS
|
||||||
|
};
|
||||||
|
|
||||||
|
+/* Which thread pointer access sequence to use. */
|
||||||
|
+enum aarch64_tp_type {
|
||||||
|
+ TP_HARD,
|
||||||
|
+ TP_SOFT
|
||||||
|
+};
|
||||||
|
+
|
||||||
|
/* The code model defines the address generation strategy.
|
||||||
|
Most have a PIC and non-PIC variant. */
|
||||||
|
enum aarch64_code_model {
|
||||||
|
diff --git a/gcc/config/aarch64/aarch64.cc b/gcc/config/aarch64/aarch64.cc
|
||||||
|
index 5c9e7791a12..718db155d57 100644
|
||||||
|
--- a/gcc/config/aarch64/aarch64.cc
|
||||||
|
+++ b/gcc/config/aarch64/aarch64.cc
|
||||||
|
@@ -19413,8 +19413,24 @@ aarch64_load_tp (rtx target)
|
||||||
|| !register_operand (target, Pmode))
|
|| !register_operand (target, Pmode))
|
||||||
target = gen_reg_rtx (Pmode);
|
target = gen_reg_rtx (Pmode);
|
||||||
|
|
||||||
@@ -28,21 +77,11 @@ diff -NBaur gcc-12.1.0-RC-20220429/gcc/config/aarch64/aarch64.cc gcc-12.1.0-RC-2
|
|||||||
return target;
|
return target;
|
||||||
}
|
}
|
||||||
|
|
||||||
diff -NBaur gcc-12.1.0-RC-20220429/gcc/config/aarch64/aarch64-elf-raw.h gcc-12.1.0-RC-20220429-dka64/gcc/config/aarch64/aarch64-elf-raw.h
|
diff --git a/gcc/config/aarch64/aarch64.h b/gcc/config/aarch64/aarch64.h
|
||||||
--- gcc-12.1.0-RC-20220429/gcc/config/aarch64/aarch64-elf-raw.h 2022-04-29 14:58:22.000000000 +0100
|
index 359b6e8561f..f5b596fc312 100644
|
||||||
+++ gcc-12.1.0-RC-20220429-dka64/gcc/config/aarch64/aarch64-elf-raw.h 2022-05-02 21:50:30.086094234 +0100
|
--- a/gcc/config/aarch64/aarch64.h
|
||||||
@@ -22,6 +22,7 @@
|
+++ b/gcc/config/aarch64/aarch64.h
|
||||||
#ifndef GCC_AARCH64_ELF_RAW_H
|
@@ -1245,6 +1245,10 @@ typedef struct
|
||||||
#define GCC_AARCH64_ELF_RAW_H
|
|
||||||
|
|
||||||
+#define LINK_GCC_C_SEQUENCE_SPEC "--start-group %G %L %(libgloss) --end-group"
|
|
||||||
#define STARTFILE_SPEC " crti%O%s crtbegin%O%s crt0%O%s"
|
|
||||||
#define ENDFILE_SPEC \
|
|
||||||
" crtend%O%s crtn%O%s " \
|
|
||||||
diff -NBaur gcc-12.1.0-RC-20220429/gcc/config/aarch64/aarch64.h gcc-12.1.0-RC-20220429-dka64/gcc/config/aarch64/aarch64.h
|
|
||||||
--- gcc-12.1.0-RC-20220429/gcc/config/aarch64/aarch64.h 2022-04-29 14:58:22.000000000 +0100
|
|
||||||
+++ gcc-12.1.0-RC-20220429-dka64/gcc/config/aarch64/aarch64.h 2022-05-02 21:50:30.090088643 +0100
|
|
||||||
@@ -1245,6 +1245,10 @@
|
|
||||||
/* Check TLS Descriptors mechanism is selected. */
|
/* Check TLS Descriptors mechanism is selected. */
|
||||||
#define TARGET_TLS_DESC (aarch64_tls_dialect == TLS_DESCRIPTORS)
|
#define TARGET_TLS_DESC (aarch64_tls_dialect == TLS_DESCRIPTORS)
|
||||||
|
|
||||||
@@ -53,7 +92,7 @@ diff -NBaur gcc-12.1.0-RC-20220429/gcc/config/aarch64/aarch64.h gcc-12.1.0-RC-20
|
|||||||
extern enum aarch64_code_model aarch64_cmodel;
|
extern enum aarch64_code_model aarch64_cmodel;
|
||||||
|
|
||||||
/* When using the tiny addressing model conditional and unconditional branches
|
/* When using the tiny addressing model conditional and unconditional branches
|
||||||
@@ -1290,7 +1294,7 @@
|
@@ -1290,7 +1294,7 @@ extern const char *aarch64_rewrite_mcpu (int argc, const char **argv);
|
||||||
#define MCPU_TO_MARCH_SPEC_FUNCTIONS \
|
#define MCPU_TO_MARCH_SPEC_FUNCTIONS \
|
||||||
{ "rewrite_mcpu", aarch64_rewrite_mcpu },
|
{ "rewrite_mcpu", aarch64_rewrite_mcpu },
|
||||||
|
|
||||||
@@ -62,10 +101,11 @@ diff -NBaur gcc-12.1.0-RC-20220429/gcc/config/aarch64/aarch64.h gcc-12.1.0-RC-20
|
|||||||
extern const char *host_detect_local_cpu (int argc, const char **argv);
|
extern const char *host_detect_local_cpu (int argc, const char **argv);
|
||||||
#define HAVE_LOCAL_CPU_DETECT
|
#define HAVE_LOCAL_CPU_DETECT
|
||||||
# define EXTRA_SPEC_FUNCTIONS \
|
# define EXTRA_SPEC_FUNCTIONS \
|
||||||
diff -NBaur gcc-12.1.0-RC-20220429/gcc/config/aarch64/aarch64.md gcc-12.1.0-RC-20220429-dka64/gcc/config/aarch64/aarch64.md
|
diff --git a/gcc/config/aarch64/aarch64.md b/gcc/config/aarch64/aarch64.md
|
||||||
--- gcc-12.1.0-RC-20220429/gcc/config/aarch64/aarch64.md 2022-04-29 14:58:22.000000000 +0100
|
index 34b8059b45b..4debacf3cb9 100644
|
||||||
+++ gcc-12.1.0-RC-20220429-dka64/gcc/config/aarch64/aarch64.md 2022-05-02 21:50:30.090088643 +0100
|
--- a/gcc/config/aarch64/aarch64.md
|
||||||
@@ -6899,11 +6899,22 @@
|
+++ b/gcc/config/aarch64/aarch64.md
|
||||||
|
@@ -6906,11 +6906,22 @@
|
||||||
(define_insn "aarch64_load_tp_hard"
|
(define_insn "aarch64_load_tp_hard"
|
||||||
[(set (match_operand:DI 0 "register_operand" "=r")
|
[(set (match_operand:DI 0 "register_operand" "=r")
|
||||||
(unspec:DI [(const_int 0)] UNSPEC_TLS))]
|
(unspec:DI [(const_int 0)] UNSPEC_TLS))]
|
||||||
@@ -90,10 +130,11 @@ diff -NBaur gcc-12.1.0-RC-20220429/gcc/config/aarch64/aarch64.md gcc-12.1.0-RC-2
|
|||||||
;; The TLS ABI specifically requires that the compiler does not schedule
|
;; The TLS ABI specifically requires that the compiler does not schedule
|
||||||
;; instructions in the TLS stubs, in order to enable linker relaxation.
|
;; instructions in the TLS stubs, in order to enable linker relaxation.
|
||||||
;; Therefore we treat the stubs as an atomic sequence.
|
;; Therefore we treat the stubs as an atomic sequence.
|
||||||
diff -NBaur gcc-12.1.0-RC-20220429/gcc/config/aarch64/aarch64.opt gcc-12.1.0-RC-20220429-dka64/gcc/config/aarch64/aarch64.opt
|
diff --git a/gcc/config/aarch64/aarch64.opt b/gcc/config/aarch64/aarch64.opt
|
||||||
--- gcc-12.1.0-RC-20220429/gcc/config/aarch64/aarch64.opt 2022-04-29 14:58:22.000000000 +0100
|
index 92220b26ee2..68abc1764f6 100644
|
||||||
+++ gcc-12.1.0-RC-20220429-dka64/gcc/config/aarch64/aarch64.opt 2022-05-02 21:50:30.090088643 +0100
|
--- a/gcc/config/aarch64/aarch64.opt
|
||||||
@@ -122,6 +122,21 @@
|
+++ b/gcc/config/aarch64/aarch64.opt
|
||||||
|
@@ -122,6 +122,21 @@ Enum(aarch64_tls_size) String(32) Value(32)
|
||||||
EnumValue
|
EnumValue
|
||||||
Enum(aarch64_tls_size) String(48) Value(48)
|
Enum(aarch64_tls_size) String(48) Value(48)
|
||||||
|
|
||||||
@@ -115,7 +156,7 @@ diff -NBaur gcc-12.1.0-RC-20220429/gcc/config/aarch64/aarch64.opt gcc-12.1.0-RC-
|
|||||||
march=
|
march=
|
||||||
Target RejectNegative Negative(march=) ToLower Joined Var(aarch64_arch_string)
|
Target RejectNegative Negative(march=) ToLower Joined Var(aarch64_arch_string)
|
||||||
Use features of architecture ARCH.
|
Use features of architecture ARCH.
|
||||||
@@ -260,7 +275,7 @@
|
@@ -260,7 +275,7 @@ TargetVariable
|
||||||
long aarch64_stack_protector_guard_offset = 0
|
long aarch64_stack_protector_guard_offset = 0
|
||||||
|
|
||||||
moutline-atomics
|
moutline-atomics
|
||||||
@@ -124,26 +165,11 @@ diff -NBaur gcc-12.1.0-RC-20220429/gcc/config/aarch64/aarch64.opt gcc-12.1.0-RC-
|
|||||||
Generate local calls to out-of-line atomic operations.
|
Generate local calls to out-of-line atomic operations.
|
||||||
|
|
||||||
-param=aarch64-sve-compare-costs=
|
-param=aarch64-sve-compare-costs=
|
||||||
diff -NBaur gcc-12.1.0-RC-20220429/gcc/config/aarch64/aarch64-opts.h gcc-12.1.0-RC-20220429-dka64/gcc/config/aarch64/aarch64-opts.h
|
diff --git a/gcc/config/aarch64/t-aarch64 b/gcc/config/aarch64/t-aarch64
|
||||||
--- gcc-12.1.0-RC-20220429/gcc/config/aarch64/aarch64-opts.h 2022-04-29 14:58:22.000000000 +0100
|
index ba74abc0a43..5202ec05d0b 100644
|
||||||
+++ gcc-12.1.0-RC-20220429-dka64/gcc/config/aarch64/aarch64-opts.h 2022-05-02 21:50:30.086094234 +0100
|
--- a/gcc/config/aarch64/t-aarch64
|
||||||
@@ -48,6 +48,12 @@
|
+++ b/gcc/config/aarch64/t-aarch64
|
||||||
TLS_DESCRIPTORS
|
@@ -177,8 +177,10 @@ aarch64-cc-fusion.o: $(srcdir)/config/aarch64/aarch64-cc-fusion.cc \
|
||||||
};
|
|
||||||
|
|
||||||
+/* Which thread pointer access sequence to use. */
|
|
||||||
+enum aarch64_tp_type {
|
|
||||||
+ TP_HARD,
|
|
||||||
+ TP_SOFT
|
|
||||||
+};
|
|
||||||
+
|
|
||||||
/* The code model defines the address generation strategy.
|
|
||||||
Most have a PIC and non-PIC variant. */
|
|
||||||
enum aarch64_code_model {
|
|
||||||
diff -NBaur gcc-12.1.0-RC-20220429/gcc/config/aarch64/t-aarch64 gcc-12.1.0-RC-20220429-dka64/gcc/config/aarch64/t-aarch64
|
|
||||||
--- gcc-12.1.0-RC-20220429/gcc/config/aarch64/t-aarch64 2022-04-29 14:58:22.000000000 +0100
|
|
||||||
+++ gcc-12.1.0-RC-20220429-dka64/gcc/config/aarch64/t-aarch64 2022-05-02 21:50:30.090088643 +0100
|
|
||||||
@@ -177,8 +177,10 @@
|
|
||||||
$(srcdir)/config/aarch64/aarch64-cc-fusion.cc
|
$(srcdir)/config/aarch64/aarch64-cc-fusion.cc
|
||||||
|
|
||||||
comma=,
|
comma=,
|
||||||
@@ -156,10 +182,12 @@ diff -NBaur gcc-12.1.0-RC-20220429/gcc/config/aarch64/t-aarch64 gcc-12.1.0-RC-20
|
|||||||
|
|
||||||
insn-conditions.md: s-check-sve-md
|
insn-conditions.md: s-check-sve-md
|
||||||
s-check-sve-md: $(srcdir)/config/aarch64/check-sve-md.awk \
|
s-check-sve-md: $(srcdir)/config/aarch64/check-sve-md.awk \
|
||||||
diff -NBaur gcc-12.1.0-RC-20220429/gcc/config/devkitpro.h gcc-12.1.0-RC-20220429-dka64/gcc/config/devkitpro.h
|
diff --git a/gcc/config/devkitpro.h b/gcc/config/devkitpro.h
|
||||||
--- gcc-12.1.0-RC-20220429/gcc/config/devkitpro.h 1970-01-01 01:00:00.000000000 +0100
|
new file mode 100644
|
||||||
+++ gcc-12.1.0-RC-20220429-dka64/gcc/config/devkitpro.h 2022-05-02 22:04:49.962851033 +0100
|
index 00000000000..a25459e4352
|
||||||
@@ -0,0 +1,29 @@
|
--- /dev/null
|
||||||
|
+++ b/gcc/config/devkitpro.h
|
||||||
|
@@ -0,0 +1,32 @@
|
||||||
+/* Definitions for devkitPro toolchains.
|
+/* Definitions for devkitPro toolchains.
|
||||||
+ Copyright (C) 2016-2018 Free Software Foundation, Inc.
|
+ Copyright (C) 2016-2018 Free Software Foundation, Inc.
|
||||||
+
|
+
|
||||||
@@ -188,10 +216,15 @@ diff -NBaur gcc-12.1.0-RC-20220429/gcc/config/devkitpro.h gcc-12.1.0-RC-20220429
|
|||||||
+#define TARGET_OS_CPP_BUILTINS() \
|
+#define TARGET_OS_CPP_BUILTINS() \
|
||||||
+ do { \
|
+ do { \
|
||||||
+ builtin_define ("__DEVKITA64__"); \
|
+ builtin_define ("__DEVKITA64__"); \
|
||||||
|
+ builtin_define ("__DEVKITPRO__"); \
|
||||||
+ } while (0)
|
+ } while (0)
|
||||||
diff -NBaur gcc-12.1.0-RC-20220429/gcc/config/devkitpro.opt gcc-12.1.0-RC-20220429-dka64/gcc/config/devkitpro.opt
|
+
|
||||||
--- gcc-12.1.0-RC-20220429/gcc/config/devkitpro.opt 1970-01-01 01:00:00.000000000 +0100
|
+
|
||||||
+++ gcc-12.1.0-RC-20220429-dka64/gcc/config/devkitpro.opt 2022-05-02 21:50:30.090088643 +0100
|
diff --git a/gcc/config/devkitpro.opt b/gcc/config/devkitpro.opt
|
||||||
|
new file mode 100644
|
||||||
|
index 00000000000..9acbbf9d27c
|
||||||
|
--- /dev/null
|
||||||
|
+++ b/gcc/config/devkitpro.opt
|
||||||
@@ -0,0 +1,29 @@
|
@@ -0,0 +1,29 @@
|
||||||
+; Options for devkitPro toolchains.
|
+; Options for devkitPro toolchains.
|
||||||
+
|
+
|
||||||
@@ -222,10 +255,11 @@ diff -NBaur gcc-12.1.0-RC-20220429/gcc/config/devkitpro.opt gcc-12.1.0-RC-202204
|
|||||||
+Driver
|
+Driver
|
||||||
+
|
+
|
||||||
+; This comment is to ensure we retain the blank line above.
|
+; This comment is to ensure we retain the blank line above.
|
||||||
diff -NBaur gcc-12.1.0-RC-20220429/gcc/config/i386/host-mingw32.cc gcc-12.1.0-RC-20220429-dka64/gcc/config/i386/host-mingw32.cc
|
diff --git a/gcc/config/i386/host-mingw32.cc b/gcc/config/i386/host-mingw32.cc
|
||||||
--- gcc-12.1.0-RC-20220429/gcc/config/i386/host-mingw32.cc 2022-04-29 14:58:22.000000000 +0100
|
index 3b0d83ffc60..6e063b6ccd0 100644
|
||||||
+++ gcc-12.1.0-RC-20220429-dka64/gcc/config/i386/host-mingw32.cc 2022-05-02 21:50:30.090088643 +0100
|
--- a/gcc/config/i386/host-mingw32.cc
|
||||||
@@ -45,7 +45,11 @@
|
+++ b/gcc/config/i386/host-mingw32.cc
|
||||||
|
@@ -45,7 +45,11 @@ static size_t mingw32_gt_pch_alloc_granularity (void);
|
||||||
static inline void w32_error(const char*, const char*, int, const char*);
|
static inline void w32_error(const char*, const char*, int, const char*);
|
||||||
|
|
||||||
/* FIXME: Is this big enough? */
|
/* FIXME: Is this big enough? */
|
||||||
@@ -237,28 +271,11 @@ diff -NBaur gcc-12.1.0-RC-20220429/gcc/config/i386/host-mingw32.cc gcc-12.1.0-RC
|
|||||||
|
|
||||||
/* Granularity for reserving address space. */
|
/* Granularity for reserving address space. */
|
||||||
static size_t va_granularity = 0x10000;
|
static size_t va_granularity = 0x10000;
|
||||||
diff -NBaur gcc-12.1.0-RC-20220429/gcc/config.gcc gcc-12.1.0-RC-20220429-dka64/gcc/config.gcc
|
diff --git a/gcc/gcc.cc b/gcc/gcc.cc
|
||||||
--- gcc-12.1.0-RC-20220429/gcc/config.gcc 2022-04-29 14:58:22.000000000 +0100
|
index bb07cc244e3..eff31f5093d 100644
|
||||||
+++ gcc-12.1.0-RC-20220429-dka64/gcc/config.gcc 2022-05-02 21:50:30.086094234 +0100
|
--- a/gcc/gcc.cc
|
||||||
@@ -1093,7 +1093,14 @@
|
+++ b/gcc/gcc.cc
|
||||||
tmake_file="${tmake_file} aarch64/t-aarch64"
|
@@ -860,6 +860,11 @@ proper position among the other output files. */
|
||||||
case $target in
|
|
||||||
aarch64-*-elf*)
|
|
||||||
+ default_use_cxa_atexit=yes
|
|
||||||
use_gcc_stdint=wrap
|
|
||||||
+ tm_file="${tm_file} devkitpro.h"
|
|
||||||
+ tm_defines="${tm_defines} TARGET_DEFAULT_ASYNC_UNWIND_TABLES=1"
|
|
||||||
+ extra_options="${extra_options} devkitpro.opt"
|
|
||||||
+ case ${enable_threads} in
|
|
||||||
+ "" | yes | posix) thread_file='posix' ;;
|
|
||||||
+ esac
|
|
||||||
;;
|
|
||||||
aarch64-*-fuchsia*)
|
|
||||||
tm_file="${tm_file} fuchsia.h"
|
|
||||||
diff -NBaur gcc-12.1.0-RC-20220429/gcc/gcc.cc gcc-12.1.0-RC-20220429-dka64/gcc/gcc.cc
|
|
||||||
--- gcc-12.1.0-RC-20220429/gcc/gcc.cc 2022-04-29 14:58:23.000000000 +0100
|
|
||||||
+++ gcc-12.1.0-RC-20220429-dka64/gcc/gcc.cc 2022-05-02 21:50:30.090088643 +0100
|
|
||||||
@@ -860,6 +860,11 @@
|
|
||||||
#endif
|
#endif
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
@@ -270,7 +287,7 @@ diff -NBaur gcc-12.1.0-RC-20220429/gcc/gcc.cc gcc-12.1.0-RC-20220429-dka64/gcc/g
|
|||||||
/* config.h can define STARTFILE_SPEC to override the default crt0 files. */
|
/* config.h can define STARTFILE_SPEC to override the default crt0 files. */
|
||||||
#ifndef STARTFILE_SPEC
|
#ifndef STARTFILE_SPEC
|
||||||
#define STARTFILE_SPEC \
|
#define STARTFILE_SPEC \
|
||||||
@@ -1204,6 +1209,7 @@
|
@@ -1204,6 +1209,7 @@ static const char *link_spec = LINK_SPEC;
|
||||||
static const char *lib_spec = LIB_SPEC;
|
static const char *lib_spec = LIB_SPEC;
|
||||||
static const char *link_gomp_spec = "";
|
static const char *link_gomp_spec = "";
|
||||||
static const char *libgcc_spec = LIBGCC_SPEC;
|
static const char *libgcc_spec = LIBGCC_SPEC;
|
||||||
@@ -278,7 +295,7 @@ diff -NBaur gcc-12.1.0-RC-20220429/gcc/gcc.cc gcc-12.1.0-RC-20220429-dka64/gcc/g
|
|||||||
static const char *endfile_spec = ENDFILE_SPEC;
|
static const char *endfile_spec = ENDFILE_SPEC;
|
||||||
static const char *startfile_spec = STARTFILE_SPEC;
|
static const char *startfile_spec = STARTFILE_SPEC;
|
||||||
static const char *linker_name_spec = LINKER_NAME;
|
static const char *linker_name_spec = LINKER_NAME;
|
||||||
@@ -1709,6 +1715,7 @@
|
@@ -1709,6 +1715,7 @@ static struct spec_list static_specs[] =
|
||||||
INIT_STATIC_SPEC ("lib", &lib_spec),
|
INIT_STATIC_SPEC ("lib", &lib_spec),
|
||||||
INIT_STATIC_SPEC ("link_gomp", &link_gomp_spec),
|
INIT_STATIC_SPEC ("link_gomp", &link_gomp_spec),
|
||||||
INIT_STATIC_SPEC ("libgcc", &libgcc_spec),
|
INIT_STATIC_SPEC ("libgcc", &libgcc_spec),
|
||||||
@@ -286,10 +303,11 @@ diff -NBaur gcc-12.1.0-RC-20220429/gcc/gcc.cc gcc-12.1.0-RC-20220429-dka64/gcc/g
|
|||||||
INIT_STATIC_SPEC ("startfile", &startfile_spec),
|
INIT_STATIC_SPEC ("startfile", &startfile_spec),
|
||||||
INIT_STATIC_SPEC ("cross_compile", &cross_compile),
|
INIT_STATIC_SPEC ("cross_compile", &cross_compile),
|
||||||
INIT_STATIC_SPEC ("version", &compiler_version),
|
INIT_STATIC_SPEC ("version", &compiler_version),
|
||||||
diff -NBaur gcc-12.1.0-RC-20220429/libgcc/crtstuff.c gcc-12.1.0-RC-20220429-dka64/libgcc/crtstuff.c
|
diff --git a/libgcc/crtstuff.c b/libgcc/crtstuff.c
|
||||||
--- gcc-12.1.0-RC-20220429/libgcc/crtstuff.c 2022-04-29 14:58:25.000000000 +0100
|
index b98b86a5a88..3f62b3616d2 100644
|
||||||
+++ gcc-12.1.0-RC-20220429-dka64/libgcc/crtstuff.c 2022-05-02 21:50:30.094083051 +0100
|
--- a/libgcc/crtstuff.c
|
||||||
@@ -325,7 +325,7 @@
|
+++ b/libgcc/crtstuff.c
|
||||||
|
@@ -325,7 +325,7 @@ register_tm_clones (void)
|
||||||
|
|
||||||
#ifdef OBJECT_FORMAT_ELF
|
#ifdef OBJECT_FORMAT_ELF
|
||||||
|
|
||||||
@@ -298,10 +316,11 @@ diff -NBaur gcc-12.1.0-RC-20220429/libgcc/crtstuff.c gcc-12.1.0-RC-20220429-dka6
|
|||||||
/* Declare the __dso_handle variable. It should have a unique value
|
/* Declare the __dso_handle variable. It should have a unique value
|
||||||
in every shared-object; in a main program its value is zero. The
|
in every shared-object; in a main program its value is zero. The
|
||||||
object should in any case be protected. This means the instance
|
object should in any case be protected. This means the instance
|
||||||
diff -NBaur gcc-12.1.0-RC-20220429/libgcc/gthr.h gcc-12.1.0-RC-20220429-dka64/libgcc/gthr.h
|
diff --git a/libgcc/gthr.h b/libgcc/gthr.h
|
||||||
--- gcc-12.1.0-RC-20220429/libgcc/gthr.h 2022-04-29 14:58:25.000000000 +0100
|
index 7943c94f6d1..6d23362f7f0 100644
|
||||||
+++ gcc-12.1.0-RC-20220429-dka64/libgcc/gthr.h 2022-05-02 21:50:30.094083051 +0100
|
--- a/libgcc/gthr.h
|
||||||
@@ -136,7 +136,7 @@
|
+++ b/libgcc/gthr.h
|
||||||
|
@@ -136,7 +136,7 @@ see the files COPYING3 and COPYING.RUNTIME respectively. If not, see
|
||||||
/* The pe-coff weak support isn't fully compatible to ELF's weak.
|
/* The pe-coff weak support isn't fully compatible to ELF's weak.
|
||||||
For static libraries it might would work, but as we need to deal
|
For static libraries it might would work, but as we need to deal
|
||||||
with shared versions too, we disable it for mingw-targets. */
|
with shared versions too, we disable it for mingw-targets. */
|
||||||
@@ -310,10 +329,11 @@ diff -NBaur gcc-12.1.0-RC-20220429/libgcc/gthr.h gcc-12.1.0-RC-20220429-dka64/li
|
|||||||
#undef GTHREAD_USE_WEAK
|
#undef GTHREAD_USE_WEAK
|
||||||
#define GTHREAD_USE_WEAK 0
|
#define GTHREAD_USE_WEAK 0
|
||||||
#endif
|
#endif
|
||||||
diff -NBaur gcc-12.1.0-RC-20220429/libstdc++-v3/include/Makefile.am gcc-12.1.0-RC-20220429-dka64/libstdc++-v3/include/Makefile.am
|
diff --git a/libstdc++-v3/include/Makefile.am b/libstdc++-v3/include/Makefile.am
|
||||||
--- gcc-12.1.0-RC-20220429/libstdc++-v3/include/Makefile.am 2022-04-29 14:58:26.000000000 +0100
|
index 7708f4cf6c5..d3f484a5623 100644
|
||||||
+++ gcc-12.1.0-RC-20220429-dka64/libstdc++-v3/include/Makefile.am 2022-05-02 21:50:30.094083051 +0100
|
--- a/libstdc++-v3/include/Makefile.am
|
||||||
@@ -1366,6 +1366,7 @@
|
+++ b/libstdc++-v3/include/Makefile.am
|
||||||
|
@@ -1366,6 +1366,7 @@ ${host_builddir}/gthr.h: ${toplevel_srcdir}/libgcc/gthr.h stamp-${host_alias}
|
||||||
-e '/^#/s/\(${uppercase}${uppercase}*\)/_GLIBCXX_\1/g' \
|
-e '/^#/s/\(${uppercase}${uppercase}*\)/_GLIBCXX_\1/g' \
|
||||||
-e 's/_GLIBCXX_SUPPORTS_WEAK/__GXX_WEAK__/g' \
|
-e 's/_GLIBCXX_SUPPORTS_WEAK/__GXX_WEAK__/g' \
|
||||||
-e 's/_GLIBCXX___MINGW32_GLIBCXX___/__MINGW32__/g' \
|
-e 's/_GLIBCXX___MINGW32_GLIBCXX___/__MINGW32__/g' \
|
||||||
@@ -321,10 +341,11 @@ diff -NBaur gcc-12.1.0-RC-20220429/libstdc++-v3/include/Makefile.am gcc-12.1.0-R
|
|||||||
-e 's,^#include "\(.*\)",#include <bits/\1>,g' \
|
-e 's,^#include "\(.*\)",#include <bits/\1>,g' \
|
||||||
< $< > $@
|
< $< > $@
|
||||||
|
|
||||||
diff -NBaur gcc-12.1.0-RC-20220429/libstdc++-v3/include/Makefile.in gcc-12.1.0-RC-20220429-dka64/libstdc++-v3/include/Makefile.in
|
diff --git a/libstdc++-v3/include/Makefile.in b/libstdc++-v3/include/Makefile.in
|
||||||
--- gcc-12.1.0-RC-20220429/libstdc++-v3/include/Makefile.in 2022-04-29 14:58:26.000000000 +0100
|
index 7023c2de23e..d150a616d13 100644
|
||||||
+++ gcc-12.1.0-RC-20220429-dka64/libstdc++-v3/include/Makefile.in 2022-05-02 21:50:30.094083051 +0100
|
--- a/libstdc++-v3/include/Makefile.in
|
||||||
@@ -1857,6 +1857,7 @@
|
+++ b/libstdc++-v3/include/Makefile.in
|
||||||
|
@@ -1857,6 +1857,7 @@ ${host_builddir}/gthr.h: ${toplevel_srcdir}/libgcc/gthr.h stamp-${host_alias}
|
||||||
-e '/^#/s/\(${uppercase}${uppercase}*\)/_GLIBCXX_\1/g' \
|
-e '/^#/s/\(${uppercase}${uppercase}*\)/_GLIBCXX_\1/g' \
|
||||||
-e 's/_GLIBCXX_SUPPORTS_WEAK/__GXX_WEAK__/g' \
|
-e 's/_GLIBCXX_SUPPORTS_WEAK/__GXX_WEAK__/g' \
|
||||||
-e 's/_GLIBCXX___MINGW32_GLIBCXX___/__MINGW32__/g' \
|
-e 's/_GLIBCXX___MINGW32_GLIBCXX___/__MINGW32__/g' \
|
||||||
File diff suppressed because it is too large
Load Diff
@@ -62,7 +62,7 @@ then
|
|||||||
--enable-lto \
|
--enable-lto \
|
||||||
--disable-tm-clone-registry \
|
--disable-tm-clone-registry \
|
||||||
--disable-__cxa_atexit \
|
--disable-__cxa_atexit \
|
||||||
--with-bugurl="https://github.com/devkitPro/buildscripts/issues" --with-pkgversion="devkitA64 release 19" \
|
--with-bugurl="https://github.com/devkitPro/buildscripts/issues" --with-pkgversion="devkitA64 release 21" \
|
||||||
$CROSS_PARAMS \
|
$CROSS_PARAMS \
|
||||||
$CROSS_GCC_PARAMS \
|
$CROSS_GCC_PARAMS \
|
||||||
$EXTRA_GCC_PARAMS \
|
$EXTRA_GCC_PARAMS \
|
||||||
|
|||||||
@@ -1,17 +0,0 @@
|
|||||||
diff --git a/libiberty/rust-demangle.c b/libiberty/rust-demangle.c
|
|
||||||
index df09b7b8fddb82b21f97afee8821166d92220094..ac1eb8eb02c6d42533c0faa7aebdce432ac947e9 100644 (file)
|
|
||||||
--- a/libiberty/rust-demangle.c
|
|
||||||
+++ b/libiberty/rust-demangle.c
|
|
||||||
@@ -75,10 +75,10 @@ struct rust_demangler
|
|
||||||
int version;
|
|
||||||
|
|
||||||
/* Recursion depth. */
|
|
||||||
- uint recursion;
|
|
||||||
+ unsigned recursion;
|
|
||||||
/* Maximum number of times demangle_path may be called recursively. */
|
|
||||||
#define RUST_MAX_RECURSION_COUNT 1024
|
|
||||||
-#define RUST_NO_RECURSION_LIMIT ((uint) -1)
|
|
||||||
+#define RUST_NO_RECURSION_LIMIT ((unsigned) -1)
|
|
||||||
|
|
||||||
uint64_t bound_lifetime_depth;
|
|
||||||
};
|
|
||||||
@@ -1,233 +0,0 @@
|
|||||||
diff -NBaur gcc-12.1.0-RC-20220429/gcc/config/arm/arm-cpus.in gcc-12.1.0-RC-20220429-dkarm/gcc/config/arm/arm-cpus.in
|
|
||||||
--- gcc-12.1.0-RC-20220429/gcc/config/arm/arm-cpus.in 2022-04-29 14:58:22.000000000 +0100
|
|
||||||
+++ gcc-12.1.0-RC-20220429-dkarm/gcc/config/arm/arm-cpus.in 2022-04-30 13:31:09.120134164 +0100
|
|
||||||
@@ -412,7 +412,7 @@
|
|
||||||
tune for mpcore
|
|
||||||
tune flags CO_PROC
|
|
||||||
base 6K
|
|
||||||
- isa ARMv6k
|
|
||||||
+ isa ARMv6k VFPv2 FP_DBL
|
|
||||||
option fp add VFPv2 FP_DBL
|
|
||||||
optalias vfpv2 fp
|
|
||||||
option nofp remove ALL_FP
|
|
||||||
diff -NBaur gcc-12.1.0-RC-20220429/gcc/config/arm/t-arm-elf gcc-12.1.0-RC-20220429-dkarm/gcc/config/arm/t-arm-elf
|
|
||||||
--- gcc-12.1.0-RC-20220429/gcc/config/arm/t-arm-elf 2022-04-29 14:58:22.000000000 +0100
|
|
||||||
+++ gcc-12.1.0-RC-20220429-dkarm/gcc/config/arm/t-arm-elf 2022-04-30 13:31:39.759455398 +0100
|
|
||||||
@@ -1,4 +1,4 @@
|
|
||||||
-# Copyright (C) 1998-2022 Free Software Foundation, Inc.
|
|
||||||
+# Copyright (C) 1998-2021 Free Software Foundation, Inc.
|
|
||||||
#
|
|
||||||
# This file is part of GCC.
|
|
||||||
#
|
|
||||||
@@ -16,120 +16,14 @@
|
|
||||||
# along with GCC; see the file COPYING3. If not see
|
|
||||||
# <http://www.gnu.org/licenses/>.
|
|
||||||
|
|
||||||
-# Build a very basic set of libraries that should cater for most cases.
|
|
||||||
-
|
|
||||||
-# Single-precision floating-point is NOT supported; we don't build a
|
|
||||||
-# suitable library for that. Use the rm-profile config in that case.
|
|
||||||
-
|
|
||||||
-# PART 1 - Useful groups of options
|
|
||||||
-
|
|
||||||
-dp_fpus := vfp vfpv2 vfpv3 vfpv3-fp16 vfpv3-d16 vfpv3-d16-fp16 \
|
|
||||||
- neon neon-vfpv3 neon-fp16 vfpv4 neon-vfpv4 vfpv4-d16 \
|
|
||||||
- fpv5-d16 fp-armv8 neon-fp-armv8 crypto-neon-fp-armv8 \
|
|
||||||
- vfp3
|
|
||||||
-
|
|
||||||
-sp_fpus := vfpv3xd vfpv3xd-fp16 fpv4-sp-d16 fpv5-sp-d16
|
|
||||||
-
|
|
||||||
-v7a_fps := vfpv3 vfpv3-fp16 vfpv4 simd neon-fp16 neon-vfpv4
|
|
||||||
-v7ve_fps := vfpv3-d16 vfpv3 vfpv3-d16-fp16 vfpv3-fp16 vfpv4 neon \
|
|
||||||
- neon-fp16 simd
|
|
||||||
-
|
|
||||||
-# Not all these permutations exist for all architecture variants, but
|
|
||||||
-# it seems to work ok.
|
|
||||||
-v8_fps := simd fp16 crypto fp16+crypto dotprod fp16fml
|
|
||||||
-
|
|
||||||
-v9_fps := simd fp16 crypto fp16+crypto dotprod fp16fml
|
|
||||||
-
|
|
||||||
-# We don't do anything special with these. Pre-v4t probably doesn't work.
|
|
||||||
-all_early_nofp := armv4 armv4t armv5t
|
|
||||||
-
|
|
||||||
-all_early_arch := armv5tej armv6 armv6j armv6k armv6z armv6kz \
|
|
||||||
- armv6zk armv6t2 iwmmxt iwmmxt2
|
|
||||||
-
|
|
||||||
-all_v7_a_r := armv7-a armv7ve armv7-r
|
|
||||||
-
|
|
||||||
-all_v8_archs := armv8-a armv8-a+crc armv8.1-a armv8.2-a armv8.3-a armv8.4-a \
|
|
||||||
- armv8.5-a armv8.6-a
|
|
||||||
-
|
|
||||||
-all_v9_archs := armv9-a
|
|
||||||
-
|
|
||||||
-# No floating point variants, require thumb1 softfp
|
|
||||||
-all_nofp_t := armv6-m armv6s-m armv8-m.base
|
|
||||||
-
|
|
||||||
-all_nofp_t2 := armv7-m
|
|
||||||
-
|
|
||||||
-all_sp_only := armv7e-m armv8-m.main
|
|
||||||
-
|
|
||||||
-MULTILIB_OPTIONS =
|
|
||||||
-MULTILIB_DIRNAMES =
|
|
||||||
+MULTILIB_OPTIONS = mthumb mbig-endian march=armv6k mfloat-abi=hard
|
|
||||||
+MULTILIB_DIRNAMES = thumb be armv6k fpu
|
|
||||||
MULTILIB_EXCEPTIONS =
|
|
||||||
MULTILIB_MATCHES =
|
|
||||||
-MULTILIB_REUSE =
|
|
||||||
-
|
|
||||||
-# PART 2 - multilib build rules
|
|
||||||
-
|
|
||||||
-MULTILIB_OPTIONS += marm/mthumb
|
|
||||||
-MULTILIB_DIRNAMES += arm thumb
|
|
||||||
-
|
|
||||||
-MULTILIB_OPTIONS += mfpu=auto
|
|
||||||
-MULTILIB_DIRNAMES += autofp
|
|
||||||
-
|
|
||||||
-MULTILIB_OPTIONS += march=armv5te+fp/march=armv7+fp
|
|
||||||
-MULTILIB_DIRNAMES += v5te v7
|
|
||||||
-
|
|
||||||
-MULTILIB_OPTIONS += mfloat-abi=hard
|
|
||||||
-MULTILIB_DIRNAMES += fpu
|
|
||||||
-
|
|
||||||
-# Build a total of 4 library variants (base options plus the following):
|
|
||||||
-MULTILIB_REQUIRED += mthumb
|
|
||||||
-MULTILIB_REQUIRED += marm/mfpu=auto/march=armv5te+fp/mfloat-abi=hard
|
|
||||||
-MULTILIB_REQUIRED += mthumb/mfpu=auto/march=armv7+fp/mfloat-abi=hard
|
|
||||||
-
|
|
||||||
-# PART 3 - Match rules
|
|
||||||
-
|
|
||||||
-# Map all supported FPUs onto mfpu=auto
|
|
||||||
-MULTILIB_MATCHES += $(foreach FPU, $(dp_fpus), \
|
|
||||||
- mfpu?auto=mfpu?$(FPU))
|
|
||||||
-
|
|
||||||
-MULTILIB_MATCHES += march?armv5te+fp=march?armv5te
|
|
||||||
-
|
|
||||||
-MULTILIB_MATCHES += $(foreach ARCH, $(all_early_arch), \
|
|
||||||
- march?armv5te+fp=march?$(ARCH) \
|
|
||||||
- march?armv5te+fp=march?$(ARCH)+fp)
|
|
||||||
-
|
|
||||||
-MULTILIB_MATCHES += march?armv7+fp=march?armv7
|
|
||||||
-
|
|
||||||
-MULTILIB_MATCHES += $(foreach FPARCH, $(v7a_fps), \
|
|
||||||
- march?armv7+fp=march?armv7-a+$(FPARCH))
|
|
||||||
-
|
|
||||||
-MULTILIB_MATCHES += $(foreach FPARCH, $(v7ve_fps), \
|
|
||||||
- march?armv7+fp=march?armv7ve+$(FPARCH))
|
|
||||||
-
|
|
||||||
-MULTILIB_MATCHES += $(foreach ARCH, $(all_v7_a_r), \
|
|
||||||
- march?armv7+fp=march?$(ARCH) \
|
|
||||||
- march?armv7+fp=march?$(ARCH)+fp)
|
|
||||||
-
|
|
||||||
-MULTILIB_MATCHES += $(foreach ARCH, $(all_v8_archs), \
|
|
||||||
- march?armv7+fp=march?$(ARCH) \
|
|
||||||
- $(foreach FPARCH, $(v8_fps), \
|
|
||||||
- march?armv7+fp=march?$(ARCH)+$(FPARCH)))
|
|
||||||
|
|
||||||
-MULTILIB_MATCHES += $(foreach ARCH, $(all_v9_archs), \
|
|
||||||
- march?armv7+fp=march?$(ARCH) \
|
|
||||||
- $(foreach FPARCH, $(v9_fps), \
|
|
||||||
- march?armv7+fp=march?$(ARCH)+$(FPARCH)))
|
|
||||||
+MULTILIB_REQUIRED = mthumb mbig-endian mthumb/mbig-endian march=armv6k/mfloat-abi=hard
|
|
||||||
|
|
||||||
-MULTILIB_MATCHES += $(foreach ARCH, armv7e-m armv8-m.mainline, \
|
|
||||||
- march?armv7+fp=march?$(ARCH)+fp.dp)
|
|
||||||
|
|
||||||
-# PART 4 - Reuse rules
|
|
||||||
+MULTILIB_MATCHES += march?armv6k=mtune?mpcore
|
|
||||||
+MULTILIB_MATCHES += march?armv6k=mcpu?mpcore
|
|
||||||
|
|
||||||
-MULTILIB_REUSE += mthumb=mthumb/mfpu.auto
|
|
||||||
-MULTILIB_REUSE += mthumb=mthumb/mfpu.auto/march.armv5te+fp
|
|
||||||
-MULTILIB_REUSE += mthumb=mthumb/march.armv5te+fp
|
|
||||||
-MULTILIB_REUSE += marm/mfpu.auto/march.armv5te+fp/mfloat-abi.hard=marm/march.armv5te+fp/mfloat-abi.hard
|
|
||||||
-MULTILIB_REUSE += marm/mfpu.auto/march.armv5te+fp/mfloat-abi.hard=march.armv5te+fp/mfloat-abi.hard
|
|
||||||
-MULTILIB_REUSE += marm/mfpu.auto/march.armv5te+fp/mfloat-abi.hard=mfpu.auto/march.armv5te+fp/mfloat-abi.hard
|
|
||||||
-MULTILIB_REUSE += mthumb/mfpu.auto/march.armv7+fp/mfloat-abi.hard=mthumb/march.armv7+fp/mfloat-abi.hard
|
|
||||||
-MULTILIB_REUSE += mthumb/mfpu.auto/march.armv7+fp/mfloat-abi.hard=mfpu.auto/march.armv7+fp/mfloat-abi.hard
|
|
||||||
-MULTILIB_REUSE += mthumb/mfpu.auto/march.armv7+fp/mfloat-abi.hard=march.armv7+fp/mfloat-abi.hard
|
|
||||||
diff -NBaur gcc-12.1.0-RC-20220429/gcc/config/arm/unknown-elf.h gcc-12.1.0-RC-20220429-dkarm/gcc/config/arm/unknown-elf.h
|
|
||||||
--- gcc-12.1.0-RC-20220429/gcc/config/arm/unknown-elf.h 2022-04-29 14:58:22.000000000 +0100
|
|
||||||
+++ gcc-12.1.0-RC-20220429-dkarm/gcc/config/arm/unknown-elf.h 2022-04-30 13:31:09.120134164 +0100
|
|
||||||
@@ -29,7 +29,7 @@
|
|
||||||
#endif
|
|
||||||
|
|
||||||
/* Now we define the strings used to build the spec file. */
|
|
||||||
-#define UNKNOWN_ELF_STARTFILE_SPEC " crti%O%s crtbegin%O%s crt0%O%s"
|
|
||||||
+#define UNKNOWN_ELF_STARTFILE_SPEC " crti%O%s crtbegin%O%s"
|
|
||||||
|
|
||||||
#undef STARTFILE_SPEC
|
|
||||||
#define STARTFILE_SPEC \
|
|
||||||
@@ -93,4 +93,5 @@
|
|
||||||
udivmoddi4, which will depend on the exception unwind routines,
|
|
||||||
which will depend on abort, which is defined in libc. */
|
|
||||||
#undef LINK_GCC_C_SEQUENCE_SPEC
|
|
||||||
-#define LINK_GCC_C_SEQUENCE_SPEC "--start-group %G %{!nolibc:%L} --end-group"
|
|
||||||
+#define LINK_GCC_C_SEQUENCE_SPEC "--start-group %G %L %(libgloss) --end-group"
|
|
||||||
+
|
|
||||||
diff -NBaur gcc-12.1.0-RC-20220429/gcc/config/i386/host-mingw32.cc gcc-12.1.0-RC-20220429-dkarm/gcc/config/i386/host-mingw32.cc
|
|
||||||
--- gcc-12.1.0-RC-20220429/gcc/config/i386/host-mingw32.cc 2022-04-29 14:58:22.000000000 +0100
|
|
||||||
+++ gcc-12.1.0-RC-20220429-dkarm/gcc/config/i386/host-mingw32.cc 2022-04-30 13:31:09.120134164 +0100
|
|
||||||
@@ -45,7 +45,11 @@
|
|
||||||
static inline void w32_error(const char*, const char*, int, const char*);
|
|
||||||
|
|
||||||
/* FIXME: Is this big enough? */
|
|
||||||
+#if __MINGW64__
|
|
||||||
+static const size_t pch_VA_max_size = UINT64_C(64 * 1024 * 1024 * 1024);
|
|
||||||
+#else
|
|
||||||
static const size_t pch_VA_max_size = 128 * 1024 * 1024;
|
|
||||||
+#endif
|
|
||||||
|
|
||||||
/* Granularity for reserving address space. */
|
|
||||||
static size_t va_granularity = 0x10000;
|
|
||||||
diff -NBaur gcc-12.1.0-RC-20220429/gcc/gcc.cc gcc-12.1.0-RC-20220429-dkarm/gcc/gcc.cc
|
|
||||||
--- gcc-12.1.0-RC-20220429/gcc/gcc.cc 2022-04-29 14:58:23.000000000 +0100
|
|
||||||
+++ gcc-12.1.0-RC-20220429-dkarm/gcc/gcc.cc 2022-04-30 13:31:09.120134164 +0100
|
|
||||||
@@ -860,6 +860,11 @@
|
|
||||||
#endif
|
|
||||||
#endif
|
|
||||||
|
|
||||||
+#ifndef LIBGLOSS_SPEC
|
|
||||||
+# define LIBGLOSS_SPEC "-lsysbase"
|
|
||||||
+#endif
|
|
||||||
+
|
|
||||||
+
|
|
||||||
/* config.h can define STARTFILE_SPEC to override the default crt0 files. */
|
|
||||||
#ifndef STARTFILE_SPEC
|
|
||||||
#define STARTFILE_SPEC \
|
|
||||||
@@ -1204,6 +1209,7 @@
|
|
||||||
static const char *lib_spec = LIB_SPEC;
|
|
||||||
static const char *link_gomp_spec = "";
|
|
||||||
static const char *libgcc_spec = LIBGCC_SPEC;
|
|
||||||
+static const char *libgloss_spec = LIBGLOSS_SPEC;
|
|
||||||
static const char *endfile_spec = ENDFILE_SPEC;
|
|
||||||
static const char *startfile_spec = STARTFILE_SPEC;
|
|
||||||
static const char *linker_name_spec = LINKER_NAME;
|
|
||||||
@@ -1709,6 +1715,7 @@
|
|
||||||
INIT_STATIC_SPEC ("lib", &lib_spec),
|
|
||||||
INIT_STATIC_SPEC ("link_gomp", &link_gomp_spec),
|
|
||||||
INIT_STATIC_SPEC ("libgcc", &libgcc_spec),
|
|
||||||
+ INIT_STATIC_SPEC ("libgloss", &libgloss_spec),
|
|
||||||
INIT_STATIC_SPEC ("startfile", &startfile_spec),
|
|
||||||
INIT_STATIC_SPEC ("cross_compile", &cross_compile),
|
|
||||||
INIT_STATIC_SPEC ("version", &compiler_version),
|
|
||||||
diff -NBaur gcc-12.1.0-RC-20220429/libgcc/config/arm/t-bpabi gcc-12.1.0-RC-20220429-dkarm/libgcc/config/arm/t-bpabi
|
|
||||||
--- gcc-12.1.0-RC-20220429/libgcc/config/arm/t-bpabi 2022-04-29 14:58:25.000000000 +0100
|
|
||||||
+++ gcc-12.1.0-RC-20220429-dkarm/libgcc/config/arm/t-bpabi 2022-04-30 13:31:09.120134164 +0100
|
|
||||||
@@ -17,4 +17,4 @@
|
|
||||||
# On ARM, specifying -fnon-call-exceptions will needlessly pull in
|
|
||||||
# the unwinder in simple programs which use 64-bit division. Omitting
|
|
||||||
# the option is safe.
|
|
||||||
-LIB2_DIVMOD_EXCEPTION_FLAGS := -fexceptions
|
|
||||||
+LIB2_DIVMOD_EXCEPTION_FLAGS := -fno-exceptions
|
|
||||||
diff -NBaur gcc-12.1.0-RC-20220429/libgcc/crtstuff.c gcc-12.1.0-RC-20220429-dkarm/libgcc/crtstuff.c
|
|
||||||
--- gcc-12.1.0-RC-20220429/libgcc/crtstuff.c 2022-04-29 14:58:25.000000000 +0100
|
|
||||||
+++ gcc-12.1.0-RC-20220429-dkarm/libgcc/crtstuff.c 2022-04-30 13:31:09.120134164 +0100
|
|
||||||
@@ -325,7 +325,7 @@
|
|
||||||
|
|
||||||
#ifdef OBJECT_FORMAT_ELF
|
|
||||||
|
|
||||||
-#if DEFAULT_USE_CXA_ATEXIT
|
|
||||||
+#if 1 /* DEFAULT_USE_CXA_ATEXIT */
|
|
||||||
/* Declare the __dso_handle variable. It should have a unique value
|
|
||||||
in every shared-object; in a main program its value is zero. The
|
|
||||||
object should in any case be protected. This means the instance
|
|
||||||
370
dkarm-eabi/patches/gcc-12.2.0.patch
Normal file
370
dkarm-eabi/patches/gcc-12.2.0.patch
Normal file
@@ -0,0 +1,370 @@
|
|||||||
|
diff --git a/gcc/config.gcc b/gcc/config.gcc
|
||||||
|
index c5064dd3766..b244608f001 100644
|
||||||
|
--- a/gcc/config.gcc
|
||||||
|
+++ b/gcc/config.gcc
|
||||||
|
@@ -1366,6 +1366,11 @@ arm*-*-eabi* | arm*-*-symbianelf* | arm*-*-rtems* | arm*-*-fuchsia*)
|
||||||
|
tm_file="$tm_file newlib-stdint.h"
|
||||||
|
tmake_file="${tmake_file} arm/t-bpabi"
|
||||||
|
use_gcc_stdint=wrap
|
||||||
|
+ tm_file="${tm_file} devkitpro.h"
|
||||||
|
+ extra_options="${extra_options} devkitpro.opt"
|
||||||
|
+ case ${enable_threads} in
|
||||||
|
+ "" | yes | posix) thread_file='posix' ;;
|
||||||
|
+ esac
|
||||||
|
;;
|
||||||
|
arm*-*-fuchsia*)
|
||||||
|
tm_file="${tm_file} fuchsia.h arm/fuchsia-elf.h glibc-stdint.h"
|
||||||
|
diff --git a/gcc/config/arm/arm-cpus.in b/gcc/config/arm/arm-cpus.in
|
||||||
|
index 0d3082b569f..15be7fc47b3 100644
|
||||||
|
--- a/gcc/config/arm/arm-cpus.in
|
||||||
|
+++ b/gcc/config/arm/arm-cpus.in
|
||||||
|
@@ -412,7 +412,7 @@ begin arch armv6k
|
||||||
|
tune for mpcore
|
||||||
|
tune flags CO_PROC
|
||||||
|
base 6K
|
||||||
|
- isa ARMv6k
|
||||||
|
+ isa ARMv6k VFPv2 FP_DBL
|
||||||
|
option fp add VFPv2 FP_DBL
|
||||||
|
optalias vfpv2 fp
|
||||||
|
option nofp remove ALL_FP
|
||||||
|
diff --git a/gcc/config/arm/t-arm-elf b/gcc/config/arm/t-arm-elf
|
||||||
|
index 1459afea921..72e1d20861d 100644
|
||||||
|
--- a/gcc/config/arm/t-arm-elf
|
||||||
|
+++ b/gcc/config/arm/t-arm-elf
|
||||||
|
@@ -16,120 +16,22 @@
|
||||||
|
# along with GCC; see the file COPYING3. If not see
|
||||||
|
# <http://www.gnu.org/licenses/>.
|
||||||
|
|
||||||
|
-# Build a very basic set of libraries that should cater for most cases.
|
||||||
|
-
|
||||||
|
-# Single-precision floating-point is NOT supported; we don't build a
|
||||||
|
-# suitable library for that. Use the rm-profile config in that case.
|
||||||
|
-
|
||||||
|
-# PART 1 - Useful groups of options
|
||||||
|
-
|
||||||
|
-dp_fpus := vfp vfpv2 vfpv3 vfpv3-fp16 vfpv3-d16 vfpv3-d16-fp16 \
|
||||||
|
- neon neon-vfpv3 neon-fp16 vfpv4 neon-vfpv4 vfpv4-d16 \
|
||||||
|
- fpv5-d16 fp-armv8 neon-fp-armv8 crypto-neon-fp-armv8 \
|
||||||
|
- vfp3
|
||||||
|
-
|
||||||
|
-sp_fpus := vfpv3xd vfpv3xd-fp16 fpv4-sp-d16 fpv5-sp-d16
|
||||||
|
-
|
||||||
|
-v7a_fps := vfpv3 vfpv3-fp16 vfpv4 simd neon-fp16 neon-vfpv4
|
||||||
|
-v7ve_fps := vfpv3-d16 vfpv3 vfpv3-d16-fp16 vfpv3-fp16 vfpv4 neon \
|
||||||
|
- neon-fp16 simd
|
||||||
|
-
|
||||||
|
-# Not all these permutations exist for all architecture variants, but
|
||||||
|
-# it seems to work ok.
|
||||||
|
-v8_fps := simd fp16 crypto fp16+crypto dotprod fp16fml
|
||||||
|
-
|
||||||
|
-v9_fps := simd fp16 crypto fp16+crypto dotprod fp16fml
|
||||||
|
-
|
||||||
|
-# We don't do anything special with these. Pre-v4t probably doesn't work.
|
||||||
|
-all_early_nofp := armv4 armv4t armv5t
|
||||||
|
-
|
||||||
|
-all_early_arch := armv5tej armv6 armv6j armv6k armv6z armv6kz \
|
||||||
|
- armv6zk armv6t2 iwmmxt iwmmxt2
|
||||||
|
-
|
||||||
|
-all_v7_a_r := armv7-a armv7ve armv7-r
|
||||||
|
-
|
||||||
|
-all_v8_archs := armv8-a armv8-a+crc armv8.1-a armv8.2-a armv8.3-a armv8.4-a \
|
||||||
|
- armv8.5-a armv8.6-a
|
||||||
|
-
|
||||||
|
-all_v9_archs := armv9-a
|
||||||
|
-
|
||||||
|
-# No floating point variants, require thumb1 softfp
|
||||||
|
-all_nofp_t := armv6-m armv6s-m armv8-m.base
|
||||||
|
-
|
||||||
|
-all_nofp_t2 := armv7-m
|
||||||
|
-
|
||||||
|
-all_sp_only := armv7e-m armv8-m.main
|
||||||
|
-
|
||||||
|
-MULTILIB_OPTIONS =
|
||||||
|
-MULTILIB_DIRNAMES =
|
||||||
|
+MULTILIB_OPTIONS = mthumb mbig-endian march=armv6k march=armv6s-m mfloat-abi=hard mfloat-abi=soft
|
||||||
|
+MULTILIB_DIRNAMES = thumb be armv6k v6-m fpu nofp
|
||||||
|
MULTILIB_EXCEPTIONS =
|
||||||
|
MULTILIB_MATCHES =
|
||||||
|
-MULTILIB_REUSE =
|
||||||
|
-
|
||||||
|
-# PART 2 - multilib build rules
|
||||||
|
-
|
||||||
|
-MULTILIB_OPTIONS += marm/mthumb
|
||||||
|
-MULTILIB_DIRNAMES += arm thumb
|
||||||
|
-
|
||||||
|
-MULTILIB_OPTIONS += mfpu=auto
|
||||||
|
-MULTILIB_DIRNAMES += autofp
|
||||||
|
-
|
||||||
|
-MULTILIB_OPTIONS += march=armv5te+fp/march=armv7+fp
|
||||||
|
-MULTILIB_DIRNAMES += v5te v7
|
||||||
|
-
|
||||||
|
-MULTILIB_OPTIONS += mfloat-abi=hard
|
||||||
|
-MULTILIB_DIRNAMES += fpu
|
||||||
|
-
|
||||||
|
-# Build a total of 4 library variants (base options plus the following):
|
||||||
|
-MULTILIB_REQUIRED += mthumb
|
||||||
|
-MULTILIB_REQUIRED += marm/mfpu=auto/march=armv5te+fp/mfloat-abi=hard
|
||||||
|
-MULTILIB_REQUIRED += mthumb/mfpu=auto/march=armv7+fp/mfloat-abi=hard
|
||||||
|
-
|
||||||
|
-# PART 3 - Match rules
|
||||||
|
-
|
||||||
|
-# Map all supported FPUs onto mfpu=auto
|
||||||
|
-MULTILIB_MATCHES += $(foreach FPU, $(dp_fpus), \
|
||||||
|
- mfpu?auto=mfpu?$(FPU))
|
||||||
|
-
|
||||||
|
-MULTILIB_MATCHES += march?armv5te+fp=march?armv5te
|
||||||
|
-
|
||||||
|
-MULTILIB_MATCHES += $(foreach ARCH, $(all_early_arch), \
|
||||||
|
- march?armv5te+fp=march?$(ARCH) \
|
||||||
|
- march?armv5te+fp=march?$(ARCH)+fp)
|
||||||
|
-
|
||||||
|
-MULTILIB_MATCHES += march?armv7+fp=march?armv7
|
||||||
|
-
|
||||||
|
-MULTILIB_MATCHES += $(foreach FPARCH, $(v7a_fps), \
|
||||||
|
- march?armv7+fp=march?armv7-a+$(FPARCH))
|
||||||
|
-
|
||||||
|
-MULTILIB_MATCHES += $(foreach FPARCH, $(v7ve_fps), \
|
||||||
|
- march?armv7+fp=march?armv7ve+$(FPARCH))
|
||||||
|
-
|
||||||
|
-MULTILIB_MATCHES += $(foreach ARCH, $(all_v7_a_r), \
|
||||||
|
- march?armv7+fp=march?$(ARCH) \
|
||||||
|
- march?armv7+fp=march?$(ARCH)+fp)
|
||||||
|
|
||||||
|
-MULTILIB_MATCHES += $(foreach ARCH, $(all_v8_archs), \
|
||||||
|
- march?armv7+fp=march?$(ARCH) \
|
||||||
|
- $(foreach FPARCH, $(v8_fps), \
|
||||||
|
- march?armv7+fp=march?$(ARCH)+$(FPARCH)))
|
||||||
|
+MULTILIB_REQUIRED = mthumb mbig-endian mthumb/mbig-endian march=armv6k/mfloat-abi=hard mthumb/march=armv6s-m/mfloat-abi=soft
|
||||||
|
|
||||||
|
-MULTILIB_MATCHES += $(foreach ARCH, $(all_v9_archs), \
|
||||||
|
- march?armv7+fp=march?$(ARCH) \
|
||||||
|
- $(foreach FPARCH, $(v9_fps), \
|
||||||
|
- march?armv7+fp=march?$(ARCH)+$(FPARCH)))
|
||||||
|
|
||||||
|
-MULTILIB_MATCHES += $(foreach ARCH, armv7e-m armv8-m.mainline, \
|
||||||
|
- march?armv7+fp=march?$(ARCH)+fp.dp)
|
||||||
|
+MULTILIB_MATCHES += march?armv6k=mtune?mpcore
|
||||||
|
+MULTILIB_MATCHES += march?armv6k=mcpu?mpcore
|
||||||
|
|
||||||
|
-# PART 4 - Reuse rules
|
||||||
|
+MULTILIB_MATCHES += march?armv6s-m=mcpu?cortex-m0
|
||||||
|
+MULTILIB_MATCHES += march?armv6s-m=mtune?cortex-m0
|
||||||
|
+MULTILIB_MATCHES += march?armv6s-m=mcpu?cortex-m0plus
|
||||||
|
+MULTILIB_MATCHES += march?armv6s-m=mtune?cortex-m0plus
|
||||||
|
+MULTILIB_MATCHES += march?armv6s-m=mcpu?cortex-m1
|
||||||
|
+MULTILIB_MATCHES += march?armv6s-m=mtune?cortex-m1
|
||||||
|
|
||||||
|
-MULTILIB_REUSE += mthumb=mthumb/mfpu.auto
|
||||||
|
-MULTILIB_REUSE += mthumb=mthumb/mfpu.auto/march.armv5te+fp
|
||||||
|
-MULTILIB_REUSE += mthumb=mthumb/march.armv5te+fp
|
||||||
|
-MULTILIB_REUSE += marm/mfpu.auto/march.armv5te+fp/mfloat-abi.hard=marm/march.armv5te+fp/mfloat-abi.hard
|
||||||
|
-MULTILIB_REUSE += marm/mfpu.auto/march.armv5te+fp/mfloat-abi.hard=march.armv5te+fp/mfloat-abi.hard
|
||||||
|
-MULTILIB_REUSE += marm/mfpu.auto/march.armv5te+fp/mfloat-abi.hard=mfpu.auto/march.armv5te+fp/mfloat-abi.hard
|
||||||
|
-MULTILIB_REUSE += mthumb/mfpu.auto/march.armv7+fp/mfloat-abi.hard=mthumb/march.armv7+fp/mfloat-abi.hard
|
||||||
|
-MULTILIB_REUSE += mthumb/mfpu.auto/march.armv7+fp/mfloat-abi.hard=mfpu.auto/march.armv7+fp/mfloat-abi.hard
|
||||||
|
-MULTILIB_REUSE += mthumb/mfpu.auto/march.armv7+fp/mfloat-abi.hard=march.armv7+fp/mfloat-abi.hard
|
||||||
|
+MULTILIB_REUSE = mthumb/march.armv6s-m/mfloat-abi.soft=mthumb/march.armv6s-m
|
||||||
|
diff --git a/gcc/config/arm/unknown-elf.h b/gcc/config/arm/unknown-elf.h
|
||||||
|
index bfb294beaa3..7e2e1c7bbbe 100644
|
||||||
|
--- a/gcc/config/arm/unknown-elf.h
|
||||||
|
+++ b/gcc/config/arm/unknown-elf.h
|
||||||
|
@@ -29,7 +29,7 @@
|
||||||
|
#endif
|
||||||
|
|
||||||
|
/* Now we define the strings used to build the spec file. */
|
||||||
|
-#define UNKNOWN_ELF_STARTFILE_SPEC " crti%O%s crtbegin%O%s crt0%O%s"
|
||||||
|
+#define UNKNOWN_ELF_STARTFILE_SPEC " crti%O%s crtbegin%O%s"
|
||||||
|
|
||||||
|
#undef STARTFILE_SPEC
|
||||||
|
#define STARTFILE_SPEC \
|
||||||
|
@@ -93,4 +93,5 @@
|
||||||
|
udivmoddi4, which will depend on the exception unwind routines,
|
||||||
|
which will depend on abort, which is defined in libc. */
|
||||||
|
#undef LINK_GCC_C_SEQUENCE_SPEC
|
||||||
|
-#define LINK_GCC_C_SEQUENCE_SPEC "--start-group %G %{!nolibc:%L} --end-group"
|
||||||
|
+#define LINK_GCC_C_SEQUENCE_SPEC "--start-group %G %L %(libgloss) --end-group"
|
||||||
|
+
|
||||||
|
diff --git a/gcc/config/devkitpro.h b/gcc/config/devkitpro.h
|
||||||
|
new file mode 100644
|
||||||
|
index 00000000000..180a9ea8553
|
||||||
|
--- /dev/null
|
||||||
|
+++ b/gcc/config/devkitpro.h
|
||||||
|
@@ -0,0 +1,27 @@
|
||||||
|
+/* Definitions for devkitPro toolchains.
|
||||||
|
+ Copyright (C) 2016-2018 Free Software Foundation, Inc.
|
||||||
|
+ This file is part of GCC.
|
||||||
|
+ GCC is free software; you can redistribute it and/or modify it
|
||||||
|
+ under the terms of the GNU General Public License as published
|
||||||
|
+ by the Free Software Foundation; either version 3, or (at your
|
||||||
|
+ option) any later version.
|
||||||
|
+ GCC is distributed in the hope that it will be useful, but WITHOUT
|
||||||
|
+ ANY WARRANTY; without even the implied warranty of MERCHANTABILITY
|
||||||
|
+ or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public
|
||||||
|
+ License for more details.
|
||||||
|
+ Under Section 7 of GPL version 3, you are granted additional
|
||||||
|
+ permissions described in the GCC Runtime Library Exception, version
|
||||||
|
+ 3.1, as published by the Free Software Foundation.
|
||||||
|
+ You should have received a copy of the GNU General Public License and
|
||||||
|
+ a copy of the GCC Runtime Library Exception along with this program;
|
||||||
|
+ see the files COPYING3 and COPYING.RUNTIME respectively. If not, see
|
||||||
|
+ <http://www.gnu.org/licenses/>. */
|
||||||
|
+
|
||||||
|
+#undef TARGET_OS_CPP_BUILTINS
|
||||||
|
+#define TARGET_OS_CPP_BUILTINS() \
|
||||||
|
+ do { \
|
||||||
|
+ builtin_define ("__DEVKITPRO__"); \
|
||||||
|
+ builtin_define ("__DEVKITARM__"); \
|
||||||
|
+ } while (0)
|
||||||
|
+
|
||||||
|
+
|
||||||
|
diff --git a/gcc/config/devkitpro.opt b/gcc/config/devkitpro.opt
|
||||||
|
new file mode 100644
|
||||||
|
index 00000000000..9acbbf9d27c
|
||||||
|
--- /dev/null
|
||||||
|
+++ b/gcc/config/devkitpro.opt
|
||||||
|
@@ -0,0 +1,29 @@
|
||||||
|
+; Options for devkitPro toolchains.
|
||||||
|
+
|
||||||
|
+; Copyright (C) 2011-2018 Free Software Foundation, Inc.
|
||||||
|
+;
|
||||||
|
+; This file is part of GCC.
|
||||||
|
+;
|
||||||
|
+; GCC is free software; you can redistribute it and/or modify it under
|
||||||
|
+; the terms of the GNU General Public License as published by the Free
|
||||||
|
+; Software Foundation; either version 3, or (at your option) any later
|
||||||
|
+; version.
|
||||||
|
+;
|
||||||
|
+; GCC is distributed in the hope that it will be useful, but WITHOUT ANY
|
||||||
|
+; WARRANTY; without even the implied warranty of MERCHANTABILITY or
|
||||||
|
+; FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
|
||||||
|
+; for more details.
|
||||||
|
+;
|
||||||
|
+; You should have received a copy of the GNU General Public License
|
||||||
|
+; along with GCC; see the file COPYING3. If not see
|
||||||
|
+; <http://www.gnu.org/licenses/>.
|
||||||
|
+
|
||||||
|
+; See the GCC internals manual (options.texi) for a description of
|
||||||
|
+; this file's format.
|
||||||
|
+
|
||||||
|
+; Please try to keep this file in ASCII collating order.
|
||||||
|
+
|
||||||
|
+pthread
|
||||||
|
+Driver
|
||||||
|
+
|
||||||
|
+; This comment is to ensure we retain the blank line above.
|
||||||
|
diff --git a/gcc/config/i386/host-mingw32.cc b/gcc/config/i386/host-mingw32.cc
|
||||||
|
index 3b0d83ffc60..6e063b6ccd0 100644
|
||||||
|
--- a/gcc/config/i386/host-mingw32.cc
|
||||||
|
+++ b/gcc/config/i386/host-mingw32.cc
|
||||||
|
@@ -45,7 +45,11 @@ static size_t mingw32_gt_pch_alloc_granularity (void);
|
||||||
|
static inline void w32_error(const char*, const char*, int, const char*);
|
||||||
|
|
||||||
|
/* FIXME: Is this big enough? */
|
||||||
|
+#if __MINGW64__
|
||||||
|
+static const size_t pch_VA_max_size = UINT64_C(64 * 1024 * 1024 * 1024);
|
||||||
|
+#else
|
||||||
|
static const size_t pch_VA_max_size = 128 * 1024 * 1024;
|
||||||
|
+#endif
|
||||||
|
|
||||||
|
/* Granularity for reserving address space. */
|
||||||
|
static size_t va_granularity = 0x10000;
|
||||||
|
diff --git a/gcc/gcc.cc b/gcc/gcc.cc
|
||||||
|
index bb07cc244e3..eff31f5093d 100644
|
||||||
|
--- a/gcc/gcc.cc
|
||||||
|
+++ b/gcc/gcc.cc
|
||||||
|
@@ -860,6 +860,11 @@ proper position among the other output files. */
|
||||||
|
#endif
|
||||||
|
#endif
|
||||||
|
|
||||||
|
+#ifndef LIBGLOSS_SPEC
|
||||||
|
+# define LIBGLOSS_SPEC "-lsysbase"
|
||||||
|
+#endif
|
||||||
|
+
|
||||||
|
+
|
||||||
|
/* config.h can define STARTFILE_SPEC to override the default crt0 files. */
|
||||||
|
#ifndef STARTFILE_SPEC
|
||||||
|
#define STARTFILE_SPEC \
|
||||||
|
@@ -1204,6 +1209,7 @@ static const char *link_spec = LINK_SPEC;
|
||||||
|
static const char *lib_spec = LIB_SPEC;
|
||||||
|
static const char *link_gomp_spec = "";
|
||||||
|
static const char *libgcc_spec = LIBGCC_SPEC;
|
||||||
|
+static const char *libgloss_spec = LIBGLOSS_SPEC;
|
||||||
|
static const char *endfile_spec = ENDFILE_SPEC;
|
||||||
|
static const char *startfile_spec = STARTFILE_SPEC;
|
||||||
|
static const char *linker_name_spec = LINKER_NAME;
|
||||||
|
@@ -1709,6 +1715,7 @@ static struct spec_list static_specs[] =
|
||||||
|
INIT_STATIC_SPEC ("lib", &lib_spec),
|
||||||
|
INIT_STATIC_SPEC ("link_gomp", &link_gomp_spec),
|
||||||
|
INIT_STATIC_SPEC ("libgcc", &libgcc_spec),
|
||||||
|
+ INIT_STATIC_SPEC ("libgloss", &libgloss_spec),
|
||||||
|
INIT_STATIC_SPEC ("startfile", &startfile_spec),
|
||||||
|
INIT_STATIC_SPEC ("cross_compile", &cross_compile),
|
||||||
|
INIT_STATIC_SPEC ("version", &compiler_version),
|
||||||
|
diff --git a/libgcc/config/arm/t-bpabi b/libgcc/config/arm/t-bpabi
|
||||||
|
index dddddc7c444..c2502597953 100644
|
||||||
|
--- a/libgcc/config/arm/t-bpabi
|
||||||
|
+++ b/libgcc/config/arm/t-bpabi
|
||||||
|
@@ -17,4 +17,4 @@ SHLIB_MAPFILES += $(srcdir)/config/arm/libgcc-bpabi.ver
|
||||||
|
# On ARM, specifying -fnon-call-exceptions will needlessly pull in
|
||||||
|
# the unwinder in simple programs which use 64-bit division. Omitting
|
||||||
|
# the option is safe.
|
||||||
|
-LIB2_DIVMOD_EXCEPTION_FLAGS := -fexceptions
|
||||||
|
+LIB2_DIVMOD_EXCEPTION_FLAGS := -fno-exceptions
|
||||||
|
diff --git a/libgcc/crtstuff.c b/libgcc/crtstuff.c
|
||||||
|
index b98b86a5a88..3f62b3616d2 100644
|
||||||
|
--- a/libgcc/crtstuff.c
|
||||||
|
+++ b/libgcc/crtstuff.c
|
||||||
|
@@ -325,7 +325,7 @@ register_tm_clones (void)
|
||||||
|
|
||||||
|
#ifdef OBJECT_FORMAT_ELF
|
||||||
|
|
||||||
|
-#if DEFAULT_USE_CXA_ATEXIT
|
||||||
|
+#if 1 /* DEFAULT_USE_CXA_ATEXIT */
|
||||||
|
/* Declare the __dso_handle variable. It should have a unique value
|
||||||
|
in every shared-object; in a main program its value is zero. The
|
||||||
|
object should in any case be protected. This means the instance
|
||||||
|
diff --git a/libgcc/gthr.h b/libgcc/gthr.h
|
||||||
|
index 7943c94f6d1..1edc5360f6a 100644
|
||||||
|
--- a/libgcc/gthr.h
|
||||||
|
+++ b/libgcc/gthr.h
|
||||||
|
@@ -136,7 +136,7 @@ see the files COPYING3 and COPYING.RUNTIME respectively. If not, see
|
||||||
|
/* The pe-coff weak support isn't fully compatible to ELF's weak.
|
||||||
|
For static libraries it might would work, but as we need to deal
|
||||||
|
with shared versions too, we disable it for mingw-targets. */
|
||||||
|
-#ifdef __MINGW32__
|
||||||
|
+#ifdef __MINGW32__ || defined(__DEVKITARM__)
|
||||||
|
#undef GTHREAD_USE_WEAK
|
||||||
|
#define GTHREAD_USE_WEAK 0
|
||||||
|
#endif
|
||||||
|
diff --git a/libstdc++-v3/include/Makefile.am b/libstdc++-v3/include/Makefile.am
|
||||||
|
index 7708f4cf6c5..01743392303 100644
|
||||||
|
--- a/libstdc++-v3/include/Makefile.am
|
||||||
|
+++ b/libstdc++-v3/include/Makefile.am
|
||||||
|
@@ -1366,6 +1366,7 @@ ${host_builddir}/gthr.h: ${toplevel_srcdir}/libgcc/gthr.h stamp-${host_alias}
|
||||||
|
-e '/^#/s/\(${uppercase}${uppercase}*\)/_GLIBCXX_\1/g' \
|
||||||
|
-e 's/_GLIBCXX_SUPPORTS_WEAK/__GXX_WEAK__/g' \
|
||||||
|
-e 's/_GLIBCXX___MINGW32_GLIBCXX___/__MINGW32__/g' \
|
||||||
|
+ -e 's/_GLIBCXX___DEVKITARM_GLIBCXX___/__DEVKITARM__/g' \
|
||||||
|
-e 's,^#include "\(.*\)",#include <bits/\1>,g' \
|
||||||
|
< $< > $@
|
||||||
|
|
||||||
|
diff --git a/libstdc++-v3/include/Makefile.in b/libstdc++-v3/include/Makefile.in
|
||||||
|
index 7023c2de23e..33bec80c2ce 100644
|
||||||
|
--- a/libstdc++-v3/include/Makefile.in
|
||||||
|
+++ b/libstdc++-v3/include/Makefile.in
|
||||||
|
@@ -336,6 +336,7 @@ prefix = @prefix@
|
||||||
|
program_transform_name = @program_transform_name@
|
||||||
|
psdir = @psdir@
|
||||||
|
python_mod_dir = @python_mod_dir@
|
||||||
|
+runstatedir = @runstatedir@
|
||||||
|
sbindir = @sbindir@
|
||||||
|
sharedstatedir = @sharedstatedir@
|
||||||
|
srcdir = @srcdir@
|
||||||
|
@@ -1857,6 +1858,7 @@ ${host_builddir}/gthr.h: ${toplevel_srcdir}/libgcc/gthr.h stamp-${host_alias}
|
||||||
|
-e '/^#/s/\(${uppercase}${uppercase}*\)/_GLIBCXX_\1/g' \
|
||||||
|
-e 's/_GLIBCXX_SUPPORTS_WEAK/__GXX_WEAK__/g' \
|
||||||
|
-e 's/_GLIBCXX___MINGW32_GLIBCXX___/__MINGW32__/g' \
|
||||||
|
+ -e 's/_GLIBCXX___DEVKITARM_GLIBCXX___/__DEVKITARM__/g' \
|
||||||
|
-e 's,^#include "\(.*\)",#include <bits/\1>,g' \
|
||||||
|
< $< > $@
|
||||||
|
|
||||||
File diff suppressed because it is too large
Load Diff
12094
dkarm-eabi/patches/newlib-4.3.0.20230120.patch
Normal file
12094
dkarm-eabi/patches/newlib-4.3.0.20230120.patch
Normal file
File diff suppressed because it is too large
Load Diff
@@ -66,7 +66,7 @@ then
|
|||||||
--with-system-zlib \
|
--with-system-zlib \
|
||||||
--disable-tm-clone-registry \
|
--disable-tm-clone-registry \
|
||||||
--disable-__cxa_atexit \
|
--disable-__cxa_atexit \
|
||||||
--with-bugurl="http://wiki.devkitpro.org/index.php/Bug_Reports" --with-pkgversion="devkitARM release 58" \
|
--with-bugurl="http://wiki.devkitpro.org/index.php/Bug_Reports" --with-pkgversion="devkitARM release 60" \
|
||||||
$CROSS_PARAMS \
|
$CROSS_PARAMS \
|
||||||
$CROSS_GCC_PARAMS \
|
$CROSS_GCC_PARAMS \
|
||||||
$EXTRA_GCC_PARAMS \
|
$EXTRA_GCC_PARAMS \
|
||||||
|
|||||||
@@ -1,12 +0,0 @@
|
|||||||
diff -NBaur binutils-2.36.1/opcodes/ppc-opc.c binutils-2.36.1-ppc/opcodes/ppc-opc.c
|
|
||||||
--- binutils-2.36.1/opcodes/ppc-opc.c 2021-01-09 10:47:34.000000000 +0000
|
|
||||||
+++ binutils-2.36.1-ppc/opcodes/ppc-opc.c 2021-02-14 19:41:09.350749949 +0000
|
|
||||||
@@ -4225,7 +4225,7 @@
|
|
||||||
#define MFDEC2 (PPC_OPCODE_PPC | PPC_OPCODE_601 | PPC_OPCODE_BOOKE \
|
|
||||||
| PPC_OPCODE_TITAN)
|
|
||||||
#define BOOKE PPC_OPCODE_BOOKE
|
|
||||||
-#define NO371 PPC_OPCODE_BOOKE | PPC_OPCODE_PPCPS | PPC_OPCODE_EFS
|
|
||||||
+#define NO371 PPC_OPCODE_BOOKE | PPC_OPCODE_EFS
|
|
||||||
#define PPCE300 PPC_OPCODE_E300
|
|
||||||
#define PPCSPE PPC_OPCODE_SPE
|
|
||||||
#define PPCSPE2 PPC_OPCODE_SPE2
|
|
||||||
@@ -1,8 +1,7 @@
|
|||||||
diff --git a/config/gthr.m4 b/config/gthr.m4
|
diff -NBaur gcc-12.1.0/config/gthr.m4 gcc-12.1.0-dkppc/config/gthr.m4
|
||||||
index 4b937306ad0..bfd0375bd60 100644
|
--- gcc-12.1.0/config/gthr.m4 2022-05-06 08:30:56.000000000 +0100
|
||||||
--- a/config/gthr.m4
|
+++ gcc-12.1.0-dkppc/config/gthr.m4 2022-05-06 19:17:44.784777075 +0100
|
||||||
+++ b/config/gthr.m4
|
@@ -13,6 +13,7 @@
|
||||||
@@ -13,6 +13,7 @@ AC_DEFUN([GCC_AC_THREAD_HEADER],
|
|
||||||
case $1 in
|
case $1 in
|
||||||
aix) thread_header=config/rs6000/gthr-aix.h ;;
|
aix) thread_header=config/rs6000/gthr-aix.h ;;
|
||||||
dce) thread_header=config/pa/gthr-dce.h ;;
|
dce) thread_header=config/pa/gthr-dce.h ;;
|
||||||
@@ -10,73 +9,10 @@ index 4b937306ad0..bfd0375bd60 100644
|
|||||||
gcn) thread_header=config/gcn/gthr-gcn.h ;;
|
gcn) thread_header=config/gcn/gthr-gcn.h ;;
|
||||||
lynx) thread_header=config/gthr-lynx.h ;;
|
lynx) thread_header=config/gthr-lynx.h ;;
|
||||||
mipssde) thread_header=config/mips/gthr-mipssde.h ;;
|
mipssde) thread_header=config/mips/gthr-mipssde.h ;;
|
||||||
diff --git a/gcc/config.host b/gcc/config.host
|
diff -NBaur gcc-12.1.0/gcc/config/i386/host-mingw32.cc gcc-12.1.0-dkppc/gcc/config/i386/host-mingw32.cc
|
||||||
index 0a02c33cc80..38f7adc655e 100644
|
--- gcc-12.1.0/gcc/config/i386/host-mingw32.cc 2022-05-06 08:30:56.000000000 +0100
|
||||||
--- a/gcc/config.host
|
+++ gcc-12.1.0-dkppc/gcc/config/i386/host-mingw32.cc 2022-05-06 19:17:44.784777075 +0100
|
||||||
+++ b/gcc/config.host
|
@@ -45,7 +45,11 @@
|
||||||
@@ -251,6 +251,10 @@ case ${host} in
|
|
||||||
host_extra_gcc_objs="${host_extra_gcc_objs} driver-mingw32.o"
|
|
||||||
host_lto_plugin_soname=liblto_plugin.dll
|
|
||||||
;;
|
|
||||||
+ aarch64-*-darwin*)
|
|
||||||
+ out_host_hook_obj="${out_host_hook_obj} host-aarch64-darwin.o"
|
|
||||||
+ host_xmake_file="${host_xmake_file} aarch64/x-darwin"
|
|
||||||
+ ;;
|
|
||||||
i[34567]86-*-darwin* | x86_64-*-darwin*)
|
|
||||||
out_host_hook_obj="${out_host_hook_obj} host-i386-darwin.o"
|
|
||||||
host_xmake_file="${host_xmake_file} i386/x-darwin"
|
|
||||||
diff --git a/gcc/config/aarch64/host-aarch64-darwin.c b/gcc/config/aarch64/host-aarch64-darwin.c
|
|
||||||
new file mode 100644
|
|
||||||
index 00000000000..92c38b0b9db
|
|
||||||
--- /dev/null
|
|
||||||
+++ b/gcc/config/aarch64/host-aarch64-darwin.c
|
|
||||||
@@ -0,0 +1,32 @@
|
|
||||||
+/* i386-darwin host-specific hook definitions.
|
|
||||||
+ Copyright (C) 2003-2021 Free Software Foundation, Inc.
|
|
||||||
+
|
|
||||||
+This file is part of GCC.
|
|
||||||
+
|
|
||||||
+GCC is free software; you can redistribute it and/or modify it under
|
|
||||||
+the terms of the GNU General Public License as published by the Free
|
|
||||||
+Software Foundation; either version 3, or (at your option) any later
|
|
||||||
+version.
|
|
||||||
+
|
|
||||||
+GCC is distributed in the hope that it will be useful, but WITHOUT ANY
|
|
||||||
+WARRANTY; without even the implied warranty of MERCHANTABILITY or
|
|
||||||
+FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
|
|
||||||
+for more details.
|
|
||||||
+
|
|
||||||
+You should have received a copy of the GNU General Public License
|
|
||||||
+along with GCC; see the file COPYING3. If not see
|
|
||||||
+<http://www.gnu.org/licenses/>. */
|
|
||||||
+
|
|
||||||
+#define IN_TARGET_CODE 1
|
|
||||||
+
|
|
||||||
+#include "config.h"
|
|
||||||
+#include "system.h"
|
|
||||||
+#include "coretypes.h"
|
|
||||||
+#include "hosthooks.h"
|
|
||||||
+#include "hosthooks-def.h"
|
|
||||||
+#include "config/host-darwin.h"
|
|
||||||
+
|
|
||||||
+/* Darwin doesn't do anything special for aarch64 hosts; this file exists just
|
|
||||||
+ to include config/host-darwin.h. */
|
|
||||||
+
|
|
||||||
+const struct host_hooks host_hooks = HOST_HOOKS_INITIALIZER;
|
|
||||||
diff --git a/gcc/config/aarch64/x-darwin b/gcc/config/aarch64/x-darwin
|
|
||||||
new file mode 100644
|
|
||||||
index 00000000000..6d788d5e89c
|
|
||||||
--- /dev/null
|
|
||||||
+++ b/gcc/config/aarch64/x-darwin
|
|
||||||
@@ -0,0 +1,3 @@
|
|
||||||
+host-aarch64-darwin.o : $(srcdir)/config/aarch64/host-aarch64-darwin.c
|
|
||||||
+ $(COMPILE) $<
|
|
||||||
+ $(POSTCOMPILE)
|
|
||||||
diff --git a/gcc/config/i386/host-mingw32.c b/gcc/config/i386/host-mingw32.c
|
|
||||||
index 360a280b23a..2c03947999a 100644
|
|
||||||
--- a/gcc/config/i386/host-mingw32.c
|
|
||||||
+++ b/gcc/config/i386/host-mingw32.c
|
|
||||||
@@ -45,7 +45,11 @@ static size_t mingw32_gt_pch_alloc_granularity (void);
|
|
||||||
static inline void w32_error(const char*, const char*, int, const char*);
|
static inline void w32_error(const char*, const char*, int, const char*);
|
||||||
|
|
||||||
/* FIXME: Is this big enough? */
|
/* FIXME: Is this big enough? */
|
||||||
@@ -88,11 +24,10 @@ index 360a280b23a..2c03947999a 100644
|
|||||||
|
|
||||||
/* Granularity for reserving address space. */
|
/* Granularity for reserving address space. */
|
||||||
static size_t va_granularity = 0x10000;
|
static size_t va_granularity = 0x10000;
|
||||||
diff --git a/gcc/config/newlib-stdint.h b/gcc/config/newlib-stdint.h
|
diff -NBaur gcc-12.1.0/gcc/config/newlib-stdint.h gcc-12.1.0-dkppc/gcc/config/newlib-stdint.h
|
||||||
index 65d1fa2cd1f..51991aab75c 100644
|
--- gcc-12.1.0/gcc/config/newlib-stdint.h 2022-05-06 08:30:57.000000000 +0100
|
||||||
--- a/gcc/config/newlib-stdint.h
|
+++ gcc-12.1.0-dkppc/gcc/config/newlib-stdint.h 2022-05-06 19:17:44.784777075 +0100
|
||||||
+++ b/gcc/config/newlib-stdint.h
|
@@ -25,7 +25,7 @@
|
||||||
@@ -25,7 +25,7 @@ see the files COPYING3 and COPYING.RUNTIME respectively. If not, see
|
|
||||||
/* newlib uses 32-bit long in certain cases for all non-SPU
|
/* newlib uses 32-bit long in certain cases for all non-SPU
|
||||||
targets. */
|
targets. */
|
||||||
#ifndef STDINT_LONG32
|
#ifndef STDINT_LONG32
|
||||||
@@ -101,19 +36,18 @@ index 65d1fa2cd1f..51991aab75c 100644
|
|||||||
#endif
|
#endif
|
||||||
|
|
||||||
#define SIG_ATOMIC_TYPE "int"
|
#define SIG_ATOMIC_TYPE "int"
|
||||||
diff --git a/gcc/config/rs6000/rs6000.h b/gcc/config/rs6000/rs6000.h
|
diff -NBaur gcc-12.1.0/gcc/config/rs6000/rs6000.h gcc-12.1.0-dkppc/gcc/config/rs6000/rs6000.h
|
||||||
index a7953fad965..04abd41239b 100644
|
--- gcc-12.1.0/gcc/config/rs6000/rs6000.h 2022-05-06 08:30:57.000000000 +0100
|
||||||
--- a/gcc/config/rs6000/rs6000.h
|
+++ gcc-12.1.0-dkppc/gcc/config/rs6000/rs6000.h 2022-05-06 19:22:10.793624730 +0100
|
||||||
+++ b/gcc/config/rs6000/rs6000.h
|
@@ -196,6 +196,7 @@
|
||||||
@@ -196,6 +196,7 @@ ASM_OPT_ANY
|
|
||||||
/* -mcpu=native handling only makes sense with compiler running on
|
/* -mcpu=native handling only makes sense with compiler running on
|
||||||
an PowerPC chip. If changing this condition, also change
|
an PowerPC chip. If changing this condition, also change
|
||||||
the condition in driver-rs6000.c. */
|
the condition in driver-rs6000.cc. */
|
||||||
+#if 0
|
+#if 0
|
||||||
#if defined(__powerpc__) || defined(__POWERPC__) || defined(_AIX)
|
#if defined(__powerpc__) || defined(__POWERPC__) || defined(_AIX)
|
||||||
/* In driver-rs6000.c. */
|
/* In driver-rs6000.cc. */
|
||||||
extern const char *host_detect_local_cpu (int argc, const char **argv);
|
extern const char *host_detect_local_cpu (int argc, const char **argv);
|
||||||
@@ -207,6 +208,8 @@ extern const char *host_detect_local_cpu (int argc, const char **argv);
|
@@ -207,6 +208,8 @@
|
||||||
#else
|
#else
|
||||||
#define ASM_CPU_NATIVE_SPEC "%(asm_default)"
|
#define ASM_CPU_NATIVE_SPEC "%(asm_default)"
|
||||||
#endif
|
#endif
|
||||||
@@ -122,11 +56,10 @@ index a7953fad965..04abd41239b 100644
|
|||||||
|
|
||||||
#ifndef CC1_CPU_SPEC
|
#ifndef CC1_CPU_SPEC
|
||||||
#ifdef HAVE_LOCAL_CPU_DETECT
|
#ifdef HAVE_LOCAL_CPU_DETECT
|
||||||
diff --git a/gcc/config/rs6000/sysv4.h b/gcc/config/rs6000/sysv4.h
|
diff -NBaur gcc-12.1.0/gcc/config/rs6000/sysv4.h gcc-12.1.0-dkppc/gcc/config/rs6000/sysv4.h
|
||||||
index 510abe169c5..988e82007b0 100644
|
--- gcc-12.1.0/gcc/config/rs6000/sysv4.h 2022-05-06 08:30:57.000000000 +0100
|
||||||
--- a/gcc/config/rs6000/sysv4.h
|
+++ gcc-12.1.0-dkppc/gcc/config/rs6000/sysv4.h 2022-05-06 19:17:44.784777075 +0100
|
||||||
+++ b/gcc/config/rs6000/sysv4.h
|
@@ -589,7 +589,11 @@
|
||||||
@@ -590,7 +590,11 @@ GNU_USER_TARGET_CC1_SPEC
|
|
||||||
|
|
||||||
/* Default starting address if specified. */
|
/* Default starting address if specified. */
|
||||||
#define LINK_START_SPEC "\
|
#define LINK_START_SPEC "\
|
||||||
@@ -139,7 +72,7 @@ index 510abe169c5..988e82007b0 100644
|
|||||||
myellowknife : %(link_start_yellowknife) ; \
|
myellowknife : %(link_start_yellowknife) ; \
|
||||||
mmvme : %(link_start_mvme) ; \
|
mmvme : %(link_start_mvme) ; \
|
||||||
msim : %(link_start_sim) ; \
|
msim : %(link_start_sim) ; \
|
||||||
@@ -621,7 +625,8 @@ GNU_USER_TARGET_CC1_SPEC
|
@@ -620,7 +624,8 @@
|
||||||
|
|
||||||
/* Any specific OS flags. */
|
/* Any specific OS flags. */
|
||||||
#define LINK_OS_SPEC "\
|
#define LINK_OS_SPEC "\
|
||||||
@@ -149,7 +82,7 @@ index 510abe169c5..988e82007b0 100644
|
|||||||
myellowknife : %(link_os_yellowknife) ; \
|
myellowknife : %(link_os_yellowknife) ; \
|
||||||
mmvme : %(link_os_mvme) ; \
|
mmvme : %(link_os_mvme) ; \
|
||||||
msim : %(link_os_sim) ; \
|
msim : %(link_os_sim) ; \
|
||||||
@@ -636,7 +641,10 @@ GNU_USER_TARGET_CC1_SPEC
|
@@ -635,7 +640,10 @@
|
||||||
/* Override rs6000.h definition. */
|
/* Override rs6000.h definition. */
|
||||||
#undef CPP_SPEC
|
#undef CPP_SPEC
|
||||||
#define CPP_SPEC "%{posix: -D_POSIX_SOURCE} \
|
#define CPP_SPEC "%{posix: -D_POSIX_SOURCE} \
|
||||||
@@ -161,7 +94,7 @@ index 510abe169c5..988e82007b0 100644
|
|||||||
myellowknife : %(cpp_os_yellowknife) ; \
|
myellowknife : %(cpp_os_yellowknife) ; \
|
||||||
mmvme : %(cpp_os_mvme) ; \
|
mmvme : %(cpp_os_mvme) ; \
|
||||||
msim : %(cpp_os_sim) ; \
|
msim : %(cpp_os_sim) ; \
|
||||||
@@ -650,7 +658,10 @@ GNU_USER_TARGET_CC1_SPEC
|
@@ -649,7 +657,10 @@
|
||||||
|
|
||||||
#undef STARTFILE_SPEC
|
#undef STARTFILE_SPEC
|
||||||
#define STARTFILE_SPEC "\
|
#define STARTFILE_SPEC "\
|
||||||
@@ -173,7 +106,7 @@ index 510abe169c5..988e82007b0 100644
|
|||||||
myellowknife : %(startfile_yellowknife) ; \
|
myellowknife : %(startfile_yellowknife) ; \
|
||||||
mmvme : %(startfile_mvme) ; \
|
mmvme : %(startfile_mvme) ; \
|
||||||
msim : %(startfile_sim) ; \
|
msim : %(startfile_sim) ; \
|
||||||
@@ -664,7 +675,8 @@ GNU_USER_TARGET_CC1_SPEC
|
@@ -663,7 +674,8 @@
|
||||||
|
|
||||||
#undef LIB_SPEC
|
#undef LIB_SPEC
|
||||||
#define LIB_SPEC "\
|
#define LIB_SPEC "\
|
||||||
@@ -183,7 +116,7 @@ index 510abe169c5..988e82007b0 100644
|
|||||||
myellowknife : %(lib_yellowknife) ; \
|
myellowknife : %(lib_yellowknife) ; \
|
||||||
mmvme : %(lib_mvme) ; \
|
mmvme : %(lib_mvme) ; \
|
||||||
msim : %(lib_sim) ; \
|
msim : %(lib_sim) ; \
|
||||||
@@ -674,11 +686,12 @@ GNU_USER_TARGET_CC1_SPEC
|
@@ -673,11 +685,12 @@
|
||||||
mcall-openbsd: %(lib_openbsd) ; \
|
mcall-openbsd: %(lib_openbsd) ; \
|
||||||
: %(lib_default) }"
|
: %(lib_default) }"
|
||||||
|
|
||||||
@@ -198,7 +131,7 @@ index 510abe169c5..988e82007b0 100644
|
|||||||
myellowknife : %(endfile_yellowknife) ; \
|
myellowknife : %(endfile_yellowknife) ; \
|
||||||
mmvme : %(endfile_mvme) ; \
|
mmvme : %(endfile_mvme) ; \
|
||||||
msim : %(endfile_sim) ; \
|
msim : %(endfile_sim) ; \
|
||||||
@@ -694,16 +707,27 @@ GNU_USER_TARGET_CC1_SPEC
|
@@ -693,16 +706,27 @@
|
||||||
|
|
||||||
/* Motorola ADS support. */
|
/* Motorola ADS support. */
|
||||||
#define LIB_ADS_SPEC "--start-group -lads -lc --end-group"
|
#define LIB_ADS_SPEC "--start-group -lads -lc --end-group"
|
||||||
@@ -226,7 +159,7 @@ index 510abe169c5..988e82007b0 100644
|
|||||||
|
|
||||||
/* Motorola Yellowknife support. */
|
/* Motorola Yellowknife support. */
|
||||||
#define LIB_YELLOWKNIFE_SPEC "--start-group -lyk -lc --end-group"
|
#define LIB_YELLOWKNIFE_SPEC "--start-group -lyk -lc --end-group"
|
||||||
@@ -851,6 +875,7 @@ ncrtn.o%s"
|
@@ -850,6 +874,7 @@
|
||||||
#undef SUBTARGET_EXTRA_SPECS
|
#undef SUBTARGET_EXTRA_SPECS
|
||||||
#define SUBTARGET_EXTRA_SPECS \
|
#define SUBTARGET_EXTRA_SPECS \
|
||||||
{ "crtsavres_default", CRTSAVRES_DEFAULT_SPEC }, \
|
{ "crtsavres_default", CRTSAVRES_DEFAULT_SPEC }, \
|
||||||
@@ -234,7 +167,7 @@ index 510abe169c5..988e82007b0 100644
|
|||||||
{ "lib_ads", LIB_ADS_SPEC }, \
|
{ "lib_ads", LIB_ADS_SPEC }, \
|
||||||
{ "lib_yellowknife", LIB_YELLOWKNIFE_SPEC }, \
|
{ "lib_yellowknife", LIB_YELLOWKNIFE_SPEC }, \
|
||||||
{ "lib_mvme", LIB_MVME_SPEC }, \
|
{ "lib_mvme", LIB_MVME_SPEC }, \
|
||||||
@@ -860,6 +885,7 @@ ncrtn.o%s"
|
@@ -859,6 +884,7 @@
|
||||||
{ "lib_netbsd", LIB_NETBSD_SPEC }, \
|
{ "lib_netbsd", LIB_NETBSD_SPEC }, \
|
||||||
{ "lib_openbsd", LIB_OPENBSD_SPEC }, \
|
{ "lib_openbsd", LIB_OPENBSD_SPEC }, \
|
||||||
{ "lib_default", LIB_DEFAULT_SPEC }, \
|
{ "lib_default", LIB_DEFAULT_SPEC }, \
|
||||||
@@ -242,7 +175,7 @@ index 510abe169c5..988e82007b0 100644
|
|||||||
{ "startfile_ads", STARTFILE_ADS_SPEC }, \
|
{ "startfile_ads", STARTFILE_ADS_SPEC }, \
|
||||||
{ "startfile_yellowknife", STARTFILE_YELLOWKNIFE_SPEC }, \
|
{ "startfile_yellowknife", STARTFILE_YELLOWKNIFE_SPEC }, \
|
||||||
{ "startfile_mvme", STARTFILE_MVME_SPEC }, \
|
{ "startfile_mvme", STARTFILE_MVME_SPEC }, \
|
||||||
@@ -869,6 +895,7 @@ ncrtn.o%s"
|
@@ -868,6 +894,7 @@
|
||||||
{ "startfile_netbsd", STARTFILE_NETBSD_SPEC }, \
|
{ "startfile_netbsd", STARTFILE_NETBSD_SPEC }, \
|
||||||
{ "startfile_openbsd", STARTFILE_OPENBSD_SPEC }, \
|
{ "startfile_openbsd", STARTFILE_OPENBSD_SPEC }, \
|
||||||
{ "startfile_default", STARTFILE_DEFAULT_SPEC }, \
|
{ "startfile_default", STARTFILE_DEFAULT_SPEC }, \
|
||||||
@@ -250,7 +183,7 @@ index 510abe169c5..988e82007b0 100644
|
|||||||
{ "endfile_ads", ENDFILE_ADS_SPEC }, \
|
{ "endfile_ads", ENDFILE_ADS_SPEC }, \
|
||||||
{ "endfile_yellowknife", ENDFILE_YELLOWKNIFE_SPEC }, \
|
{ "endfile_yellowknife", ENDFILE_YELLOWKNIFE_SPEC }, \
|
||||||
{ "endfile_mvme", ENDFILE_MVME_SPEC }, \
|
{ "endfile_mvme", ENDFILE_MVME_SPEC }, \
|
||||||
@@ -880,7 +907,11 @@ ncrtn.o%s"
|
@@ -879,7 +906,11 @@
|
||||||
{ "endfile_default", ENDFILE_DEFAULT_SPEC }, \
|
{ "endfile_default", ENDFILE_DEFAULT_SPEC }, \
|
||||||
{ "link_shlib", LINK_SHLIB_SPEC }, \
|
{ "link_shlib", LINK_SHLIB_SPEC }, \
|
||||||
{ "link_start", LINK_START_SPEC }, \
|
{ "link_start", LINK_START_SPEC }, \
|
||||||
@@ -262,7 +195,7 @@ index 510abe169c5..988e82007b0 100644
|
|||||||
{ "link_start_yellowknife", LINK_START_YELLOWKNIFE_SPEC }, \
|
{ "link_start_yellowknife", LINK_START_YELLOWKNIFE_SPEC }, \
|
||||||
{ "link_start_mvme", LINK_START_MVME_SPEC }, \
|
{ "link_start_mvme", LINK_START_MVME_SPEC }, \
|
||||||
{ "link_start_sim", LINK_START_SIM_SPEC }, \
|
{ "link_start_sim", LINK_START_SIM_SPEC }, \
|
||||||
@@ -890,6 +921,7 @@ ncrtn.o%s"
|
@@ -889,6 +920,7 @@
|
||||||
{ "link_start_openbsd", LINK_START_OPENBSD_SPEC }, \
|
{ "link_start_openbsd", LINK_START_OPENBSD_SPEC }, \
|
||||||
{ "link_start_default", LINK_START_DEFAULT_SPEC }, \
|
{ "link_start_default", LINK_START_DEFAULT_SPEC }, \
|
||||||
{ "link_os", LINK_OS_SPEC }, \
|
{ "link_os", LINK_OS_SPEC }, \
|
||||||
@@ -270,7 +203,7 @@ index 510abe169c5..988e82007b0 100644
|
|||||||
{ "link_os_ads", LINK_OS_ADS_SPEC }, \
|
{ "link_os_ads", LINK_OS_ADS_SPEC }, \
|
||||||
{ "link_os_yellowknife", LINK_OS_YELLOWKNIFE_SPEC }, \
|
{ "link_os_yellowknife", LINK_OS_YELLOWKNIFE_SPEC }, \
|
||||||
{ "link_os_mvme", LINK_OS_MVME_SPEC }, \
|
{ "link_os_mvme", LINK_OS_MVME_SPEC }, \
|
||||||
@@ -901,6 +933,9 @@ ncrtn.o%s"
|
@@ -900,6 +932,9 @@
|
||||||
{ "link_os_default", LINK_OS_DEFAULT_SPEC }, \
|
{ "link_os_default", LINK_OS_DEFAULT_SPEC }, \
|
||||||
{ "cc1_secure_plt_default", CC1_SECURE_PLT_DEFAULT_SPEC }, \
|
{ "cc1_secure_plt_default", CC1_SECURE_PLT_DEFAULT_SPEC }, \
|
||||||
{ "link_secure_plt", LINK_SECURE_PLT_SPEC }, \
|
{ "link_secure_plt", LINK_SECURE_PLT_SPEC }, \
|
||||||
@@ -280,11 +213,10 @@ index 510abe169c5..988e82007b0 100644
|
|||||||
{ "cpp_os_ads", CPP_OS_ADS_SPEC }, \
|
{ "cpp_os_ads", CPP_OS_ADS_SPEC }, \
|
||||||
{ "cpp_os_yellowknife", CPP_OS_YELLOWKNIFE_SPEC }, \
|
{ "cpp_os_yellowknife", CPP_OS_YELLOWKNIFE_SPEC }, \
|
||||||
{ "cpp_os_mvme", CPP_OS_MVME_SPEC }, \
|
{ "cpp_os_mvme", CPP_OS_MVME_SPEC }, \
|
||||||
diff --git a/gcc/config/rs6000/sysv4.opt b/gcc/config/rs6000/sysv4.opt
|
diff -NBaur gcc-12.1.0/gcc/config/rs6000/sysv4.opt gcc-12.1.0-dkppc/gcc/config/rs6000/sysv4.opt
|
||||||
index 7ab55c49940..763709e907e 100644
|
--- gcc-12.1.0/gcc/config/rs6000/sysv4.opt 2022-05-06 08:30:57.000000000 +0100
|
||||||
--- a/gcc/config/rs6000/sysv4.opt
|
+++ gcc-12.1.0-dkppc/gcc/config/rs6000/sysv4.opt 2022-05-06 19:17:44.784777075 +0100
|
||||||
+++ b/gcc/config/rs6000/sysv4.opt
|
@@ -124,6 +124,26 @@
|
||||||
@@ -124,6 +124,26 @@ mads
|
|
||||||
Target RejectNegative
|
Target RejectNegative
|
||||||
Link with libads.a, libc.a and crt0.o.
|
Link with libads.a, libc.a and crt0.o.
|
||||||
|
|
||||||
@@ -311,11 +243,10 @@ index 7ab55c49940..763709e907e 100644
|
|||||||
myellowknife
|
myellowknife
|
||||||
Target RejectNegative
|
Target RejectNegative
|
||||||
Link with libyk.a, libc.a and crt0.o.
|
Link with libyk.a, libc.a and crt0.o.
|
||||||
diff --git a/gcc/configure b/gcc/configure
|
diff -NBaur gcc-12.1.0/gcc/configure gcc-12.1.0-dkppc/gcc/configure
|
||||||
index 9b28369e3bf..79b95018a89 100755
|
--- gcc-12.1.0/gcc/configure 2022-05-06 08:30:57.000000000 +0100
|
||||||
--- a/gcc/configure
|
+++ gcc-12.1.0-dkppc/gcc/configure 2022-05-06 19:17:44.788859483 +0100
|
||||||
+++ b/gcc/configure
|
@@ -12884,7 +12884,7 @@
|
||||||
@@ -12593,7 +12593,7 @@ case ${enable_threads} in
|
|
||||||
# default
|
# default
|
||||||
target_thread_file='single'
|
target_thread_file='single'
|
||||||
;;
|
;;
|
||||||
@@ -324,11 +255,10 @@ index 9b28369e3bf..79b95018a89 100755
|
|||||||
single | tpf | vxworks | win32)
|
single | tpf | vxworks | win32)
|
||||||
target_thread_file=${enable_threads}
|
target_thread_file=${enable_threads}
|
||||||
;;
|
;;
|
||||||
diff --git a/gcc/configure.ac b/gcc/configure.ac
|
diff -NBaur gcc-12.1.0/gcc/configure.ac gcc-12.1.0-dkppc/gcc/configure.ac
|
||||||
index 162e08cbc02..34d35d0de8d 100644
|
--- gcc-12.1.0/gcc/configure.ac 2022-05-06 08:30:57.000000000 +0100
|
||||||
--- a/gcc/configure.ac
|
+++ gcc-12.1.0-dkppc/gcc/configure.ac 2022-05-06 19:17:44.788859483 +0100
|
||||||
+++ b/gcc/configure.ac
|
@@ -1994,7 +1994,7 @@
|
||||||
@@ -1925,7 +1925,7 @@ case ${enable_threads} in
|
|
||||||
# default
|
# default
|
||||||
target_thread_file='single'
|
target_thread_file='single'
|
||||||
;;
|
;;
|
||||||
@@ -337,10 +267,9 @@ index 162e08cbc02..34d35d0de8d 100644
|
|||||||
single | tpf | vxworks | win32)
|
single | tpf | vxworks | win32)
|
||||||
target_thread_file=${enable_threads}
|
target_thread_file=${enable_threads}
|
||||||
;;
|
;;
|
||||||
diff --git a/libgcc/config/rs6000/crtrestvr.S b/libgcc/config/rs6000/crtrestvr.S
|
diff -NBaur gcc-12.1.0/libgcc/config/rs6000/crtrestvr.S gcc-12.1.0-dkppc/libgcc/config/rs6000/crtrestvr.S
|
||||||
index b372409dd42..708ba039963 100644
|
--- gcc-12.1.0/libgcc/config/rs6000/crtrestvr.S 2022-05-06 08:30:59.000000000 +0100
|
||||||
--- a/libgcc/config/rs6000/crtrestvr.S
|
+++ gcc-12.1.0-dkppc/libgcc/config/rs6000/crtrestvr.S 2022-05-06 19:17:44.792941894 +0100
|
||||||
+++ b/libgcc/config/rs6000/crtrestvr.S
|
|
||||||
@@ -24,7 +24,7 @@
|
@@ -24,7 +24,7 @@
|
||||||
|
|
||||||
/* On PowerPC64 Linux, these functions are provided by the linker. */
|
/* On PowerPC64 Linux, these functions are provided by the linker. */
|
||||||
@@ -350,15 +279,14 @@ index b372409dd42..708ba039963 100644
|
|||||||
#undef __ALTIVEC__
|
#undef __ALTIVEC__
|
||||||
#define __ALTIVEC__ 1
|
#define __ALTIVEC__ 1
|
||||||
#include "ppc-asm.h"
|
#include "ppc-asm.h"
|
||||||
@@ -86,3 +86,4 @@ FUNC_END(_restvr_20)
|
@@ -86,3 +86,4 @@
|
||||||
CFI_ENDPROC
|
CFI_ENDPROC
|
||||||
|
|
||||||
#endif
|
#endif
|
||||||
+#endif
|
+#endif
|
||||||
diff --git a/libgcc/config/rs6000/crtsavevr.S b/libgcc/config/rs6000/crtsavevr.S
|
diff -NBaur gcc-12.1.0/libgcc/config/rs6000/crtsavevr.S gcc-12.1.0-dkppc/libgcc/config/rs6000/crtsavevr.S
|
||||||
index 48a4d65eed4..6835ea69279 100644
|
--- gcc-12.1.0/libgcc/config/rs6000/crtsavevr.S 2022-05-06 08:30:59.000000000 +0100
|
||||||
--- a/libgcc/config/rs6000/crtsavevr.S
|
+++ gcc-12.1.0-dkppc/libgcc/config/rs6000/crtsavevr.S 2022-05-06 19:17:44.792941894 +0100
|
||||||
+++ b/libgcc/config/rs6000/crtsavevr.S
|
|
||||||
@@ -24,7 +24,7 @@
|
@@ -24,7 +24,7 @@
|
||||||
|
|
||||||
/* On PowerPC64 Linux, these functions are provided by the linker. */
|
/* On PowerPC64 Linux, these functions are provided by the linker. */
|
||||||
@@ -368,16 +296,14 @@ index 48a4d65eed4..6835ea69279 100644
|
|||||||
#undef __ALTIVEC__
|
#undef __ALTIVEC__
|
||||||
#define __ALTIVEC__ 1
|
#define __ALTIVEC__ 1
|
||||||
#include "ppc-asm.h"
|
#include "ppc-asm.h"
|
||||||
@@ -86,3 +86,4 @@ FUNC_END(_savevr_20)
|
@@ -86,3 +86,4 @@
|
||||||
CFI_ENDPROC
|
CFI_ENDPROC
|
||||||
|
|
||||||
#endif
|
#endif
|
||||||
+#endif
|
+#endif
|
||||||
diff --git a/libgcc/config/rs6000/gthr-dkp.c b/libgcc/config/rs6000/gthr-dkp.c
|
diff -NBaur gcc-12.1.0/libgcc/config/rs6000/gthr-dkp.c gcc-12.1.0-dkppc/libgcc/config/rs6000/gthr-dkp.c
|
||||||
new file mode 100644
|
--- gcc-12.1.0/libgcc/config/rs6000/gthr-dkp.c 1970-01-01 01:00:00.000000000 +0100
|
||||||
index 00000000000..26180aa7f36
|
+++ gcc-12.1.0-dkppc/libgcc/config/rs6000/gthr-dkp.c 2022-05-06 19:17:44.792941894 +0100
|
||||||
--- /dev/null
|
|
||||||
+++ b/libgcc/config/rs6000/gthr-dkp.c
|
|
||||||
@@ -0,0 +1,319 @@
|
@@ -0,0 +1,319 @@
|
||||||
+/* Threads compatibility routines for libgcc2 and libobjc. */
|
+/* Threads compatibility routines for libgcc2 and libobjc. */
|
||||||
+/* Compile this one with gcc. */
|
+/* Compile this one with gcc. */
|
||||||
@@ -698,11 +624,9 @@ index 00000000000..26180aa7f36
|
|||||||
+
|
+
|
||||||
+ return __gthr_impl_cond_destroy(__cond);
|
+ return __gthr_impl_cond_destroy(__cond);
|
||||||
+}
|
+}
|
||||||
diff --git a/libgcc/config/rs6000/gthr-dkp.h b/libgcc/config/rs6000/gthr-dkp.h
|
diff -NBaur gcc-12.1.0/libgcc/config/rs6000/gthr-dkp.h gcc-12.1.0-dkppc/libgcc/config/rs6000/gthr-dkp.h
|
||||||
new file mode 100644
|
--- gcc-12.1.0/libgcc/config/rs6000/gthr-dkp.h 1970-01-01 01:00:00.000000000 +0100
|
||||||
index 00000000000..72ecf82ab83
|
+++ gcc-12.1.0-dkppc/libgcc/config/rs6000/gthr-dkp.h 2022-05-06 19:17:44.792941894 +0100
|
||||||
--- /dev/null
|
|
||||||
+++ b/libgcc/config/rs6000/gthr-dkp.h
|
|
||||||
@@ -0,0 +1,187 @@
|
@@ -0,0 +1,187 @@
|
||||||
+/* Threads compatibility routines for libgcc2 and libobjc. */
|
+/* Threads compatibility routines for libgcc2 and libobjc. */
|
||||||
+/* Compile this one with gcc. */
|
+/* Compile this one with gcc. */
|
||||||
@@ -891,21 +815,19 @@ index 00000000000..72ecf82ab83
|
|||||||
+#endif
|
+#endif
|
||||||
+
|
+
|
||||||
+#endif /* ! _GLIBCXX_GCC_GTHR_DKP_H */
|
+#endif /* ! _GLIBCXX_GCC_GTHR_DKP_H */
|
||||||
diff --git a/libgcc/config/rs6000/t-ppccomm b/libgcc/config/rs6000/t-ppccomm
|
diff -NBaur gcc-12.1.0/libgcc/config/rs6000/t-ppccomm gcc-12.1.0-dkppc/libgcc/config/rs6000/t-ppccomm
|
||||||
index fb812d3801f..7f6669d530f 100644
|
--- gcc-12.1.0/libgcc/config/rs6000/t-ppccomm 2022-05-06 08:30:59.000000000 +0100
|
||||||
--- a/libgcc/config/rs6000/t-ppccomm
|
+++ gcc-12.1.0-dkppc/libgcc/config/rs6000/t-ppccomm 2022-05-06 19:17:44.792941894 +0100
|
||||||
+++ b/libgcc/config/rs6000/t-ppccomm
|
|
||||||
@@ -1,4 +1,5 @@
|
@@ -1,4 +1,5 @@
|
||||||
LIB2ADD += $(srcdir)/config/rs6000/ibm-ldouble.c \
|
LIB2ADD += $(srcdir)/config/rs6000/ibm-ldouble.c \
|
||||||
+ $(srcdir)/config/rs6000/gthr-dkp.c \
|
+ $(srcdir)/config/rs6000/gthr-dkp.c \
|
||||||
$(srcdir)/config/rs6000/tramp.S
|
$(srcdir)/config/rs6000/tramp.S
|
||||||
|
|
||||||
# This can't end up in shared libgcc
|
# This can't end up in shared libgcc
|
||||||
diff --git a/libgcc/configure b/libgcc/configure
|
diff -NBaur gcc-12.1.0/libgcc/configure gcc-12.1.0-dkppc/libgcc/configure
|
||||||
index 4919a56f518..546b3413deb 100755
|
--- gcc-12.1.0/libgcc/configure 2022-05-06 08:30:59.000000000 +0100
|
||||||
--- a/libgcc/configure
|
+++ gcc-12.1.0-dkppc/libgcc/configure 2022-05-06 19:17:44.792941894 +0100
|
||||||
+++ b/libgcc/configure
|
@@ -5689,6 +5689,7 @@
|
||||||
@@ -5679,6 +5679,7 @@ tm_file="${tm_file_}"
|
|
||||||
case $target_thread_file in
|
case $target_thread_file in
|
||||||
aix) thread_header=config/rs6000/gthr-aix.h ;;
|
aix) thread_header=config/rs6000/gthr-aix.h ;;
|
||||||
dce) thread_header=config/pa/gthr-dce.h ;;
|
dce) thread_header=config/pa/gthr-dce.h ;;
|
||||||
@@ -913,11 +835,10 @@ index 4919a56f518..546b3413deb 100755
|
|||||||
gcn) thread_header=config/gcn/gthr-gcn.h ;;
|
gcn) thread_header=config/gcn/gthr-gcn.h ;;
|
||||||
lynx) thread_header=config/gthr-lynx.h ;;
|
lynx) thread_header=config/gthr-lynx.h ;;
|
||||||
mipssde) thread_header=config/mips/gthr-mipssde.h ;;
|
mipssde) thread_header=config/mips/gthr-mipssde.h ;;
|
||||||
diff --git a/libgcc/crtstuff.c b/libgcc/crtstuff.c
|
diff -NBaur gcc-12.1.0/libgcc/crtstuff.c gcc-12.1.0-dkppc/libgcc/crtstuff.c
|
||||||
index 675930db043..bdfd6f6b0bb 100644
|
--- gcc-12.1.0/libgcc/crtstuff.c 2022-05-06 08:30:59.000000000 +0100
|
||||||
--- a/libgcc/crtstuff.c
|
+++ gcc-12.1.0-dkppc/libgcc/crtstuff.c 2022-05-06 19:17:44.792941894 +0100
|
||||||
+++ b/libgcc/crtstuff.c
|
@@ -325,7 +325,7 @@
|
||||||
@@ -325,7 +325,7 @@ register_tm_clones (void)
|
|
||||||
|
|
||||||
#ifdef OBJECT_FORMAT_ELF
|
#ifdef OBJECT_FORMAT_ELF
|
||||||
|
|
||||||
@@ -926,11 +847,10 @@ index 675930db043..bdfd6f6b0bb 100644
|
|||||||
/* Declare the __dso_handle variable. It should have a unique value
|
/* Declare the __dso_handle variable. It should have a unique value
|
||||||
in every shared-object; in a main program its value is zero. The
|
in every shared-object; in a main program its value is zero. The
|
||||||
object should in any case be protected. This means the instance
|
object should in any case be protected. This means the instance
|
||||||
diff --git a/libstdc++-v3/configure b/libstdc++-v3/configure
|
diff -NBaur gcc-12.1.0/libstdc++-v3/configure gcc-12.1.0-dkppc/libstdc++-v3/configure
|
||||||
index 326a279c54f..d2cb9d18294 100755
|
--- gcc-12.1.0/libstdc++-v3/configure 2022-05-06 08:31:00.000000000 +0100
|
||||||
--- a/libstdc++-v3/configure
|
+++ gcc-12.1.0-dkppc/libstdc++-v3/configure 2022-05-06 19:17:44.801106712 +0100
|
||||||
+++ b/libstdc++-v3/configure
|
@@ -15765,6 +15765,7 @@
|
||||||
@@ -15698,6 +15698,7 @@ $as_echo "$target_thread_file" >&6; }
|
|
||||||
case $target_thread_file in
|
case $target_thread_file in
|
||||||
aix) thread_header=config/rs6000/gthr-aix.h ;;
|
aix) thread_header=config/rs6000/gthr-aix.h ;;
|
||||||
dce) thread_header=config/pa/gthr-dce.h ;;
|
dce) thread_header=config/pa/gthr-dce.h ;;
|
||||||
@@ -938,43 +858,3 @@ index 326a279c54f..d2cb9d18294 100755
|
|||||||
gcn) thread_header=config/gcn/gthr-gcn.h ;;
|
gcn) thread_header=config/gcn/gthr-gcn.h ;;
|
||||||
lynx) thread_header=config/gthr-lynx.h ;;
|
lynx) thread_header=config/gthr-lynx.h ;;
|
||||||
mipssde) thread_header=config/mips/gthr-mipssde.h ;;
|
mipssde) thread_header=config/mips/gthr-mipssde.h ;;
|
||||||
diff --git a/libstdc++-v3/include/c_compatibility/fenv.h b/libstdc++-v3/include/c_compatibility/fenv.h
|
|
||||||
index 0413e3b7c25..ff5f8bbe1a1 100644
|
|
||||||
--- a/libstdc++-v3/include/c_compatibility/fenv.h
|
|
||||||
+++ b/libstdc++-v3/include/c_compatibility/fenv.h
|
|
||||||
@@ -26,6 +26,10 @@
|
|
||||||
* This is a Standard C++ Library header.
|
|
||||||
*/
|
|
||||||
|
|
||||||
+#if !defined __cplusplus || defined _GLIBCXX_INCLUDE_NEXT_C_HEADERS
|
|
||||||
+# include_next <fenv.h>
|
|
||||||
+#else
|
|
||||||
+
|
|
||||||
#ifndef _GLIBCXX_FENV_H
|
|
||||||
#define _GLIBCXX_FENV_H 1
|
|
||||||
|
|
||||||
@@ -79,3 +83,5 @@ namespace std
|
|
||||||
#endif // C++11
|
|
||||||
|
|
||||||
#endif // _GLIBCXX_FENV_H
|
|
||||||
+
|
|
||||||
+#endif // __cplusplus
|
|
||||||
diff --git a/libstdc++-v3/include/c_global/cfenv b/libstdc++-v3/include/c_global/cfenv
|
|
||||||
index 0b0ec35a837..d24cb1a3c81 100644
|
|
||||||
--- a/libstdc++-v3/include/c_global/cfenv
|
|
||||||
+++ b/libstdc++-v3/include/c_global/cfenv
|
|
||||||
@@ -37,9 +37,11 @@
|
|
||||||
|
|
||||||
#include <bits/c++config.h>
|
|
||||||
|
|
||||||
-#if _GLIBCXX_HAVE_FENV_H
|
|
||||||
-# include <fenv.h>
|
|
||||||
-#endif
|
|
||||||
+// Need to ensure this finds the C library's <fenv.h> not a libstdc++
|
|
||||||
+// wrapper that might already be installed later in the include search path.
|
|
||||||
+#define _GLIBCXX_INCLUDE_NEXT_C_HEADERS
|
|
||||||
+#include_next <fenv.h>
|
|
||||||
+#undef _GLIBCXX_INCLUDE_NEXT_C_HEADERS
|
|
||||||
|
|
||||||
#ifdef _GLIBCXX_USE_C99_FENV_TR1
|
|
||||||
|
|
||||||
@@ -12,7 +12,7 @@ cd $target/binutils
|
|||||||
|
|
||||||
if [ ! -f configured-binutils ]
|
if [ ! -f configured-binutils ]
|
||||||
then
|
then
|
||||||
CFLAGS=$cflags LDFLAGS=$ldflags ../../binutils-$BINUTILS_VER/configure \
|
../../binutils-$BINUTILS_VER/configure \
|
||||||
--prefix=$prefix --target=$target --disable-nls --disable-shared --disable-debug \
|
--prefix=$prefix --target=$target --disable-nls --disable-shared --disable-debug \
|
||||||
--disable-werror \
|
--disable-werror \
|
||||||
--enable-poison-system-directories \
|
--enable-poison-system-directories \
|
||||||
@@ -48,7 +48,7 @@ cd mn10200/binutils
|
|||||||
|
|
||||||
if [ ! -f configured-binutils ]
|
if [ ! -f configured-binutils ]
|
||||||
then
|
then
|
||||||
CFLAGS=$cflags LDFLAGS=$ldflags ../../binutils-$MN_BINUTILS_VER/configure \
|
../../binutils-$MN_BINUTILS_VER/configure \
|
||||||
--prefix=$prefix --target=mn10200 --disable-nls --disable-debug \
|
--prefix=$prefix --target=mn10200 --disable-nls --disable-debug \
|
||||||
--disable-multilib \
|
--disable-multilib \
|
||||||
--disable-werror $CROSS_PARAMS \
|
--disable-werror $CROSS_PARAMS \
|
||||||
@@ -78,9 +78,6 @@ cd $target/gcc
|
|||||||
|
|
||||||
if [ ! -f configured-gcc ]
|
if [ ! -f configured-gcc ]
|
||||||
then
|
then
|
||||||
CFLAGS="$cflags" \
|
|
||||||
CXXFLAGS="$cflags" \
|
|
||||||
LDFLAGS="$ldflags" \
|
|
||||||
CFLAGS_FOR_TARGET="-O2 -ffunction-sections -fdata-sections" \
|
CFLAGS_FOR_TARGET="-O2 -ffunction-sections -fdata-sections" \
|
||||||
CXXFLAGS_FOR_TARGET="-O2 -ffunction-sections -fdata-sections" \
|
CXXFLAGS_FOR_TARGET="-O2 -ffunction-sections -fdata-sections" \
|
||||||
LDFLAGS_FOR_TARGET="" \
|
LDFLAGS_FOR_TARGET="" \
|
||||||
@@ -101,7 +98,7 @@ then
|
|||||||
--with-newlib \
|
--with-newlib \
|
||||||
--with-headers=../../newlib-$NEWLIB_VER/newlib/libc/include \
|
--with-headers=../../newlib-$NEWLIB_VER/newlib/libc/include \
|
||||||
--prefix=$prefix \
|
--prefix=$prefix \
|
||||||
--with-bugurl="https://github.com/devkitpro/buildscripts/issues" --with-pkgversion="devkitPPC release 40" \
|
--with-bugurl="https://github.com/devkitpro/buildscripts/issues" --with-pkgversion="devkitPPC release 41" \
|
||||||
$CROSS_PARAMS \
|
$CROSS_PARAMS \
|
||||||
$CROSS_GCC_PARAMS \
|
$CROSS_GCC_PARAMS \
|
||||||
$EXTRA_GCC_PARAMS \
|
$EXTRA_GCC_PARAMS \
|
||||||
|
|||||||
@@ -30,16 +30,16 @@ done
|
|||||||
|
|
||||||
case "$VERSION" in
|
case "$VERSION" in
|
||||||
"1" )
|
"1" )
|
||||||
GCC_VER=12.1.0
|
GCC_VER=12.2.0
|
||||||
BINUTILS_VER=2.38
|
BINUTILS_VER=2.40
|
||||||
NEWLIB_VER=4.2.0.20211231
|
NEWLIB_VER=4.3.0.20230120
|
||||||
basedir='dkarm-eabi'
|
basedir='dkarm-eabi'
|
||||||
package=devkitARM
|
package=devkitARM
|
||||||
target=arm-none-eabi
|
target=arm-none-eabi
|
||||||
toolchain=DEVKITARM
|
toolchain=DEVKITARM
|
||||||
;;
|
;;
|
||||||
"2" )
|
"2" )
|
||||||
GCC_VER=11.2.0
|
GCC_VER=12.1.0
|
||||||
BINUTILS_VER=2.37
|
BINUTILS_VER=2.37
|
||||||
MN_BINUTILS_VER=2.24
|
MN_BINUTILS_VER=2.24
|
||||||
NEWLIB_VER=4.2.0.20211231
|
NEWLIB_VER=4.2.0.20211231
|
||||||
@@ -49,9 +49,9 @@ case "$VERSION" in
|
|||||||
toolchain=DEVKITPPC
|
toolchain=DEVKITPPC
|
||||||
;;
|
;;
|
||||||
"3" )
|
"3" )
|
||||||
GCC_VER=12.1.0-RC-20220429
|
GCC_VER=12.2.0
|
||||||
BINUTILS_VER=2.32
|
BINUTILS_VER=2.32
|
||||||
NEWLIB_VER=4.2.0.20211231
|
NEWLIB_VER=4.3.0.20230120
|
||||||
basedir='dka64'
|
basedir='dka64'
|
||||||
package=devkitA64
|
package=devkitA64
|
||||||
target=aarch64-none-elf
|
target=aarch64-none-elf
|
||||||
|
|||||||
Reference in New Issue
Block a user