cpu: Turn BaseTrafficGen numSuppressed into a stat

This is changing numSuppressed from being a warn only variable into
a Stat so that it is visible at the end of simulation.

Change-Id: I934782e796c898bfc0e773cc88c597a68e403272
Reviewed-on: https://gem5-review.googlesource.com/11849
Reviewed-by: Jason Lowe-Power <jason@lowepower.com>
Reviewed-by: Andreas Sandberg <andreas.sandberg@arm.com>
Maintainer: Andreas Sandberg <andreas.sandberg@arm.com>
diff --git a/src/cpu/testers/traffic_gen/base.cc b/src/cpu/testers/traffic_gen/base.cc
index 41d0052..6778e41 100644
--- a/src/cpu/testers/traffic_gen/base.cc
+++ b/src/cpu/testers/traffic_gen/base.cc
@@ -78,7 +78,6 @@
       retryPkt(NULL),
       retryPktTick(0),
       updateEvent([this]{ update(); }, name()),
-      numSuppressed(0),
       masterID(system->getMasterId(this))
 {
 }
@@ -186,9 +185,9 @@
                     pkt->cmdString(), pkt->getAddr());
 
             ++numSuppressed;
-            if (numSuppressed % 10000)
+            if (!(static_cast<int>(numSuppressed.value()) % 10000))
                 warn("%s suppressed %d packets with non-memory addresses\n",
-                     name(), numSuppressed);
+                     name(), numSuppressed.value());
 
             delete pkt;
             pkt = nullptr;
@@ -314,6 +313,10 @@
         .name(name() + ".numPackets")
         .desc("Number of packets generated");
 
+    numSuppressed
+        .name(name() + ".numSuppressed")
+        .desc("Number of suppressed packets to non-memory space");
+
     numRetries
         .name(name() + ".numRetries")
         .desc("Number of retries");
diff --git a/src/cpu/testers/traffic_gen/base.hh b/src/cpu/testers/traffic_gen/base.hh
index 080bd78..fe4229f 100644
--- a/src/cpu/testers/traffic_gen/base.hh
+++ b/src/cpu/testers/traffic_gen/base.hh
@@ -163,7 +163,8 @@
     /** Event for scheduling updates */
     EventFunctionWrapper updateEvent;
 
-    uint64_t numSuppressed;
+    /** Count the number of dropped requests. */
+    Stats::Scalar numSuppressed;
 
   private: // Stats
     /** Count the number of generated packets. */