Home
last modified time | relevance | path

Searched refs:UseInst (Results 1 – 21 of 21) sorted by relevance

/freebsd/contrib/llvm-project/llvm/lib/Transforms/Utils/
H A DSimplifyIndVar.cpp88 Value *foldIVUser(Instruction *UseInst, Instruction *IVOperand);
90 bool eliminateIdentitySCEV(Instruction *UseInst, Instruction *IVOperand);
91 bool replaceIVUserWithLoopInvariant(Instruction *UseInst);
92 bool replaceFloatIVWithIntegerIV(Instruction *UseInst);
97 bool eliminateIVUser(Instruction *UseInst, Instruction *IVOperand);
134 Value *SimplifyIndvar::foldIVUser(Instruction *UseInst, Instruction *IVOperand) { in foldIVUser() argument
139 switch (UseInst->getOpcode()) { in foldIVUser()
146 if (IVOperand != UseInst->getOperand(OperIdx) || in foldIVUser()
147 !isa<ConstantInt>(UseInst->getOperand(1))) in foldIVUser()
160 ConstantInt *D = cast<ConstantInt>(UseInst->getOperand(1)); in foldIVUser()
[all …]
H A DLocal.cpp1369 if (Instruction *UseInst = dyn_cast<Instruction>(U.getUser())) in TryToSimplifyUncondBranchFromEmptyBlock() local
1370 return UseInst->getParent() != CommonPred && in TryToSimplifyUncondBranchFromEmptyBlock()
1371 BBPreds.contains(UseInst->getParent()); in TryToSimplifyUncondBranchFromEmptyBlock()
/freebsd/contrib/llvm-project/llvm/lib/Target/AMDGPU/
H A DAMDGPUGlobalISelDivergenceLowering.cpp204 for (auto [Reg, UseInst, _] : MUI->getTemporalDivergenceList()) { in lowerTemporalDivergence()
211 replaceUsesOfRegInInstWith(Reg, UseInst, CachedTDCopy); in lowerTemporalDivergence()
223 replaceUsesOfRegInInstWith(Reg, UseInst, VgprReg); in lowerTemporalDivergence()
237 for (auto [Reg, UseInst, LRC] : MUI->getTemporalDivergenceList()) { in lowerTemporalDivergenceI1()
276 for (auto [Reg, UseInst, Cycle] : MUI->getTemporalDivergenceList()) { in lowerTemporalDivergenceI1()
280 replaceUsesOfRegInInstWith(Reg, UseInst, LRCCache.lookup(Reg).second); in lowerTemporalDivergenceI1()
H A DAMDGPULateCodeGenPrepare.cpp137 if (auto *UseInst = dyn_cast<Instruction>(V)) in isCoercionProfitable() local
138 UserList.push_back(UseInst); in isCoercionProfitable()
160 if (auto *UseInst = dyn_cast<Instruction>(V)) in isCoercionProfitable() local
161 UserList.push_back(UseInst); in isCoercionProfitable()
335 Instruction *UseInst = cast<Instruction>(V); in optimizeLiveType() local
337 if (UseInst->getParent() != II->getParent() || isa<PHINode>(II)) { in optimizeLiveType()
338 Uses.insert(UseInst); in optimizeLiveType()
H A DAMDGPUPromoteAlloca.cpp119 Instruction *UseInst, int OpIdx0,
1260 Instruction *UseInst = cast<Instruction>(User); in collectUsesWithPtrTypes() local
1261 if (UseInst->getOpcode() == Instruction::PtrToInt) in collectUsesWithPtrTypes()
1264 if (LoadInst *LI = dyn_cast<LoadInst>(UseInst)) { in collectUsesWithPtrTypes()
1270 if (StoreInst *SI = dyn_cast<StoreInst>(UseInst)) { in collectUsesWithPtrTypes()
1280 if (AtomicRMWInst *RMW = dyn_cast<AtomicRMWInst>(UseInst)) { in collectUsesWithPtrTypes()
1286 if (AtomicCmpXchgInst *CAS = dyn_cast<AtomicCmpXchgInst>(UseInst)) { in collectUsesWithPtrTypes()
1294 if (ICmpInst *ICmp = dyn_cast<ICmpInst>(UseInst)) { in collectUsesWithPtrTypes()
1303 if (GetElementPtrInst *GEP = dyn_cast<GetElementPtrInst>(UseInst)) { in collectUsesWithPtrTypes()
1308 } else if (SelectInst *SI = dyn_cast<SelectInst>(UseInst)) { in collectUsesWithPtrTypes()
[all …]
H A DGCNNSAReassign.cpp226 const MachineInstr *UseInst = U.getParent(); in CheckNSA() local
227 if (UseInst->isCopy() && UseInst->getOperand(0).getReg() == PhysReg) in CheckNSA()
H A DSIPeepholeSDWA.cpp578 for (MachineInstr &UseInst : MRI->use_nodbg_instructions(PotentialMO->getReg())) { in potentialToConvert()
579 if (&UseInst != ParentMI) in potentialToConvert()
H A DSIInstrInfo.cpp9882 auto &UseInst = *Use.getParent(); in execMayBeModifiedBeforeAnyUse() local
9885 if (UseInst.getParent() != DefBB || UseInst.isPHI()) in execMayBeModifiedBeforeAnyUse()
/freebsd/contrib/llvm-project/llvm/lib/Transforms/Scalar/
H A DDeadStoreElimination.cpp1300 Instruction *UseInst) { in isCompleteOverwrite()
1304 if (!UseInst->mayWriteToMemory()) in isCompleteOverwrite()
1307 if (auto *CB = dyn_cast<CallBase>(UseInst)) in isCompleteOverwrite()
1312 if (auto CC = getLocForWrite(UseInst)) in isCompleteOverwrite()
1313 return isOverwrite(UseInst, DefInst, *CC, DefLoc, InstWriteOffset, in isCompleteOverwrite()
1346 Instruction *UseInst = cast<MemoryUseOrDef>(UseAccess)->getMemoryInst(); in isWriteAtEndOfFunction() local
1347 if (isReadClobber(DefLoc, UseInst)) { in isWriteAtEndOfFunction()
1348 LLVM_DEBUG(dbgs() << " ... hit read clobber " << *UseInst << ".\n"); in isWriteAtEndOfFunction()
1413 bool isReadClobber(const MemoryLocation &DefLoc, Instruction *UseInst) { in isReadClobber()
1414 if (isNoopIntrinsic(UseInst)) in isReadClobber()
[all …]
H A DSink.cpp126 Instruction *UseInst = cast<Instruction>(U.getUser()); in SinkInstruction() local
127 BasicBlock *UseBlock = UseInst->getParent(); in SinkInstruction()
128 if (PHINode *PN = dyn_cast<PHINode>(UseInst)) { in SinkInstruction()
/freebsd/contrib/llvm-project/llvm/lib/CodeGen/
H A DMachineSink.cpp487 MachineInstr &UseInst = *MO.getParent(); in PerformSinkAndFold() local
488 if (UseInst.isCopy()) { in PerformSinkAndFold()
490 if (const MachineOperand &O = UseInst.getOperand(0); O.isReg()) in PerformSinkAndFold()
506 } else if (UseInst.mayLoadOrStore()) { in PerformSinkAndFold()
508 if (!TII->canFoldIntoAddrMode(UseInst, Reg, MI, AM)) in PerformSinkAndFold()
515 if (UseInst.getParent() != MI.getParent()) { in PerformSinkAndFold()
535 const MachineBasicBlock &MBB = *UseInst.getParent(); in PerformSinkAndFold()
546 SinkInto.emplace_back(&UseInst, MaybeAM); in PerformSinkAndFold()
665 MachineInstr *UseInst = MO.getParent(); in AllUsesDominatedByBlock() local
667 MachineBasicBlock *UseBlock = UseInst->getParent(); in AllUsesDominatedByBlock()
[all …]
H A DMIRCanonicalizerPass.cpp211 MachineInstr *UseInst = UO.getParent(); in rescheduleCanonically() local
214 const unsigned UseLoc = getInstrIdx(*UseInst); in rescheduleCanonically()
217 if (UseInst->getParent() != Def->getParent()) in rescheduleCanonically()
224 UseToBringDefCloserTo = UseInst; in rescheduleCanonically()
H A DRegAllocFast.cpp540 for (const MachineInstr &UseInst : MRI->use_nodbg_instructions(VirtReg)) { in mayLiveOut() local
541 if (UseInst.getParent() != MBB || ++C >= Limit) { in mayLiveOut()
550 if (SelfLoopDef == &UseInst || in mayLiveOut()
551 !dominates(PosIndexes, *SelfLoopDef, UseInst)) { in mayLiveOut()
/freebsd/contrib/llvm-project/llvm/lib/Target/PowerPC/
H A DPPCPreEmitPeephole.cpp254 MachineBasicBlock::iterator UseInst; in addLinkerOpt() member
299 Pair.UseInst = BBI; in addLinkerOpt()
310 assert(Pair->UseInst.isValid() && Pair->StillValid && in addLinkerOpt()
317 for (; BBI != Pair->UseInst; ++BBI) { in addLinkerOpt()
339 Pair->UseInst->addOperand(ImplUse); in addLinkerOpt()
347 Pair->UseInst->addOperand(*MF, PCRelLabel); in addLinkerOpt()
/freebsd/contrib/llvm-project/llvm/lib/Target/WebAssembly/
H A DWebAssemblyRegStackify.cpp476 const MachineInstr *UseInst = Use.getParent(); in oneUseDominatesOtherUses() local
477 VNInfo *UseVNI = LI.getVNInfoBefore(LIS.getInstructionIndex(*UseInst)); in oneUseDominatesOtherUses()
482 if (UseInst == OneUseInst) { in oneUseDominatesOtherUses()
489 while (!MDT.dominates(OneUseInst, UseInst)) { in oneUseDominatesOtherUses()
495 if (UseInst->getDesc().getNumDefs() == 0) in oneUseDominatesOtherUses()
497 const MachineOperand &MO = UseInst->getOperand(0); in oneUseDominatesOtherUses()
511 UseInst = NewUseInst; in oneUseDominatesOtherUses()
/freebsd/contrib/llvm-project/llvm/lib/Target/LoongArch/
H A DLoongArchMergeBaseOffset.cpp123 MachineInstr *UseInst = &*MRI->use_instr_begin(HiDestReg); in INITIALIZE_PASS() local
124 if (UseInst->getOpcode() != LoongArch::ADD_D) { in INITIALIZE_PASS()
125 Lo12 = UseInst; in INITIALIZE_PASS()
131 Last = UseInst; in INITIALIZE_PASS()
/freebsd/contrib/llvm-project/llvm/lib/Target/X86/
H A DX86FastPreTileConfig.cpp142 for (const MachineInstr &UseInst : MRI->use_nodbg_instructions(VirtReg)) { in mayLiveOut() local
143 if (UseInst.getParent() != MBB) { in mayLiveOut()
152 if (dominates(*MBB, *CfgMI, UseInst)) { in mayLiveOut()
/freebsd/contrib/llvm-project/llvm/include/llvm/ADT/
H A DGenericUniformityImpl.h1215 for (auto [Val, UseInst, Cycle] : TemporalDivergenceList) { in print()
1217 << "Used by :" << Context.print(UseInst) << NewLine in print()
/freebsd/contrib/llvm-project/llvm/lib/Analysis/
H A DMemorySSA.cpp283 const Instruction *UseInst, AliasAnalysisType &AA) { in instructionClobbersQuery() argument
313 if (auto *CB = dyn_cast_or_null<CallBase>(UseInst)) { in instructionClobbersQuery()
319 if (auto *UseLoad = dyn_cast_or_null<LoadInst>(UseInst)) in instructionClobbersQuery()
H A DScalarEvolution.cpp9557 getConstantEvolvingPHIOperands(Instruction *UseInst, const Loop *L, in getConstantEvolvingPHIOperands() argument
9566 for (Value *Op : UseInst->operands()) { in getConstantEvolvingPHIOperands()
/freebsd/contrib/llvm-project/llvm/lib/Frontend/OpenMP/
H A DOMPIRBuilder.cpp4976 auto *UseInst = dyn_cast<Instruction>(U.getUser()); in removeUnusedBlocksFromParent() local
4977 if (!UseInst) in removeUnusedBlocksFromParent()
4979 if (BBsToErase.count(UseInst->getParent())) in removeUnusedBlocksFromParent()