| /freebsd/contrib/llvm-project/llvm/lib/Target/ARM/ |
| H A D | ARMLatencyMutations.cpp | 513 bool ARMOverrideBypasses::zeroOutputDependences(SUnit &ISU, SDep &Dep) { in zeroOutputDependences() argument 514 if (Dep.getKind() == SDep::Output) { in zeroOutputDependences() 515 setBidirLatencies(ISU, Dep, 0); in zeroOutputDependences() 529 unsigned ARMOverrideBypasses::makeBundleAssumptions(SUnit &ISU, SDep &Dep) { in makeBundleAssumptions() argument 531 SUnit &DepSU = *Dep.getSUnit(); in makeBundleAssumptions() 539 ISU, Dep, in makeBundleAssumptions() 540 (Dep.isAssignedRegDep() && Dep.getReg() == ARM::CPSR) ? 0 : 1); in makeBundleAssumptions() 544 Dep.isAssignedRegDep() && Dep.getReg() != ARM::CPSR) { in makeBundleAssumptions() 545 setBidirLatencies(ISU, Dep, 1); in makeBundleAssumptions() 553 bool ARMOverrideBypasses::memoryRAWHazard(SUnit &ISU, SDep &Dep, in memoryRAWHazard() argument [all …]
|
| H A D | ARMLatencyMutations.h | 43 static bool zeroOutputDependences(SUnit &ISU, SDep &Dep); 44 unsigned makeBundleAssumptions(SUnit &ISU, SDep &Dep); 45 bool memoryRAWHazard(SUnit &ISU, SDep &Dep, unsigned latency);
|
| /freebsd/contrib/llvm-project/llvm/tools/llvm-mca/Views/ |
| H A D | BottleneckAnalysis.cpp | 150 const DependencyEdge::Dependency &DE = DepEdge.Dep; in dumpDependencyEdge() 240 uint64_t Cost = N.Cost + DepEdge.Dep.Cost; in propagateThroughEdges() 359 const DependencyEdge::Dependency &Dep = DE->Dep; in printCriticalSequence() local 363 if (Dep.Type == DependencyEdge::DT_REGISTER) { in printCriticalSequence() 367 getInstPrinter().printRegName(FOS, Dep.ResourceOrRegID); in printCriticalSequence() 368 } else if (Dep.Type == DependencyEdge::DT_MEMORY) { in printCriticalSequence() 371 assert(Dep.Type == DependencyEdge::DT_RESOURCE && in printCriticalSequence() 376 FOS << Tracker.resolveResourceName(Dep.ResourceOrRegID); in printCriticalSequence() 404 if (DE.Dep.Type == DependencyEdge::DT_REGISTER) in dump() 410 if (DE.Dep.Type == DependencyEdge::DT_MEMORY) in dump() [all …]
|
| /freebsd/contrib/llvm-project/llvm/lib/CodeGen/ |
| H A D | MacroFusion.cpp | 34 static bool isHazard(const SDep &Dep) { in isHazard() argument 35 return Dep.getKind() == SDep::Anti || Dep.getKind() == SDep::Output; in isHazard() 204 for (SDep &Dep : AnchorSU.Preds) { in scheduleAdjacentImpl() 206 if (Dep.isWeak() || isHazard(Dep)) in scheduleAdjacentImpl() 209 SUnit &DepSU = *Dep.getSUnit(); in scheduleAdjacentImpl()
|
| H A D | ScheduleDAGInstrs.cpp | 284 SDep Dep; in addPhysRegDataDeps() local 286 Dep = SDep(SU, SDep::Artificial); in addPhysRegDataDeps() 298 Dep = SDep(SU, SDep::Data, UseReg); in addPhysRegDataDeps() 301 Dep.setLatency(SchedModel.computeOperandLatency(SU->getInstr(), OperIdx, in addPhysRegDataDeps() 304 Dep.setLatency(0); in addPhysRegDataDeps() 306 ST.adjustSchedDependency(SU, OperIdx, UseSU, UseOpIdx, Dep, &SchedModel); in addPhysRegDataDeps() 307 UseSU->addPred(Dep); in addPhysRegDataDeps() 342 SDep Dep(SU, Kind, DefMO.getReg()); in addPhysRegDeps() local 344 Dep.setLatency( in addPhysRegDeps() 347 ST.adjustSchedDependency(SU, OperIdx, DefSU, I->OpIdx, Dep, in addPhysRegDeps() [all …]
|
| H A D | MachineTraceMetrics.cpp | 834 for (const DataDep &Dep : Deps) { in updateDepth() local 836 BlockInfo[Dep.DefMI->getParent()->getNumber()]; in updateDepth() 841 unsigned DepCycle = Cycles.lookup(Dep.DefMI).Depth; in updateDepth() 843 if (!Dep.DefMI->isTransient()) in updateDepth() 845 .computeOperandLatency(Dep.DefMI, Dep.DefOp, &UseMI, Dep.UseOp); in updateDepth() 990 static bool pushDepHeight(const DataDep &Dep, const MachineInstr &UseMI, in pushDepHeight() argument 995 if (!Dep.DefMI->isTransient()) in pushDepHeight() 996 UseHeight += SchedModel.computeOperandLatency(Dep.DefMI, Dep.DefOp, &UseMI, in pushDepHeight() 997 Dep.UseOp); in pushDepHeight() 1002 std::tie(I, New) = Heights.insert(std::make_pair(Dep.DefMI, UseHeight)); in pushDepHeight() [all …]
|
| H A D | ScheduleDAG.cpp | 373 for (const SDep &Dep : SU.Preds) { in dumpNodeAll() local 375 dumpNodeName(*Dep.getSUnit()); in dumpNodeAll() 377 Dep.dump(TRI); in dumpNodeAll() 383 for (const SDep &Dep : SU.Succs) { in dumpNodeAll() local 385 dumpNodeName(*Dep.getSUnit()); in dumpNodeAll() 387 Dep.dump(TRI); in dumpNodeAll()
|
| H A D | MachinePipeliner.cpp | 1213 SDep Dep(SU, SDep::Anti, Reg); in updatePhiDependences() local 1214 Dep.setLatency(1); in updatePhiDependences() 1215 I.addPred(Dep); in updatePhiDependences() 1233 SDep Dep(SU, SDep::Data, Reg); in updatePhiDependences() local 1234 Dep.setLatency(0); in updatePhiDependences() 1235 ST.adjustSchedDependency(SU, 0, &I, MO.getOperandNo(), Dep, in updatePhiDependences() 1237 I.addPred(Dep); in updatePhiDependences() 1322 SDep Dep(&I, SDep::Anti, NewBase); in changeDependences() local 1324 LastSU->addPred(Dep); in changeDependences() 1857 auto Dep = OutputDeps.find(BackEdge); in createAdjacencyStructure() local [all …]
|
| /freebsd/contrib/llvm-project/llvm/include/llvm/CodeGen/ |
| H A D | ScheduleDAG.h | 82 PointerIntPair<SUnit *, 2, Kind> Dep; 103 SDep() : Dep(nullptr, Data) {} in SDep() 106 SDep(SUnit *S, Kind kind, Register Reg) : Dep(S, kind), Contents() { in SDep() 124 : Dep(S, Order), Contents(), Latency(0) { in SDep() 407 SDep Dep(SU, SDep::Barrier); in addPredBarrier() 410 Dep.setLatency(TrueMemOrderLatency); in addPredBarrier() 411 return addPred(Dep); in addPredBarrier() 488 if (Dep != Other.Dep) in overlaps() 490 switch (Dep.getInt()) { in overlaps() 502 inline SUnit *SDep::getSUnit() const { return Dep.getPointer(); } in getSUnit() [all …]
|
| /freebsd/contrib/llvm-project/llvm/lib/Target/RISCV/ |
| H A D | RISCVVectorMaskDAGMutation.cpp | 50 SDep &Dep = SU.Succs[0]; in isSoleUseCopyToV0() local 52 if (Dep.isWeak()) in isSoleUseCopyToV0() 55 SUnit &DepSU = *Dep.getSUnit(); in isSoleUseCopyToV0()
|
| /freebsd/contrib/llvm-project/llvm/utils/TableGen/GlobalISel/ |
| H A D | GIMatchTree.cpp | |
| /freebsd/contrib/llvm-project/llvm/lib/Target/AMDGPU/ |
| H A D | GCNSubtarget.cpp | 541 SUnit *Def, int DefOpIdx, SUnit *Use, int UseOpIdx, SDep &Dep, in adjustSchedDependency() argument 543 if (Dep.getKind() != SDep::Kind::Data || !Dep.getReg() || !Def->isInstr() || in adjustSchedDependency() 552 auto Reg = Dep.getReg(); in adjustSchedDependency() 562 Dep.setLatency(Lat); in adjustSchedDependency() 565 auto Reg = Dep.getReg(); in adjustSchedDependency() 574 Dep.setLatency(Lat); in adjustSchedDependency() 575 } else if (Dep.getLatency() == 0 && Dep.getReg() == AMDGPU::VCC_LO) { in adjustSchedDependency() 580 Dep.setLatency(InstrInfo.getSchedModel().computeOperandLatency( in adjustSchedDependency()
|
| H A D | AMDGPUMIRFormatter.cpp | 105 int64_t Dep; in parseSDelayAluImmMnemonic() local 106 if (!Src.consumeInteger(10, Dep)) in parseSDelayAluImmMnemonic() 107 return Dep + Offset; in parseSDelayAluImmMnemonic()
|
| H A D | R600Packetizer.cpp | 186 for (const SDep &Dep : SUJ->Succs) { in isLegalToPacketizeTogether() local 187 if (Dep.getSUnit() != SUI) in isLegalToPacketizeTogether() 189 if (Dep.getKind() == SDep::Anti) in isLegalToPacketizeTogether() 191 if (Dep.getKind() == SDep::Output) in isLegalToPacketizeTogether()
|
| /freebsd/contrib/llvm-project/llvm/lib/Analysis/ |
| H A D | MemoryDependenceAnalysis.cpp | 797 MemDepResult Dep; in getNonLocalCallDependency() local 800 Dep = getCallDependencyFrom(QueryCall, isReadonlyCall, ScanPos, DirtyBB); in getNonLocalCallDependency() 804 Dep = MemDepResult::getNonLocal(); in getNonLocalCallDependency() 806 Dep = MemDepResult::getNonFuncLocal(); in getNonLocalCallDependency() 812 ExistingResult->setResult(Dep); in getNonLocalCallDependency() 814 Cache.push_back(NonLocalDepEntry(DirtyBB, Dep)); in getNonLocalCallDependency() 818 if (!Dep.isNonLocal()) { in getNonLocalCallDependency() 821 if (Instruction *Inst = Dep.getInst()) in getNonLocalCallDependency() 950 MemDepResult Dep = getPointerDependencyFrom(Loc, isLoad, ScanPos, BB, in getNonLocalInfoForBlock() local 955 return Dep; in getNonLocalInfoForBlock() [all …]
|
| /freebsd/contrib/llvm-project/llvm/lib/TargetParser/ |
| H A D | AArch64TargetParser.cpp | 264 for (auto Dep : ExtensionDependencies) in enable() local 265 if (E == Dep.Later) in enable() 266 enable(Dep.Earlier); in enable() 329 for (auto Dep : ExtensionDependencies) in disable() local 330 if (E == Dep.Earlier) in disable() 331 disable(Dep.Later); in disable()
|
| /freebsd/contrib/llvm-project/llvm/lib/Support/ |
| H A D | DAGDeltaAlgorithm.cpp | 185 for (const edge_ty &Dep : Dependencies) { in DAGDeltaAlgorithmImpl() local 186 Predecessors[Dep.second].push_back(Dep.first); in DAGDeltaAlgorithmImpl() 187 Successors[Dep.first].push_back(Dep.second); in DAGDeltaAlgorithmImpl()
|
| /freebsd/contrib/llvm-project/llvm/lib/Transforms/Scalar/ |
| H A D | LoopLoadElimination.cpp | 195 for (const auto &Dep : *Deps) { in findStoreToLoadDependences() 196 Instruction *Source = Dep.getSource(DepChecker); in findStoreToLoadDependences() 197 Instruction *Destination = Dep.getDestination(DepChecker); in findStoreToLoadDependences() 199 if (Dep.Type == MemoryDepChecker::Dependence::Unknown || in findStoreToLoadDependences() 200 Dep.Type == MemoryDepChecker::Dependence::IndirectUnsafe) { in findStoreToLoadDependences() 208 if (Dep.isBackward()) in findStoreToLoadDependences() 214 assert(Dep.isForward() && "Needs to be a forward dependence"); in findStoreToLoadDependences()
|
| H A D | LoopInterchange.cpp | 174 std::vector<char> Dep; in populateDependencyMatrix() local 210 Dep.push_back(Direction); in populateDependencyMatrix() 216 assert(Dep.empty() && "Expected empty dependency vector"); in populateDependencyMatrix() 217 Dep.assign(Level, '*'); in populateDependencyMatrix() 220 while (Dep.size() != Level) { in populateDependencyMatrix() 221 Dep.push_back('I'); in populateDependencyMatrix() 225 if (Seen.insert(StringRef(Dep.data(), Dep.size())).second) in populateDependencyMatrix() 226 DepMatrix.push_back(Dep); in populateDependencyMatrix() 1327 for (const auto &Dep : DepMatrix) { in canVectorize() local 1328 char Dir = Dep[LoopId]; in canVectorize()
|
| H A D | LoopDistribute.cpp | 631 for (const auto &Dep : Dependences) in MemoryInstructionDependences() local 632 if (Dep.isPossiblyBackward()) { in MemoryInstructionDependences() 636 ++Accesses[Dep.Source].NumUnsafeDependencesStartOrEnd; in MemoryInstructionDependences() 637 --Accesses[Dep.Destination].NumUnsafeDependencesStartOrEnd; in MemoryInstructionDependences() 639 LLVM_DEBUG(Dep.print(dbgs(), 2, Instructions)); in MemoryInstructionDependences()
|
| /freebsd/contrib/llvm-project/clang/lib/Basic/ |
| H A D | OpenCLOptions.cpp | 129 auto Dep = FeaturePair.second; in diagnoseUnsupportedFeatureDependencies() local 131 !TI.hasFeatureEnabled(OpenCLFeaturesMap, Dep)) { in diagnoseUnsupportedFeatureDependencies() 133 Diags.Report(diag::err_opencl_feature_requires) << Feature << Dep; in diagnoseUnsupportedFeatureDependencies()
|
| /freebsd/contrib/llvm-project/llvm/lib/Target/Hexagon/ |
| H A D | HexagonSubtarget.cpp | 438 SUnit *Src, int SrcOpIdx, SUnit *Dst, int DstOpIdx, SDep &Dep, in adjustSchedDependency() argument 452 Dep.setLatency(0); in adjustSchedDependency() 459 Dep.setLatency(0); in adjustSchedDependency() 497 Dep.setLatency(DLatency.value_or(0)); in adjustSchedDependency() 505 Dep.setLatency(0); in adjustSchedDependency() 508 int Latency = Dep.getLatency(); in adjustSchedDependency() 509 bool IsArtificial = Dep.isArtificial(); in adjustSchedDependency() 511 Dep.setLatency(Latency); in adjustSchedDependency()
|
| /freebsd/contrib/llvm-project/llvm/lib/ExecutionEngine/Orc/ |
| H A D | Core.cpp | 1186 for (auto &Dep : Deps) in dump() local 1187 OS << Dep << " "; in dump() 2948 for (auto Dep : Deps) { in propagateExtraEmitDeps() local 2949 if (UserEDUDepsForJD.insert(Dep).second) { in propagateExtraEmitDeps() 2950 HandleNewDep(*UserEDU, *DepJD, Dep); in propagateExtraEmitDeps() 2960 UserEDUNewDepsForJD->insert(Dep); in propagateExtraEmitDeps() 3061 for (auto &Dep : Deps) in simplifyDepGroups() local 3062 NewDepsForJD.insert(NonOwningSymbolStringPtr(Dep)); in simplifyDepGroups() 3066 for (auto &Dep : Deps) { in simplifyDepGroups() local 3067 NonOwningSymbolStringPtr NonOwningDep(Dep); in simplifyDepGroups() [all …]
|
| /freebsd/contrib/llvm-project/llvm/lib/TableGen/ |
| H A D | Main.cpp | 100 for (const auto &Dep : Parser.getDependencies()) { in createDependencyFile() local 101 DepOut.os() << ' ' << Dep; in createDependencyFile()
|
| /freebsd/contrib/llvm-project/llvm/lib/Target/AArch64/ |
| H A D | AArch64Subtarget.cpp | 549 SUnit *Def, int DefOpIdx, SUnit *Use, int UseOpIdx, SDep &Dep, in adjustSchedDependency() argument 551 if (!SchedModel || Dep.getKind() != SDep::Kind::Data || !Dep.getReg() || in adjustSchedDependency() 583 Dep.setLatency( in adjustSchedDependency()
|