diff options
author | Jinsong Ji <jji@us.ibm.com> | 2019-06-18 20:24:49 +0000 |
---|---|---|
committer | Jinsong Ji <jji@us.ibm.com> | 2019-06-18 20:24:49 +0000 |
commit | ba43840bfe2ea9e7a528d0a99d6a4d07d376567d (patch) | |
tree | 990c005ef6a3f2b7e6190b7529437bd3d86bf237 /llvm/lib/CodeGen/MachinePipeliner.cpp | |
parent | 413ed69b4b756f2266455b9b46e130a7a2c63949 (diff) | |
download | bcm5719-llvm-ba43840bfe2ea9e7a528d0a99d6a4d07d376567d.tar.gz bcm5719-llvm-ba43840bfe2ea9e7a528d0a99d6a4d07d376567d.zip |
[MachinePipeliner][NFC] Do resource tracking log only when requested.
In most cases we don't need to do resource tracking debug,
so leave them off by default.
llvm-svn: 363733
Diffstat (limited to 'llvm/lib/CodeGen/MachinePipeliner.cpp')
-rw-r--r-- | llvm/lib/CodeGen/MachinePipeliner.cpp | 65 |
1 files changed, 43 insertions, 22 deletions
diff --git a/llvm/lib/CodeGen/MachinePipeliner.cpp b/llvm/lib/CodeGen/MachinePipeliner.cpp index 30ac94eb9c3..87ece444fec 100644 --- a/llvm/lib/CodeGen/MachinePipeliner.cpp +++ b/llvm/lib/CodeGen/MachinePipeliner.cpp @@ -148,6 +148,11 @@ static cl::opt<bool> SwpIgnoreRecMII("pipeliner-ignore-recmii", cl::ReallyHidden, cl::init(false), cl::ZeroOrMore, cl::desc("Ignore RecMII")); +static cl::opt<bool> SwpShowResMask("pipeliner-show-mask", cl::Hidden, + cl::init(false)); +static cl::opt<bool> SwpDebugResource("pipeliner-dbg-res", cl::Hidden, + cl::init(false)); + namespace llvm { // A command line option to enable the CopyToPhi DAG mutation. @@ -1022,8 +1027,9 @@ unsigned SwingSchedulerDAG::calculateResMII() { << ", NumCycles:" << NumCycles << "\n"); // Add new DFAs, if needed, to reserve resources. for (unsigned C = ReservedCycles; C < NumCycles; ++C) { - LLVM_DEBUG(dbgs() << "NewResource created to reserve resources" - << "\n"); + LLVM_DEBUG(if (SwpDebugResource) dbgs() + << "NewResource created to reserve resources" + << "\n"); ResourceManager *NewResource = new ResourceManager(&MF.getSubtarget()); assert(NewResource->canReserveResources(*MI) && "Reserve error."); NewResource->reserveResources(*MI); @@ -3971,19 +3977,25 @@ void ResourceManager::initProcResourceVectors( ProcResourceID++; } LLVM_DEBUG({ - dbgs() << "ProcResourceDesc:\n"; - for (unsigned I = 1, E = SM.getNumProcResourceKinds(); I < E; ++I) { - const MCProcResourceDesc *ProcResource = SM.getProcResource(I); - dbgs() << format(" %16s(%2d): Mask: 0x%08x, NumUnits:%2d\n", - ProcResource->Name, I, Masks[I], ProcResource->NumUnits); + if (SwpShowResMask) { + dbgs() << "ProcResourceDesc:\n"; + for (unsigned I = 1, E = SM.getNumProcResourceKinds(); I < E; ++I) { + const MCProcResourceDesc *ProcResource = SM.getProcResource(I); + dbgs() << format(" %16s(%2d): Mask: 0x%08x, NumUnits:%2d\n", + ProcResource->Name, I, Masks[I], + ProcResource->NumUnits); + } + dbgs() << " -----------------\n"; } - dbgs() << " -----------------\n"; }); } bool ResourceManager::canReserveResources(const MCInstrDesc *MID) const { - LLVM_DEBUG({ dbgs() << "canReserveResources:\n"; }); + LLVM_DEBUG({ + if (SwpDebugResource) + dbgs() << "canReserveResources:\n"; + }); if (UseDFA) return DFAResources->canReserveResources(MID); @@ -4006,20 +4018,24 @@ bool ResourceManager::canReserveResources(const MCInstrDesc *MID) const { SM.getProcResource(I->ProcResourceIdx); unsigned NumUnits = ProcResource->NumUnits; LLVM_DEBUG({ - dbgs() << format(" %16s(%2d): Count: %2d, NumUnits:%2d, Cycles:%2d\n", - ProcResource->Name, I->ProcResourceIdx, - ProcResourceCount[I->ProcResourceIdx], NumUnits, - I->Cycles); + if (SwpDebugResource) + dbgs() << format(" %16s(%2d): Count: %2d, NumUnits:%2d, Cycles:%2d\n", + ProcResource->Name, I->ProcResourceIdx, + ProcResourceCount[I->ProcResourceIdx], NumUnits, + I->Cycles); }); if (ProcResourceCount[I->ProcResourceIdx] >= NumUnits) return false; } - LLVM_DEBUG(dbgs() << "return true\n\n";); + LLVM_DEBUG(if (SwpDebugResource) dbgs() << "return true\n\n";); return true; } void ResourceManager::reserveResources(const MCInstrDesc *MID) { - LLVM_DEBUG({ dbgs() << "reserveResources:\n"; }); + LLVM_DEBUG({ + if (SwpDebugResource) + dbgs() << "reserveResources:\n"; + }); if (UseDFA) return DFAResources->reserveResources(MID); @@ -4039,15 +4055,20 @@ void ResourceManager::reserveResources(const MCInstrDesc *MID) { continue; ++ProcResourceCount[PRE.ProcResourceIdx]; LLVM_DEBUG({ - const MCProcResourceDesc *ProcResource = - SM.getProcResource(PRE.ProcResourceIdx); - dbgs() << format(" %16s(%2d): Count: %2d, NumUnits:%2d, Cycles:%2d\n", - ProcResource->Name, PRE.ProcResourceIdx, - ProcResourceCount[PRE.ProcResourceIdx], - ProcResource->NumUnits, PRE.Cycles); + if (SwpDebugResource) { + const MCProcResourceDesc *ProcResource = + SM.getProcResource(PRE.ProcResourceIdx); + dbgs() << format(" %16s(%2d): Count: %2d, NumUnits:%2d, Cycles:%2d\n", + ProcResource->Name, PRE.ProcResourceIdx, + ProcResourceCount[PRE.ProcResourceIdx], + ProcResource->NumUnits, PRE.Cycles); + } }); } - LLVM_DEBUG({ dbgs() << "reserveResources: done!\n\n"; }); + LLVM_DEBUG({ + if (SwpDebugResource) + dbgs() << "reserveResources: done!\n\n"; + }); } bool ResourceManager::canReserveResources(const MachineInstr &MI) const { |