* config/tc-mips.c (load_address): Use non-trapping "daddu"

instead of "dadd" in address calculations.
(macro): Likewise.
This commit is contained in:
Maciej W. Rozycki 2002-07-08 22:42:09 +00:00
parent 5b53c3368b
commit 3a482fd523
2 changed files with 11 additions and 5 deletions

View File

@ -1,3 +1,9 @@
2002-07-08 Maciej W. Rozycki <macro@ds2.pg.gda.pl>
* config/tc-mips.c (load_address): Use non-trapping "daddu"
instead of "dadd" in address calculations.
(macro): Likewise.
2002-07-08 Alan Modra <amodra@bigpond.net.au>
* config/tc-i386.c (process_suffix): Remove intel mode movsx and

View File

@ -3528,7 +3528,7 @@ load_address (counter, reg, ep, used_at)
daddiu $reg,<sym> (BFD_RELOC_MIPS_HIGHER)
daddiu $at,<sym> (BFD_RELOC_LO16)
dsll32 $reg,0
dadd $reg,$reg,$at
daddu $reg,$reg,$at
If $at is already in use, we use an path which is suboptimal
on superscalar processors.
@ -3556,7 +3556,7 @@ load_address (counter, reg, ep, used_at)
AT, AT, (int) BFD_RELOC_LO16);
macro_build (p, counter, (expressionS *) NULL, "dsll32",
"d,w,<", reg, reg, 0);
macro_build (p, counter, (expressionS *) NULL, "dadd",
macro_build (p, counter, (expressionS *) NULL, "daddu",
"d,v,t", reg, reg, AT);
*used_at = 1;
}
@ -4542,7 +4542,7 @@ macro (ip)
daddiu $tempreg,<sym> (BFD_RELOC_MIPS_HIGHER)
daddiu $at,<sym> (BFD_RELOC_LO16)
dsll32 $tempreg,0
dadd $tempreg,$tempreg,$at
daddu $tempreg,$tempreg,$at
If $at is already in use, we use an path which is suboptimal
on superscalar processors.
@ -4571,8 +4571,8 @@ macro (ip)
AT, AT, (int) BFD_RELOC_LO16);
macro_build (p, &icnt, (expressionS *) NULL, "dsll32",
"d,w,<", tempreg, tempreg, 0);
macro_build (p, &icnt, (expressionS *) NULL, "dadd", "d,v,t",
tempreg, tempreg, AT);
macro_build (p, &icnt, (expressionS *) NULL, "daddu",
"d,v,t", tempreg, tempreg, AT);
used_at = 1;
}
else