Home
last modified time | relevance | path

Searched refs:Cand (Results 1 – 25 of 34) sorted by relevance

12

/openbsd/src/gnu/llvm/llvm/lib/Target/PowerPC/
DPPCMachineScheduler.cpp24 static bool isADDIInstr(const GenericScheduler::SchedCandidate &Cand) { in isADDIInstr() argument
25 return Cand.SU->getInstr()->getOpcode() == PPC::ADDI || in isADDIInstr()
26 Cand.SU->getInstr()->getOpcode() == PPC::ADDI8; in isADDIInstr()
29 bool PPCPreRASchedStrategy::biasAddiLoadCandidate(SchedCandidate &Cand, in biasAddiLoadCandidate() argument
35 SchedCandidate &FirstCand = Zone.isTop() ? TryCand : Cand; in biasAddiLoadCandidate()
36 SchedCandidate &SecondCand = Zone.isTop() ? Cand : TryCand; in biasAddiLoadCandidate()
49 bool PPCPreRASchedStrategy::tryCandidate(SchedCandidate &Cand, in tryCandidate() argument
55 if (!Cand.isValid()) { in tryCandidate()
62 biasPhysReg(Cand.SU, Cand.AtTop), TryCand, Cand, PhysReg)) in tryCandidate()
67 tryPressure(TryCand.RPDelta.Excess, Cand.RPDelta.Excess, TryCand, Cand, in tryCandidate()
[all …]
DPPCBranchCoalescing.cpp155 bool canCoalesceBranch(CoalescingCandidateInfo &Cand);
234 bool PPCBranchCoalescing::canCoalesceBranch(CoalescingCandidateInfo &Cand) { in canCoalesceBranch() argument
236 << Cand.BranchBlock->getNumber() << " can be coalesced:"); in canCoalesceBranch()
239 if (TII->analyzeBranch(*Cand.BranchBlock, Cand.BranchTargetBlock, FalseMBB, in canCoalesceBranch()
240 Cand.Cond)) { in canCoalesceBranch()
245 for (auto &I : Cand.BranchBlock->terminators()) { in canCoalesceBranch()
270 if (Cand.BranchBlock->isEHPad() || Cand.BranchBlock->hasEHPadSuccessor()) { in canCoalesceBranch()
275 if (Cand.BranchBlock->mayHaveInlineAsmBr()) { in canCoalesceBranch()
282 if (!Cand.BranchTargetBlock || FalseMBB || in canCoalesceBranch()
283 !Cand.BranchBlock->isSuccessor(Cand.BranchTargetBlock)) { in canCoalesceBranch()
[all …]
DPPCMachineScheduler.h26 bool tryCandidate(SchedCandidate &Cand, SchedCandidate &TryCand,
30 bool biasAddiLoadCandidate(SchedCandidate &Cand,
47 bool tryCandidate(SchedCandidate &Cand, SchedCandidate &TryCand) override;
48 bool biasAddiCandidate(SchedCandidate &Cand, SchedCandidate &TryCand) const;
/openbsd/src/gnu/llvm/llvm/lib/Transforms/Scalar/
DLoopLoadElimination.cpp133 const StoreToLoadForwardingCandidate &Cand) { in operator <<() argument
134 OS << *Cand.Store << " -->\n"; in operator <<()
135 OS.indent(2) << *Cand.Load << "\n"; in operator <<()
266 for (const auto &Cand : Candidates) { in removeDependencesFromMultipleStores() local
271 LoadToSingleCand.insert(std::make_pair(Cand.Load, &Cand)); in removeDependencesFromMultipleStores()
281 if (Cand.Store->getParent() == OtherCand->Store->getParent() && in removeDependencesFromMultipleStores()
282 Cand.isDependenceDistanceOfOne(PSE, L) && in removeDependencesFromMultipleStores()
285 if (getInstrIndex(OtherCand->Store) < getInstrIndex(Cand.Store)) in removeDependencesFromMultipleStores()
286 OtherCand = &Cand; in removeDependencesFromMultipleStores()
292 Candidates.remove_if([&](const StoreToLoadForwardingCandidate &Cand) { in removeDependencesFromMultipleStores() argument
[all …]
DTLSVariableHoist.cpp150 static bool oneUseOutsideLoop(tlshoist::TLSCandidate &Cand, LoopInfo *LI) { in oneUseOutsideLoop() argument
151 if (Cand.Users.size() != 1) in oneUseOutsideLoop()
154 BasicBlock *BB = Cand.Users[0].Inst->getParent(); in oneUseOutsideLoop()
196 tlshoist::TLSCandidate &Cand = TLSCandMap[GV]; in findInsertPos() local
201 for (auto &User : Cand.Users) { in findInsertPos()
232 tlshoist::TLSCandidate &Cand = TLSCandMap[GV]; in tryReplaceTLSCandidate() local
235 if (oneUseOutsideLoop(Cand, LI)) in tryReplaceTLSCandidate()
242 for (auto &User : Cand.Users) in tryReplaceTLSCandidate()
DGVNSink.cpp758 SinkingInstructionCandidate Cand; in analyzeInstructionForSinking() local
759 Cand.NumInstructions = ++InstNum; in analyzeInstructionForSinking()
760 Cand.NumMemoryInsts = MemoryInstNum; in analyzeInstructionForSinking()
761 Cand.NumBlocks = ActivePreds.size(); in analyzeInstructionForSinking()
762 Cand.NumPHIs = NeededPHIs.size(); in analyzeInstructionForSinking()
763 append_range(Cand.Blocks, ActivePreds); in analyzeInstructionForSinking()
765 return Cand; in analyzeInstructionForSinking()
798 auto Cand = analyzeInstructionForSinking(LRI, InstNum, MemoryInstNum, in sinkBB() local
800 if (!Cand) in sinkBB()
802 Cand->calculateCost(NumOrigPHIs, Preds.size()); in sinkBB()
[all …]
DRewriteStatepointsForGC.cpp2457 Instruction *Cand = cast<Instruction>(It.first); in rematerializeLiveValuesAtUses() local
2463 if (Cand->user_empty()) in rematerializeLiveValuesAtUses()
2466 if (Cand->hasOneUse()) in rematerializeLiveValuesAtUses()
2467 if (auto *U = dyn_cast<Instruction>(Cand->getUniqueUndroppableUser())) in rematerializeLiveValuesAtUses()
2468 if (U->getParent() == Cand->getParent()) in rematerializeLiveValuesAtUses()
2472 if (llvm::any_of(Cand->users(), in rematerializeLiveValuesAtUses()
2476 LLVM_DEBUG(dbgs() << "Trying cand " << *Cand << " ... "); in rematerializeLiveValuesAtUses()
2485 Records, [Cand](const auto &R) { return R.LiveSet.contains(Cand); }); in rematerializeLiveValuesAtUses()
2486 unsigned NumUses = Cand->getNumUses(); in rematerializeLiveValuesAtUses()
2513 findRematerializableChainToBasePointer(Record.ChainToBase, Cand); in rematerializeLiveValuesAtUses()
[all …]
/openbsd/src/gnu/llvm/llvm/lib/CodeGen/
DMachineScheduler.cpp2795 void GenericSchedulerBase::traceCandidate(const SchedCandidate &Cand) { in traceCandidate() argument
2799 switch (Cand.Reason) { in traceCandidate()
2803 P = Cand.RPDelta.Excess; in traceCandidate()
2806 P = Cand.RPDelta.CriticalMax; in traceCandidate()
2809 P = Cand.RPDelta.CurrentMax; in traceCandidate()
2812 ResIdx = Cand.Policy.ReduceResIdx; in traceCandidate()
2815 ResIdx = Cand.Policy.DemandResIdx; in traceCandidate()
2818 Latency = Cand.SU->getDepth(); in traceCandidate()
2821 Latency = Cand.SU->getHeight(); in traceCandidate()
2824 Latency = Cand.SU->getHeight(); in traceCandidate()
[all …]
DRegAllocGreedy.cpp723 bool RAGreedy::growRegion(GlobalSplitCandidate &Cand) { in growRegion() argument
726 SmallVectorImpl<unsigned> &ActiveBlocks = Cand.ActiveBlocks; in growRegion()
761 if (Cand.PhysReg) { in growRegion()
762 if (!addThroughConstraints(Cand.Intf, NewBlocks)) in growRegion()
784 bool RAGreedy::calcCompactRegion(GlobalSplitCandidate &Cand) { in calcCompactRegion() argument
790 Cand.reset(IntfCache, MCRegister::NoRegister); in calcCompactRegion()
796 SpillPlacer->prepare(Cand.LiveBundles); in calcCompactRegion()
800 if (!addSplitConstraints(Cand.Intf, Cost)) { in calcCompactRegion()
805 if (!growRegion(Cand)) { in calcCompactRegion()
812 if (!Cand.LiveBundles.any()) { in calcCompactRegion()
[all …]
/openbsd/src/gnu/llvm/llvm/lib/Target/AMDGPU/
DSIMachineScheduler.cpp142 SISchedulerCandidate &Cand, in tryLess() argument
149 if (Cand.Reason > Reason) in tryLess()
150 Cand.Reason = Reason; in tryLess()
153 Cand.setRepeat(Reason); in tryLess()
159 SISchedulerCandidate &Cand, in tryGreater() argument
166 if (Cand.Reason > Reason) in tryGreater()
167 Cand.Reason = Reason; in tryGreater()
170 Cand.setRepeat(Reason); in tryGreater()
184 void SIScheduleBlock::traceCandidate(const SISchedCandidate &Cand) { in traceCandidate() argument
186 dbgs() << " SU(" << Cand.SU->NodeNum << ") " << getReasonStr(Cand.Reason); in traceCandidate()
[all …]
DGCNSchedStrategy.cpp103 void GCNSchedStrategy::initCandidate(SchedCandidate &Cand, SUnit *SU, in initCandidate() argument
109 Cand.SU = SU; in initCandidate()
110 Cand.AtTop = AtTop; in initCandidate()
157 Cand.RPDelta.Excess = PressureChange(AMDGPU::RegisterPressureSets::VGPR_32); in initCandidate()
158 Cand.RPDelta.Excess.setUnitInc(NewVGPRPressure - VGPRExcessLimit); in initCandidate()
163 Cand.RPDelta.Excess = PressureChange(AMDGPU::RegisterPressureSets::SReg_32); in initCandidate()
164 Cand.RPDelta.Excess.setUnitInc(NewSGPRPressure - SGPRExcessLimit); in initCandidate()
178 Cand.RPDelta.CriticalMax = in initCandidate()
180 Cand.RPDelta.CriticalMax.setUnitInc(SGPRDelta); in initCandidate()
182 Cand.RPDelta.CriticalMax = in initCandidate()
[all …]
DSIMachineScheduler.h202 void tryCandidateTopDown(SISchedCandidate &Cand, SISchedCandidate &TryCand);
203 void tryCandidateBottomUp(SISchedCandidate &Cand, SISchedCandidate &TryCand);
205 void traceCandidate(const SISchedCandidate &Cand);
386 bool tryCandidateLatency(SIBlockSchedCandidate &Cand,
388 bool tryCandidateRegUsage(SIBlockSchedCandidate &Cand,
DGCNSchedStrategy.h48 SchedCandidate &Cand);
50 void initCandidate(SchedCandidate &Cand, SUnit *SU,
132 bool tryCandidate(SchedCandidate &Cand, SchedCandidate &TryCand,
DGCNMinRegStrategy.cpp123 auto &Cand = *I++; in findMax() local
124 RQ.remove(Cand); in findMax()
125 RQ.push_front(Cand); in findMax()
/openbsd/src/gnu/llvm/llvm/lib/Target/AArch64/
DAArch64MachineScheduler.cpp61 bool AArch64PostRASchedStrategy::tryCandidate(SchedCandidate &Cand, in tryCandidate() argument
63 bool OriginalResult = PostGenericScheduler::tryCandidate(Cand, TryCand); in tryCandidate()
65 if (Cand.isValid()) { in tryCandidate()
67 MachineInstr *Instr1 = Cand.SU->getInstr(); in tryCandidate()
DAArch64MachineScheduler.h27 bool tryCandidate(SchedCandidate &Cand, SchedCandidate &TryCand) override;
/openbsd/src/gnu/llvm/clang/lib/Sema/
DSemaOverload.cpp1487 for (OverloadCandidateSet::iterator Cand = Conversions.begin(); in TryUserDefinedConversion() local
1488 Cand != Conversions.end(); ++Cand) in TryUserDefinedConversion()
1489 if (Cand->Best) in TryUserDefinedConversion()
1490 ICS.Ambiguous.addConversion(Cand->FoundDecl, Cand->Function); in TryUserDefinedConversion()
4814 for (OverloadCandidateSet::iterator Cand = CandidateSet.begin(); in FindConversionForRefInit() local
4815 Cand != CandidateSet.end(); ++Cand) in FindConversionForRefInit()
4816 if (Cand->Best) in FindConversionForRefInit()
4817 ICS.Ambiguous.addConversion(Cand->FoundDecl, Cand->Function); in FindConversionForRefInit()
9587 for (OverloadCandidateSet::iterator Cand = CandidateSet.begin(), in AddArgumentDependentLookupCandidates() local
9589 Cand != CandEnd; ++Cand) in AddArgumentDependentLookupCandidates()
[all …]
/openbsd/src/gnu/llvm/llvm/include/llvm/CodeGen/
DMachineScheduler.h949 void traceCandidate(const SchedCandidate &Cand);
960 GenericSchedulerBase::SchedCandidate &Cand,
964 GenericSchedulerBase::SchedCandidate &Cand,
967 GenericSchedulerBase::SchedCandidate &Cand,
972 GenericSchedulerBase::SchedCandidate &Cand,
1041 void initCandidate(SchedCandidate &Cand, SUnit *SU, bool AtTop,
1045 virtual bool tryCandidate(SchedCandidate &Cand, SchedCandidate &TryCand,
1108 virtual bool tryCandidate(SchedCandidate &Cand, SchedCandidate &TryCand);
1110 void pickNodeFromQueue(SchedCandidate &Cand);
/openbsd/src/gnu/llvm/clang/lib/Driver/ToolChains/
DAMDGPU.cpp41 RocmInstallationDetector::findSPACKPackage(const Candidate &Cand, in findSPACKPackage() argument
43 if (!Cand.isSPACK()) in findSPACKPackage()
46 std::string Prefix = Twine(PackageName + "-" + Cand.SPACKReleaseStr).str(); in findSPACKPackage()
48 for (llvm::vfs::directory_iterator File = D.getVFS().dir_begin(Cand.Path, EC), in findSPACKPackage()
59 auto PackagePath = Cand.Path; in findSPACKPackage()
64 llvm::errs() << "SPACK package " << Prefix << " not found at " << Cand.Path in findSPACKPackage()
70 llvm::errs() << "Cannot use SPACK package " << Prefix << " at " << Cand.Path in findSPACKPackage()
188 for (auto Cand : ROCmSearchDirs) { in getInstallationPathCandidates() local
190 if (Cand.isSPACK()) in getInstallationPathCandidates()
191 llvm::errs() << " (Spack " << Cand.SPACKReleaseStr << ")"; in getInstallationPathCandidates()
[all …]
/openbsd/src/gnu/llvm/llvm/lib/Transforms/IPO/
DPartialInlining.cpp682 BasicBlock *Cand = OutliningInfo->NonReturnBlock; in computeOutliningInfo() local
683 if (succ_size(Cand) != 2) in computeOutliningInfo()
686 if (HasNonEntryPred(Cand)) in computeOutliningInfo()
689 BasicBlock *Succ1 = *succ_begin(Cand); in computeOutliningInfo()
690 BasicBlock *Succ2 = *(succ_begin(Cand) + 1); in computeOutliningInfo()
697 if (NonReturnBlock->getSinglePredecessor() != Cand) in computeOutliningInfo()
701 OutliningInfo->Entries.push_back(Cand); in computeOutliningInfo()
703 OutliningInfo->ReturnBlockPreds.push_back(Cand); in computeOutliningInfo()
704 Entries.insert(Cand); in computeOutliningInfo()
/openbsd/src/gnu/llvm/llvm/lib/Transforms/Instrumentation/
DInstrProfiling.cpp272 for (auto &Cand : LoopToCandidates[&L]) { in run() local
276 Value *InitVal = ConstantInt::get(Cand.first->getType(), 0); in run()
280 auto *BB = Cand.first->getParent(); in run()
291 PGOCounterPromoterHelper Promoter(Cand.first, Cand.second, SSA, InitVal, in run()
294 Promoter.run(SmallVector<Instruction *, 2>({Cand.first, Cand.second})); in run()
DPGOInstrumentation.cpp820 populateEHOperandBundle(VPCandidateInfo &Cand, in populateEHOperandBundle() argument
823 auto *OrigCall = dyn_cast<CallBase>(Cand.AnnotatedInst); in populateEHOperandBundle()
919 for (VPCandidateInfo Cand : FuncInfo.ValueSites[Kind]) { in instrumentOneFunc() local
923 IRBuilder<> Builder(Cand.InsertPt); in instrumentOneFunc()
924 assert(Builder.GetInsertPoint() != Cand.InsertPt->getParent()->end() && in instrumentOneFunc()
928 if (Cand.V->getType()->isIntegerTy()) in instrumentOneFunc()
929 ToProfile = Builder.CreateZExtOrTrunc(Cand.V, Builder.getInt64Ty()); in instrumentOneFunc()
930 else if (Cand.V->getType()->isPointerTy()) in instrumentOneFunc()
931 ToProfile = Builder.CreatePtrToInt(Cand.V, Builder.getInt64Ty()); in instrumentOneFunc()
935 populateEHOperandBundle(Cand, BlockColors, OpBundles); in instrumentOneFunc()
/openbsd/src/gnu/llvm/llvm/include/llvm/ProfileData/
DSampleProf.h1049 StringRef Cand(FnName);
1056 auto It = Cand.rfind(Suffix);
1059 auto Dit = Cand.rfind('.');
1061 Cand = Cand.substr(0, It);
1063 return Cand;
/openbsd/src/gnu/llvm/llvm/lib/Analysis/
DIRSimilarityIdentifier.cpp1273 for (IRSimilarityCandidate &Cand : CandVec) { in run()
1274 OS << " Function: " << Cand.front()->Inst->getFunction()->getName().str() in run()
1276 if (Cand.front()->Inst->getParent()->getName().str() == "") in run()
1279 OS << Cand.front()->Inst->getParent()->getName().str(); in run()
1281 Cand.frontInstruction()->print(OS); in run()
1283 Cand.backInstruction()->print(OS); in run()
/openbsd/src/gnu/llvm/llvm/lib/Target/ARM/
DARMLoadStoreOptimizer.cpp189 MachineInstr *MergeOpsUpdate(const MergeCandidate &Cand);
860 MachineInstr *ARMLoadStoreOpt::MergeOpsUpdate(const MergeCandidate &Cand) { in MergeOpsUpdate() argument
861 const MachineInstr *First = Cand.Instrs.front(); in MergeOpsUpdate()
869 for (const MachineInstr *MI : Cand.Instrs) { in MergeOpsUpdate()
901 MachineInstr *LatestMI = Cand.Instrs[Cand.LatestMIIdx]; in MergeOpsUpdate()
911 if (Cand.CanMergeToLSDouble) in MergeOpsUpdate()
914 Cand.Instrs); in MergeOpsUpdate()
915 if (!Merged && Cand.CanMergeToLSMulti) in MergeOpsUpdate()
917 Opcode, Pred, PredReg, DL, Regs, Cand.Instrs); in MergeOpsUpdate()
923 iterator EarliestI(Cand.Instrs[Cand.EarliestMIIdx]); in MergeOpsUpdate()
[all …]

12