aboutsummaryrefslogtreecommitdiff
path: root/tools/llvm-mca
diff options
context:
space:
mode:
authorAndrea Di Biagio <Andrea_DiBiagio@sn.scee.net>2018-06-18 17:04:56 +0000
committerAndrea Di Biagio <Andrea_DiBiagio@sn.scee.net>2018-06-18 17:04:56 +0000
commitc75619bff71fa8e4e579c5dbd8c844dd3cf9c475 (patch)
tree044048175c6f51a22533754a7c1a84adccc21871 /tools/llvm-mca
parent853857830580afedbec1e614cf73bce643bb051e (diff)
[llvm-mca] Use an ordered map to collect hardware statistics. NFC.
Histogram entries are now ordered by key. This should improves their readability when statistics are printed. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@334961 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'tools/llvm-mca')
-rw-r--r--tools/llvm-mca/DispatchStatistics.h4
-rw-r--r--tools/llvm-mca/RetireControlUnitStatistics.h4
-rw-r--r--tools/llvm-mca/SchedulerStatistics.cpp6
-rw-r--r--tools/llvm-mca/SchedulerStatistics.h6
4 files changed, 11 insertions, 9 deletions
diff --git a/tools/llvm-mca/DispatchStatistics.h b/tools/llvm-mca/DispatchStatistics.h
index 3b735a16266..7b98a848df6 100644
--- a/tools/llvm-mca/DispatchStatistics.h
+++ b/tools/llvm-mca/DispatchStatistics.h
@@ -35,9 +35,9 @@
#define LLVM_TOOLS_LLVM_MCA_DISPATCHVIEW_H
#include "View.h"
-#include "llvm/ADT/DenseMap.h"
#include "llvm/ADT/SmallVector.h"
#include "llvm/MC/MCSubtargetInfo.h"
+#include <map>
namespace mca {
@@ -49,7 +49,7 @@ class DispatchStatistics : public View {
// is one counter for every generic stall kind (see class HWStallEvent).
llvm::SmallVector<unsigned, 8> HWStalls;
- using Histogram = llvm::DenseMap<unsigned, unsigned>;
+ using Histogram = std::map<unsigned, unsigned>;
Histogram DispatchGroupSizePerCycle;
void updateHistograms() {
diff --git a/tools/llvm-mca/RetireControlUnitStatistics.h b/tools/llvm-mca/RetireControlUnitStatistics.h
index e10c6626ee9..5c91af532ec 100644
--- a/tools/llvm-mca/RetireControlUnitStatistics.h
+++ b/tools/llvm-mca/RetireControlUnitStatistics.h
@@ -27,13 +27,13 @@
#define LLVM_TOOLS_LLVM_MCA_RETIRECONTROLUNITSTATISTICS_H
#include "View.h"
-#include "llvm/ADT/DenseMap.h"
#include "llvm/MC/MCSubtargetInfo.h"
+#include <map>
namespace mca {
class RetireControlUnitStatistics : public View {
- using Histogram = llvm::DenseMap<unsigned, unsigned>;
+ using Histogram = std::map<unsigned, unsigned>;
Histogram RetiredPerCycle;
unsigned NumRetired;
diff --git a/tools/llvm-mca/SchedulerStatistics.cpp b/tools/llvm-mca/SchedulerStatistics.cpp
index 128bb8f4466..dc38f6889c9 100644
--- a/tools/llvm-mca/SchedulerStatistics.cpp
+++ b/tools/llvm-mca/SchedulerStatistics.cpp
@@ -81,8 +81,10 @@ void SchedulerStatistics::printSchedulerUsage(raw_ostream &OS) const {
if (ProcResource.BufferSize <= 0)
continue;
- const BufferUsage &BU = BufferedResources.lookup(I);
- TempStream << ProcResource.Name << ", " << BU.MaxUsedSlots << '/'
+ const auto It = BufferedResources.find(I);
+ unsigned MaxUsedSlots =
+ It == BufferedResources.end() ? 0 : It->second.MaxUsedSlots;
+ TempStream << ProcResource.Name << ", " << MaxUsedSlots << '/'
<< ProcResource.BufferSize << '\n';
}
diff --git a/tools/llvm-mca/SchedulerStatistics.h b/tools/llvm-mca/SchedulerStatistics.h
index bbb7535bdaf..08d8a349437 100644
--- a/tools/llvm-mca/SchedulerStatistics.h
+++ b/tools/llvm-mca/SchedulerStatistics.h
@@ -33,15 +33,15 @@
#include "View.h"
#include "llvm/ADT/SmallVector.h"
-#include "llvm/ADT/DenseMap.h"
#include "llvm/MC/MCSubtargetInfo.h"
+#include <map>
namespace mca {
class SchedulerStatistics : public View {
const llvm::MCSchedModel &SM;
- using Histogram = llvm::DenseMap<unsigned, unsigned>;
+ using Histogram = std::map<unsigned, unsigned>;
Histogram IssuedPerCycle;
unsigned NumIssued;
@@ -53,7 +53,7 @@ class SchedulerStatistics : public View {
unsigned MaxUsedSlots;
};
- llvm::DenseMap<unsigned, BufferUsage> BufferedResources;
+ std::map<unsigned, BufferUsage> BufferedResources;
void updateHistograms() {
IssuedPerCycle[NumIssued]++;