Home
last modified time | relevance | path

Searched refs:StoreInst (Results 1 – 25 of 257) sorted by relevance

1234567891011

/freebsd/contrib/llvm-project/llvm/lib/Transforms/Scalar/
H A DMergedLoadStoreMotion.cpp114 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 DLowerAtomicPass.cpp35 static bool LowerStoreInst(StoreInst *SI) { in LowerStoreInst()
52 } else if (StoreInst *SI = dyn_cast<StoreInst>(&Inst)) { in runOnBasicBlock()
H A DSROA.cpp147 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 DX86AvoidStoreForwardingBlocks.cpp102 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 DPromoteMemoryToRegister.cpp73 } 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 DDemoteRegToStack.cpp112 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 DSSAUpdater.cpp380 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 DMemCpyOptimizer.h38 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 DSandboxIR.cpp545 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 DAMDGPURewriteOutArguments.cpp131 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 DSandboxIR.h81 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 DNVPTXLowerAggrCopies.cpp78 if (StoreInst *SI = dyn_cast<StoreInst>(LI->user_back())) { in runOnFunction()
105 auto *SI = cast<StoreInst>(*LI->user_begin()); in runOnFunction()
H A DNVPTXLowerArgs.cpp277 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 DGlobalOpt.cpp213 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 DThreadSanitizer.cpp418 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 DGCRootLowering.cpp149 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 DInterleavedAccessPass.cpp107 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 DSLPVectorizer.h44 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 DInstCombineLoadStoreAlloca.cpp578 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 DBPFPreserveStaticOffset.cpp208 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 DVNCoercion.h26 class StoreInst; variable
55 StoreInst *DepSI, const DataLayout &DL);
H A DMemoryOpRemark.h31 class StoreInst; variable
65 void visitStore(const StoreInst &SI);
/freebsd/contrib/llvm-project/llvm/lib/Transforms/ObjCARC/
H A DObjCARCContract.cpp194 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 DInstruction.cpp803 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 DAliasAnalysisEvaluator.cpp115 } 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()

1234567891011