diff options
Diffstat (limited to 'gcc/config/mips/mips.h')
-rw-r--r-- | gcc/config/mips/mips.h | 46 |
1 files changed, 16 insertions, 30 deletions
diff --git a/gcc/config/mips/mips.h b/gcc/config/mips/mips.h index 5d7f02261ae..3f284a863cf 100644 --- a/gcc/config/mips/mips.h +++ b/gcc/config/mips/mips.h @@ -158,15 +158,9 @@ struct mips_cpu_info { This is true for both the PIC and non-PIC VxWorks RTP modes. */ #define TARGET_USE_PIC_FN_ADDR_REG (TARGET_ABICALLS || TARGET_VXWORKS_RTP) -/* True if .gpword or .gpdword should be used for switch tables. - - Although GAS does understand .gpdword, the SGI linker mishandles - the relocations GAS generates (R_MIPS_GPREL32 followed by R_MIPS_64). - We therefore disable GP-relative switch tables for n64 on IRIX targets. */ +/* True if .gpword or .gpdword should be used for switch tables. */ #define TARGET_GPWORD \ - (TARGET_ABICALLS \ - && !TARGET_ABSOLUTE_ABICALLS \ - && !(mips_abi == ABI_64 && TARGET_IRIX6)) + (TARGET_ABICALLS && !TARGET_ABSOLUTE_ABICALLS) /* True if the output must have a writable .eh_frame. See ASM_PREFERRED_EH_DATA_FORMAT for details. */ @@ -319,9 +313,6 @@ struct mips_cpu_info { those loads and stores follow it. */ #define TARGET_SYNC_AFTER_SC (!TARGET_OCTEON) -/* IRIX specific stuff. */ -#define TARGET_IRIX6 0 - /* Define preprocessor macros for the -march and -mtune options. PREFIX is either _MIPS_ARCH or _MIPS_TUNE, INFO is the selected processor. If INFO's canonical name is "foo", define PREFIX to @@ -348,10 +339,7 @@ struct mips_cpu_info { #define TARGET_CPU_CPP_BUILTINS() \ do \ { \ - /* Everyone but IRIX defines this to mips. */ \ - if (!TARGET_IRIX6) \ - builtin_assert ("machine=mips"); \ - \ + builtin_assert ("machine=mips"); \ builtin_assert ("cpu=mips"); \ builtin_define ("__mips__"); \ builtin_define ("_mips"); \ @@ -369,22 +357,20 @@ struct mips_cpu_info { if (TARGET_64BIT) \ builtin_define ("__mips64"); \ \ - if (!TARGET_IRIX6) \ + /* Treat _R3000 and _R4000 like register-size \ + defines, which is how they've historically \ + been used. */ \ + if (TARGET_64BIT) \ { \ - /* Treat _R3000 and _R4000 like register-size \ - defines, which is how they've historically \ - been used. */ \ - if (TARGET_64BIT) \ - { \ - builtin_define_std ("R4000"); \ - builtin_define ("_R4000"); \ - } \ - else \ - { \ - builtin_define_std ("R3000"); \ - builtin_define ("_R3000"); \ - } \ + builtin_define_std ("R4000"); \ + builtin_define ("_R4000"); \ + } \ + else \ + { \ + builtin_define_std ("R3000"); \ + builtin_define ("_R3000"); \ } \ + \ if (TARGET_FLOAT64) \ builtin_define ("__mips_fpr=64"); \ else \ @@ -548,7 +534,7 @@ struct mips_cpu_info { { \ builtin_define ("_LANGUAGE_OBJECTIVE_C"); \ builtin_define ("__LANGUAGE_OBJECTIVE_C"); \ - /* Bizarre, but needed at least for Irix. */ \ + /* Bizarre, but retained for backwards compatibility. */ \ builtin_define_std ("LANGUAGE_C"); \ builtin_define ("_LANGUAGE_C"); \ } \ |