Source-Changes-HG archive
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]
[src/trunk]: src/external/gpl3/binutils/dist/gas/config Fix a bug where the o...
details: https://anonhg.NetBSD.org/src/rev/f9a472d7b7fa
branches: trunk
changeset: 338550:f9a472d7b7fa
user: matt <matt%NetBSD.org@localhost>
date: Fri May 29 22:18:51 2015 +0000
description:
Fix a bug where the octeon+ saa/saad instructions think they are using the AT
register when they actually aren't.
diffstat:
external/gpl3/binutils/dist/gas/config/tc-mips.c | 14 ++++++++++++--
1 files changed, 12 insertions(+), 2 deletions(-)
diffs (34 lines):
diff -r 979f9996de45 -r f9a472d7b7fa external/gpl3/binutils/dist/gas/config/tc-mips.c
--- a/external/gpl3/binutils/dist/gas/config/tc-mips.c Fri May 29 19:39:41 2015 +0000
+++ b/external/gpl3/binutils/dist/gas/config/tc-mips.c Fri May 29 22:18:51 2015 +0000
@@ -9235,18 +9235,28 @@
case M_SAA_AB:
- ab = 1;
+ ab = (offset_expr.X_op != O_constant || offset_expr.X_add_number != 0);
case M_SAA_OB:
s = "saa";
off0 = 1;
fmt = "t,(b)";
+ if (!ab)
+ {
+ tempreg = AT;
+ goto ld_noat;
+ }
goto ld_st;
case M_SAAD_AB:
- ab = 1;
+ ab = (offset_expr.X_op != O_constant || offset_expr.X_add_number != 0);
case M_SAAD_OB:
s = "saad";
off0 = 1;
fmt = "t,(b)";
+ if (!ab)
+ {
+ tempreg = AT;
+ goto ld_noat;
+ }
goto ld_st;
/* New code added to support COPZ instructions.
Home |
Main Index |
Thread Index |
Old Index