aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSteve Ellcey <sellcey@mips.com>2014-10-08 16:14:11 +0000
committerSteve Ellcey <sje@gcc.gnu.org>2014-10-08 16:14:11 +0000
commit9a7451a5a502f5a2714b06677ce61ecef23539d0 (patch)
treeff27406ceb4b11ed5de307e18fda1ecc56be84e0
parent90c0d4c4f2ba6f1e224fa2c53e82b3fb0d781a74 (diff)
downloadgcc-9a7451a5a502f5a2714b06677ce61ecef23539d0.zip
gcc-9a7451a5a502f5a2714b06677ce61ecef23539d0.tar.gz
gcc-9a7451a5a502f5a2714b06677ce61ecef23539d0.tar.bz2
linux64.h: Remove.
2014-10-08 Steve Ellcey <sellcey@mips.com> * config/mips/linux64.h: Remove. * config/mips/gnu-user64.h: Remove. * gcc.config (mips*-*-*): Remove references to linux64.h and gnu-user64.h * config/mips/gnu-user.h (GNU_USER_TARGET_LINK_SPEC): Replace with modified version from gnu-user64.h. (LINUX_DRIVER_SELF_SPECS): Update parts from gnu-user64.h. (LOCAL_LABEL_PREFIX): Copy from gnu-user64.h. * config/mips/linux.h (GNU_USER_LINK_EMULATION32): Copy from linux64.h. (GNU_USER_LINK_EMULATION64): Ditto. (GNU_USER_LINK_EMULATIONN32): Ditto. (GLIBC_DYNAMIC_LINKER32): Ditto. (GLIBC_DYNAMIC_LINKER64): Ditto. (GLIBC_DYNAMIC_LINKERN32): Ditto. (UCLIBC_DYNAMIC_LINKER32): Ditto. (UCLIBC_DYNAMIC_LINKER64): Ditto. (UCLIBC_DYNAMIC_LINKERN32): Ditto. (BIONIC_DYNAMIC_LINKERN32): Ditto. (GNU_USER_DYNAMIC_LINKERN32): Ditto. (GLIBC_DYNAMIC_LINKER): Delete. (UCLIBC_DYNAMIC_LINKER): Delete. From-SVN: r216008
-rw-r--r--gcc/ChangeLog25
-rw-r--r--gcc/config.gcc5
-rw-r--r--gcc/config/mips/gnu-user.h23
-rw-r--r--gcc/config/mips/gnu-user64.h52
-rw-r--r--gcc/config/mips/linux.h24
-rw-r--r--gcc/config/mips/linux64.h44
6 files changed, 64 insertions, 109 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index f577bf0..5c91c38 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,3 +1,28 @@
+2014-10-08 Steve Ellcey <sellcey@mips.com>
+
+ * config/mips/linux64.h: Remove.
+ * config/mips/gnu-user64.h: Remove.
+ * gcc.config (mips*-*-*): Remove references to linux64.h and
+ gnu-user64.h
+ * config/mips/gnu-user.h (GNU_USER_TARGET_LINK_SPEC): Replace
+ with modified version from gnu-user64.h.
+ (LINUX_DRIVER_SELF_SPECS): Update parts from gnu-user64.h.
+ (LOCAL_LABEL_PREFIX): Copy from gnu-user64.h.
+ * config/mips/linux.h (GNU_USER_LINK_EMULATION32): Copy from
+ linux64.h.
+ (GNU_USER_LINK_EMULATION64): Ditto.
+ (GNU_USER_LINK_EMULATIONN32): Ditto.
+ (GLIBC_DYNAMIC_LINKER32): Ditto.
+ (GLIBC_DYNAMIC_LINKER64): Ditto.
+ (GLIBC_DYNAMIC_LINKERN32): Ditto.
+ (UCLIBC_DYNAMIC_LINKER32): Ditto.
+ (UCLIBC_DYNAMIC_LINKER64): Ditto.
+ (UCLIBC_DYNAMIC_LINKERN32): Ditto.
+ (BIONIC_DYNAMIC_LINKERN32): Ditto.
+ (GNU_USER_DYNAMIC_LINKERN32): Ditto.
+ (GLIBC_DYNAMIC_LINKER): Delete.
+ (UCLIBC_DYNAMIC_LINKER): Delete.
+
2014-10-08 Joern Rennecke <joern.rennecke@embecosm.com>
Richard Biener <rguenther@suse.de>
diff --git a/gcc/config.gcc b/gcc/config.gcc
index d8f5593..6bbbb26 100644
--- a/gcc/config.gcc
+++ b/gcc/config.gcc
@@ -1938,7 +1938,7 @@ mips*-*-netbsd*) # NetBSD/mips, either endian.
extra_options="${extra_options} netbsd.opt netbsd-elf.opt"
;;
mips*-mti-linux*)
- tm_file="dbxelf.h elfos.h gnu-user.h linux.h linux-android.h glibc-stdint.h ${tm_file} mips/gnu-user.h mips/gnu-user64.h mips/linux64.h mips/linux-common.h mips/mti-linux.h"
+ tm_file="dbxelf.h elfos.h gnu-user.h linux.h linux-android.h glibc-stdint.h ${tm_file} mips/gnu-user.h mips/linux.h mips/linux-common.h mips/mti-linux.h"
extra_options="${extra_options} linux-android.opt"
tmake_file="${tmake_file} mips/t-mti-linux"
tm_defines="${tm_defines} MIPS_ISA_DEFAULT=33 MIPS_ABI_DEFAULT=ABI_32"
@@ -1946,7 +1946,7 @@ mips*-mti-linux*)
gas=yes
;;
mips64*-*-linux* | mipsisa64*-*-linux*)
- tm_file="dbxelf.h elfos.h gnu-user.h linux.h linux-android.h glibc-stdint.h ${tm_file} mips/gnu-user.h mips/gnu-user64.h mips/linux64.h mips/linux-common.h"
+ tm_file="dbxelf.h elfos.h gnu-user.h linux.h linux-android.h glibc-stdint.h ${tm_file} mips/gnu-user.h mips/linux.h mips/linux-common.h"
extra_options="${extra_options} linux-android.opt"
tmake_file="${tmake_file} mips/t-linux64"
tm_defines="${tm_defines} MIPS_ABI_DEFAULT=ABI_N32"
@@ -1970,7 +1970,6 @@ mips*-*-linux*) # Linux MIPS, either endian.
tm_file="dbxelf.h elfos.h gnu-user.h linux.h linux-android.h glibc-stdint.h ${tm_file} mips/gnu-user.h mips/linux.h"
extra_options="${extra_options} linux-android.opt"
if test x$enable_targets = xall; then
- tm_file="${tm_file} mips/gnu-user64.h mips/linux64.h"
tmake_file="${tmake_file} mips/t-linux64"
fi
tm_file="${tm_file} mips/linux-common.h"
diff --git a/gcc/config/mips/gnu-user.h b/gcc/config/mips/gnu-user.h
index 638d7f0..6c02054 100644
--- a/gcc/config/mips/gnu-user.h
+++ b/gcc/config/mips/gnu-user.h
@@ -52,16 +52,20 @@ along with GCC; see the file COPYING3. If not see
#undef MIPS_DEFAULT_GVALUE
#define MIPS_DEFAULT_GVALUE 0
-/* Borrowed from sparc/linux.h */
#undef GNU_USER_TARGET_LINK_SPEC
-#define GNU_USER_TARGET_LINK_SPEC \
- "%(endian_spec) \
- %{shared:-shared} \
+#define GNU_USER_TARGET_LINK_SPEC "\
+ %{G*} %{EB} %{EL} %{mips*} %{shared} \
%{!shared: \
%{!static: \
%{rdynamic:-export-dynamic} \
- -dynamic-linker " GNU_USER_DYNAMIC_LINKER "} \
- %{static:-static}}"
+ %{mabi=n32: -dynamic-linker " GNU_USER_DYNAMIC_LINKERN32 "} \
+ %{mabi=64: -dynamic-linker " GNU_USER_DYNAMIC_LINKER64 "} \
+ %{mabi=32: -dynamic-linker " GNU_USER_DYNAMIC_LINKER32 "}} \
+ %{static}} \
+ %{mabi=n32:-m" GNU_USER_LINK_EMULATIONN32 "} \
+ %{mabi=64:-m" GNU_USER_LINK_EMULATION64 "} \
+ %{mabi=32:-m" GNU_USER_LINK_EMULATION32 "}"
+
#undef LINK_SPEC
#define LINK_SPEC GNU_USER_TARGET_LINK_SPEC
@@ -122,7 +126,9 @@ extern const char *host_detect_local_cpu (int argc, const char **argv);
specs handling by removing a redundant option. */ \
"%{!mno-shared:%<mplt}", \
/* -mplt likewise has no effect for -mabi=64 without -msym32. */ \
- "%{mabi=64:%{!msym32:%<mplt}}"
+ "%{mabi=64:%{!msym32:%<mplt}}", \
+ "%{!EB:%{!EL:%(endian_spec)}}", \
+ "%{!mabi=*: -" MULTILIB_ABI_DEFAULT "}"
#undef DRIVER_SELF_SPECS
#define DRIVER_SELF_SPECS \
@@ -137,3 +143,6 @@ extern const char *host_detect_local_cpu (int argc, const char **argv);
#define ENDFILE_SPEC \
GNU_USER_TARGET_MATHFILE_SPEC " " \
GNU_USER_TARGET_ENDFILE_SPEC
+
+#undef LOCAL_LABEL_PREFIX
+#define LOCAL_LABEL_PREFIX (TARGET_OLDABI ? "$" : ".")
diff --git a/gcc/config/mips/gnu-user64.h b/gcc/config/mips/gnu-user64.h
deleted file mode 100644
index b97b4a7..0000000
--- a/gcc/config/mips/gnu-user64.h
+++ /dev/null
@@ -1,52 +0,0 @@
-/* Definitions for MIPS systems using GNU userspace and n32/64 abi.
- Copyright (C) 2002-2014 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/>. */
-
-/* Force the default endianness and ABI flags onto the command line
- in order to make the other specs easier to write. */
-
-#define LINUX64_DRIVER_SELF_SPECS \
- LINUX_DRIVER_SELF_SPECS \
- " %{!EB:%{!EL:%(endian_spec)}}" \
- " %{!mabi=*: -" MULTILIB_ABI_DEFAULT "}"
-
-#undef DRIVER_SELF_SPECS
-#define DRIVER_SELF_SPECS \
- BASE_DRIVER_SELF_SPECS, \
- LINUX64_DRIVER_SELF_SPECS
-
-#undef GNU_USER_TARGET_LINK_SPEC
-#define GNU_USER_TARGET_LINK_SPEC "\
-%{G*} %{EB} %{EL} %{mips1} %{mips2} %{mips3} %{mips4} \
-%{shared} \
- %(endian_spec) \
- %{!shared: \
- %{!static: \
- %{rdynamic:-export-dynamic} \
- %{mabi=n32: -dynamic-linker " GNU_USER_DYNAMIC_LINKERN32 "} \
- %{mabi=64: -dynamic-linker " GNU_USER_DYNAMIC_LINKER64 "} \
- %{mabi=32: -dynamic-linker " GNU_USER_DYNAMIC_LINKER32 "}} \
- %{static:-static}} \
-%{mabi=n32:-m" GNU_USER_LINK_EMULATIONN32 "} \
-%{mabi=64:-m" GNU_USER_LINK_EMULATION64 "} \
-%{mabi=32:-m" GNU_USER_LINK_EMULATION32 "}"
-#undef LINK_SPEC
-#define LINK_SPEC GNU_USER_TARGET_LINK_SPEC
-
-#undef LOCAL_LABEL_PREFIX
-#define LOCAL_LABEL_PREFIX (TARGET_OLDABI ? "$" : ".")
diff --git a/gcc/config/mips/linux.h b/gcc/config/mips/linux.h
index e539422..a117f90 100644
--- a/gcc/config/mips/linux.h
+++ b/gcc/config/mips/linux.h
@@ -17,9 +17,27 @@ 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 GLIBC_DYNAMIC_LINKER \
+#define GNU_USER_LINK_EMULATION32 "elf32%{EB:b}%{EL:l}tsmip"
+#define GNU_USER_LINK_EMULATION64 "elf64%{EB:b}%{EL:l}tsmip"
+#define GNU_USER_LINK_EMULATIONN32 "elf32%{EB:b}%{EL:l}tsmipn32"
+
+#define GLIBC_DYNAMIC_LINKER32 \
"%{mnan=2008:/lib/ld-linux-mipsn8.so.1;:/lib/ld.so.1}"
+#define GLIBC_DYNAMIC_LINKER64 \
+ "%{mnan=2008:/lib64/ld-linux-mipsn8.so.1;:/lib64/ld.so.1}"
+#define GLIBC_DYNAMIC_LINKERN32 \
+ "%{mnan=2008:/lib32/ld-linux-mipsn8.so.1;:/lib32/ld.so.1}"
-#undef UCLIBC_DYNAMIC_LINKER
-#define UCLIBC_DYNAMIC_LINKER \
+#undef UCLIBC_DYNAMIC_LINKER32
+#define UCLIBC_DYNAMIC_LINKER32 \
"%{mnan=2008:/lib/ld-uClibc-mipsn8.so.0;:/lib/ld-uClibc.so.0}"
+#undef UCLIBC_DYNAMIC_LINKER64
+#define UCLIBC_DYNAMIC_LINKER64 \
+ "%{mnan=2008:/lib/ld64-uClibc-mipsn8.so.0;:/lib/ld64-uClibc.so.0}"
+#define UCLIBC_DYNAMIC_LINKERN32 \
+ "%{mnan=2008:/lib32/ld-uClibc-mipsn8.so.0;:/lib32/ld-uClibc.so.0}"
+
+#define BIONIC_DYNAMIC_LINKERN32 "/system/bin/linker32"
+#define GNU_USER_DYNAMIC_LINKERN32 \
+ CHOOSE_DYNAMIC_LINKER (GLIBC_DYNAMIC_LINKERN32, UCLIBC_DYNAMIC_LINKERN32, \
+ BIONIC_DYNAMIC_LINKERN32)
diff --git a/gcc/config/mips/linux64.h b/gcc/config/mips/linux64.h
deleted file mode 100644
index 7ad3b2a..0000000
--- a/gcc/config/mips/linux64.h
+++ /dev/null
@@ -1,44 +0,0 @@
-/* Definitions for MIPS running Linux-based GNU systems with ELF format
- using n32/64 abi.
- Copyright (C) 2002-2014 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 GNU_USER_LINK_EMULATION32 "elf32%{EB:b}%{EL:l}tsmip"
-#define GNU_USER_LINK_EMULATION64 "elf64%{EB:b}%{EL:l}tsmip"
-#define GNU_USER_LINK_EMULATIONN32 "elf32%{EB:b}%{EL:l}tsmipn32"
-
-#define GLIBC_DYNAMIC_LINKER32 \
- "%{mnan=2008:/lib/ld-linux-mipsn8.so.1;:/lib/ld.so.1}"
-#define GLIBC_DYNAMIC_LINKER64 \
- "%{mnan=2008:/lib64/ld-linux-mipsn8.so.1;:/lib64/ld.so.1}"
-#define GLIBC_DYNAMIC_LINKERN32 \
- "%{mnan=2008:/lib32/ld-linux-mipsn8.so.1;:/lib32/ld.so.1}"
-
-#undef UCLIBC_DYNAMIC_LINKER32
-#define UCLIBC_DYNAMIC_LINKER32 \
- "%{mnan=2008:/lib/ld-uClibc-mipsn8.so.0;:/lib/ld-uClibc.so.0}"
-#undef UCLIBC_DYNAMIC_LINKER64
-#define UCLIBC_DYNAMIC_LINKER64 \
- "%{mnan=2008:/lib/ld64-uClibc-mipsn8.so.0;:/lib/ld64-uClibc.so.0}"
-#define UCLIBC_DYNAMIC_LINKERN32 \
- "%{mnan=2008:/lib32/ld-uClibc-mipsn8.so.0;:/lib32/ld-uClibc.so.0}"
-
-#define BIONIC_DYNAMIC_LINKERN32 "/system/bin/linker32"
-#define GNU_USER_DYNAMIC_LINKERN32 \
- CHOOSE_DYNAMIC_LINKER (GLIBC_DYNAMIC_LINKERN32, UCLIBC_DYNAMIC_LINKERN32, \
- BIONIC_DYNAMIC_LINKERN32)