From 99c24539c5411b68ad6f5e8b59f6548f4da8d9c7 Mon Sep 17 00:00:00 2001 From: Ian Lance Taylor Date: Mon, 12 Jul 1993 14:24:20 +0000 Subject: [PATCH] * config/tc-mips.c (mips_ip): Don't warn on 'i' or 'j' mismatch if there is another alternative for the instruction. --- gas/ChangeLog | 5 +++++ gas/config/tc-mips.c | 14 ++++++++++++-- 2 files changed, 17 insertions(+), 2 deletions(-) diff --git a/gas/ChangeLog b/gas/ChangeLog index 771d021603b..679062f4f94 100644 --- a/gas/ChangeLog +++ b/gas/ChangeLog @@ -1,3 +1,8 @@ +Mon Jul 12 07:22:28 1993 Ian Lance Taylor (ian@cygnus.com) + + * config/tc-mips.c (mips_ip): Don't warn on 'i' or 'j' mismatch if + there is another alternative for the instruction. + Fri Jul 9 17:31:34 1993 Roland H. Pesch (pesch@fowanton.cygnus.com) * doc/as.texinfo: updates for H8/300H diff --git a/gas/config/tc-mips.c b/gas/config/tc-mips.c index 709b5d5e1e1..18c1bcfd1ab 100644 --- a/gas/config/tc-mips.c +++ b/gas/config/tc-mips.c @@ -2244,13 +2244,23 @@ mips_ip (str, ip) if (*args == 'i') { if ((unsigned long) imm_expr.X_add_number > 65535) - as_bad ("16 bit expression not in range 0..65535"); + { + if (insn + 1 < &mips_opcodes[NUMOPCODES] && + !strcmp (insn->name, insn[1].name)) + break; + as_bad ("16 bit expression not in range 0..65535"); + } } else { if (imm_expr.X_add_number < -32768 || imm_expr.X_add_number > 32767) - as_bad ("16 bit expression not in range -32768..32767"); + { + if (insn + 1 < &mips_opcodes[NUMOPCODES] && + !strcmp (insn->name, insn[1].name)) + break; + as_bad ("16 bit expression not in range -32768..32767"); + } } s = expr_end; continue; -- 2.30.2