From: Maciej W. Rozycki Date: Mon, 8 Jul 2002 22:42:09 +0000 (+0000) Subject: * config/tc-mips.c (load_address): Use non-trapping "daddu" X-Git-Tag: binutils-2_13-branchpoint~66 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=3a482fd5233ea32e3dfa00dbf0ab72f89a4687e4;p=external%2Fbinutils.git * config/tc-mips.c (load_address): Use non-trapping "daddu" instead of "dadd" in address calculations. (macro): Likewise. --- diff --git a/gas/ChangeLog b/gas/ChangeLog index 5cbc523..2fc3cfe 100644 --- a/gas/ChangeLog +++ b/gas/ChangeLog @@ -1,3 +1,9 @@ +2002-07-08 Maciej W. Rozycki + + * config/tc-mips.c (load_address): Use non-trapping "daddu" + instead of "dadd" in address calculations. + (macro): Likewise. + 2002-07-08 Alan Modra * config/tc-i386.c (process_suffix): Remove intel mode movsx and diff --git a/gas/config/tc-mips.c b/gas/config/tc-mips.c index c389964..47f43b0 100644 --- a/gas/config/tc-mips.c +++ b/gas/config/tc-mips.c @@ -3528,7 +3528,7 @@ load_address (counter, reg, ep, used_at) daddiu $reg, (BFD_RELOC_MIPS_HIGHER) daddiu $at, (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, (BFD_RELOC_MIPS_HIGHER) daddiu $at, (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