summaryrefslogtreecommitdiffstats
path: root/llvm/tools/llvm-mca/BackendStatistics.cpp
diff options
context:
space:
mode:
authorAndrea Di Biagio <Andrea_DiBiagio@sn.scee.net>2018-03-10 17:40:25 +0000
committerAndrea Di Biagio <Andrea_DiBiagio@sn.scee.net>2018-03-10 17:40:25 +0000
commit7948738673607fa28c9604c278a61e0eedc71872 (patch)
tree44c7baa2cdd222ffa3c8931f73adee10f328108a /llvm/tools/llvm-mca/BackendStatistics.cpp
parent0c54129907191f44780af22582da18ea4cf2a57e (diff)
downloadbcm5719-llvm-7948738673607fa28c9604c278a61e0eedc71872.tar.gz
bcm5719-llvm-7948738673607fa28c9604c278a61e0eedc71872.zip
[llvm-mca] BackendStatistics: early exit from method printSchedulerUsage if the
no scheduler resources were consumed. llvm-svn: 327215
Diffstat (limited to 'llvm/tools/llvm-mca/BackendStatistics.cpp')
-rw-r--r--llvm/tools/llvm-mca/BackendStatistics.cpp9
1 files changed, 9 insertions, 0 deletions
diff --git a/llvm/tools/llvm-mca/BackendStatistics.cpp b/llvm/tools/llvm-mca/BackendStatistics.cpp
index 46981d5fa61..d310a7b02eb 100644
--- a/llvm/tools/llvm-mca/BackendStatistics.cpp
+++ b/llvm/tools/llvm-mca/BackendStatistics.cpp
@@ -118,9 +118,18 @@ void BackendStatistics::printDispatchStalls(raw_ostream &OS, unsigned RATStalls,
void BackendStatistics::printSchedulerUsage(
raw_ostream &OS, const MCSchedModel &SM,
const ArrayRef<BufferUsageEntry> &Usage) const {
+
std::string Buffer;
raw_string_ostream TempStream(Buffer);
TempStream << "\n\nScheduler's queue usage:\n";
+ // Early exit if no buffered resources were consumed.
+ if (Usage.empty()) {
+ TempStream << "No scheduler resources used.\n";
+ TempStream.flush();
+ OS << Buffer;
+ return;
+ }
+
for (unsigned I = 0, E = SM.getNumProcResourceKinds(); I < E; ++I) {
const MCProcResourceDesc &ProcResource = *SM.getProcResource(I);
if (!ProcResource.BufferSize)
OpenPOWER on IntegriCloud