aboutsummaryrefslogtreecommitdiff
path: root/gcc/config.gcc
diff options
context:
space:
mode:
authorAlexandre Oliva <aoliva@redhat.com>2003-01-19 13:04:24 +0000
committerAlexandre Oliva <aoliva@gcc.gnu.org>2003-01-19 13:04:24 +0000
commit3bd6d4c458a197683ce3f82b884ad1546b7d67de (patch)
tree1c9527057e11cd9aeab8e1192678a236184395a6 /gcc/config.gcc
parente9f13564bb2cd1147517bcee06e2de0aefeb4af1 (diff)
downloadgcc-3bd6d4c458a197683ce3f82b884ad1546b7d67de.zip
gcc-3bd6d4c458a197683ce3f82b884ad1546b7d67de.tar.gz
gcc-3bd6d4c458a197683ce3f82b884ad1546b7d67de.tar.bz2
config.gcc (mips64*-*-linux*): Added.
* config.gcc (mips64*-*-linux*): Added. * config/mips/linux64.h, config/mips/t-linux64: New file. * config/mips/iris6.h (MIPS_TFMODE_FORMAT): Define. * config/mips/mips.c (override_options): Use it. * config/mips/mips.h (TARGET_SWITCHES): Added... (SUBTARGET_TARGET_SWITCHES): New, empty by default. * Makefile.in (SPECS): New. (STAGESTUFF, specs, mostlyclean, install-common): Use it. * gcc.c (process_command): Move self-spec processing past spec file loading. * doc/tm.texi (DRIVER_SELF_SPECS): Document the change. * doc/fragments.texi (MULTILIB_EXTRA_OPTS): Document need for CRTSTUFF_T_CFLAGS. (SPECS): Document. * doc/invoke.texi (-mabi-fake-default): Document. From-SVN: r61481
Diffstat (limited to 'gcc/config.gcc')
-rw-r--r--gcc/config.gcc21
1 files changed, 20 insertions, 1 deletions
diff --git a/gcc/config.gcc b/gcc/config.gcc
index 6a71f63..9f74569 100644
--- a/gcc/config.gcc
+++ b/gcc/config.gcc
@@ -1,5 +1,6 @@
# GCC build-, host- and target-specific configuration file.
-# Copyright (C) 1997, 1998, 1999, 2000, 2001, 2002, 2003 Free Software Foundation, Inc.
+# Copyright 1997, 1998, 1999, 2000, 2001, 2002, 2003
+# Free Software Foundation, Inc.
#This file is part of GCC.
@@ -1802,6 +1803,24 @@ mips*-*-netbsd*) # NetBSD/mips, either endian.
tm_file="elfos.h ${tm_file} mips/netbsd.h"
tmake_file="${tmake_file}"
;;
+mips64*-*-linux*)
+ tm_file="dbxelf.h elfos.h svr4.h linux.h ${tm_file} mips/linux.h mips/linux64.h"
+ tmake_file="t-slibgcc-elf-ver t-linux mips/t-linux mips/t-linux64"
+
+ # This default ABI is a partial lie: t-linux64 overrides the
+ # DRIVER_SELF_SPEC that sets the default abi, in the spec file
+ # that is installed. What GCC thinks of as the default must
+ # remain as ABI_32 such that the SONAMEs of the libgcc shared
+ # libraries remain compatible with those of mips-linux-gnu.
+ tm_defines="MIPS_ISA_DEFAULT=1 MIPS_ABI_DEFAULT=ABI_32"
+ target_cpu_default="MASK_ABICALLS|MASK_FLOAT64|MASK_64BIT"
+ extra_parts="crtbegin.o crtbeginS.o crtbeginT.o crtend.o crtendS.o"
+ gnu_ld=yes
+ gas=yes
+ if test x$enable_threads = xyes; then
+ thread_file='posix'
+ fi
+ ;;
mips*-*-linux*) # Linux MIPS, either endian.
tm_file="dbxelf.h elfos.h svr4.h linux.h ${tm_file} mips/linux.h"
case $machine in