aboutsummaryrefslogtreecommitdiff
path: root/gcc/config/mips/mips.c
diff options
context:
space:
mode:
authorRichard Sandiford <rsandifo@redhat.com>2004-08-24 20:04:57 +0000
committerRichard Sandiford <rsandifo@gcc.gnu.org>2004-08-24 20:04:57 +0000
commit886ce862cb96d58a91700af29baea916af2aae35 (patch)
tree0aa4c15426cfcf1e9087041bcda79ca3478656f0 /gcc/config/mips/mips.c
parentbe659abd840dffa23f750638381ab0f1251b735d (diff)
downloadgcc-886ce862cb96d58a91700af29baea916af2aae35.zip
gcc-886ce862cb96d58a91700af29baea916af2aae35.tar.gz
gcc-886ce862cb96d58a91700af29baea916af2aae35.tar.bz2
mips.c (mips_gen_conditional_trap): Fix mode.
* config/mips/mips.c (mips_gen_conditional_trap): Fix mode. * config/mips/mips.md (*conditional_trap[sd]i): Name previously unnamed patterns. Redefine using :GPR. Give the match_operator a mode. Use '%2' rather than '%z2' for operand 2. From-SVN: r86511
Diffstat (limited to 'gcc/config/mips/mips.c')
-rw-r--r--gcc/config/mips/mips.c10
1 files changed, 5 insertions, 5 deletions
diff --git a/gcc/config/mips/mips.c b/gcc/config/mips/mips.c
index 5067324..9f0bf68 100644
--- a/gcc/config/mips/mips.c
+++ b/gcc/config/mips/mips.c
@@ -2578,20 +2578,20 @@ mips_gen_conditional_trap (rtx *operands)
}
if (cmp_code == GET_CODE (operands[0]))
{
- op0 = force_reg (mode, cmp_operands[0]);
+ op0 = cmp_operands[0];
op1 = cmp_operands[1];
}
else
{
- op0 = force_reg (mode, cmp_operands[1]);
+ op0 = cmp_operands[1];
op1 = cmp_operands[0];
}
- if (GET_CODE (op1) == CONST_INT && ! SMALL_INT (op1))
+ op0 = force_reg (mode, op0);
+ if (!arith_operand (op1, mode))
op1 = force_reg (mode, op1);
emit_insn (gen_rtx_TRAP_IF (VOIDmode,
- gen_rtx_fmt_ee (cmp_code, GET_MODE (operands[0]),
- op0, op1),
+ gen_rtx_fmt_ee (cmp_code, mode, op0, op1),
operands[1]));
}