Compare commits

...

57 Commits

Author SHA1 Message Date
Dave Murphy
94cabdf12a devkitPPC: update version 2023-04-19 09:15:33 +01:00
Dave Murphy
6a2cfec336 devkitPPC: disable gcc libssp 2023-04-19 08:59:50 +01:00
Dave Murphy
7b03d726b6 devkitPPC: update newlib to 4.3.0 2023-04-15 14:49:13 +01:00
Dave Murphy
9df0987259 devkitPPC: update binutils to 2.40 2023-04-15 14:48:22 +01:00
Dave Murphy
923724a397 devkitPPC: update gcc to 12.2.0 2023-04-15 14:48:22 +01:00
Dave Murphy
cd5e224d6a devkitARM: update newlib to 4.3.0 2023-04-03 21:54:26 +01:00
Dave Murphy
b280c0af31 devkitARM: update gcc patch 2023-04-03 21:53:28 +01:00
Dave Murphy
776be5894d devkitARM: next update is release 60 2023-04-03 21:53:28 +01:00
Dave Murphy
87f8584b86 devkitA64: use binutils 2.40 2023-04-03 21:53:28 +01:00
Dave Murphy
84ca4f5c18 devkitA64: remove old gcc patch 2023-04-02 19:42:31 +01:00
Dave Murphy
a07a271bdb devkitA64: add __DEVKITPRO__ to built-in defines 2023-04-02 19:42:30 +01:00
Dave Murphy
026a498a51 devkitA64: update newlib to 4.3.0 2023-04-02 19:42:30 +01:00
omerien
b5de354a1e Use https urls (#56) 2022-11-20 15:39:15 +00:00
Dave Murphy
ca6cded363 devkitA64: update gcc to 12.2.0 2022-11-13 11:23:23 +00:00
Dave Murphy
149a2358b8 devkitARM: remove stale patches 2022-11-08 10:43:28 +00:00
Dave Murphy
426c8d0e62 devkitARM: update gcc to 12.2.0 2022-11-06 20:46:02 +00:00
Dave Murphy
a33bf405d2 devkitARM: update binutils to 2.39 2022-11-06 20:44:51 +00:00
Dave Murphy
eac2e40528 devkitPPC: remove old patch file 2022-05-22 21:21:35 +01:00
Dave Murphy
e377ef05f6 devkitPPC: remove obsolete flag setting 2022-05-06 21:15:06 +01:00
Dave Murphy
67b8703a8c devkitPPC: update gcc to 12.1.0 2022-05-06 19:46:27 +01:00
Dave Murphy
df8b66a808 devkitA64: update gcc to 12.1.0 2022-05-06 17:46:22 +01:00
Dave Murphy
219b5dcebd devkitARM: update gcc to 12.1.0 2022-05-06 13:27:04 +01:00
Dave Murphy
a370be5c4a devkitA64: update gcc to 12.1.0-RC-20220429 2022-05-02 22:19:23 +01:00
Dave Murphy
a84866105a devkitARM: update gcc to 12.1.0-RC-20220429 2022-04-30 18:00:21 +01:00
Dave Murphy
c0146427e1 devkitARM: update binutils to 2.38 2022-04-30 17:57:26 +01:00
Dave Murphy
a0ee149c40 devkitA64: remove obsolete flag setting 2022-01-27 20:55:27 +00:00
Dave Murphy
da06cfb478 devkitPPC: add arm64 macOS patch 2022-01-25 19:49:11 +00:00
Dave Murphy
b700c35789 devkitARM: update newlib to 4.2.0.20211231 2022-01-03 19:21:28 +00:00
Dave Murphy
73b1cb9d7a devkitPPC: update newlib to 4.2.0.20211231 2022-01-03 19:21:20 +00:00
Dave Murphy
3ca5189cdd devkitA64: update newlib to 4.2.0.20211231 2022-01-03 12:24:00 +00:00
Dave Murphy
4dc7a3333c devkitPPC: next release is 40 2022-01-03 12:21:48 +00:00
Dave Murphy
98aac78959 devkitPPC: remove can delete directories 2022-01-02 18:34:36 +00:00
Dave Murphy
092f657e81 devkitPPC: update binutils to 2.37 2022-01-02 18:34:36 +00:00
Dave Murphy
7d3bbea16e devkitPPC: update gcc to 11.2.0 2022-01-02 18:34:36 +00:00
Dave Murphy
066afb3cca devkitARM: remove can delete directories 2022-01-02 18:34:36 +00:00
Dave Murphy
dd13eb9497 devkitARM: rework syscall interface 2022-01-02 18:34:36 +00:00
Dave Murphy
af726256f1 devkitARM: patch binutils for building with mingw 2022-01-02 18:34:36 +00:00
Dave Murphy
5e87380f11 devkitARM: update binutils to 2.37 2022-01-02 18:34:36 +00:00
Dave Murphy
cd9e7f1fee devkitARM: update gcc to 11.2.0 2022-01-02 18:34:36 +00:00
Dave Murphy
f1bf935706 devkitA64: remove can delete directories 2022-01-02 18:34:36 +00:00
Dave Murphy
9ae621ad62 devkitA64: upgrade gcc to 11.2 2022-01-02 18:34:26 +00:00
Dave Murphy
251c7cbbf1 devkitPPC: use supplied zlib 2021-05-25 09:27:00 +01:00
Dave Murphy
2b7e5215fc fix shebang 2021-05-25 09:16:19 +01:00
Dave Murphy
540dbb84c6 devkitPPC: remove stale patches 2021-05-25 09:16:19 +01:00
Dave Murphy
90fb45065c devkitPPC: disable unwanted features 2021-05-25 09:16:19 +01:00
Dave Murphy
771225f45a devkitPPC: move mn10200 binutils to 2.24 2021-05-25 09:16:19 +01:00
Dave Murphy
fdb7c8a6d2 devkitPPC: update gcc to 11.1.0 2021-05-25 09:16:19 +01:00
Dave Murphy
5649ec2a1f devkitPPC: update newlib patch 2021-05-25 09:16:19 +01:00
Dave Murphy
6e92980fd1 devkitPPC: allow external gcc config params 2021-05-25 09:16:19 +01:00
Dave Murphy
3673dced6d devkitPPC: reduce printf bloat 2021-05-25 09:16:19 +01:00
Dave Murphy
6999db3f10 devkitPPC: next release is 39 2021-05-25 09:16:19 +01:00
Dave Murphy
ae793d657a devkitPPC: update binutils to 2.36.1 2021-05-25 09:16:19 +01:00
Dave Murphy
c375da789d devkitPPC: update newlib to 4.1.0 2021-05-25 09:16:19 +01:00
Dave Murphy
b8c7c915bc allow prevention of binary stripping 2021-05-09 13:50:54 +01:00
Dave Murphy
c108162819 use ansi stdio on mingw host too 2021-05-09 13:38:10 +01:00
Dave Murphy
e952463476 use the supplied zlib 2021-05-08 21:28:54 +01:00
Dave Murphy
1444dc91df allow external variables to influence build 2021-05-08 21:10:04 +01:00
18 changed files with 25941 additions and 18700 deletions

View File

@@ -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

View File

@@ -1,9 +1,8 @@
#!/usr/bin/env bash
#!/bin/bash
#--------------------------------------------------------------------------------- #---------------------------------------------------------------------------------
# devkitARM release 56 # devkitARM release 60
# devkitPPC release 38 # devkitPPC release 41
# devkitA64 release 17 # devkitA64 release 21
#--------------------------------------------------------------------------------- #---------------------------------------------------------------------------------
if [ 0 -eq 1 ] ; then if [ 0 -eq 1 ] ; then
@@ -59,13 +58,6 @@ if [ ! -z "$CROSSBUILD" ] ; then
fi fi
fi fi
#---------------------------------------------------------------------------------
# Sane defaults for building toolchain
#---------------------------------------------------------------------------------
export CFLAGS="-O2 -pipe"
export CXXFLAGS="$CFLAGS"
unset LDFLAGS
#--------------------------------------------------------------------------------- #---------------------------------------------------------------------------------
# Look for automated configuration file to bypass prompts # Look for automated configuration file to bypass prompts
#--------------------------------------------------------------------------------- #---------------------------------------------------------------------------------
@@ -162,7 +154,7 @@ case $PLATFORM in
fi fi
;; ;;
MINGW32* ) MINGW32* )
cppflags="-D__USE_MINGW_ACCESS" cppflags="-D__USE_MINGW_ACCESS -D__USE_MINGW_ANSI_STDIO=1"
;; ;;
esac esac
@@ -238,8 +230,10 @@ fi
cd $BUILDSCRIPTDIR cd $BUILDSCRIPTDIR
echo "stripping installed binaries" if [ "$BUILD_DKPRO_NO_STRIP_BINARIES" != "1" ]; then
. ./strip_bins.sh echo "stripping installed binaries"
. ./strip_bins.sh
fi
#--------------------------------------------------------------------------------- #---------------------------------------------------------------------------------
# Clean up temporary files and source directories # Clean up temporary files and source directories

View File

@@ -1,8 +1,8 @@
diff --git a/gcc/config.gcc b/gcc/config.gcc diff --git a/gcc/config.gcc b/gcc/config.gcc
index 357b0bed067..6b1e254785a 100644 index c5064dd3766..decfa78fb7b 100644
--- a/gcc/config.gcc --- a/gcc/config.gcc
+++ b/gcc/config.gcc +++ b/gcc/config.gcc
@@ -1090,7 +1090,14 @@ aarch64*-*-elf | aarch64*-*-fuchsia* | aarch64*-*-rtems*) @@ -1093,7 +1093,14 @@ aarch64*-*-elf | aarch64*-*-fuchsia* | aarch64*-*-rtems*)
tmake_file="${tmake_file} aarch64/t-aarch64" tmake_file="${tmake_file} aarch64/t-aarch64"
case $target in case $target in
aarch64-*-elf*) aarch64-*-elf*)
@@ -17,23 +17,8 @@ index 357b0bed067..6b1e254785a 100644
;; ;;
aarch64-*-fuchsia*) aarch64-*-fuchsia*)
tm_file="${tm_file} fuchsia.h" tm_file="${tm_file} fuchsia.h"
diff --git a/gcc/config.host b/gcc/config.host
index 0a02c33cc80..38f7adc655e 100644
--- a/gcc/config.host
+++ b/gcc/config.host
@@ -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/aarch64-elf-raw.h b/gcc/config/aarch64/aarch64-elf-raw.h diff --git a/gcc/config/aarch64/aarch64-elf-raw.h b/gcc/config/aarch64/aarch64-elf-raw.h
index e986149e400..9264d53f32c 100644 index d4d820a9d54..ed5dd440846 100644
--- a/gcc/config/aarch64/aarch64-elf-raw.h --- a/gcc/config/aarch64/aarch64-elf-raw.h
+++ b/gcc/config/aarch64/aarch64-elf-raw.h +++ b/gcc/config/aarch64/aarch64-elf-raw.h
@@ -22,6 +22,7 @@ @@ -22,6 +22,7 @@
@@ -45,7 +30,7 @@ index e986149e400..9264d53f32c 100644
#define ENDFILE_SPEC \ #define ENDFILE_SPEC \
" crtend%O%s crtn%O%s " \ " crtend%O%s crtn%O%s " \
diff --git a/gcc/config/aarch64/aarch64-opts.h b/gcc/config/aarch64/aarch64-opts.h diff --git a/gcc/config/aarch64/aarch64-opts.h b/gcc/config/aarch64/aarch64-opts.h
index af3b7364a74..6df7a0dc8a1 100644 index 93572fe8330..9327c52a819 100644
--- a/gcc/config/aarch64/aarch64-opts.h --- a/gcc/config/aarch64/aarch64-opts.h
+++ b/gcc/config/aarch64/aarch64-opts.h +++ b/gcc/config/aarch64/aarch64-opts.h
@@ -48,6 +48,12 @@ enum aarch64_tls_type { @@ -48,6 +48,12 @@ enum aarch64_tls_type {
@@ -61,11 +46,11 @@ index af3b7364a74..6df7a0dc8a1 100644
/* The code model defines the address generation strategy. /* The code model defines the address generation strategy.
Most have a PIC and non-PIC variant. */ Most have a PIC and non-PIC variant. */
enum aarch64_code_model { enum aarch64_code_model {
diff --git a/gcc/config/aarch64/aarch64.c b/gcc/config/aarch64/aarch64.c diff --git a/gcc/config/aarch64/aarch64.cc b/gcc/config/aarch64/aarch64.cc
index 12625a4bee3..4353e2658a1 100644 index 5c9e7791a12..718db155d57 100644
--- a/gcc/config/aarch64/aarch64.c --- a/gcc/config/aarch64/aarch64.cc
+++ b/gcc/config/aarch64/aarch64.c +++ b/gcc/config/aarch64/aarch64.cc
@@ -18053,8 +18053,24 @@ aarch64_load_tp (rtx target) @@ -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);
@@ -93,10 +78,10 @@ index 12625a4bee3..4353e2658a1 100644
} }
diff --git a/gcc/config/aarch64/aarch64.h b/gcc/config/aarch64/aarch64.h diff --git a/gcc/config/aarch64/aarch64.h b/gcc/config/aarch64/aarch64.h
index bfffbcd6abf..814de8c2918 100644 index 359b6e8561f..f5b596fc312 100644
--- a/gcc/config/aarch64/aarch64.h --- a/gcc/config/aarch64/aarch64.h
+++ b/gcc/config/aarch64/aarch64.h +++ b/gcc/config/aarch64/aarch64.h
@@ -1191,6 +1191,10 @@ typedef struct @@ -1245,6 +1245,10 @@ typedef struct
/* 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)
@@ -107,7 +92,7 @@ index bfffbcd6abf..814de8c2918 100644
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
@@ -1236,7 +1240,7 @@ extern const char *aarch64_rewrite_mcpu (int argc, const char **argv); @@ -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 },
@@ -117,10 +102,10 @@ index bfffbcd6abf..814de8c2918 100644
#define HAVE_LOCAL_CPU_DETECT #define HAVE_LOCAL_CPU_DETECT
# define EXTRA_SPEC_FUNCTIONS \ # define EXTRA_SPEC_FUNCTIONS \
diff --git a/gcc/config/aarch64/aarch64.md b/gcc/config/aarch64/aarch64.md diff --git a/gcc/config/aarch64/aarch64.md b/gcc/config/aarch64/aarch64.md
index abfd8452674..8b9f4423adb 100644 index 34b8059b45b..4debacf3cb9 100644
--- a/gcc/config/aarch64/aarch64.md --- a/gcc/config/aarch64/aarch64.md
+++ b/gcc/config/aarch64/aarch64.md +++ b/gcc/config/aarch64/aarch64.md
@@ -6771,11 +6771,22 @@ @@ -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))]
@@ -146,7 +131,7 @@ index abfd8452674..8b9f4423adb 100644
;; 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 --git a/gcc/config/aarch64/aarch64.opt b/gcc/config/aarch64/aarch64.opt diff --git a/gcc/config/aarch64/aarch64.opt b/gcc/config/aarch64/aarch64.opt
index 32191cf1acf..49b03937bdd 100644 index 92220b26ee2..68abc1764f6 100644
--- a/gcc/config/aarch64/aarch64.opt --- a/gcc/config/aarch64/aarch64.opt
+++ b/gcc/config/aarch64/aarch64.opt +++ b/gcc/config/aarch64/aarch64.opt
@@ -122,6 +122,21 @@ Enum(aarch64_tls_size) String(32) Value(32) @@ -122,6 +122,21 @@ Enum(aarch64_tls_size) String(32) Value(32)
@@ -180,49 +165,11 @@ index 32191cf1acf..49b03937bdd 100644
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 --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/t-aarch64 b/gcc/config/aarch64/t-aarch64 diff --git a/gcc/config/aarch64/t-aarch64 b/gcc/config/aarch64/t-aarch64
index 7e1606c47ac..3b650075724 100644 index ba74abc0a43..5202ec05d0b 100644
--- a/gcc/config/aarch64/t-aarch64 --- a/gcc/config/aarch64/t-aarch64
+++ b/gcc/config/aarch64/t-aarch64 +++ b/gcc/config/aarch64/t-aarch64
@@ -165,8 +165,10 @@ aarch64-cc-fusion.o: $(srcdir)/config/aarch64/aarch64-cc-fusion.cc \ @@ -177,8 +177,10 @@ aarch64-cc-fusion.o: $(srcdir)/config/aarch64/aarch64-cc-fusion.cc \
$(srcdir)/config/aarch64/aarch64-cc-fusion.cc $(srcdir)/config/aarch64/aarch64-cc-fusion.cc
comma=, comma=,
@@ -235,21 +182,12 @@ index 7e1606c47ac..3b650075724 100644
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 --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/devkitpro.h b/gcc/config/devkitpro.h diff --git a/gcc/config/devkitpro.h b/gcc/config/devkitpro.h
new file mode 100644 new file mode 100644
index 00000000000..11ba0f5ab1c index 00000000000..a25459e4352
--- /dev/null --- /dev/null
+++ b/gcc/config/devkitpro.h +++ b/gcc/config/devkitpro.h
@@ -0,0 +1,31 @@ @@ -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.
+ +
@@ -278,6 +216,7 @@ index 00000000000..11ba0f5ab1c
+#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)
+ +
+ +
@@ -316,10 +255,10 @@ index 00000000000..9acbbf9d27c
+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 --git a/gcc/config/i386/host-mingw32.c b/gcc/config/i386/host-mingw32.c diff --git a/gcc/config/i386/host-mingw32.cc b/gcc/config/i386/host-mingw32.cc
index 360a280b23a..2c03947999a 100644 index 3b0d83ffc60..6e063b6ccd0 100644
--- a/gcc/config/i386/host-mingw32.c --- a/gcc/config/i386/host-mingw32.cc
+++ b/gcc/config/i386/host-mingw32.c +++ b/gcc/config/i386/host-mingw32.cc
@@ -45,7 +45,11 @@ static size_t mingw32_gt_pch_alloc_granularity (void); @@ -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*);
@@ -332,11 +271,11 @@ 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/gcc.c b/gcc/gcc.c diff --git a/gcc/gcc.cc b/gcc/gcc.cc
index 7837553958b..69d7a798e2e 100644 index bb07cc244e3..eff31f5093d 100644
--- a/gcc/gcc.c --- a/gcc/gcc.cc
+++ b/gcc/gcc.c +++ b/gcc/gcc.cc
@@ -853,6 +853,11 @@ proper position among the other output files. */ @@ -860,6 +860,11 @@ proper position among the other output files. */
#endif #endif
#endif #endif
@@ -348,7 +287,7 @@ index 7837553958b..69d7a798e2e 100644
/* 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 \
@@ -1197,6 +1202,7 @@ static const char *link_spec = LINK_SPEC; @@ -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;
@@ -356,7 +295,7 @@ index 7837553958b..69d7a798e2e 100644
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;
@@ -1702,6 +1708,7 @@ static struct spec_list static_specs[] = @@ -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),
@@ -365,7 +304,7 @@ index 7837553958b..69d7a798e2e 100644
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 --git a/libgcc/crtstuff.c b/libgcc/crtstuff.c diff --git a/libgcc/crtstuff.c b/libgcc/crtstuff.c
index 675930db043..bdfd6f6b0bb 100644 index b98b86a5a88..3f62b3616d2 100644
--- a/libgcc/crtstuff.c --- a/libgcc/crtstuff.c
+++ b/libgcc/crtstuff.c +++ b/libgcc/crtstuff.c
@@ -325,7 +325,7 @@ register_tm_clones (void) @@ -325,7 +325,7 @@ register_tm_clones (void)
@@ -378,7 +317,7 @@ index 675930db043..bdfd6f6b0bb 100644
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/libgcc/gthr.h b/libgcc/gthr.h diff --git a/libgcc/gthr.h b/libgcc/gthr.h
index cca3f294b7b..deffea4107b 100644 index 7943c94f6d1..6d23362f7f0 100644
--- a/libgcc/gthr.h --- a/libgcc/gthr.h
+++ b/libgcc/gthr.h +++ b/libgcc/gthr.h
@@ -136,7 +136,7 @@ see the files COPYING3 and COPYING.RUNTIME respectively. If not, see @@ -136,7 +136,7 @@ see the files COPYING3 and COPYING.RUNTIME respectively. If not, see
@@ -391,10 +330,10 @@ index cca3f294b7b..deffea4107b 100644
#define GTHREAD_USE_WEAK 0 #define GTHREAD_USE_WEAK 0
#endif #endif
diff --git a/libstdc++-v3/include/Makefile.am b/libstdc++-v3/include/Makefile.am diff --git a/libstdc++-v3/include/Makefile.am b/libstdc++-v3/include/Makefile.am
index 40a41ef2a1c..4d06c6f9953 100644 index 7708f4cf6c5..d3f484a5623 100644
--- a/libstdc++-v3/include/Makefile.am --- a/libstdc++-v3/include/Makefile.am
+++ b/libstdc++-v3/include/Makefile.am +++ b/libstdc++-v3/include/Makefile.am
@@ -1347,6 +1347,7 @@ ${host_builddir}/gthr.h: ${toplevel_srcdir}/libgcc/gthr.h stamp-${host_alias} @@ -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' \
@@ -403,10 +342,10 @@ index 40a41ef2a1c..4d06c6f9953 100644
< $< > $@ < $< > $@
diff --git a/libstdc++-v3/include/Makefile.in b/libstdc++-v3/include/Makefile.in diff --git a/libstdc++-v3/include/Makefile.in b/libstdc++-v3/include/Makefile.in
index fcd2b5b2d40..c034367994a 100644 index 7023c2de23e..d150a616d13 100644
--- a/libstdc++-v3/include/Makefile.in --- a/libstdc++-v3/include/Makefile.in
+++ b/libstdc++-v3/include/Makefile.in +++ b/libstdc++-v3/include/Makefile.in
@@ -1830,6 +1830,7 @@ ${host_builddir}/gthr.h: ${toplevel_srcdir}/libgcc/gthr.h stamp-${host_alias} @@ -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' \
@@ -414,43 +353,3 @@ index fcd2b5b2d40..c034367994a 100644
-e 's,^#include "\(.*\)",#include <bits/\1>,g' \ -e 's,^#include "\(.*\)",#include <bits/\1>,g' \
< $< > $@ < $< > $@
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

View File

@@ -10,7 +10,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-werror \ --prefix=$prefix --target=$target --disable-nls --disable-werror \
--enable-lto --enable-plugins --enable-poison-system-directories \ --enable-lto --enable-plugins --enable-poison-system-directories \
$CROSS_PARAMS \ $CROSS_PARAMS \
@@ -39,9 +39,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="" \
@@ -52,7 +49,7 @@ then
--enable-cxx-flags='-ffunction-sections' \ --enable-cxx-flags='-ffunction-sections' \
--disable-libstdcxx-verbose \ --disable-libstdcxx-verbose \
--enable-poison-system-directories \ --enable-poison-system-directories \
--enable-interwork --enable-multilib \ --enable-multilib \
--enable-threads --disable-win32-registry --disable-nls --disable-debug\ --enable-threads --disable-win32-registry --disable-nls --disable-debug\
--disable-libmudflap --disable-libssp --disable-libgomp \ --disable-libmudflap --disable-libssp --disable-libgomp \
--disable-libstdcxx-pch \ --disable-libstdcxx-pch \
@@ -62,11 +59,10 @@ then
--with-newlib=yes \ --with-newlib=yes \
--with-headers=../../newlib-$NEWLIB_VER/newlib/libc/include \ --with-headers=../../newlib-$NEWLIB_VER/newlib/libc/include \
--prefix=$prefix \ --prefix=$prefix \
--enable-lto $plugin_ld\ --enable-lto \
--with-system-zlib \
--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 17" \ --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 \

View File

@@ -1,70 +1,24 @@
diff --git a/gcc/config.host b/gcc/config.host diff --git a/gcc/config.gcc b/gcc/config.gcc
index 0a02c33cc80..38f7adc655e 100644 index c5064dd3766..b244608f001 100644
--- a/gcc/config.host --- a/gcc/config.gcc
+++ b/gcc/config.host +++ b/gcc/config.gcc
@@ -251,6 +251,10 @@ case ${host} in @@ -1366,6 +1366,11 @@ arm*-*-eabi* | arm*-*-symbianelf* | arm*-*-rtems* | arm*-*-fuchsia*)
host_extra_gcc_objs="${host_extra_gcc_objs} driver-mingw32.o" tm_file="$tm_file newlib-stdint.h"
host_lto_plugin_soname=liblto_plugin.dll 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
;; ;;
+ aarch64-*-darwin*) arm*-*-fuchsia*)
+ out_host_hook_obj="${out_host_hook_obj} host-aarch64-darwin.o" tm_file="${tm_file} fuchsia.h arm/fuchsia-elf.h glibc-stdint.h"
+ 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/arm/arm-cpus.in b/gcc/config/arm/arm-cpus.in diff --git a/gcc/config/arm/arm-cpus.in b/gcc/config/arm/arm-cpus.in
index 0becb4385b6..30bd4a24cd6 100644 index 0d3082b569f..15be7fc47b3 100644
--- a/gcc/config/arm/arm-cpus.in --- a/gcc/config/arm/arm-cpus.in
+++ b/gcc/config/arm/arm-cpus.in +++ b/gcc/config/arm/arm-cpus.in
@@ -400,7 +400,7 @@ begin arch armv6k @@ -412,7 +412,7 @@ begin arch armv6k
tune for mpcore tune for mpcore
tune flags CO_PROC tune flags CO_PROC
base 6K base 6K
@@ -74,10 +28,10 @@ index 0becb4385b6..30bd4a24cd6 100644
optalias vfpv2 fp optalias vfpv2 fp
option nofp remove ALL_FP option nofp remove ALL_FP
diff --git a/gcc/config/arm/t-arm-elf b/gcc/config/arm/t-arm-elf diff --git a/gcc/config/arm/t-arm-elf b/gcc/config/arm/t-arm-elf
index d68def30867..d31f1e31ee6 100644 index 1459afea921..72e1d20861d 100644
--- a/gcc/config/arm/t-arm-elf --- a/gcc/config/arm/t-arm-elf
+++ b/gcc/config/arm/t-arm-elf +++ b/gcc/config/arm/t-arm-elf
@@ -16,111 +16,14 @@ @@ -16,120 +16,22 @@
# along with GCC; see the file COPYING3. If not see # along with GCC; see the file COPYING3. If not see
# <http://www.gnu.org/licenses/>. # <http://www.gnu.org/licenses/>.
@@ -103,6 +57,8 @@ index d68def30867..d31f1e31ee6 100644
-# it seems to work ok. -# it seems to work ok.
-v8_fps := simd fp16 crypto fp16+crypto dotprod fp16fml -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. -# We don't do anything special with these. Pre-v4t probably doesn't work.
-all_early_nofp := armv4 armv4t armv5t -all_early_nofp := armv4 armv4t armv5t
- -
@@ -114,6 +70,8 @@ index d68def30867..d31f1e31ee6 100644
-all_v8_archs := armv8-a armv8-a+crc armv8.1-a armv8.2-a armv8.3-a armv8.4-a \ -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 - armv8.5-a armv8.6-a
- -
-all_v9_archs := armv9-a
-
-# No floating point variants, require thumb1 softfp -# No floating point variants, require thumb1 softfp
-all_nofp_t := armv6-m armv6s-m armv8-m.base -all_nofp_t := armv6-m armv6s-m armv8-m.base
- -
@@ -123,8 +81,8 @@ index d68def30867..d31f1e31ee6 100644
- -
-MULTILIB_OPTIONS = -MULTILIB_OPTIONS =
-MULTILIB_DIRNAMES = -MULTILIB_DIRNAMES =
+MULTILIB_OPTIONS = mthumb mbig-endian march=armv6k mfloat-abi=hard +MULTILIB_OPTIONS = mthumb mbig-endian march=armv6k march=armv6s-m mfloat-abi=hard mfloat-abi=soft
+MULTILIB_DIRNAMES = thumb be armv6k fpu +MULTILIB_DIRNAMES = thumb be armv6k v6-m fpu nofp
MULTILIB_EXCEPTIONS = MULTILIB_EXCEPTIONS =
MULTILIB_MATCHES = MULTILIB_MATCHES =
-MULTILIB_REUSE = -MULTILIB_REUSE =
@@ -176,15 +134,26 @@ index d68def30867..d31f1e31ee6 100644
- march?armv7+fp=march?$(ARCH) \ - march?armv7+fp=march?$(ARCH) \
- $(foreach FPARCH, $(v8_fps), \ - $(foreach FPARCH, $(v8_fps), \
- march?armv7+fp=march?$(ARCH)+$(FPARCH))) - march?armv7+fp=march?$(ARCH)+$(FPARCH)))
+MULTILIB_REQUIRED = mthumb mbig-endian mthumb/mbig-endian march=armv6k/mfloat-abi=hard +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, \ -MULTILIB_MATCHES += $(foreach ARCH, armv7e-m armv8-m.mainline, \
- march?armv7+fp=march?$(ARCH)+fp.dp) - march?armv7+fp=march?$(ARCH)+fp.dp)
-# PART 4 - Reuse rules
+MULTILIB_MATCHES += march?armv6k=mtune?mpcore +MULTILIB_MATCHES += march?armv6k=mtune?mpcore
+MULTILIB_MATCHES += march?armv6k=mcpu?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
-MULTILIB_REUSE += mthumb=mthumb/mfpu.auto/march.armv5te+fp -MULTILIB_REUSE += mthumb=mthumb/mfpu.auto/march.armv5te+fp
-MULTILIB_REUSE += mthumb=mthumb/march.armv5te+fp -MULTILIB_REUSE += mthumb=mthumb/march.armv5te+fp
@@ -194,8 +163,9 @@ index d68def30867..d31f1e31ee6 100644
-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=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=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/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 diff --git a/gcc/config/arm/unknown-elf.h b/gcc/config/arm/unknown-elf.h
index cca6f0ece54..8b78c28c7bb 100644 index bfb294beaa3..7e2e1c7bbbe 100644
--- a/gcc/config/arm/unknown-elf.h --- a/gcc/config/arm/unknown-elf.h
+++ b/gcc/config/arm/unknown-elf.h +++ b/gcc/config/arm/unknown-elf.h
@@ -29,7 +29,7 @@ @@ -29,7 +29,7 @@
@@ -214,10 +184,78 @@ index cca6f0ece54..8b78c28c7bb 100644
-#define LINK_GCC_C_SEQUENCE_SPEC "--start-group %G %{!nolibc:%L} --end-group" -#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" +#define LINK_GCC_C_SEQUENCE_SPEC "--start-group %G %L %(libgloss) --end-group"
+ +
diff --git a/gcc/config/i386/host-mingw32.c b/gcc/config/i386/host-mingw32.c diff --git a/gcc/config/devkitpro.h b/gcc/config/devkitpro.h
index 360a280b23a..2c03947999a 100644 new file mode 100644
--- a/gcc/config/i386/host-mingw32.c index 00000000000..180a9ea8553
+++ b/gcc/config/i386/host-mingw32.c --- /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); @@ -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*);
@@ -230,11 +268,11 @@ 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/gcc.c b/gcc/gcc.c diff --git a/gcc/gcc.cc b/gcc/gcc.cc
index 7837553958b..69d7a798e2e 100644 index bb07cc244e3..eff31f5093d 100644
--- a/gcc/gcc.c --- a/gcc/gcc.cc
+++ b/gcc/gcc.c +++ b/gcc/gcc.cc
@@ -853,6 +853,11 @@ proper position among the other output files. */ @@ -860,6 +860,11 @@ proper position among the other output files. */
#endif #endif
#endif #endif
@@ -246,7 +284,7 @@ index 7837553958b..69d7a798e2e 100644
/* 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 \
@@ -1197,6 +1202,7 @@ static const char *link_spec = LINK_SPEC; @@ -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;
@@ -254,7 +292,7 @@ index 7837553958b..69d7a798e2e 100644
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;
@@ -1702,6 +1708,7 @@ static struct spec_list static_specs[] = @@ -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),
@@ -273,7 +311,7 @@ index dddddc7c444..c2502597953 100644
-LIB2_DIVMOD_EXCEPTION_FLAGS := -fexceptions -LIB2_DIVMOD_EXCEPTION_FLAGS := -fexceptions
+LIB2_DIVMOD_EXCEPTION_FLAGS := -fno-exceptions +LIB2_DIVMOD_EXCEPTION_FLAGS := -fno-exceptions
diff --git a/libgcc/crtstuff.c b/libgcc/crtstuff.c diff --git a/libgcc/crtstuff.c b/libgcc/crtstuff.c
index 675930db043..bdfd6f6b0bb 100644 index b98b86a5a88..3f62b3616d2 100644
--- a/libgcc/crtstuff.c --- a/libgcc/crtstuff.c
+++ b/libgcc/crtstuff.c +++ b/libgcc/crtstuff.c
@@ -325,7 +325,7 @@ register_tm_clones (void) @@ -325,7 +325,7 @@ register_tm_clones (void)
@@ -285,43 +323,48 @@ 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/include/c_compatibility/fenv.h b/libstdc++-v3/include/c_compatibility/fenv.h diff --git a/libgcc/gthr.h b/libgcc/gthr.h
index 0413e3b7c25..ff5f8bbe1a1 100644 index 7943c94f6d1..1edc5360f6a 100644
--- a/libstdc++-v3/include/c_compatibility/fenv.h --- a/libgcc/gthr.h
+++ b/libstdc++-v3/include/c_compatibility/fenv.h +++ b/libgcc/gthr.h
@@ -26,6 +26,10 @@ @@ -136,7 +136,7 @@ see the files COPYING3 and COPYING.RUNTIME respectively. If not, see
* This is a Standard C++ Library header. /* 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' \
< $< > $@
+#if !defined __cplusplus || defined _GLIBCXX_INCLUDE_NEXT_C_HEADERS diff --git a/libstdc++-v3/include/Makefile.in b/libstdc++-v3/include/Makefile.in
+# include_next <fenv.h> index 7023c2de23e..33bec80c2ce 100644
+#else --- a/libstdc++-v3/include/Makefile.in
+ +++ b/libstdc++-v3/include/Makefile.in
#ifndef _GLIBCXX_FENV_H @@ -336,6 +336,7 @@ prefix = @prefix@
#define _GLIBCXX_FENV_H 1 program_transform_name = @program_transform_name@
psdir = @psdir@
@@ -79,3 +83,5 @@ namespace std python_mod_dir = @python_mod_dir@
#endif // C++11 +runstatedir = @runstatedir@
sbindir = @sbindir@
#endif // _GLIBCXX_FENV_H sharedstatedir = @sharedstatedir@
+ srcdir = @srcdir@
+#endif // __cplusplus @@ -1857,6 +1858,7 @@ ${host_builddir}/gthr.h: ${toplevel_srcdir}/libgcc/gthr.h stamp-${host_alias}
diff --git a/libstdc++-v3/include/c_global/cfenv b/libstdc++-v3/include/c_global/cfenv -e '/^#/s/\(${uppercase}${uppercase}*\)/_GLIBCXX_\1/g' \
index 0b0ec35a837..d24cb1a3c81 100644 -e 's/_GLIBCXX_SUPPORTS_WEAK/__GXX_WEAK__/g' \
--- a/libstdc++-v3/include/c_global/cfenv -e 's/_GLIBCXX___MINGW32_GLIBCXX___/__MINGW32__/g' \
+++ b/libstdc++-v3/include/c_global/cfenv + -e 's/_GLIBCXX___DEVKITARM_GLIBCXX___/__DEVKITARM__/g' \
@@ -37,9 +37,11 @@ -e 's,^#include "\(.*\)",#include <bits/\1>,g' \
< $< > $@
#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

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

View File

@@ -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 56" \ --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 \

View File

@@ -1,12 +0,0 @@
diff -NBaur binutils-2.31.1/opcodes/ppc-opc.c binutils-2.31.1-ppc/opcodes/ppc-opc.c
--- binutils-2.31.1/opcodes/ppc-opc.c 2018-06-24 19:38:58.000000000 +0100
+++ binutils-2.31.1-ppc/opcodes/ppc-opc.c 2018-11-01 10:59:42.814553627 +0000
@@ -3501,7 +3501,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

View File

@@ -1,12 +0,0 @@
diff -NBaur binutils-2.34/opcodes/ppc-opc.c binutils-2.34-ppc/opcodes/ppc-opc.c
--- binutils-2.34/opcodes/ppc-opc.c 2020-01-18 13:55:49.000000000 +0000
+++ binutils-2.34-ppc/opcodes/ppc-opc.c 2020-05-22 10:47:37.900308413 +0000
@@ -3747,7 +3747,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

View File

@@ -0,0 +1,26 @@
diff --git a/ld/emulparams/elf32ppccommon.sh b/ld/emulparams/elf32ppccommon.sh
index da892988f5d..6b8efb9bbdb 100644
--- a/ld/emulparams/elf32ppccommon.sh
+++ b/ld/emulparams/elf32ppccommon.sh
@@ -23,7 +23,7 @@ else
unset SBSS_START_SYMBOLS
unset SBSS_END_SYMBOLS
fi
-OTHER_END_SYMBOLS="${CREATE_SHLIB+PROVIDE (}__end = .${CREATE_SHLIB+)};"
+OTHER_END_SYMBOLS="${CREATE_SHLIB+PROVIDE (}__end = .${CREATE_SHLIB+)};${CREATE_SHLIB+PROVIDE (}__end__ = .${CREATE_SHLIB+)};"
OTHER_RELRO_SECTIONS="
.fixup ${RELOCATING-0} : { *(.fixup) }
.got1 ${RELOCATING-0} : { *(.got1) }
diff --git a/opcodes/ppc-opc.c b/opcodes/ppc-opc.c
index 37f1aeb780c..f8de8aacc44 100644
--- a/opcodes/ppc-opc.c
+++ b/opcodes/ppc-opc.c
@@ -4988,7 +4988,7 @@ const unsigned int num_powerpc_operands = ARRAY_SIZE (powerpc_operands);
#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

View File

@@ -10,50 +10,24 @@ 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/i386/host-mingw32.c b/gcc/config/i386/host-mingw32.c diff --git a/gcc/config/i386/host-mingw32.cc b/gcc/config/i386/host-mingw32.cc
index 250fef59b55..36b2239aa5d 100644 index 3b0d83ffc60..6e063b6ccd0 100644
--- a/gcc/config/i386/host-mingw32.c --- a/gcc/config/i386/host-mingw32.cc
+++ b/gcc/config/i386/host-mingw32.c +++ b/gcc/config/i386/host-mingw32.cc
@@ -44,9 +44,6 @@ static size_t mingw32_gt_pch_alloc_granularity (void); @@ -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? */
-static const size_t pch_VA_max_size = 128 * 1024 * 1024; +#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. */ /* Granularity for reserving address space. */
static size_t va_granularity = 0x10000; static size_t va_granularity = 0x10000;
@@ -88,9 +85,6 @@ static void *
mingw32_gt_pch_get_address (size_t size, int)
{
void* res;
- size = (size + va_granularity - 1) & ~(va_granularity - 1);
- if (size > pch_VA_max_size)
- return NULL;
/* FIXME: We let system determine base by setting first arg to NULL.
Allocating at top of available address space avoids unnecessary
@@ -100,7 +94,7 @@ mingw32_gt_pch_get_address (size_t size, int)
If we allocate at bottom we need to reserve the address as early
as possible and at the same point in each invocation. */
- res = VirtualAlloc (NULL, pch_VA_max_size,
+ res = VirtualAlloc (NULL, size,
MEM_RESERVE | MEM_TOP_DOWN,
PAGE_NOACCESS);
if (!res)
@@ -150,7 +144,7 @@ mingw32_gt_pch_use_address (void *addr, size_t size, int fd,
/* Offset must be also be a multiple of allocation granularity for
this to work. We can't change the offset. */
- if ((offset & (va_granularity - 1)) != 0 || size > pch_VA_max_size)
+ if ((offset & (va_granularity - 1)) != 0)
return -1;
diff --git a/gcc/config/newlib-stdint.h b/gcc/config/newlib-stdint.h diff --git a/gcc/config/newlib-stdint.h b/gcc/config/newlib-stdint.h
index 2e086f16de9..1c27c6467bc 100644 index 098f658e74f..50c74877deb 100644
--- a/gcc/config/newlib-stdint.h --- a/gcc/config/newlib-stdint.h
+++ b/gcc/config/newlib-stdint.h +++ b/gcc/config/newlib-stdint.h
@@ -25,7 +25,7 @@ see the files COPYING3 and COPYING.RUNTIME respectively. If not, see @@ -25,7 +25,7 @@ see the files COPYING3 and COPYING.RUNTIME respectively. If not, see
@@ -65,19 +39,32 @@ index 2e086f16de9..1c27c6467bc 100644
#endif #endif
#define SIG_ATOMIC_TYPE "int" #define SIG_ATOMIC_TYPE "int"
diff --git a/gcc/config/rs6000/eabi.h b/gcc/config/rs6000/eabi.h
index e58283fe5d4..161767b2b08 100644
--- a/gcc/config/rs6000/eabi.h
+++ b/gcc/config/rs6000/eabi.h
@@ -36,6 +36,8 @@
builtin_assert ("system=embedded"); \
builtin_assert ("cpu=powerpc"); \
builtin_assert ("machine=powerpc"); \
+ builtin_define ("__DEVKITPPC__"); \
+ builtin_define ("__DEVKITPRO__"); \
TARGET_OS_SYSV_CPP_BUILTINS (); \
} \
while (0)
diff --git a/gcc/config/rs6000/rs6000.h b/gcc/config/rs6000/rs6000.h diff --git a/gcc/config/rs6000/rs6000.h b/gcc/config/rs6000/rs6000.h
index 132ca20fd7d..119ee5bbc8c 100644 index bc48f450210..7ba76802670 100644
--- a/gcc/config/rs6000/rs6000.h --- a/gcc/config/rs6000/rs6000.h
+++ b/gcc/config/rs6000/rs6000.h +++ b/gcc/config/rs6000/rs6000.h
@@ -196,6 +196,7 @@ ASM_OPT_ANY @@ -199,6 +199,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); @@ -210,6 +211,8 @@ extern const char *host_detect_local_cpu (int argc, const char **argv);
#else #else
#define ASM_CPU_NATIVE_SPEC "%(asm_default)" #define ASM_CPU_NATIVE_SPEC "%(asm_default)"
#endif #endif
@@ -87,10 +74,10 @@ index 132ca20fd7d..119ee5bbc8c 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 --git a/gcc/config/rs6000/sysv4.h b/gcc/config/rs6000/sysv4.h
index 9ade72114e9..cede792d3a7 100644 index 7e2519de5d4..bedfaf31808 100644
--- a/gcc/config/rs6000/sysv4.h --- a/gcc/config/rs6000/sysv4.h
+++ b/gcc/config/rs6000/sysv4.h +++ b/gcc/config/rs6000/sysv4.h
@@ -590,7 +590,11 @@ GNU_USER_TARGET_CC1_SPEC @@ -589,7 +589,11 @@ GNU_USER_TARGET_CC1_SPEC
/* Default starting address if specified. */ /* Default starting address if specified. */
#define LINK_START_SPEC "\ #define LINK_START_SPEC "\
@@ -103,7 +90,7 @@ index 9ade72114e9..cede792d3a7 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 @@ GNU_USER_TARGET_CC1_SPEC
/* Any specific OS flags. */ /* Any specific OS flags. */
#define LINK_OS_SPEC "\ #define LINK_OS_SPEC "\
@@ -113,7 +100,7 @@ index 9ade72114e9..cede792d3a7 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 @@ GNU_USER_TARGET_CC1_SPEC
/* 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} \
@@ -125,7 +112,7 @@ index 9ade72114e9..cede792d3a7 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 @@ GNU_USER_TARGET_CC1_SPEC
#undef STARTFILE_SPEC #undef STARTFILE_SPEC
#define STARTFILE_SPEC "\ #define STARTFILE_SPEC "\
@@ -137,7 +124,7 @@ index 9ade72114e9..cede792d3a7 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 @@ GNU_USER_TARGET_CC1_SPEC
#undef LIB_SPEC #undef LIB_SPEC
#define LIB_SPEC "\ #define LIB_SPEC "\
@@ -147,7 +134,7 @@ index 9ade72114e9..cede792d3a7 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 @@ GNU_USER_TARGET_CC1_SPEC
mcall-openbsd: %(lib_openbsd) ; \ mcall-openbsd: %(lib_openbsd) ; \
: %(lib_default) }" : %(lib_default) }"
@@ -162,7 +149,7 @@ index 9ade72114e9..cede792d3a7 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 @@ GNU_USER_TARGET_CC1_SPEC
/* 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"
@@ -190,7 +177,7 @@ index 9ade72114e9..cede792d3a7 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 @@ ncrtn.o%s"
#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 }, \
@@ -198,7 +185,7 @@ index 9ade72114e9..cede792d3a7 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 @@ ncrtn.o%s"
{ "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 }, \
@@ -206,7 +193,7 @@ index 9ade72114e9..cede792d3a7 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 @@ ncrtn.o%s"
{ "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 }, \
@@ -214,7 +201,7 @@ index 9ade72114e9..cede792d3a7 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 @@ ncrtn.o%s"
{ "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 }, \
@@ -226,7 +213,7 @@ index 9ade72114e9..cede792d3a7 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 @@ ncrtn.o%s"
{ "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 }, \
@@ -234,7 +221,7 @@ index 9ade72114e9..cede792d3a7 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 @@ ncrtn.o%s"
{ "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 }, \
@@ -245,7 +232,7 @@ index 9ade72114e9..cede792d3a7 100644
{ "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 --git a/gcc/config/rs6000/sysv4.opt b/gcc/config/rs6000/sysv4.opt
index b49ba261f3c..4eda763dfca 100644 index ac75d67b19a..bdee36872f8 100644
--- a/gcc/config/rs6000/sysv4.opt --- a/gcc/config/rs6000/sysv4.opt
+++ b/gcc/config/rs6000/sysv4.opt +++ b/gcc/config/rs6000/sysv4.opt
@@ -124,6 +124,26 @@ mads @@ -124,6 +124,26 @@ mads
@@ -276,10 +263,10 @@ index b49ba261f3c..4eda763dfca 100644
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 --git a/gcc/configure b/gcc/configure
index eb6061c1631..4c6e993ca3a 100755 index 5ce0557719a..a1c59e87b83 100755
--- a/gcc/configure --- a/gcc/configure
+++ b/gcc/configure +++ b/gcc/configure
@@ -12208,7 +12208,7 @@ case ${enable_threads} in @@ -12884,7 +12884,7 @@ case ${enable_threads} in
# default # default
target_thread_file='single' target_thread_file='single'
;; ;;
@@ -289,10 +276,10 @@ index eb6061c1631..4c6e993ca3a 100755
target_thread_file=${enable_threads} target_thread_file=${enable_threads}
;; ;;
diff --git a/gcc/configure.ac b/gcc/configure.ac diff --git a/gcc/configure.ac b/gcc/configure.ac
index 715fcba0482..779743b69ee 100644 index 23bee7010a3..4540b6d3aee 100644
--- a/gcc/configure.ac --- a/gcc/configure.ac
+++ b/gcc/configure.ac +++ b/gcc/configure.ac
@@ -1800,7 +1800,7 @@ case ${enable_threads} in @@ -1994,7 +1994,7 @@ case ${enable_threads} in
# default # default
target_thread_file='single' target_thread_file='single'
;; ;;
@@ -302,7 +289,7 @@ index 715fcba0482..779743b69ee 100644
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 --git a/libgcc/config/rs6000/crtrestvr.S b/libgcc/config/rs6000/crtrestvr.S
index 260fe4d1af6..664808cd19c 100644 index cf224657260..38683e58cb3 100644
--- a/libgcc/config/rs6000/crtrestvr.S --- a/libgcc/config/rs6000/crtrestvr.S
+++ b/libgcc/config/rs6000/crtrestvr.S +++ b/libgcc/config/rs6000/crtrestvr.S
@@ -24,7 +24,7 @@ @@ -24,7 +24,7 @@
@@ -320,7 +307,7 @@ index 260fe4d1af6..664808cd19c 100644
#endif #endif
+#endif +#endif
diff --git a/libgcc/config/rs6000/crtsavevr.S b/libgcc/config/rs6000/crtsavevr.S diff --git a/libgcc/config/rs6000/crtsavevr.S b/libgcc/config/rs6000/crtsavevr.S
index 7e1d5c5df98..2c62480d165 100644 index 65e791741f7..631be3ec5ba 100644
--- a/libgcc/config/rs6000/crtsavevr.S --- a/libgcc/config/rs6000/crtsavevr.S
+++ b/libgcc/config/rs6000/crtsavevr.S +++ b/libgcc/config/rs6000/crtsavevr.S
@@ -24,7 +24,7 @@ @@ -24,7 +24,7 @@
@@ -866,10 +853,10 @@ index fb812d3801f..7f6669d530f 100644
# 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 --git a/libgcc/configure b/libgcc/configure
index 26bf75789e0..1f663d2cfb0 100755 index 1f9b2ac578b..539fd961156 100755
--- a/libgcc/configure --- a/libgcc/configure
+++ b/libgcc/configure +++ b/libgcc/configure
@@ -5640,6 +5640,7 @@ tm_file="${tm_file_}" @@ -5689,6 +5689,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 ;;
@@ -878,7 +865,7 @@ index 26bf75789e0..1f663d2cfb0 100755
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 --git a/libgcc/crtstuff.c b/libgcc/crtstuff.c
index 3f769a1c660..e005d8304b7 100644 index b98b86a5a88..3f62b3616d2 100644
--- a/libgcc/crtstuff.c --- a/libgcc/crtstuff.c
+++ b/libgcc/crtstuff.c +++ b/libgcc/crtstuff.c
@@ -325,7 +325,7 @@ register_tm_clones (void) @@ -325,7 +325,7 @@ register_tm_clones (void)
@@ -891,10 +878,10 @@ index 3f769a1c660..e005d8304b7 100644
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 --git a/libstdc++-v3/configure b/libstdc++-v3/configure
index 9f9c5a2419a..c9bb6c548be 100755 index eac60392121..d1c85de1e34 100755
--- a/libstdc++-v3/configure --- a/libstdc++-v3/configure
+++ b/libstdc++-v3/configure +++ b/libstdc++-v3/configure
@@ -15637,6 +15637,7 @@ $as_echo "$target_thread_file" >&6; } @@ -15765,6 +15765,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 ;;
@@ -902,3 +889,104 @@ index 9f9c5a2419a..c9bb6c548be 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/std/fstream b/libstdc++-v3/include/std/fstream
index e62a1ade3c2..5f8ec3a1495 100644
--- a/libstdc++-v3/include/std/fstream
+++ b/libstdc++-v3/include/std/fstream
@@ -46,7 +46,7 @@
// This can be overridden by the target's os_defines.h
#ifndef _GLIBCXX_BUFSIZ
-# define _GLIBCXX_BUFSIZ BUFSIZ
+# define _GLIBCXX_BUFSIZ (BUFSIZ+1)
#endif
namespace std _GLIBCXX_VISIBILITY(default)
diff --git a/libstdc++-v3/libsupc++/eh_alloc.cc b/libstdc++-v3/libsupc++/eh_alloc.cc
index c85b9aed40b..a8f3f4a50d2 100644
--- a/libstdc++-v3/libsupc++/eh_alloc.cc
+++ b/libstdc++-v3/libsupc++/eh_alloc.cc
@@ -85,6 +85,7 @@ namespace
{
public:
pool();
+ ~pool();
_GLIBCXX_NODISCARD void *allocate (std::size_t);
void free (void *);
@@ -136,6 +137,15 @@ namespace
first_free_entry->next = NULL;
}
+ pool::~pool()
+ {
+ if (arena)
+ {
+ ::free(arena);
+ arena = 0;
+ }
+ }
+
void *pool::allocate (std::size_t size)
{
__gnu_cxx::__scoped_lock sentry(emergency_mutex);
diff --git a/libstdc++-v3/src/c++17/fs_ops.cc b/libstdc++-v3/src/c++17/fs_ops.cc
index 435368fa5c5..75b78c384b4 100644
--- a/libstdc++-v3/src/c++17/fs_ops.cc
+++ b/libstdc++-v3/src/c++17/fs_ops.cc
@@ -1123,6 +1123,7 @@ fs::permissions(const path& p, perms prms, perm_options opts,
}
int err = 0;
+#ifndef __DEVKITPPC__
#if _GLIBCXX_USE_FCHMODAT
const int flag = (nofollow && is_symlink(st)) ? AT_SYMLINK_NOFOLLOW : 0;
if (::fchmodat(AT_FDCWD, p.c_str(), static_cast<mode_t>(prms), flag))
@@ -1132,6 +1133,7 @@ fs::permissions(const path& p, perms prms, perm_options opts,
ec = std::__unsupported();
else if (posix::chmod(p.c_str(), static_cast<posix::mode_t>(prms)))
err = errno;
+#endif
#endif
if (err)
diff --git a/libstdc++-v3/src/filesystem/ops-common.h b/libstdc++-v3/src/filesystem/ops-common.h
index 978e8724154..f773d3b9b62 100644
--- a/libstdc++-v3/src/filesystem/ops-common.h
+++ b/libstdc++-v3/src/filesystem/ops-common.h
@@ -481,6 +481,7 @@ _GLIBCXX_BEGIN_NAMESPACE_FILESYSTEM
return false;
}
+#ifndef __DEVKITPPC__
#if defined _GLIBCXX_USE_FCHMOD && ! defined _GLIBCXX_FILESYSTEM_IS_WINDOWS
if (::fchmod(out.fd, from_st->st_mode))
#elif defined _GLIBCXX_USE_FCHMODAT && ! defined _GLIBCXX_FILESYSTEM_IS_WINDOWS
@@ -492,6 +493,7 @@ _GLIBCXX_BEGIN_NAMESPACE_FILESYSTEM
ec.assign(errno, std::generic_category());
return false;
}
+#endif
size_t count = from_st->st_size;
#if defined _GLIBCXX_USE_SENDFILE && ! defined _GLIBCXX_FILESYSTEM_IS_WINDOWS
diff --git a/libstdc++-v3/src/filesystem/ops.cc b/libstdc++-v3/src/filesystem/ops.cc
index 896a4918ace..59a155b840e 100644
--- a/libstdc++-v3/src/filesystem/ops.cc
+++ b/libstdc++-v3/src/filesystem/ops.cc
@@ -971,6 +971,7 @@ fs::permissions(const path& p, perms prms, error_code& ec) noexcept
}
int err = 0;
+#ifndef __DEVKITPPC__
#if _GLIBCXX_USE_FCHMODAT
const int flag = (nofollow && is_symlink(st)) ? AT_SYMLINK_NOFOLLOW : 0;
if (::fchmodat(AT_FDCWD, p.c_str(), static_cast<mode_t>(prms), flag))
@@ -980,6 +981,7 @@ fs::permissions(const path& p, perms prms, error_code& ec) noexcept
ec = std::__unsupported();
else if (posix::chmod(p.c_str(), static_cast<mode_t>(prms)))
err = errno;
+#endif
#endif
if (err)

View File

@@ -1,60 +0,0 @@
diff -NBaur gdb-8.2.1/gdb/dtrace-probe.c gdb-8.2.1-apple/gdb/dtrace-probe.c
--- gdb-8.2.1/gdb/dtrace-probe.c 2018-12-23 05:51:54.000000000 +0000
+++ gdb-8.2.1-apple/gdb/dtrace-probe.c 2019-02-19 17:30:16.449175937 +0000
@@ -100,7 +100,7 @@
/* DTrace static_probe_ops. */
-const dtrace_static_probe_ops dtrace_static_probe_ops;
+const dtrace_static_probe_ops dtrace_static_probe_ops = {};
/* The following structure represents a dtrace probe. */
diff -NBaur gdb-8.2.1/gdb/probe.c gdb-8.2.1-apple/gdb/probe.c
--- gdb-8.2.1/gdb/probe.c 2018-12-23 05:51:54.000000000 +0000
+++ gdb-8.2.1-apple/gdb/probe.c 2019-02-19 17:31:05.266578008 +0000
@@ -60,7 +60,7 @@
/* Static operations associated with a generic probe. */
-const any_static_probe_ops any_static_probe_ops;
+const any_static_probe_ops any_static_probe_ops = {};
/* A helper for parse_probes that decodes a probe specification in
SEARCH_PSPACE. It appends matching SALs to RESULT. */
diff -NBaur gdb-8.2.1/gdb/record-btrace.c gdb-8.2.1-apple/gdb/record-btrace.c
--- gdb-8.2.1/gdb/record-btrace.c 2018-12-23 05:51:54.000000000 +0000
+++ gdb-8.2.1-apple/gdb/record-btrace.c 2019-02-19 17:31:33.301731324 +0000
@@ -144,7 +144,7 @@
/* Token associated with a new-thread observer enabling branch tracing
for the new thread. */
-static const gdb::observers::token record_btrace_thread_observer_token;
+static const gdb::observers::token record_btrace_thread_observer_token = {};
/* Memory access types used in set/show record btrace replay-memory-access. */
static const char replay_memory_access_read_only[] = "read-only";
diff -NBaur gdb-8.2.1/gdb/stap-probe.c gdb-8.2.1-apple/gdb/stap-probe.c
--- gdb-8.2.1/gdb/stap-probe.c 2018-12-23 05:51:54.000000000 +0000
+++ gdb-8.2.1-apple/gdb/stap-probe.c 2019-02-19 17:29:35.744567941 +0000
@@ -119,7 +119,7 @@
/* SystemTap static_probe_ops. */
-const stap_static_probe_ops stap_static_probe_ops;
+const stap_static_probe_ops stap_static_probe_ops = {};
class stap_probe : public probe
{
diff -NBaur gdb-8.2.1/gdb/tui/tui-hooks.c gdb-8.2.1-apple/gdb/tui/tui-hooks.c
--- gdb-8.2.1/gdb/tui/tui-hooks.c 2018-12-23 05:51:54.000000000 +0000
+++ gdb-8.2.1-apple/gdb/tui/tui-hooks.c 2019-02-19 17:28:53.178460364 +0000
@@ -205,7 +205,7 @@
/* Token associated with observers registered while TUI hooks are
installed. */
-static const gdb::observers::token tui_observers_token;
+static const gdb::observers::token tui_observers_token = {};
/* Attach or detach a single observer, according to ATTACH. */

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

View File

@@ -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 \
@@ -76,11 +76,10 @@ cd $BUILDDIR
mkdir -p $target/gcc mkdir -p $target/gcc
cd $target/gcc cd $target/gcc
export gcc_cv_libc_provides_ssp=yes
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="" \
@@ -94,15 +93,18 @@ then
--disable-libstdcxx-verbose \ --disable-libstdcxx-verbose \
--enable-libstdcxx-time=yes \ --enable-libstdcxx-time=yes \
--enable-libstdcxx-filesystem-ts \ --enable-libstdcxx-filesystem-ts \
--disable-tm-clone-registry \
--disable-__cxa_atexit \
--disable-libssp \
--enable-cxx-flags='-ffunction-sections -fdata-sections' \ --enable-cxx-flags='-ffunction-sections -fdata-sections' \
--target=$target \ --target=$target \
--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-system-zlib\ --with-bugurl="https://github.com/devkitpro/buildscripts/issues" --with-pkgversion="devkitPPC release 42.1" \
--with-bugurl="https://github.com/devkitpro/buildscripts/issues" --with-pkgversion="devkitPPC release 38" \
$CROSS_PARAMS \ $CROSS_PARAMS \
$CROSS_GCC_PARAMS \ $CROSS_GCC_PARAMS \
$EXTRA_GCC_PARAMS \
CFLAGS_FOR_TARGET="-O2 -ffunction-sections -fdata-sections" \ CFLAGS_FOR_TARGET="-O2 -ffunction-sections -fdata-sections" \
|| { echo "Error configuring gcc stage 1"; exit 1; } || { echo "Error configuring gcc stage 1"; exit 1; }
touch configured-gcc touch configured-gcc
@@ -137,7 +139,7 @@ unset CXX
if [ ! -f configured-newlib ] if [ ! -f configured-newlib ]
then then
CFLAGS_FOR_TARGET="-O2 -ffunction-sections -fdata-sections" \ CFLAGS_FOR_TARGET="-O2 -ffunction-sections -fdata-sections -DCUSTOM_MALLOC_LOCK" \
../../newlib-$NEWLIB_VER/configure \ ../../newlib-$NEWLIB_VER/configure \
--target=$target \ --target=$target \
--prefix=$prefix \ --prefix=$prefix \

View File

@@ -30,28 +30,28 @@ done
case "$VERSION" in case "$VERSION" in
"1" ) "1" )
GCC_VER=11.1.0 GCC_VER=12.2.0
BINUTILS_VER=2.36.1 BINUTILS_VER=2.40
NEWLIB_VER=4.1.0 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=10.2.0 GCC_VER=12.2.0
BINUTILS_VER=2.34 BINUTILS_VER=2.40
MN_BINUTILS_VER=2.17 MN_BINUTILS_VER=2.24
NEWLIB_VER=3.3.0 NEWLIB_VER=4.3.0.20230120
basedir='dkppc' basedir='dkppc'
package=devkitPPC package=devkitPPC
target=powerpc-eabi target=powerpc-eabi
toolchain=DEVKITPPC toolchain=DEVKITPPC
;; ;;
"3" ) "3" )
GCC_VER=11.1.0 GCC_VER=12.2.0
BINUTILS_VER=2.32 BINUTILS_VER=2.32
NEWLIB_VER=4.1.0 NEWLIB_VER=4.3.0.20230120
basedir='dka64' basedir='dka64'
package=devkitA64 package=devkitA64
target=aarch64-none-elf target=aarch64-none-elf