Lines Matching refs:StoreInst
102 void breakBlockedCopies(MachineInstr *LoadInst, MachineInstr *StoreInst,
106 MachineInstr *StoreInst, int64_t StDispImm,
110 MachineInstr *StoreInst, unsigned NStoreOpcode,
382 int64_t LoadDisp, MachineInstr *StoreInst, in buildCopy() argument
387 MachineOperand &StoreBase = getBaseOperand(StoreInst); in buildCopy()
390 MachineMemOperand *SMMO = *StoreInst->memoperands_begin(); in buildCopy()
409 MachineInstr *StInst = StoreInst; in buildCopy()
410 if (StoreInst->getPrevNode() == LoadInst) in buildCopy()
424 MachineOperand &StoreSrcVReg = StoreInst->getOperand(X86::AddrNumOperands); in buildCopy()
431 int64_t LdDispImm, MachineInstr *StoreInst, in buildCopies() argument
440 StoreInst, getYMMtoXMMStoreOpcode(StoreInst->getOpcode()), in buildCopies()
450 buildCopy(LoadInst, X86::MOV64rm, LdDisp, StoreInst, X86::MOV64mr, StDisp, in buildCopies()
460 buildCopy(LoadInst, X86::MOV32rm, LdDisp, StoreInst, X86::MOV32mr, StDisp, in buildCopies()
470 buildCopy(LoadInst, X86::MOV16rm, LdDisp, StoreInst, X86::MOV16mr, StDisp, in buildCopies()
480 buildCopy(LoadInst, X86::MOV8rm, LdDisp, StoreInst, X86::MOV8mr, StDisp, in buildCopies()
492 static void updateKillStatus(MachineInstr *LoadInst, MachineInstr *StoreInst) { in updateKillStatus() argument
494 MachineOperand &StoreBase = getBaseOperand(StoreInst); in updateKillStatus()
501 if (StoreInst->getPrevNode() == LoadInst) in updateKillStatus()
506 MachineInstr *StInst = StoreInst; in updateKillStatus()
507 if (StoreInst->getPrevNode() == LoadInst) in updateKillStatus()
563 MachineInstr *LoadInst, MachineInstr *StoreInst, in breakBlockedCopies() argument
566 int64_t StDispImm = getDispOperand(StoreInst).getImm(); in breakBlockedCopies()
593 buildCopies(Size1, LoadInst, LdDisp1, StoreInst, StDisp1, LMMOffset, in breakBlockedCopies()
596 buildCopies(Size2, LoadInst, LdDisp2, StoreInst, StDisp2, LMMOffset + Size1, in breakBlockedCopies()
604 buildCopies(Size3, LoadInst, LdDisp1, StoreInst, StDisp1, LMMOffset, in breakBlockedCopies()
609 MachineInstr *StoreInst) { in hasSameBaseOpValue() argument
611 MachineOperand &StoreBase = getBaseOperand(StoreInst); in hasSameBaseOpValue()
710 MachineInstr *StoreInst = LoadStoreInstPair.second; in runOnMachineFunction() local
713 LLVM_DEBUG(StoreInst->dump()); in runOnMachineFunction()
716 breakBlockedCopies(LoadInst, StoreInst, BlockingStoresDispSizeMap); in runOnMachineFunction()
717 updateKillStatus(LoadInst, StoreInst); in runOnMachineFunction()
719 ForRemoval.push_back(StoreInst); in runOnMachineFunction()