Add some missing entries to X86RegisterInfo::foldMemoryOperand(). e.g.
authorEvan Cheng <evan.cheng@apple.com>
Fri, 17 Mar 2006 02:25:01 +0000 (02:25 +0000)
committerEvan Cheng <evan.cheng@apple.com>
Fri, 17 Mar 2006 02:25:01 +0000 (02:25 +0000)
ADD32ri8.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@26816 91177308-0d34-0410-b5e6-96231b3b80d8

lib/Target/X86/X86RegisterInfo.cpp

index 4951ef390dd1799027822a1fb1acd914e09da0b9..0805b60ba02ab77fb3670e76440df16957483721 100644 (file)
@@ -221,39 +221,49 @@ MachineInstr* X86RegisterInfo::foldMemoryOperand(MachineInstr* MI,
     case X86::ADD8rr:    return MakeMRInst(X86::ADD8mr , FrameIndex, MI);
     case X86::ADD16rr:   return MakeMRInst(X86::ADD16mr, FrameIndex, MI);
     case X86::ADD32rr:   return MakeMRInst(X86::ADD32mr, FrameIndex, MI);
-    case X86::ADC32rr:   return MakeMRInst(X86::ADC32mr, FrameIndex, MI);
-    case X86::ADC32ri:   return MakeMIInst(X86::ADC32mi, FrameIndex, MI);
     case X86::ADD8ri:    return MakeMIInst(X86::ADD8mi , FrameIndex, MI);
     case X86::ADD16ri:   return MakeMIInst(X86::ADD16mi, FrameIndex, MI);
     case X86::ADD32ri:   return MakeMIInst(X86::ADD32mi, FrameIndex, MI);
+    case X86::ADD16ri8:  return MakeMIInst(X86::ADD16mi8,FrameIndex, MI);
+    case X86::ADD32ri8:  return MakeMIInst(X86::ADD32mi8,FrameIndex, MI);
+    case X86::ADC32rr:   return MakeMRInst(X86::ADC32mr, FrameIndex, MI);
+    case X86::ADC32ri:   return MakeMIInst(X86::ADC32mi, FrameIndex, MI);
+    case X86::ADC32ri8:  return MakeMIInst(X86::ADC32mi8,FrameIndex, MI);
     case X86::SUB8rr:    return MakeMRInst(X86::SUB8mr , FrameIndex, MI);
     case X86::SUB16rr:   return MakeMRInst(X86::SUB16mr, FrameIndex, MI);
     case X86::SUB32rr:   return MakeMRInst(X86::SUB32mr, FrameIndex, MI);
-    case X86::SBB32rr:   return MakeMRInst(X86::SBB32mr, FrameIndex, MI);
-    case X86::SBB8ri:    return MakeMIInst(X86::SBB8mi,  FrameIndex, MI);
-    case X86::SBB16ri:   return MakeMIInst(X86::SBB16mi, FrameIndex, MI);
-    case X86::SBB32ri:   return MakeMIInst(X86::SBB32mi, FrameIndex, MI);
     case X86::SUB8ri:    return MakeMIInst(X86::SUB8mi , FrameIndex, MI);
     case X86::SUB16ri:   return MakeMIInst(X86::SUB16mi, FrameIndex, MI);
     case X86::SUB32ri:   return MakeMIInst(X86::SUB32mi, FrameIndex, MI);
+    case X86::SUB16ri8:  return MakeMIInst(X86::SUB16mi8,FrameIndex, MI);
+    case X86::SUB32ri8:  return MakeMIInst(X86::SUB32mi8,FrameIndex, MI);
+    case X86::SBB32rr:   return MakeMRInst(X86::SBB32mr, FrameIndex, MI);
+    case X86::SBB32ri:   return MakeMIInst(X86::SBB32mi, FrameIndex, MI);
+    case X86::SBB32ri8:  return MakeMIInst(X86::SBB32mi8,FrameIndex, MI);
     case X86::AND8rr:    return MakeMRInst(X86::AND8mr , FrameIndex, MI);
     case X86::AND16rr:   return MakeMRInst(X86::AND16mr, FrameIndex, MI);
     case X86::AND32rr:   return MakeMRInst(X86::AND32mr, FrameIndex, MI);
     case X86::AND8ri:    return MakeMIInst(X86::AND8mi , FrameIndex, MI);
     case X86::AND16ri:   return MakeMIInst(X86::AND16mi, FrameIndex, MI);
     case X86::AND32ri:   return MakeMIInst(X86::AND32mi, FrameIndex, MI);
+    case X86::AND16ri8:  return MakeMIInst(X86::AND16mi8,FrameIndex, MI);
+    case X86::AND32ri8:  return MakeMIInst(X86::AND32mi8,FrameIndex, MI);
     case X86::OR8rr:     return MakeMRInst(X86::OR8mr ,  FrameIndex, MI);
     case X86::OR16rr:    return MakeMRInst(X86::OR16mr,  FrameIndex, MI);
     case X86::OR32rr:    return MakeMRInst(X86::OR32mr,  FrameIndex, MI);
     case X86::OR8ri:     return MakeMIInst(X86::OR8mi ,  FrameIndex, MI);
     case X86::OR16ri:    return MakeMIInst(X86::OR16mi,  FrameIndex, MI);
     case X86::OR32ri:    return MakeMIInst(X86::OR32mi,  FrameIndex, MI);
+    case X86::OR16ri8:   return MakeMIInst(X86::OR16mi8, FrameIndex, MI);
+    case X86::OR32ri8:   return MakeMIInst(X86::OR32mi8, FrameIndex, MI);
     case X86::XOR8rr:    return MakeMRInst(X86::XOR8mr , FrameIndex, MI);
     case X86::XOR16rr:   return MakeMRInst(X86::XOR16mr, FrameIndex, MI);
     case X86::XOR32rr:   return MakeMRInst(X86::XOR32mr, FrameIndex, MI);
     case X86::XOR8ri:    return MakeMIInst(X86::XOR8mi , FrameIndex, MI);
     case X86::XOR16ri:   return MakeMIInst(X86::XOR16mi, FrameIndex, MI);
     case X86::XOR32ri:   return MakeMIInst(X86::XOR32mi, FrameIndex, MI);
+    case X86::XOR16ri8:  return MakeMIInst(X86::XOR16mi8,FrameIndex, MI);
+    case X86::XOR32ri8:  return MakeMIInst(X86::XOR32mi8,FrameIndex, MI);
     case X86::SHL8rCL:   return MakeMInst( X86::SHL8mCL ,FrameIndex, MI);
     case X86::SHL16rCL:  return MakeMInst( X86::SHL16mCL,FrameIndex, MI);
     case X86::SHL32rCL:  return MakeMInst( X86::SHL32mCL,FrameIndex, MI);
@@ -392,6 +402,8 @@ MachineInstr* X86RegisterInfo::foldMemoryOperand(MachineInstr* MI,
     case X86::IMUL32rr:  return MakeRMInst(X86::IMUL32rm,FrameIndex, MI);
     case X86::IMUL16rri: return MakeRMIInst(X86::IMUL16rmi, FrameIndex, MI);
     case X86::IMUL32rri: return MakeRMIInst(X86::IMUL32rmi, FrameIndex, MI);
+    case X86::IMUL16rri8:return MakeRMIInst(X86::IMUL16rmi8, FrameIndex, MI);
+    case X86::IMUL32rri8:return MakeRMIInst(X86::IMUL32rmi8, FrameIndex, MI);
     case X86::CMP8rr:    return MakeRMInst(X86::CMP8rm , FrameIndex, MI);
     case X86::CMP16rr:   return MakeRMInst(X86::CMP16rm, FrameIndex, MI);
     case X86::CMP32rr:   return MakeRMInst(X86::CMP32rm, FrameIndex, MI);