diff --git a/contrib/config-list.mk b/contrib/config-list.mk
index b9e9dd0..a93d1db 100644
--- a/contrib/config-list.mk
+++ b/contrib/config-list.mk
@@ -57,7 +57,7 @@ LIST = aarch64-elf aarch64-linux-gnu aarch64-rtems \
i686-cygwinOPT-enable-threads=yes i686-mingw32crt ia64-elf \
ia64-freebsd6 ia64-linux ia64-hpux ia64-hp-vms iq2000-elf lm32-elf \
lm32-rtems lm32-uclinux m32c-rtems m32c-elf m32r-elf m32rle-elf \
- m32r-linux m32rle-linux m68k-elf m68k-netbsdelf \
+ m68k-elf m68k-netbsdelf \
m68k-openbsd m68k-uclinux m68k-linux m68k-rtems \
mcore-elf microblaze-linux microblaze-elf \
mips-netbsd \
diff --git a/gcc/config.gcc b/gcc/config.gcc
index ccf41f6..f976038 100644
--- a/gcc/config.gcc
+++ b/gcc/config.gcc
@@ -276,6 +276,8 @@ case ${target} in
| crisv32-*-* \
| i[34567]86-go32-* \
| i[34567]86-*-go32* \
+ | m32r-*-linux* \
+ | m32rle-*-linux* \
| m68k-*-uclinuxoldabi* \
| mips64orion*-*-rtems* \
| pdp11-*-bsd \
@@ -2301,22 +2303,6 @@ m32r-*-elf*)
m32rle-*-elf*)
tm_file="elfos.h newlib-stdint.h m32r/little.h ${tm_file}"
;;
-m32r-*-linux*)
- tm_file="elfos.h gnu-user.h linux.h glibc-stdint.h ${tm_file} m32r/linux.h"
- tmake_file="${tmake_file} m32r/t-linux t-slibgcc"
- gnu_ld=yes
- if test x$enable_threads = xyes; then
- thread_file='posix'
- fi
- ;;
-m32rle-*-linux*)
- tm_file="elfos.h gnu-user.h linux.h glibc-stdint.h m32r/little.h ${tm_file} m32r/linux.h"
- tmake_file="${tmake_file} m32r/t-linux t-slibgcc"
- gnu_ld=yes
- if test x$enable_threads = xyes; then
- thread_file='posix'
- fi
- ;;
m68k-*-elf* | fido-*-elf*)
case ${target} in
fido-*-elf*)
diff --git a/gcc/config/m32r/linux.h b/gcc/config/m32r/linux.h
deleted file mode 100644
index 4fdebbc..0000000
--- a/gcc/config/m32r/linux.h
+++ /dev/null
@@ -1,91 +0,0 @@
-/* Definitions for Renesas M32R running Linux-based GNU systems using ELF.
- 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
- . */
-
-#undef SIZE_TYPE
-#define SIZE_TYPE "unsigned int"
-
-#undef PTRDIFF_TYPE
-#define PTRDIFF_TYPE "int"
-
-#undef WCHAR_TYPE
-#define WCHAR_TYPE "long int"
-
-#undef WCHAR_TYPE_SIZE
-#define WCHAR_TYPE_SIZE BITS_PER_WORD
-
-/* Provide a LINK_SPEC appropriate for Linux. Here we provide support
- for the special GCC options -static and -shared, which allow us to
- link things in one of these three modes by applying the appropriate
- combinations of options at link-time.
-
- When the -shared link option is used a final link is not being
- done. */
-
-#define GLIBC_DYNAMIC_LINKER "/lib/ld-linux.so.2"
-
-#undef LINK_SPEC
-#if TARGET_LITTLE_ENDIAN
-#define LINK_SPEC "%(link_cpu) -m m32rlelf_linux %{shared:-shared} \
- %{!shared: \
- %{!static: \
- %{rdynamic:-export-dynamic} \
- -dynamic-linker " GNU_USER_DYNAMIC_LINKER "} \
- %{static:-static}}"
-#else
-#define LINK_SPEC "%(link_cpu) -m m32relf_linux %{shared:-shared} \
- %{!shared: \
- %{!static: \
- %{rdynamic:-export-dynamic} \
- -dynamic-linker " GNU_USER_DYNAMIC_LINKER "} \
- %{static:-static}}"
-#endif
-
-#undef LIB_SPEC
-#define LIB_SPEC \
- "%{pthread:-lpthread} \
- %{shared: -lc} \
- %{!shared: \
- %{mieee-fp:-lieee} \
- %{profile:-lc_p} %{!profile: -lc}}"
-
-#undef STARTFILE_SPEC
-#if defined HAVE_LD_PIE
-#define STARTFILE_SPEC \
- "%{!shared: %{pg|p|profile:gcrt1.o%s;pie:Scrt1.o%s;:crt1.o%s}} \
- crti.o%s %{static:crtbeginT.o%s;shared|pie:crtbeginS.o%s;:crtbegin.o%s}"
-#else
-#define STARTFILE_SPEC \
- "%{!shared: \
- %{pg:gcrt1.o%s} %{!pg:%{p:gcrt1.o%s} %{!p:crt1.o%s}}}\
- crti.o%s %{!shared:crtbegin.o%s} %{shared:crtbeginS.o%s}"
-#endif
-
-#undef ENDFILE_SPEC
-#define ENDFILE_SPEC \
- "%{shared|pie:crtendS.o%s;:crtend.o%s} crtn.o%s"
-
-#undef SUBTARGET_CPP_SPEC
-#define SUBTARGET_CPP_SPEC "\
- %{posix:-D_POSIX_SOURCE} \
- %{pthread:-D_REENTRANT -D_PTHREADS} \
-"
-
-#define TARGET_OS_CPP_BUILTINS() GNU_USER_TARGET_OS_CPP_BUILTINS()
-
-#define TARGET_ASM_FILE_END file_end_indicate_exec_stack
diff --git a/gcc/config/m32r/t-linux b/gcc/config/m32r/t-linux
deleted file mode 100644
index 3384b8a..0000000
--- a/gcc/config/m32r/t-linux
+++ /dev/null
@@ -1,20 +0,0 @@
-# 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
-# .
-
-# Don't install "assert.h" in gcc. We use the one in glibc.
-INSTALL_ASSERT_H =
diff --git a/libgcc/config.host b/libgcc/config.host
index e2b4be4..432a3e1 100644
--- a/libgcc/config.host
+++ b/libgcc/config.host
@@ -926,12 +926,6 @@ m32r-*-elf*)
m32rle-*-elf*)
tmake_file=t-fdpbit
;;
-m32r-*-linux*)
- tmake_file="$tmake_file m32r/t-linux t-fdpbit"
- ;;
-m32rle-*-linux*)
- tmake_file="$tmake_file m32r/t-linux t-fdpbit"
- ;;
m68k-*-elf* | fido-*-elf)
tmake_file="$tmake_file m68k/t-floatlib"
;;
diff --git a/libgcc/config/m32r/libgcc-glibc.ver b/libgcc/config/m32r/libgcc-glibc.ver
deleted file mode 100644
index cb52aa1..0000000
--- a/libgcc/config/m32r/libgcc-glibc.ver
+++ /dev/null
@@ -1,48 +0,0 @@
-# Copyright (C) 2004-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
-# .
-
-# In order to work around the very problems that force us to now generally
-# create a libgcc.so, glibc reexported a number of routines from libgcc.a.
-# By now choosing the same version tags for these specific routines, we
-# maintain enough binary compatibility to allow future versions of glibc
-# to defer implementation of these routines to libgcc.so via DT_AUXILIARY.
-
-# Note that we cannot use the default libgcc-glibc.ver file on sh,
-# because GLIBC_2.0 does not exist on this architecture, as the first
-# ever glibc release on the platform was GLIBC_2.3.
-
-%exclude {
- __register_frame
- __register_frame_table
- __deregister_frame
- __register_frame_info
- __deregister_frame_info
- __frame_state_for
- __register_frame_info_table
-}
-
-%inherit GCC_3.0 GLIBC_2.3
-GLIBC_2.3 {
- __register_frame
- __register_frame_table
- __deregister_frame
- __register_frame_info
- __deregister_frame_info
- __frame_state_for
- __register_frame_info_table
-}
diff --git a/libgcc/config/m32r/t-linux b/libgcc/config/m32r/t-linux
deleted file mode 100644
index 5223b73..0000000
--- a/libgcc/config/m32r/t-linux
+++ /dev/null
@@ -1,5 +0,0 @@
-# Turn off the SDA while compiling libgcc2. There are no headers for it
-# and we want maximal upward compatibility here.
-HOST_LIBGCC2_CFLAGS += -G 0
-
-SHLIB_MAPFILES = libgcc-std.ver $(srcdir)/config/m32r/libgcc-glibc.ver