From 9bd7d9360092f31dd487b6e1fa441ae1bc144203 Mon Sep 17 00:00:00 2001 From: "Maciej W. Rozycki" Date: Tue, 30 Jul 2002 19:24:54 +0000 Subject: [PATCH] * 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. --- gas/ChangeLog | 7 +++++++ gas/config/tc-mips.c | 18 +++++++++--------- 2 files changed, 16 insertions(+), 9 deletions(-) diff --git a/gas/ChangeLog b/gas/ChangeLog index a865720d41b..e6b985ba5b6 100644 --- a/gas/ChangeLog +++ b/gas/ChangeLog @@ -1,3 +1,10 @@ +2002-07-30 Maciej W. Rozycki + + * 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 * configure.in: Add support for arm-*-nto target. diff --git a/gas/config/tc-mips.c b/gas/config/tc-mips.c index 64175c553f5..d66469e87c5 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; -- 2.30.2