| /openbsd/src/gnu/llvm/llvm/lib/Target/PowerPC/ |
| D | PPCMachineScheduler.cpp | 24 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 …]
|
| D | PPCBranchCoalescing.cpp | 155 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 …]
|
| D | PPCMachineScheduler.h | 26 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/ |
| D | LoopLoadElimination.cpp | 133 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 …]
|
| D | TLSVariableHoist.cpp | 150 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()
|
| D | GVNSink.cpp | 758 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 …]
|
| D | RewriteStatepointsForGC.cpp | 2457 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/ |
| D | MachineScheduler.cpp | 2795 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 …]
|
| D | RegAllocGreedy.cpp | 723 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/ |
| D | SIMachineScheduler.cpp | 142 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 …]
|
| D | GCNSchedStrategy.cpp | 103 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 …]
|
| D | SIMachineScheduler.h | 202 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,
|
| D | GCNSchedStrategy.h | 48 SchedCandidate &Cand); 50 void initCandidate(SchedCandidate &Cand, SUnit *SU, 132 bool tryCandidate(SchedCandidate &Cand, SchedCandidate &TryCand,
|
| D | GCNMinRegStrategy.cpp | 123 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/ |
| D | AArch64MachineScheduler.cpp | 61 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()
|
| D | AArch64MachineScheduler.h | 27 bool tryCandidate(SchedCandidate &Cand, SchedCandidate &TryCand) override;
|
| /openbsd/src/gnu/llvm/clang/lib/Sema/ |
| D | SemaOverload.cpp | 1487 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/ |
| D | MachineScheduler.h | 949 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/ |
| D | AMDGPU.cpp | 41 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/ |
| D | PartialInlining.cpp | 682 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/ |
| D | InstrProfiling.cpp | 272 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()
|
| D | PGOInstrumentation.cpp | 820 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/ |
| D | SampleProf.h | 1049 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/ |
| D | IRSimilarityIdentifier.cpp | 1273 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/ |
| D | ARMLoadStoreOptimizer.cpp | 189 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 …]
|