diff options
author | Ian Lance Taylor <ian@airs.com> | 1993-07-12 14:24:20 +0000 |
---|---|---|
committer | Ian Lance Taylor <ian@airs.com> | 1993-07-12 14:24:20 +0000 |
commit | 99c24539c5411b68ad6f5e8b59f6548f4da8d9c7 (patch) | |
tree | c1aecced294f9d52da2e2184e9dc0a6d4b946092 /gas/config | |
parent | f1ed43304a848d01f5a4c68a7b0f41990824f293 (diff) | |
download | gdb-99c24539c5411b68ad6f5e8b59f6548f4da8d9c7.zip gdb-99c24539c5411b68ad6f5e8b59f6548f4da8d9c7.tar.gz gdb-99c24539c5411b68ad6f5e8b59f6548f4da8d9c7.tar.bz2 |
* config/tc-mips.c (mips_ip): Don't warn on 'i' or 'j' mismatch if
there is another alternative for the instruction.
Diffstat (limited to 'gas/config')
-rw-r--r-- | gas/config/tc-mips.c | 14 |
1 files changed, 12 insertions, 2 deletions
diff --git a/gas/config/tc-mips.c b/gas/config/tc-mips.c index 709b5d5..18c1bcf 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; |