Recognize vst1.64 / vld1.64 with 3 and 4 regs as load from / store to stack stuff
authorAnton Korobeynikov <asl@math.spbu.ru>
Sat, 4 Aug 2012 13:22:14 +0000 (13:22 +0000)
committerAnton Korobeynikov <asl@math.spbu.ru>
Sat, 4 Aug 2012 13:22:14 +0000 (13:22 +0000)
(this corresponds by spilling/reloading regs in DTriple / DQuad reg classes).
No testcase, found by inspection.

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

lib/Target/ARM/ARMBaseInstrInfo.cpp

index 134aca8c0c6a27f3f31b09fb54a096f4811e6ada..057fd718fdb5d06eb586007170811a6e6e39a6ed 100644 (file)
@@ -888,6 +888,8 @@ ARMBaseInstrInfo::isStoreToStackSlot(const MachineInstr *MI,
     }
     break;
   case ARM::VST1q64:
+  case ARM::VST1d64TPseudo:
+  case ARM::VST1d64QPseudo:
     if (MI->getOperand(0).isFI() &&
         MI->getOperand(2).getSubReg() == 0) {
       FrameIndex = MI->getOperand(0).getIndex();
@@ -1056,6 +1058,8 @@ ARMBaseInstrInfo::isLoadFromStackSlot(const MachineInstr *MI,
     }
     break;
   case ARM::VLD1q64:
+  case ARM::VLD1d64TPseudo:
+  case ARM::VLD1d64QPseudo:
     if (MI->getOperand(1).isFI() &&
         MI->getOperand(0).getSubReg() == 0) {
       FrameIndex = MI->getOperand(1).getIndex();