[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.

llvm-svn: 334961
diff --git a/llvm/tools/llvm-mca/DispatchStatistics.h b/llvm/tools/llvm-mca/DispatchStatistics.h
index 3b735a1..7b98a84 100644
--- a/llvm/tools/llvm-mca/DispatchStatistics.h
+++ b/llvm/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 @@
   // 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/llvm/tools/llvm-mca/RetireControlUnitStatistics.h b/llvm/tools/llvm-mca/RetireControlUnitStatistics.h
index e10c662..5c91af5 100644
--- a/llvm/tools/llvm-mca/RetireControlUnitStatistics.h
+++ b/llvm/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/llvm/tools/llvm-mca/SchedulerStatistics.cpp b/llvm/tools/llvm-mca/SchedulerStatistics.cpp
index 128bb8f..dc38f68 100644
--- a/llvm/tools/llvm-mca/SchedulerStatistics.cpp
+++ b/llvm/tools/llvm-mca/SchedulerStatistics.cpp
@@ -81,8 +81,10 @@
     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/llvm/tools/llvm-mca/SchedulerStatistics.h b/llvm/tools/llvm-mca/SchedulerStatistics.h
index bbb7535..08d8a34 100644
--- a/llvm/tools/llvm-mca/SchedulerStatistics.h
+++ b/llvm/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 @@
     unsigned MaxUsedSlots;
   };
 
-  llvm::DenseMap<unsigned, BufferUsage> BufferedResources;
+  std::map<unsigned, BufferUsage> BufferedResources;
 
   void updateHistograms() {
     IssuedPerCycle[NumIssued]++;