summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorSimon Dardis <simon.dardis@mips.com>2018-05-30 13:16:17 +0000
committerSimon Dardis <simon.dardis@mips.com>2018-05-30 13:16:17 +0000
commita3aa926c09b85134b42273e8642cb30021dadbd6 (patch)
treef097b37a5ecec688ec58eeb6c83b91762a86cc25
parentdf8e291ef94744780f813e244860326b5e628b18 (diff)
downloadbcm5719-llvm-a3aa926c09b85134b42273e8642cb30021dadbd6.tar.gz
bcm5719-llvm-a3aa926c09b85134b42273e8642cb30021dadbd6.zip
[mips] Correct the predicates of microMIPS compact branch instructions
llvm-svn: 333541
-rw-r--r--llvm/lib/Target/Mips/MicroMipsInstrInfo.td10
1 files changed, 4 insertions, 6 deletions
diff --git a/llvm/lib/Target/Mips/MicroMipsInstrInfo.td b/llvm/lib/Target/Mips/MicroMipsInstrInfo.td
index 73d9deaa2e3..3f6523d2fad 100644
--- a/llvm/lib/Target/Mips/MicroMipsInstrInfo.td
+++ b/llvm/lib/Target/Mips/MicroMipsInstrInfo.td
@@ -703,15 +703,13 @@ class WaitMM<string opstr> :
InstSE<(outs), (ins uimm10:$code_), !strconcat(opstr, "\t$code_"), [],
II_WAIT, FrmOther, opstr>;
-let DecoderNamespace = "MicroMips", Predicates = [InMicroMips, NotMips32r6,
- NotMips64r6] in {
+let DecoderNamespace = "MicroMips" in {
/// Compact Branch Instructions
def BEQZC_MM : CompactBranchMM<"beqzc", brtarget_mm, seteq, GPR32Opnd>,
- COMPACT_BRANCH_FM_MM<0x7>;
+ COMPACT_BRANCH_FM_MM<0x7>, ISA_MICROMIPS32_NOT_MIPS32R6;
def BNEZC_MM : CompactBranchMM<"bnezc", brtarget_mm, setne, GPR32Opnd>,
- COMPACT_BRANCH_FM_MM<0x5>;
-}
-let DecoderNamespace = "MicroMips" in {
+ COMPACT_BRANCH_FM_MM<0x5>, ISA_MICROMIPS32_NOT_MIPS32R6;
+
/// Arithmetic Instructions (ALU Immediate)
def ADDiu_MM : MMRel, ArithLogicI<"addiu", simm16, GPR32Opnd, II_ADDIU>,
ADDI_FM_MM<0xc>, ISA_MICROMIPS32_NOT_MIPS32R6;
OpenPOWER on IntegriCloud