mirror of
git://gcc.gnu.org/git/gcc.git
synced 2025-03-15 08:10:28 +08:00
config.gcc (mips64*-*-linux*): Set the default abi to n32.
* config.gcc (mips64*-*-linux*): Set the default abi to n32. Remove redundant target_cpu_default and extra_parts lines. Use the default "from-abi" ISA. * config/mips/linux64.h (DRIVER_DEFAULT_ABI_SELF_SPEC): Delete. (SUBTARGET_EXTRA_SPECS): Delete. (DRIVER_SELF_SPECS): Remove architecture lines. Set the ABI directly. (SUBTARGET_ASM_SPEC): Remove -mabi=n32 and -mabi=64 mappings. * config/mips/t-linux64 (MULTILIB_DIRNAMES): Use "32" for -mabi=32 and "n32" for -mabi=n32. From-SVN: r93777
This commit is contained in:
parent
5a6e9546a8
commit
2184a1201e
@ -1,3 +1,15 @@
|
||||
2005-01-17 Richard Sandiford <rsandifo@redhat.com>
|
||||
|
||||
* config.gcc (mips64*-*-linux*): Set the default abi to n32. Remove
|
||||
redundant target_cpu_default and extra_parts lines. Use the default
|
||||
"from-abi" ISA.
|
||||
* config/mips/linux64.h (DRIVER_DEFAULT_ABI_SELF_SPEC): Delete.
|
||||
(SUBTARGET_EXTRA_SPECS): Delete.
|
||||
(DRIVER_SELF_SPECS): Remove architecture lines. Set the ABI directly.
|
||||
(SUBTARGET_ASM_SPEC): Remove -mabi=n32 and -mabi=64 mappings.
|
||||
* config/mips/t-linux64 (MULTILIB_DIRNAMES): Use "32" for -mabi=32
|
||||
and "n32" for -mabi=n32.
|
||||
|
||||
2005-01-17 Ian Lance Taylor <ian@airs.com>
|
||||
|
||||
PR c/5675
|
||||
|
@ -1384,15 +1384,7 @@ mips*-*-netbsd*) # NetBSD/mips, either endian.
|
||||
mips64*-*-linux*)
|
||||
tm_file="dbxelf.h elfos.h svr4.h linux.h ${tm_file} mips/linux.h mips/linux64.h"
|
||||
tmake_file="${tmake_file} 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"
|
||||
tm_defines="MIPS_ABI_DEFAULT=ABI_N32"
|
||||
gnu_ld=yes
|
||||
gas=yes
|
||||
;;
|
||||
|
@ -19,25 +19,16 @@ along with GCC; see the file COPYING. If not, write to
|
||||
the Free Software Foundation, 59 Temple Place - Suite 330,
|
||||
Boston, MA 02111-1307, USA. */
|
||||
|
||||
/* This sets the post-install default ABI to n32. This must NOT be
|
||||
kept in sync with the default ABI in gcc/config.gcc; it's actually
|
||||
meant to override that. However, for correct behavior at build
|
||||
time, we also need t-linux64 to get the build-time specs in line
|
||||
with the setting in config.gcc. */
|
||||
#define DRIVER_DEFAULT_ABI_SELF_SPEC "%{!mabi=*:-mabi=n32}"
|
||||
#undef SUBTARGET_EXTRA_SPECS
|
||||
#define SUBTARGET_EXTRA_SPECS \
|
||||
{ "driver_default_abi_self_spec", DRIVER_DEFAULT_ABI_SELF_SPEC },
|
||||
/* Force the default endianness and ABI flags onto the command line
|
||||
in order to make the other specs easier to write. */
|
||||
#define DRIVER_SELF_SPECS \
|
||||
"%{!EB:%{!EL:%(endian_spec)}}", \
|
||||
"%(driver_default_abi_self_spec)", \
|
||||
"%{!mips*:%{!march=*:%{mabi=32:-mips1}%{mabi=n32|mabi=64:-mips3}}}"
|
||||
"%{!mabi=*: -mabi=n32}"
|
||||
|
||||
#undef SUBTARGET_ASM_SPEC
|
||||
#define SUBTARGET_ASM_SPEC "\
|
||||
%{!fno-PIC:%{!fno-pic:-KPIC}} \
|
||||
%{fno-PIC:-non_shared} %{fno-pic:-non_shared} \
|
||||
%{mabi=64:-64} %{mabi=n32:-n32}"
|
||||
%{fno-PIC:-non_shared} %{fno-pic:-non_shared}"
|
||||
|
||||
#undef LIB_SPEC
|
||||
#define LIB_SPEC "\
|
||||
|
@ -1,5 +1,5 @@
|
||||
MULTILIB_OPTIONS = mabi=n32/mabi=32/mabi=64
|
||||
MULTILIB_DIRNAMES = 32 o32 64
|
||||
MULTILIB_DIRNAMES = n32 32 64
|
||||
MULTILIB_OSDIRNAMES = ../lib32 ../lib ../lib64
|
||||
|
||||
EXTRA_MULTILIB_PARTS=crtbegin.o crtend.o crtbeginS.o crtendS.o crtbeginT.o
|
||||
|
Loading…
x
Reference in New Issue
Block a user