summaryrefslogtreecommitdiff
path: root/opcodes/mep-opc.c
diff options
context:
space:
mode:
authorDJ Delorie <dj@delorie.com>2009-06-24 01:44:53 +0000
committerDJ Delorie <dj@delorie.com>2009-06-24 01:44:53 +0000
commit3e3ce4154bb68c106c2713c9a074dd9fef193552 (patch)
tree5037ea7ce97b7ed29d21d932d18f6a2f6a44c4a0 /opcodes/mep-opc.c
parente2a0aab742b9111beaab923b1e6519dcded62813 (diff)
downloadbinutils-redhat-3e3ce4154bb68c106c2713c9a074dd9fef193552.tar.gz
[cgen]
* cpu/mep.opc (mep_cgen_insn_supported_asm): New, skip the short version of BSR when assembling VLIW bundles. Use it in mep-asm.c [opcodes] * mep-asm.c: Regenerate. * mep-opc.c: Regenerate. * mep-opc.h: Regenerate.
Diffstat (limited to 'opcodes/mep-opc.c')
-rw-r--r--opcodes/mep-opc.c12
1 files changed, 12 insertions, 0 deletions
diff --git a/opcodes/mep-opc.c b/opcodes/mep-opc.c
index a9b09a5410..aa6c093ad8 100644
--- a/opcodes/mep-opc.c
+++ b/opcodes/mep-opc.c
@@ -163,6 +163,18 @@ mep_cgen_insn_supported (CGEN_CPU_DESC cd, const CGEN_INSN *insn)
return (ok1 && ok2 && ok3);
}
+
+int
+mep_cgen_insn_supported_asm (CGEN_CPU_DESC cd, const CGEN_INSN *insn)
+{
+ /* If we're assembling VLIW packets, ignore the 12-bit BSR as we
+ can't relax that. The 24-bit BSR is matched instead. */
+ if (insn->base->num == MEP_INSN_BSR12
+ && cgen_bitset_contains (cd->isas, ISA_EXT_COP1_64))
+ return 0;
+
+ return mep_cgen_insn_supported (cd, insn);
+}
/* The hash functions are recorded here to help keep assembler code out of
the disassembler and vice versa. */