/external/llvm-project/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 void PPCPreRASchedStrategy::tryCandidate(SchedCandidate &Cand, in tryCandidate() argument 52 GenericScheduler::tryCandidate(Cand, TryCand, Zone); in tryCandidate() 54 if (!Cand.isValid() || !Zone) in tryCandidate() 64 if (biasAddiLoadCandidate(Cand, TryCand, *Zone)) 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 void tryCandidate(SchedCandidate &Cand, SchedCandidate &TryCand, 29 bool biasAddiLoadCandidate(SchedCandidate &Cand, 46 void tryCandidate(SchedCandidate &Cand, SchedCandidate &TryCand) override; 47 bool biasAddiCandidate(SchedCandidate &Cand, SchedCandidate &TryCand) const;
|
/external/llvm-project/llvm/lib/Transforms/Scalar/ |
D | LoopLoadElimination.cpp | 136 const StoreToLoadForwardingCandidate &Cand) { in operator <<() argument 137 OS << *Cand.Store << " -->\n"; in operator <<() 138 OS.indent(2) << *Cand.Load << "\n"; in operator <<() 267 for (const auto &Cand : Candidates) { in removeDependencesFromMultipleStores() local 272 LoadToSingleCand.insert(std::make_pair(Cand.Load, &Cand)); in removeDependencesFromMultipleStores() 282 if (Cand.Store->getParent() == OtherCand->Store->getParent() && in removeDependencesFromMultipleStores() 283 Cand.isDependenceDistanceOfOne(PSE, L) && in removeDependencesFromMultipleStores() 286 if (getInstrIndex(OtherCand->Store) < getInstrIndex(Cand.Store)) in removeDependencesFromMultipleStores() 287 OtherCand = &Cand; in removeDependencesFromMultipleStores() 293 Candidates.remove_if([&](const StoreToLoadForwardingCandidate &Cand) { in removeDependencesFromMultipleStores() argument [all …]
|
D | GVNSink.cpp | 754 SinkingInstructionCandidate Cand; in analyzeInstructionForSinking() local 755 Cand.NumInstructions = ++InstNum; in analyzeInstructionForSinking() 756 Cand.NumMemoryInsts = MemoryInstNum; in analyzeInstructionForSinking() 757 Cand.NumBlocks = ActivePreds.size(); in analyzeInstructionForSinking() 758 Cand.NumPHIs = NeededPHIs.size(); in analyzeInstructionForSinking() 760 Cand.Blocks.push_back(C); in analyzeInstructionForSinking() 762 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 …]
|
/external/llvm/lib/Transforms/Scalar/ |
D | LoopLoadElimination.cpp | 102 const StoreToLoadForwardingCandidate &Cand) { in operator <<() argument 103 OS << *Cand.Store << " -->\n"; in operator <<() 104 OS.indent(2) << *Cand.Load << "\n"; in operator <<() 230 for (const auto &Cand : Candidates) { in removeDependencesFromMultipleStores() local 235 LoadToSingleCand.insert(std::make_pair(Cand.Load, &Cand)); in removeDependencesFromMultipleStores() 245 if (Cand.Store->getParent() == OtherCand->Store->getParent() && in removeDependencesFromMultipleStores() 246 Cand.isDependenceDistanceOfOne(PSE, L) && in removeDependencesFromMultipleStores() 249 if (getInstrIndex(OtherCand->Store) < getInstrIndex(Cand.Store)) in removeDependencesFromMultipleStores() 250 OtherCand = &Cand; in removeDependencesFromMultipleStores() 256 Candidates.remove_if([&](const StoreToLoadForwardingCandidate &Cand) { in removeDependencesFromMultipleStores() argument [all …]
|
/external/swiftshader/third_party/llvm-10.0/llvm/lib/Transforms/Scalar/ |
D | LoopLoadElimination.cpp | 135 const StoreToLoadForwardingCandidate &Cand) { in operator <<() argument 136 OS << *Cand.Store << " -->\n"; in operator <<() 137 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 | GVNSink.cpp | 751 SinkingInstructionCandidate Cand; in analyzeInstructionForSinking() local 752 Cand.NumInstructions = ++InstNum; in analyzeInstructionForSinking() 753 Cand.NumMemoryInsts = MemoryInstNum; in analyzeInstructionForSinking() 754 Cand.NumBlocks = ActivePreds.size(); in analyzeInstructionForSinking() 755 Cand.NumPHIs = NeededPHIs.size(); in analyzeInstructionForSinking() 757 Cand.Blocks.push_back(C); in analyzeInstructionForSinking() 759 return Cand; in analyzeInstructionForSinking() 795 auto Cand = analyzeInstructionForSinking(LRI, InstNum, MemoryInstNum, in sinkBB() local 797 if (!Cand) in sinkBB() 799 Cand->calculateCost(NumOrigPHIs, Preds.size()); in sinkBB() [all …]
|
/external/swiftshader/third_party/llvm-10.0/llvm/lib/Target/AMDGPU/ |
D | GCNSchedStrategy.cpp | 62 void GCNMaxOccupancySchedStrategy::initCandidate(SchedCandidate &Cand, SUnit *SU, in initCandidate() argument 68 Cand.SU = SU; in initCandidate() 69 Cand.AtTop = AtTop; in initCandidate() 112 Cand.RPDelta.Excess = PressureChange(SRI->getVGPRPressureSet()); in initCandidate() 113 Cand.RPDelta.Excess.setUnitInc(NewVGPRPressure - VGPRExcessLimit); in initCandidate() 117 Cand.RPDelta.Excess = PressureChange(SRI->getSGPRPressureSet()); in initCandidate() 118 Cand.RPDelta.Excess.setUnitInc(NewSGPRPressure - SGPRExcessLimit); in initCandidate() 131 Cand.RPDelta.CriticalMax = PressureChange(SRI->getSGPRPressureSet()); in initCandidate() 132 Cand.RPDelta.CriticalMax.setUnitInc(SGPRDelta); in initCandidate() 134 Cand.RPDelta.CriticalMax = PressureChange(SRI->getVGPRPressureSet()); in initCandidate() [all …]
|
D | SIMachineScheduler.cpp | 161 SISchedulerCandidate &Cand, in tryLess() argument 168 if (Cand.Reason > Reason) in tryLess() 169 Cand.Reason = Reason; in tryLess() 172 Cand.setRepeat(Reason); in tryLess() 178 SISchedulerCandidate &Cand, in tryGreater() argument 185 if (Cand.Reason > Reason) in tryGreater() 186 Cand.Reason = Reason; in tryGreater() 189 Cand.setRepeat(Reason); in tryGreater() 203 void SIScheduleBlock::traceCandidate(const SISchedCandidate &Cand) { in traceCandidate() argument 205 dbgs() << " SU(" << Cand.SU->NodeNum << ") " << getReasonStr(Cand.Reason); in traceCandidate() [all …]
|
/external/swiftshader/third_party/llvm-10.0/llvm/lib/Target/PowerPC/ |
D | PPCMachineScheduler.cpp | 19 bool PPCPreRASchedStrategy::biasAddiLoadCandidate(SchedCandidate &Cand, in biasAddiLoadCandidate() argument 29 SchedCandidate &FirstCand = Zone.isTop() ? TryCand : Cand; in biasAddiLoadCandidate() 30 SchedCandidate &SecondCand = Zone.isTop() ? Cand : TryCand; in biasAddiLoadCandidate() 45 void PPCPreRASchedStrategy::tryCandidate(SchedCandidate &Cand, in tryCandidate() argument 48 GenericScheduler::tryCandidate(Cand, TryCand, Zone); in tryCandidate() 50 if (!Cand.isValid() || !Zone) in tryCandidate() 60 if (biasAddiLoadCandidate(Cand, TryCand, *Zone)) in tryCandidate()
|
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() 277 if (!Cand.BranchTargetBlock || FalseMBB || in canCoalesceBranch() 278 !Cand.BranchBlock->isSuccessor(Cand.BranchTargetBlock)) { in canCoalesceBranch() 284 if (Cand.BranchBlock->succ_size() != 2) { in canCoalesceBranch() [all …]
|
D | PPCMachineScheduler.h | 26 void tryCandidate(SchedCandidate &Cand, SchedCandidate &TryCand, 29 bool biasAddiLoadCandidate(SchedCandidate &Cand,
|
/external/llvm/lib/CodeGen/ |
D | MachineScheduler.cpp | 2415 void GenericSchedulerBase::traceCandidate(const SchedCandidate &Cand) { in traceCandidate() argument 2419 switch (Cand.Reason) { in traceCandidate() 2423 P = Cand.RPDelta.Excess; in traceCandidate() 2426 P = Cand.RPDelta.CriticalMax; in traceCandidate() 2429 P = Cand.RPDelta.CurrentMax; in traceCandidate() 2432 ResIdx = Cand.Policy.ReduceResIdx; in traceCandidate() 2435 ResIdx = Cand.Policy.DemandResIdx; in traceCandidate() 2438 Latency = Cand.SU->getDepth(); in traceCandidate() 2441 Latency = Cand.SU->getHeight(); in traceCandidate() 2444 Latency = Cand.SU->getHeight(); in traceCandidate() [all …]
|
D | RegAllocGreedy.cpp | 352 void growRegion(GlobalSplitCandidate &Cand); 1044 void RAGreedy::growRegion(GlobalSplitCandidate &Cand) { in growRegion() argument 1047 SmallVectorImpl<unsigned> &ActiveBlocks = Cand.ActiveBlocks; in growRegion() 1080 if (Cand.PhysReg) in growRegion() 1081 addThroughConstraints(Cand.Intf, NewBlocks); in growRegion() 1101 bool RAGreedy::calcCompactRegion(GlobalSplitCandidate &Cand) { in calcCompactRegion() argument 1107 Cand.reset(IntfCache, 0); in calcCompactRegion() 1113 SpillPlacer->prepare(Cand.LiveBundles); in calcCompactRegion() 1117 if (!addSplitConstraints(Cand.Intf, Cost)) { in calcCompactRegion() 1122 growRegion(Cand); in calcCompactRegion() [all …]
|
/external/swiftshader/third_party/llvm-10.0/llvm/lib/CodeGen/ |
D | MachineScheduler.cpp | 2594 void GenericSchedulerBase::traceCandidate(const SchedCandidate &Cand) { in traceCandidate() argument 2598 switch (Cand.Reason) { in traceCandidate() 2602 P = Cand.RPDelta.Excess; in traceCandidate() 2605 P = Cand.RPDelta.CriticalMax; in traceCandidate() 2608 P = Cand.RPDelta.CurrentMax; in traceCandidate() 2611 ResIdx = Cand.Policy.ReduceResIdx; in traceCandidate() 2614 ResIdx = Cand.Policy.DemandResIdx; in traceCandidate() 2617 Latency = Cand.SU->getDepth(); in traceCandidate() 2620 Latency = Cand.SU->getHeight(); in traceCandidate() 2623 Latency = Cand.SU->getHeight(); in traceCandidate() [all …]
|
D | RegAllocGreedy.cpp | 452 bool growRegion(GlobalSplitCandidate &Cand); 453 bool splitCanCauseEvictionChain(unsigned Evictee, GlobalSplitCandidate &Cand, 457 GlobalSplitCandidate &Cand, unsigned BBNumber, 1312 bool RAGreedy::growRegion(GlobalSplitCandidate &Cand) { in growRegion() argument 1315 SmallVectorImpl<unsigned> &ActiveBlocks = Cand.ActiveBlocks; in growRegion() 1348 if (Cand.PhysReg) { in growRegion() 1349 if (!addThroughConstraints(Cand.Intf, NewBlocks)) in growRegion() 1371 bool RAGreedy::calcCompactRegion(GlobalSplitCandidate &Cand) { in calcCompactRegion() argument 1377 Cand.reset(IntfCache, 0); in calcCompactRegion() 1383 SpillPlacer->prepare(Cand.LiveBundles); in calcCompactRegion() [all …]
|
/external/llvm/lib/Target/AMDGPU/ |
D | SIMachineScheduler.cpp | 144 SISchedulerCandidate &Cand, in tryLess() argument 151 if (Cand.Reason > Reason) in tryLess() 152 Cand.Reason = Reason; in tryLess() 155 Cand.setRepeat(Reason); in tryLess() 161 SISchedulerCandidate &Cand, in tryGreater() argument 168 if (Cand.Reason > Reason) in tryGreater() 169 Cand.Reason = Reason; in tryGreater() 172 Cand.setRepeat(Reason); in tryGreater() 185 void SIScheduleBlock::traceCandidate(const SISchedCandidate &Cand) { in traceCandidate() argument 187 dbgs() << " SU(" << Cand.SU->NodeNum << ") " << getReasonStr(Cand.Reason); in traceCandidate() [all …]
|
/external/llvm-project/llvm/lib/Target/AMDGPU/ |
D | GCNSchedStrategy.cpp | 62 void GCNMaxOccupancySchedStrategy::initCandidate(SchedCandidate &Cand, SUnit *SU, in initCandidate() argument 68 Cand.SU = SU; in initCandidate() 69 Cand.AtTop = AtTop; in initCandidate() 112 Cand.RPDelta.Excess = PressureChange(AMDGPU::RegisterPressureSets::VGPR_32); in initCandidate() 113 Cand.RPDelta.Excess.setUnitInc(NewVGPRPressure - VGPRExcessLimit); in initCandidate() 117 Cand.RPDelta.Excess = PressureChange(AMDGPU::RegisterPressureSets::SReg_32); in initCandidate() 118 Cand.RPDelta.Excess.setUnitInc(NewSGPRPressure - SGPRExcessLimit); in initCandidate() 131 Cand.RPDelta.CriticalMax = in initCandidate() 133 Cand.RPDelta.CriticalMax.setUnitInc(SGPRDelta); in initCandidate() 135 Cand.RPDelta.CriticalMax = in initCandidate() [all …]
|
D | SIMachineScheduler.cpp | 161 SISchedulerCandidate &Cand, in tryLess() argument 168 if (Cand.Reason > Reason) in tryLess() 169 Cand.Reason = Reason; in tryLess() 172 Cand.setRepeat(Reason); in tryLess() 178 SISchedulerCandidate &Cand, in tryGreater() argument 185 if (Cand.Reason > Reason) in tryGreater() 186 Cand.Reason = Reason; in tryGreater() 189 Cand.setRepeat(Reason); in tryGreater() 203 void SIScheduleBlock::traceCandidate(const SISchedCandidate &Cand) { in traceCandidate() argument 205 dbgs() << " SU(" << Cand.SU->NodeNum << ") " << getReasonStr(Cand.Reason); in traceCandidate() [all …]
|
/external/llvm-project/llvm/lib/CodeGen/ |
D | MachineScheduler.cpp | 2728 void GenericSchedulerBase::traceCandidate(const SchedCandidate &Cand) { in traceCandidate() argument 2732 switch (Cand.Reason) { in traceCandidate() 2736 P = Cand.RPDelta.Excess; in traceCandidate() 2739 P = Cand.RPDelta.CriticalMax; in traceCandidate() 2742 P = Cand.RPDelta.CurrentMax; in traceCandidate() 2745 ResIdx = Cand.Policy.ReduceResIdx; in traceCandidate() 2748 ResIdx = Cand.Policy.DemandResIdx; in traceCandidate() 2751 Latency = Cand.SU->getDepth(); in traceCandidate() 2754 Latency = Cand.SU->getHeight(); in traceCandidate() 2757 Latency = Cand.SU->getHeight(); in traceCandidate() [all …]
|
D | RegAllocGreedy.cpp | 453 bool growRegion(GlobalSplitCandidate &Cand); 454 bool splitCanCauseEvictionChain(Register Evictee, GlobalSplitCandidate &Cand, 458 GlobalSplitCandidate &Cand, unsigned BBNumber, 1319 bool RAGreedy::growRegion(GlobalSplitCandidate &Cand) { in growRegion() argument 1322 SmallVectorImpl<unsigned> &ActiveBlocks = Cand.ActiveBlocks; in growRegion() 1354 if (Cand.PhysReg) { in growRegion() 1355 if (!addThroughConstraints(Cand.Intf, NewBlocks)) in growRegion() 1377 bool RAGreedy::calcCompactRegion(GlobalSplitCandidate &Cand) { in calcCompactRegion() argument 1383 Cand.reset(IntfCache, MCRegister::NoRegister); in calcCompactRegion() 1389 SpillPlacer->prepare(Cand.LiveBundles); in calcCompactRegion() [all …]
|
/external/llvm-project/clang/lib/Sema/ |
D | SemaOverload.cpp | 1382 for (OverloadCandidateSet::iterator Cand = Conversions.begin(); in TryUserDefinedConversion() local 1383 Cand != Conversions.end(); ++Cand) in TryUserDefinedConversion() 1384 if (Cand->Best) in TryUserDefinedConversion() 1385 ICS.Ambiguous.addConversion(Cand->FoundDecl, Cand->Function); in TryUserDefinedConversion() 4706 for (OverloadCandidateSet::iterator Cand = CandidateSet.begin(); in FindConversionForRefInit() local 4707 Cand != CandidateSet.end(); ++Cand) in FindConversionForRefInit() 4708 if (Cand->Best) in FindConversionForRefInit() 4709 ICS.Ambiguous.addConversion(Cand->FoundDecl, Cand->Function); in FindConversionForRefInit() 9338 for (OverloadCandidateSet::iterator Cand = CandidateSet.begin(), in AddArgumentDependentLookupCandidates() local 9340 Cand != CandEnd; ++Cand) in AddArgumentDependentLookupCandidates() [all …]
|
/external/clang/lib/Sema/ |
D | SemaOverload.cpp | 1238 for (OverloadCandidateSet::iterator Cand = Conversions.begin(); in TryUserDefinedConversion() local 1239 Cand != Conversions.end(); ++Cand) in TryUserDefinedConversion() 1240 if (Cand->Viable) in TryUserDefinedConversion() 1241 ICS.Ambiguous.addConversion(Cand->FoundDecl, Cand->Function); in TryUserDefinedConversion() 4267 for (OverloadCandidateSet::iterator Cand = CandidateSet.begin(); in FindConversionForRefInit() local 4268 Cand != CandidateSet.end(); ++Cand) in FindConversionForRefInit() 4269 if (Cand->Viable) in FindConversionForRefInit() 4270 ICS.Ambiguous.addConversion(Cand->FoundDecl, Cand->Function); in FindConversionForRefInit() 8463 for (OverloadCandidateSet::iterator Cand = CandidateSet.begin(), in AddArgumentDependentLookupCandidates() local 8465 Cand != CandEnd; ++Cand) in AddArgumentDependentLookupCandidates() [all …]
|
/external/llvm-project/llvm/include/llvm/CodeGen/ |
D | MachineScheduler.h | 908 void traceCandidate(const SchedCandidate &Cand); 919 GenericSchedulerBase::SchedCandidate &Cand, 923 GenericSchedulerBase::SchedCandidate &Cand, 926 GenericSchedulerBase::SchedCandidate &Cand, 931 GenericSchedulerBase::SchedCandidate &Cand, 1000 void initCandidate(SchedCandidate &Cand, SUnit *SU, bool AtTop, 1004 virtual void tryCandidate(SchedCandidate &Cand, SchedCandidate &TryCand, 1067 virtual void tryCandidate(SchedCandidate &Cand, SchedCandidate &TryCand); 1069 void pickNodeFromQueue(SchedCandidate &Cand);
|