/freebsd/contrib/llvm-project/llvm/lib/Transforms/Scalar/ |
H A D | MergedLoadStoreMotion.cpp | 114 StoreInst *canSinkFromBlock(BasicBlock *BB, StoreInst *SI); 115 PHINode *getPHIOperand(BasicBlock *BB, StoreInst *S0, StoreInst *S1); 118 bool canSinkStoresAndGEPs(StoreInst *S0, StoreInst *S1) const; 119 void sinkStoresAndGEPs(BasicBlock *BB, StoreInst *SinkCand, 120 StoreInst *ElseInst); 183 StoreInst *MergedLoadStoreMotion::canSinkFromBlock(BasicBlock *BB1, in canSinkFromBlock() 184 StoreInst *Store0) { in canSinkFromBlock() 188 auto *Store1 = dyn_cast<StoreInst>(&Inst); in canSinkFromBlock() 211 PHINode *MergedLoadStoreMotion::getPHIOperand(BasicBlock *BB, StoreInst *S0, in getPHIOperand() 212 StoreInst *S1) { in getPHIOperand() [all …]
|
H A D | LowerAtomicPass.cpp | 35 static bool LowerStoreInst(StoreInst *SI) { in LowerStoreInst() 52 } else if (StoreInst *SI = dyn_cast<StoreInst>(&Inst)) { in runOnBasicBlock()
|
H A D | SROA.cpp | 147 using UnspeculatableStore = StoreInst *; 1123 void visitStoreInst(StoreInst &SI) { in visitStoreInst() 1300 if (StoreInst *SI = dyn_cast<StoreInst>(I)) { in hasUnsafePHIOrSelectUse() 1481 } else if (StoreInst *SI = dyn_cast<StoreInst>(U->getUser())) { in findCommonType() 1707 if (auto *Store = dyn_cast<StoreInst>(U)) { in isSafeSelectToSpeculate() 1787 assert((isa<LoadInst>(I) || isa<StoreInst>(I)) && "Only for load and store!"); in rewriteMemOpOfSelect() 1845 else if (auto *SI = dyn_cast<StoreInst>(&I)) in rewriteMemOpOfSelect() 2071 } else if (StoreInst *SI = dyn_cast<StoreInst>(U->getUser())) { in isVectorPromotionViableForSlice() 2300 else if (auto *SI = dyn_cast<StoreInst>(S.getUse()->getUser())) in isVectorPromotionViable() 2386 } else if (StoreInst *SI = dyn_cast<StoreInst>(U->getUser())) { in isIntegerWideningViableForSlice() [all …]
|
/freebsd/contrib/llvm-project/llvm/lib/Target/X86/ |
H A D | X86AvoidStoreForwardingBlocks.cpp | 102 void breakBlockedCopies(MachineInstr *LoadInst, MachineInstr *StoreInst, 106 MachineInstr *StoreInst, int64_t StDispImm, 110 MachineInstr *StoreInst, unsigned NStoreOpcode, 381 int64_t LoadDisp, MachineInstr *StoreInst, in buildCopy() argument 386 MachineOperand &StoreBase = getBaseOperand(StoreInst); in buildCopy() 389 MachineMemOperand *SMMO = *StoreInst->memoperands_begin(); in buildCopy() 408 MachineInstr *StInst = StoreInst; in buildCopy() 409 auto PrevInstrIt = prev_nodbg(MachineBasicBlock::instr_iterator(StoreInst), in buildCopy() 425 MachineOperand &StoreSrcVReg = StoreInst->getOperand(X86::AddrNumOperands); in buildCopy() 432 int64_t LdDispImm, MachineInstr *StoreInst, in buildCopies() argument [all …]
|
/freebsd/contrib/llvm-project/llvm/lib/Transforms/Utils/ |
H A D | PromoteMemoryToRegister.cpp | 73 } else if (const StoreInst *SI = dyn_cast<StoreInst>(U)) { in isAllocaPromotable() 147 StoreInst *ToDelete, DIBuilder &DIB, in updateForDeletedStore() 217 StoreInst *OnlyStore; 249 if (StoreInst *SI = dyn_cast<StoreInst>(User)) { in AnalyzeAlloca() 313 (isa<StoreInst>(I) && isa<AllocaInst>(I->getOperand(1))); in isInterestingInstruction() 463 new StoreInst(ConstantInt::getTrue(Ctx), in convertMetadataToAssumes() 485 if (isa<LoadInst>(I) || isa<StoreInst>(I)) in removeIntrinsicUsers() 527 StoreInst *OnlyStore = Info.OnlyStore; in rewriteSingleStoreAlloca() 648 using StoresByIndexTy = SmallVector<std::pair<unsigned, StoreInst *>, 64>; in promoteSingleBlockAlloca() 652 if (StoreInst *SI = dyn_cast<StoreInst>(U)) in promoteSingleBlockAlloca() [all …]
|
H A D | DemoteRegToStack.cpp | 112 new StoreInst(&I, Slot, Handler->getFirstInsertionPt()); in DemoteRegToStack() 119 new StoreInst(CBI, Slot, Succ->getFirstInsertionPt()); in DemoteRegToStack() 125 new StoreInst(&I, Slot, InsertPt); in DemoteRegToStack() 158 new StoreInst(P->getIncomingValue(i), Slot, in DemotePHIToStack()
|
H A D | SSAUpdater.cpp | 380 SomeVal = cast<StoreInst>(Insts[0])->getOperand(0); in LoadAndStorePromoter() 413 if (StoreInst *SI = dyn_cast<StoreInst>(User)) { in run() 426 if (isa<StoreInst>(I)) { in run() 465 if (StoreInst *SI = dyn_cast<StoreInst>(&I)) { in run()
|
/freebsd/contrib/llvm-project/llvm/include/llvm/Transforms/Scalar/ |
H A D | MemCpyOptimizer.h | 38 class StoreInst; variable 64 bool processStore(StoreInst *SI, BasicBlock::iterator &BBI); 65 bool processStoreOfLoad(StoreInst *SI, LoadInst *LI, const DataLayout &DL, 84 bool moveUp(StoreInst *SI, Instruction *P, const LoadInst *LI);
|
/freebsd/contrib/llvm-project/llvm/lib/SandboxIR/ |
H A D | SandboxIR.cpp | 545 StoreInst *StoreInst::create(Value *V, Value *Ptr, MaybeAlign Align, in create() 555 StoreInst *StoreInst::create(Value *V, Value *Ptr, MaybeAlign Align, in create() 566 bool StoreInst::classof(const Value *From) { in classof() 570 Value *StoreInst::getValueOperand() const { in getValueOperand() 571 return Ctx.getValue(cast<llvm::StoreInst>(Val)->getValueOperand()); in getValueOperand() 574 Value *StoreInst::getPointerOperand() const { in getPointerOperand() 575 return Ctx.getValue(cast<llvm::StoreInst>(Val)->getPointerOperand()); in getPointerOperand() 579 void StoreInst::dump(raw_ostream &OS) const { in dump() 584 void StoreInst::dump() const { in dump() 767 auto *LLVMSt = cast<llvm::StoreInst>(LLVMV); in getOrCreateValueInternal() [all …]
|
/freebsd/contrib/llvm-project/llvm/lib/Target/AMDGPU/ |
H A D | AMDGPURewriteOutArguments.cpp | 131 if (auto *SI = dyn_cast<StoreInst>(U->getUser())) { in getStoredType() 136 U->getOperandNo() != StoreInst::getPointerOperandIndex()) in getStoredType() 238 SmallVector<std::pair<ReturnInst *, StoreInst *>, 4> ReplaceableStores; in runOnFunction() 259 StoreInst *SI = nullptr; in runOnFunction() 261 SI = dyn_cast<StoreInst>(Q.getInst()); in runOnFunction() 275 for (std::pair<ReturnInst *, StoreInst *> Store : ReplaceableStores) { in runOnFunction()
|
/freebsd/contrib/llvm-project/llvm/include/llvm/SandboxIR/ |
H A D | SandboxIR.h | 81 class StoreInst; variable 183 friend class StoreInst; // For getting `Val`. variable 508 friend class StoreInst; // For getTopmostLLVMInstruction(). variable 659 class StoreInst final : public Instruction { 661 StoreInst(llvm::StoreInst *SI, Context &Ctx) in StoreInst() function 676 static StoreInst *create(Value *V, Value *Ptr, MaybeAlign Align, 678 static StoreInst *create(Value *V, Value *Ptr, MaybeAlign Align, 684 Align getAlign() const { return cast<llvm::StoreInst>(Val)->getAlign(); } in getAlign() 685 bool isSimple() const { return cast<llvm::StoreInst>(Val)->isSimple(); } in isSimple() 686 bool isUnordered() const { return cast<llvm::StoreInst>(Val)->isUnordered(); } in isUnordered() [all …]
|
/freebsd/contrib/llvm-project/llvm/lib/Target/NVPTX/ |
H A D | NVPTXLowerAggrCopies.cpp | 78 if (StoreInst *SI = dyn_cast<StoreInst>(LI->user_back())) { in runOnFunction() 105 auto *SI = cast<StoreInst>(*LI->user_begin()); in runOnFunction()
|
H A D | NVPTXLowerArgs.cpp | 277 if (auto *SI = dyn_cast<StoreInst>(I.OldInstruction)) { in INITIALIZE_PASS_DEPENDENCY() 396 (isa<CallInst>(CurUser) || isa<StoreInst>(CurUser) || in adjustByValArgAlignment() 433 (isa<CallInst>(V) || isa<StoreInst>(V) || isa<PtrToIntInst>(V))) in handleByValParam() 447 if (!isa<LoadInst>(V) && !isa<CallInst>(V) && !isa<StoreInst>(V) && in handleByValParam() 522 new StoreInst(LI, AllocA, FirstInst); in handleByValParam()
|
/freebsd/contrib/llvm-project/llvm/lib/Transforms/IPO/ |
H A D | GlobalOpt.cpp | 213 if (StoreInst *SI = dyn_cast<StoreInst>(U)) { in CleanupPointerRootUsers() 320 } else if (StoreInst *SI = dyn_cast<StoreInst>(U)) { in CleanupConstantGlobalUsers() 373 if (isa<StoreInst>(V) && U->getOperandNo() == 0) in collectSRATypes() 406 auto *SI = dyn_cast<StoreInst>(V); in collectSRATypes() 628 auto *SI = cast<StoreInst>(V); in SRAGlobal() 663 } else if (const StoreInst *SI = dyn_cast<StoreInst>(U)) { in AllUsesOfValueWillTrapIfNull() 716 } else if (auto *SI = dyn_cast<StoreInst>(U)) { in allUsesOfLoadedValueWillTrapIfNull() 748 assert((isa<LoadInst>(U) || isa<StoreInst>(U)) && in allUsesOfLoadAndStores() 766 } else if (StoreInst *SI = dyn_cast<StoreInst>(I)) { in OptimizeAwayTrappingUsesOfValue() 845 } else if (isa<StoreInst>(GlobalUser)) { in OptimizeAwayTrappingUsesOfLoads() [all …]
|
/freebsd/contrib/llvm-project/llvm/lib/Transforms/Instrumentation/ |
H A D | ThreadSanitizer.cpp | 418 const bool IsWrite = isa<StoreInst>(*I); in chooseInstructionsToInstrument() 419 Value *Addr = IsWrite ? cast<StoreInst>(I)->getPointerOperand() in chooseInstructionsToInstrument() 433 cast<StoreInst>(WI.Inst)->isVolatile()); in chooseInstructionsToInstrument() 474 if (isa<LoadInst>(I) || isa<StoreInst>(I)) in isTsanAtomic() 524 else if (isa<LoadInst>(Inst) || isa<StoreInst>(Inst)) in sanitizeFunction() 589 const bool IsWrite = isa<StoreInst>(*II.Inst); in instrumentLoadOrStore() 590 Value *Addr = IsWrite ? cast<StoreInst>(II.Inst)->getPointerOperand() in instrumentLoadOrStore() 605 Value *StoredValue = cast<StoreInst>(II.Inst)->getValueOperand(); in instrumentLoadOrStore() 625 const Align Alignment = IsWrite ? cast<StoreInst>(II.Inst)->getAlign() in instrumentLoadOrStore() 630 (IsWrite ? cast<StoreInst>(II.Inst)->isVolatile() in instrumentLoadOrStore() [all …]
|
/freebsd/contrib/llvm-project/llvm/lib/CodeGen/ |
H A D | GCRootLowering.cpp | 149 if (isa<AllocaInst>(I) || isa<GetElementPtrInst>(I) || isa<StoreInst>(I) || in CouldBecomeSafePoint() 172 if (StoreInst *SI = dyn_cast<StoreInst>(IP)) in InsertRootInitializers() 182 new StoreInst( in InsertRootInitializers() 219 Value *St = new StoreInst(CI->getArgOperand(0), CI->getArgOperand(2), in DoLowering()
|
H A D | InterleavedAccessPass.cpp | 107 bool lowerInterleavedStore(StoreInst *SI, 457 StoreInst *SI, SmallVector<Instruction *, 32> &DeadInsts) { in lowerInterleavedStore() 506 StoreInst *SI = dyn_cast<StoreInst>(*(II->users().begin())); in lowerInterleaveIntrinsic() 532 if (auto *SI = dyn_cast<StoreInst>(&I)) in runOnFunction()
|
/freebsd/contrib/llvm-project/llvm/include/llvm/Transforms/Vectorize/ |
H A D | SLPVectorizer.h | 44 class StoreInst; variable 59 using StoreList = SmallVector<StoreInst *, 8>; 163 ArrayRef<StoreInst *> Stores, slpvectorizer::BoUpSLP &R,
|
/freebsd/contrib/llvm-project/llvm/lib/Transforms/InstCombine/ |
H A D | InstCombineLoadStoreAlloca.cpp | 578 static StoreInst *combineStoreToNewValue(InstCombinerImpl &IC, StoreInst &SI, in combineStoreToNewValue() 587 StoreInst *NewStore = in combineStoreToNewValue() 981 static bool canSimplifyNullStoreOrGEP(StoreInst &SI) { in canSimplifyNullStoreOrGEP() 1179 static bool combineStoreToValueType(InstCombinerImpl &IC, StoreInst &SI) { in combineStoreToValueType() 1217 static bool unpackStoreToAggregate(InstCombinerImpl &IC, StoreInst &SI) { in unpackStoreToAggregate() 1355 Instruction *InstCombinerImpl::visitStoreInst(StoreInst &SI) { in visitStoreInst() 1416 if (StoreInst *PrevSI = dyn_cast<StoreInst>(BBI)) { in visitStoreInst() 1488 bool InstCombinerImpl::mergeStoreIntoSuccessor(StoreInst &SI) { in mergeStoreIntoSuccessor() 1515 auto OtherStoreIsMergeable = [&](StoreInst *OtherStore) -> bool { in mergeStoreIntoSuccessor() 1528 StoreInst *OtherStore = nullptr; in mergeStoreIntoSuccessor() [all …]
|
/freebsd/contrib/llvm-project/llvm/lib/Target/BPF/ |
H A D | BPFPreserveStaticOffset.cpp | 208 template <class T = std::disjunction<LoadInst, StoreInst>> 245 StoreInst *Store) { in makeGEPAndStore() 290 template <class T = std::disjunction<LoadInst, StoreInst>> 314 std::pair<GetElementPtrInst *, StoreInst *> 317 auto *Store = new StoreInst(Call->getOperand(0), GEP, in reconstructStore() 428 if (auto *Store = dyn_cast<StoreInst>(LoadOrStoreTemplate)) { in tryToReplaceWithGEPBuiltin() 439 if (auto *S = dyn_cast<StoreInst>(U)) in isPointerOperand() 524 if (isa<LoadInst>(Insn) || isa<StoreInst>(Insn)) { in rewriteAccessChain()
|
/freebsd/contrib/llvm-project/llvm/include/llvm/Transforms/Utils/ |
H A D | VNCoercion.h | 26 class StoreInst; variable 55 StoreInst *DepSI, const DataLayout &DL);
|
H A D | MemoryOpRemark.h | 31 class StoreInst; variable 65 void visitStore(const StoreInst &SI);
|
/freebsd/contrib/llvm-project/llvm/lib/Transforms/ObjCARC/ |
H A D | ObjCARCContract.cpp | 194 static StoreInst *findSafeStoreForStoreStrongContraction(LoadInst *Load, in findSafeStoreForStoreStrongContraction() 198 StoreInst *Store = nullptr; in findSafeStoreForStoreStrongContraction() 256 Store = dyn_cast<StoreInst>(Inst); in findSafeStoreForStoreStrongContraction() 284 findRetainForStoreStrongContraction(Value *New, StoreInst *Store, in findRetainForStoreStrongContraction() 350 StoreInst *Store = in tryToContractReleaseIntoStoreStrong() 487 new StoreInst(Null, CI->getArgOperand(0), CI->getIterator()); in tryToPeepholeInstruction()
|
/freebsd/contrib/llvm-project/llvm/lib/IR/ |
H A D | Instruction.cpp | 803 if (const StoreInst *SI = dyn_cast<StoreInst>(I1)) in hasSameSpecialState() 804 return SI->isVolatile() == cast<StoreInst>(I2)->isVolatile() && in hasSameSpecialState() 805 (SI->getAlign() == cast<StoreInst>(I2)->getAlign() || in hasSameSpecialState() 807 SI->getOrdering() == cast<StoreInst>(I2)->getOrdering() && in hasSameSpecialState() 808 SI->getSyncScopeID() == cast<StoreInst>(I2)->getSyncScopeID(); in hasSameSpecialState() 945 return !cast<StoreInst>(this)->isUnordered(); in mayReadFromMemory() 980 return cast<StoreInst>(this)->getOrdering() != AtomicOrdering::NotAtomic; in isAtomic() 1015 return cast<StoreInst>(this)->isVolatile(); in isVolatile() 1041 return cast<StoreInst>(this)->getValueOperand()->getType(); in getAccessType() 1134 if (auto *SI = dyn_cast<StoreInst>(this)) in willReturn()
|
/freebsd/contrib/llvm-project/llvm/lib/Analysis/ |
H A D | AliasAnalysisEvaluator.cpp | 115 } else if (auto *SI = dyn_cast<StoreInst>(&Inst)) { in runInternal() 161 MemoryLocation::get(cast<StoreInst>(Store))); in runInternal() 187 AliasResult AR = AA.alias(MemoryLocation::get(cast<StoreInst>(*I1)), in runInternal() 188 MemoryLocation::get(cast<StoreInst>(*I2))); in runInternal()
|