diff --git a/dka64/patches/gcc-8.2.0.patch b/dka64/patches/gcc-8.3.0.patch
similarity index 59%
rename from dka64/patches/gcc-8.2.0.patch
rename to dka64/patches/gcc-8.3.0.patch
index cab8b37..6c6718e 100644
--- a/dka64/patches/gcc-8.2.0.patch
+++ b/dka64/patches/gcc-8.3.0.patch
@@ -1,12 +1,17 @@
diff --git a/gcc/config.gcc b/gcc/config.gcc
-index 532c33f4c2b..c8a8bc698a7 100644
+index 7af8e028104..90a3a50f624 100644
--- a/gcc/config.gcc
+++ b/gcc/config.gcc
-@@ -945,6 +945,7 @@ aarch64*-*-elf | aarch64*-*-fuchsia* | aarch64*-*-rtems*)
+@@ -945,6 +945,12 @@ aarch64*-*-elf | aarch64*-*-fuchsia* | aarch64*-*-rtems*)
case $target in
aarch64-*-elf*)
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"
@@ -40,10 +45,10 @@ index 7a5c6d7664f..687793841de 100644
Most have a PIC and non-PIC variant. */
enum aarch64_code_model {
diff --git a/gcc/config/aarch64/aarch64.c b/gcc/config/aarch64/aarch64.c
-index 175f13dc264..733ab473cbd 100644
+index 349ca0c047b..5c03c42c28e 100644
--- a/gcc/config/aarch64/aarch64.c
+++ b/gcc/config/aarch64/aarch64.c
-@@ -11979,8 +11979,24 @@ aarch64_load_tp (rtx target)
+@@ -12005,8 +12005,24 @@ aarch64_load_tp (rtx target)
|| !register_operand (target, Pmode))
target = gen_reg_rtx (Pmode);
@@ -153,6 +158,78 @@ index 0be1f0d63aa..a54068bfd96 100644
+MULTILIB_DIRNAMES = large pic
+MULTILIB_REQUIRED = mcmodel=large fPIC
+MULTILIB_MATCHES = fPIC=fpic fPIC=fpie fPIC=fPIE
+diff --git a/gcc/config/devkitpro.h b/gcc/config/devkitpro.h
+new file mode 100644
+index 00000000000..11ba0f5ab1c
+--- /dev/null
++++ b/gcc/config/devkitpro.h
+@@ -0,0 +1,31 @@
++/* 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
++ . */
++
++#undef TARGET_OS_CPP_BUILTINS
++#define TARGET_OS_CPP_BUILTINS() \
++ do { \
++ builtin_define ("__DEVKITA64__"); \
++ } 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
++; .
++
++; 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/gcc.c b/gcc/gcc.c
index a716f708259..6a11011dba7 100644
--- a/gcc/gcc.c
@@ -197,3 +274,40 @@ index 5e894455e16..f2347455de0 100644
/* FIXME: Including auto-host is incorrect, but until we have
identified the set of defines that need to go into auto-target.h,
+diff --git a/libgcc/gthr.h b/libgcc/gthr.h
+index 88b0178f9e3..e94fcf9d721 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__
++#if defined(__MINGW32__) || defined(__DEVKITA64__)
+ #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 77e6dc2f6be..3a102997371 100644
+--- a/libstdc++-v3/include/Makefile.am
++++ b/libstdc++-v3/include/Makefile.am
+@@ -1293,6 +1293,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___DEVKITA64_GLIBCXX___/__DEVKITA64__/g' \
+ -e 's,^#include "\(.*\)",#include ,g' \
+ < $< > $@
+
+diff --git a/libstdc++-v3/include/Makefile.in b/libstdc++-v3/include/Makefile.in
+index 948a5c1f1c5..ee8e240f6c5 100644
+--- a/libstdc++-v3/include/Makefile.in
++++ b/libstdc++-v3/include/Makefile.in
+@@ -1719,6 +1719,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___DEVKITA64_GLIBCXX___/__DEVKITA64__/g' \
+ -e 's,^#include "\(.*\)",#include ,g' \
+ < $< > $@
+
diff --git a/select_toolchain.sh b/select_toolchain.sh
index d4b2076..288822f 100755
--- a/select_toolchain.sh
+++ b/select_toolchain.sh
@@ -51,7 +51,7 @@ case "$VERSION" in
toolchain=DEVKITPPC
;;
"3" )
- GCC_VER=8.2.0
+ GCC_VER=8.3.0
BINUTILS_VER=2.32
NEWLIB_VER=3.0.0
GDB_VER=8.0