Relex assertions to account for additional implicit def / use operands.
authorEvan Cheng <evan.cheng@apple.com>
Wed, 25 Apr 2007 07:12:14 +0000 (07:12 +0000)
committerEvan Cheng <evan.cheng@apple.com>
Wed, 25 Apr 2007 07:12:14 +0000 (07:12 +0000)
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36430 91177308-0d34-0410-b5e6-96231b3b80d8

lib/Target/ARM/ARMInstrInfo.cpp
lib/Target/Alpha/AlphaInstrInfo.cpp
lib/Target/IA64/IA64InstrInfo.cpp
lib/Target/PowerPC/PPCInstrInfo.cpp
lib/Target/X86/X86InstrInfo.cpp

index 2b0450b9718a4ec5c51a484620d955c8e880d0d9..37156c4c10fda1d30ffb4136a7d1ebd54634c109 100644 (file)
@@ -52,7 +52,7 @@ bool ARMInstrInfo::isMoveInstr(const MachineInstr &MI,
     return true;
   case ARM::MOVr:
   case ARM::tMOVr:
-    assert(MI.getNumOperands() == 2 && MI.getOperand(0).isRegister() &&
+    assert(MI.getNumOperands() >= 2 && MI.getOperand(0).isRegister() &&
            MI.getOperand(1).isRegister() &&
            "Invalid ARM MOV instruction");
     SrcReg = MI.getOperand(1).getReg();
index 71bf5b0e9628b28668dd406593d3dec5fb965c7f..04b08b58bf1e42ee4ec629a825b39382785159ef 100644 (file)
@@ -33,7 +33,7 @@ bool AlphaInstrInfo::isMoveInstr(const MachineInstr& MI,
       oc == Alpha::CPYSTs) {
     // or r1, r2, r2 
     // cpys(s|t) r1 r2 r2
-    assert(MI.getNumOperands() == 3 &&
+    assert(MI.getNumOperands() >= 3 &&
            MI.getOperand(0).isRegister() &&
            MI.getOperand(1).isRegister() &&
            MI.getOperand(2).isRegister() &&
index 624d53a123e96563029f8ee60c11208dde529f27..aabdee37cb05300ee2662797b7445d30355809ee 100644 (file)
@@ -30,7 +30,7 @@ bool IA64InstrInfo::isMoveInstr(const MachineInstr& MI,
   MachineOpCode oc = MI.getOpcode();
   if (oc == IA64::MOV || oc == IA64::FMOV) {
   // TODO: this doesn't detect predicate moves
-     assert(MI.getNumOperands() == 2 &&
+     assert(MI.getNumOperands() >= 2 &&
              /* MI.getOperand(0).isRegister() &&
              MI.getOperand(1).isRegister() && */
              "invalid register-register move instruction");
index 1ba701f6a759875993c5e2c6f827496b819c3d06..89b5c9c890110b46c88b0dbd42dd065ca1ee0d68 100644 (file)
@@ -38,7 +38,7 @@ bool PPCInstrInfo::isMoveInstr(const MachineInstr& MI,
   MachineOpCode oc = MI.getOpcode();
   if (oc == PPC::OR || oc == PPC::OR8 || oc == PPC::VOR ||
       oc == PPC::OR4To8 || oc == PPC::OR8To4) {                // or r1, r2, r2
-    assert(MI.getNumOperands() == 3 &&
+    assert(MI.getNumOperands() >= 3 &&
            MI.getOperand(0).isRegister() &&
            MI.getOperand(1).isRegister() &&
            MI.getOperand(2).isRegister() &&
@@ -49,7 +49,7 @@ bool PPCInstrInfo::isMoveInstr(const MachineInstr& MI,
       return true;
     }
   } else if (oc == PPC::ADDI) {             // addi r1, r2, 0
-    assert(MI.getNumOperands() == 3 &&
+    assert(MI.getNumOperands() >= 3 &&
            MI.getOperand(0).isRegister() &&
            MI.getOperand(2).isImmediate() &&
            "invalid PPC ADDI instruction!");
@@ -59,7 +59,7 @@ bool PPCInstrInfo::isMoveInstr(const MachineInstr& MI,
       return true;
     }
   } else if (oc == PPC::ORI) {             // ori r1, r2, 0
-    assert(MI.getNumOperands() == 3 &&
+    assert(MI.getNumOperands() >= 3 &&
            MI.getOperand(0).isRegister() &&
            MI.getOperand(1).isRegister() &&
            MI.getOperand(2).isImmediate() &&
@@ -71,7 +71,7 @@ bool PPCInstrInfo::isMoveInstr(const MachineInstr& MI,
     }
   } else if (oc == PPC::FMRS || oc == PPC::FMRD ||
              oc == PPC::FMRSD) {      // fmr r1, r2
-    assert(MI.getNumOperands() == 2 &&
+    assert(MI.getNumOperands() >= 2 &&
            MI.getOperand(0).isRegister() &&
            MI.getOperand(1).isRegister() &&
            "invalid PPC FMR instruction");
@@ -79,7 +79,7 @@ bool PPCInstrInfo::isMoveInstr(const MachineInstr& MI,
     destReg = MI.getOperand(0).getReg();
     return true;
   } else if (oc == PPC::MCRF) {             // mcrf cr1, cr2
-    assert(MI.getNumOperands() == 2 &&
+    assert(MI.getNumOperands() >= 2 &&
            MI.getOperand(0).isRegister() &&
            MI.getOperand(1).isRegister() &&
            "invalid PPC MCRF instruction");
index 7a3dfe06da43e9daf97dc51d6824e0d5489c3105..bd46cda376ad5b3c1b82903589e4b22283f988a2 100644 (file)
@@ -39,7 +39,7 @@ bool X86InstrInfo::isMoveInstr(const MachineInstr& MI,
       oc == X86::MOVSS2PSrr || oc == X86::MOVSD2PDrr ||
       oc == X86::MOVPS2SSrr || oc == X86::MOVPD2SDrr ||
       oc == X86::MMX_MOVD64rr || oc == X86::MMX_MOVQ64rr) {
-      assert(MI.getNumOperands() == 2 &&
+      assert(MI.getNumOperands() >= 2 &&
              MI.getOperand(0).isRegister() &&
              MI.getOperand(1).isRegister() &&
              "invalid register-register move instruction");