diff options
author | Thiemo Seufer <ths@networkno.de> | 2003-06-21 21:38:04 +0000 |
---|---|---|
committer | Thiemo Seufer <ths@networkno.de> | 2003-06-21 21:38:04 +0000 |
commit | b7c7d6c193f9fefe370d5a5e9abccb272d218b53 (patch) | |
tree | 7ef00823916d21048ae36714b7958ee9eafb1c3a /gas/config | |
parent | 325ed0891530d43b77e4d77d300d849243cc6838 (diff) | |
download | gdb-b7c7d6c193f9fefe370d5a5e9abccb272d218b53.zip gdb-b7c7d6c193f9fefe370d5a5e9abccb272d218b53.tar.gz gdb-b7c7d6c193f9fefe370d5a5e9abccb272d218b53.tar.bz2 |
* config/tc-mips.c (ADDRESS_ADD_INSN,ADDRESS_ADDI_INSN): Remove
special handling for n32 ABI.
(macro): Likewise.
* gas/mips/elf-rel-got-n32.d: Remove special handling for n32 ABI.
* gas/mips/elf-rel-xgot-n32.d: Likewise.
* gas/mips/jal-newabi.d: Likewise.
* ld-mips-elf/elf-rel-got-n32.d: Remove special handling for n32 ABI.
* ld-mips-elf/elf-rel-xgot-n32.d: Likewise.
Diffstat (limited to 'gas/config')
-rw-r--r-- | gas/config/tc-mips.c | 19 |
1 files changed, 8 insertions, 11 deletions
diff --git a/gas/config/tc-mips.c b/gas/config/tc-mips.c index e1053cb..8b89be8 100644 --- a/gas/config/tc-mips.c +++ b/gas/config/tc-mips.c @@ -300,15 +300,14 @@ static int mips_32bitmode = 0; #define HAVE_64BIT_ADDRESS_CONSTANTS (HAVE_64BIT_ADDRESSES \ || HAVE_64BIT_GPRS) -/* Addresses are loaded in different ways, depending on the address - size in use and the ABI. N32_ABI uses additions with overflow - checking, this allows to catch code generation errors which would - distort the proper sign extension of the 64-bit wide registers. */ +/* Addresses are loaded in different ways, depending on the address size + in use. The n32 ABI Documentation also mandates the use of additions + with overflow checking, but existing implementations don't follow it. */ #define ADDRESS_ADD_INSN \ - (HAVE_32BIT_ADDRESSES ? (HAVE_NEWABI ? "add" : "addu") : "daddu") + (HAVE_32BIT_ADDRESSES ? "addu" : "daddu") #define ADDRESS_ADDI_INSN \ - (HAVE_32BIT_ADDRESSES ? (HAVE_NEWABI ? "addi" : "addiu") : "daddiu") + (HAVE_32BIT_ADDRESSES ? "addiu" : "daddiu") #define ADDRESS_LOAD_INSN \ (HAVE_32BIT_ADDRESSES ? "lw" : "ld") @@ -4851,8 +4850,7 @@ macro (ip) && offset_expr.X_add_number < 0x8000) { macro_build ((char *) NULL, &icnt, &offset_expr, - (dbl || HAVE_64BIT_ADDRESSES) ? "daddiu" : - HAVE_NEWABI ? "addi" : "addiu", + (dbl || HAVE_64BIT_ADDRESSES) ? "daddiu" : "addiu", "t,r,j", treg, sreg, (int) BFD_RELOC_LO16); return; } @@ -5618,8 +5616,7 @@ macro (ip) char *s; if (mips_pic == EMBEDDED_PIC || mips_pic == NO_PIC) - s = (dbl || HAVE_64BIT_ADDRESSES) ? "daddu" : - HAVE_NEWABI ? "add" : "addu"; + s = (dbl || HAVE_64BIT_ADDRESSES) ? "daddu" : "addu"; else s = ADDRESS_ADD_INSN; @@ -6063,7 +6060,7 @@ macro (ip) macro_build ((char *) NULL, &icnt, (expressionS *) NULL, ((bfd_arch_bits_per_address (stdoutput) == 32 || ! ISA_HAS_64BIT_REGS (mips_opts.isa)) - ? HAVE_NEWABI ? "add" : "addu" : "daddu"), + ? "addu" : "daddu"), "d,v,t", tempreg, tempreg, breg); macro_build ((char *) NULL, &icnt, &offset_expr, s, fmt, treg, (int) BFD_RELOC_PCREL_LO16, tempreg); |