diff options
author | Maciej W. Rozycki <macro@linux-mips.org> | 2002-07-30 19:24:54 +0000 |
---|---|---|
committer | Maciej W. Rozycki <macro@linux-mips.org> | 2002-07-30 19:24:54 +0000 |
commit | 9bd7d9360092f31dd487b6e1fa441ae1bc144203 (patch) | |
tree | 97385af02684dad8ba6cf0526c18db0faa7ac853 | |
parent | 2fda49774f178145b87bc2081c69c58c39747d1c (diff) | |
download | fsf-binutils-gdb-9bd7d9360092f31dd487b6e1fa441ae1bc144203.zip fsf-binutils-gdb-9bd7d9360092f31dd487b6e1fa441ae1bc144203.tar.gz fsf-binutils-gdb-9bd7d9360092f31dd487b6e1fa441ae1bc144203.tar.bz2 |
* config/tc-mips.c (macro): Use codes 6 and 7 in trap instructions
used in division/multiply macro expansions similarly to how they
are used in the variants with break instructions.
(macro2): Likewise.
-rw-r--r-- | gas/ChangeLog | 7 | ||||
-rw-r--r-- | gas/config/tc-mips.c | 18 |
2 files changed, 16 insertions, 9 deletions
diff --git a/gas/ChangeLog b/gas/ChangeLog index a865720..e6b985b 100644 --- a/gas/ChangeLog +++ b/gas/ChangeLog @@ -1,3 +1,10 @@ +2002-07-30 Maciej W. Rozycki <macro@ds2.pg.gda.pl> + + * config/tc-mips.c (macro): Use codes 6 and 7 in trap instructions + used in division/multiply macro expansions similarly to how they + are used in the variants with break instructions. + (macro2): Likewise. + 2002-07-30 Graeme Peterson <gp@qnx.com> * configure.in: Add support for arm-*-nto target. diff --git a/gas/config/tc-mips.c b/gas/config/tc-mips.c index 64175c5..d66469e 100644 --- a/gas/config/tc-mips.c +++ b/gas/config/tc-mips.c @@ -4231,7 +4231,7 @@ macro (ip) as_warn (_("Divide by zero.")); if (mips_trap) macro_build ((char *) NULL, &icnt, (expressionS *) NULL, "teq", - "s,t", 0, 0); + "s,t,q", 0, 0, 7); else macro_build ((char *) NULL, &icnt, (expressionS *) NULL, "break", "c", 7); @@ -4244,7 +4244,7 @@ macro (ip) if (mips_trap) { macro_build ((char *) NULL, &icnt, (expressionS *) NULL, "teq", - "s,t", treg, 0); + "s,t,q", treg, 0, 7); macro_build ((char *) NULL, &icnt, (expressionS *) NULL, dbl ? "ddiv" : "div", "z,s,t", sreg, treg); } @@ -4280,7 +4280,7 @@ macro (ip) if (mips_trap) { macro_build ((char *) NULL, &icnt, (expressionS *) NULL, "teq", - "s,t", sreg, AT); + "s,t,q", sreg, AT, 6); /* We want to close the noreorder block as soon as possible, so that later insns are available for delay slot filling. */ --mips_opts.noreorder; @@ -4343,7 +4343,7 @@ macro (ip) as_warn (_("Divide by zero.")); if (mips_trap) macro_build ((char *) NULL, &icnt, (expressionS *) NULL, "teq", - "s,t", 0, 0); + "s,t,q", 0, 0, 7); else macro_build ((char *) NULL, &icnt, (expressionS *) NULL, "break", "c", 7); @@ -4399,7 +4399,7 @@ macro (ip) if (mips_trap) { macro_build ((char *) NULL, &icnt, (expressionS *) NULL, "teq", - "s,t", treg, 0); + "s,t,q", treg, 0, 7); macro_build ((char *) NULL, &icnt, (expressionS *) NULL, s, "z,s,t", sreg, treg); /* We want to close the noreorder block as soon as possible, so @@ -6548,8 +6548,8 @@ macro2 (ip) macro_build ((char *) NULL, &icnt, (expressionS *) NULL, "mfhi", "d", AT); if (mips_trap) - macro_build ((char *) NULL, &icnt, (expressionS *) NULL, "tne", "s,t", - dreg, AT); + macro_build ((char *) NULL, &icnt, (expressionS *) NULL, "tne", + "s,t,q", dreg, AT, 6); else { expr1.X_add_number = 8; @@ -6587,8 +6587,8 @@ macro2 (ip) macro_build ((char *) NULL, &icnt, (expressionS *) NULL, "mflo", "d", dreg); if (mips_trap) - macro_build ((char *) NULL, &icnt, (expressionS *) NULL, "tne", "s,t", - AT, 0); + macro_build ((char *) NULL, &icnt, (expressionS *) NULL, "tne", + "s,t,q", AT, 0, 6); else { expr1.X_add_number = 8; |