[gem5-dev] Change in gem5/gem5[develop]: base: Add warnings for legacy stats

2021-05-05 Thread Hoa Nguyen (Gerrit) via gem5-dev
Hoa Nguyen has submitted this change. (  
https://gem5-review.googlesource.com/c/public/gem5/+/44706 )


Change subject: base: Add warnings for legacy stats
..

base: Add warnings for legacy stats

Legacy stat is defined as a stat that doesn't belong to any
Stats::Group.

JIRA: https://gem5.atlassian.net/browse/GEM5-645

Change-Id: I8d426882b6bf7600998e181f18d1339ce82d5917
Signed-off-by: Hoa Nguyen 
Reviewed-on: https://gem5-review.googlesource.com/c/public/gem5/+/44706
Reviewed-by: Daniel Carvalho 
Maintainer: Jason Lowe-Power 
Tested-by: kokoro 
---
M src/base/statistics.hh
1 file changed, 9 insertions(+), 0 deletions(-)

Approvals:
  Daniel Carvalho: Looks good to me, approved
  Jason Lowe-Power: Looks good to me, approved
  kokoro: Regressions pass



diff --git a/src/base/statistics.hh b/src/base/statistics.hh
index 63bfb5b..9de975b 100644
--- a/src/base/statistics.hh
+++ b/src/base/statistics.hh
@@ -75,6 +75,7 @@
 #include "base/cast.hh"
 #include "base/cprintf.hh"
 #include "base/intmath.hh"
+#include "base/logging.hh"
 #include "base/stats/group.hh"
 #include "base/stats/info.hh"
 #include "base/stats/output.hh"
@@ -259,6 +260,14 @@

 if (desc)
 info->desc = desc;
+
+// Stat that does not belong to any Stats::Group is a legacy stat
+std::string common_message = "Legacy stat is a stat that does not "
+"belong to any Stats::Group. Legacy stat is deprecated.";
+if (parent == nullptr && name != nullptr)
+warn(csprintf("`%s` is a legacy stat. %s", name,  
common_message));

+else if (parent == nullptr)
+warn_once("One of the stats is a legacy stat. " +  
common_message);

 }

 /**

--
To view, visit https://gem5-review.googlesource.com/c/public/gem5/+/44706
To unsubscribe, or for help writing mail filters, visit  
https://gem5-review.googlesource.com/settings


Gerrit-Project: public/gem5
Gerrit-Branch: develop
Gerrit-Change-Id: I8d426882b6bf7600998e181f18d1339ce82d5917
Gerrit-Change-Number: 44706
Gerrit-PatchSet: 8
Gerrit-Owner: Hoa Nguyen 
Gerrit-Reviewer: Bobby R. Bruce 
Gerrit-Reviewer: Daniel Carvalho 
Gerrit-Reviewer: Hoa Nguyen 
Gerrit-Reviewer: Jason Lowe-Power 
Gerrit-Reviewer: Jason Lowe-Power 
Gerrit-Reviewer: kokoro 
Gerrit-MessageType: merged
___
gem5-dev mailing list -- gem5-dev@gem5.org
To unsubscribe send an email to gem5-dev-le...@gem5.org
%(web_page_url)slistinfo%(cgiext)s/%(_internal_name)s

[gem5-dev] Change in gem5/gem5[develop]: base: Add warnings for legacy stats

2021-04-21 Thread Hoa Nguyen (Gerrit) via gem5-dev
Hoa Nguyen has uploaded this change for review. (  
https://gem5-review.googlesource.com/c/public/gem5/+/44706 )



Change subject: base: Add warnings for legacy stats
..

base: Add warnings for legacy stats

Legacy stat is defined as a stat that doesn't belong to any
Stats::Group.

Change-Id: I8d426882b6bf7600998e181f18d1339ce82d5917
Signed-off-by: Hoa Nguyen 
---
M src/base/statistics.hh
1 file changed, 34 insertions(+), 3 deletions(-)



diff --git a/src/base/statistics.hh b/src/base/statistics.hh
index 63bfb5b..548c351 100644
--- a/src/base/statistics.hh
+++ b/src/base/statistics.hh
@@ -546,6 +546,10 @@
 : DataWrap(parent, name, unit, desc)
 {
 this->doInit();
+if (parent == nullptr && name != nullptr)
+warn(csprintf("`%s` is a legacy stat", name));
+else if (parent == nullptr)
+warn_once("Legacy stat exists");
 }

   public:
@@ -704,6 +708,10 @@
 : DataWrap(parent, name, unit, desc),
   proxy(NULL)
 {
+if (parent == nullptr && name != nullptr)
+warn(csprintf("`%s` is a legacy stat", name));
+else if (parent == nullptr)
+warn_once("Legacy stat exists");
 }

 ~ValueBase() { if (proxy) delete proxy; }
@@ -1007,7 +1015,12 @@
const char *desc)
 : DataWrapVec(parent, name, unit, desc),
   storage(nullptr), _size(0)
-{}
+{
+if (parent == nullptr && name != nullptr)
+warn(csprintf("`%s` is a legacy stat", name));
+else if (parent == nullptr)
+warn_once("Legacy stat exists");
+}

 ~VectorBase()
 {
@@ -1150,7 +1163,12 @@
  const char *desc)
 : DataWrapVec2d(parent, name, unit,  
desc),

   x(0), y(0), _size(0), storage(nullptr)
-{}
+{
+if (parent == nullptr && name != nullptr)
+warn(csprintf("`%s` is a legacy stat", name));
+else if (parent == nullptr)
+warn_once("Legacy stat exists");
+}

 ~Vector2dBase()
 {
@@ -1311,6 +1329,10 @@
  const char *desc)
 : DataWrap(parent, name, unit, desc)
 {
+if (parent == nullptr && name != nullptr)
+warn(csprintf("`%s` is a legacy stat", name));
+else if (parent == nullptr)
+warn_once("Legacy stat exists");
 }

 /**
@@ -1409,7 +1431,12 @@
const char *desc)
 : DataWrapVec(parent, name, unit,  
desc),

   storage(NULL)
-{}
+{
+if (parent == nullptr && name != nullptr)
+warn(csprintf("`%s` is a legacy stat", name));
+else if (parent == nullptr)
+warn_once("Legacy stat exists");
+}

 ~VectorDistBase()
 {
@@ -2452,6 +2479,10 @@
const char *desc)
 : DataWrap(parent, name, unit, desc)
 {
+if (parent == nullptr && name != nullptr)
+warn(csprintf("`%s` is a legacy stat", name));
+else if (parent == nullptr)
+warn_once("Legacy stat exists");
 }

 /**

--
To view, visit https://gem5-review.googlesource.com/c/public/gem5/+/44706
To unsubscribe, or for help writing mail filters, visit  
https://gem5-review.googlesource.com/settings


Gerrit-Project: public/gem5
Gerrit-Branch: develop
Gerrit-Change-Id: I8d426882b6bf7600998e181f18d1339ce82d5917
Gerrit-Change-Number: 44706
Gerrit-PatchSet: 1
Gerrit-Owner: Hoa Nguyen 
Gerrit-MessageType: newchange
___
gem5-dev mailing list -- gem5-dev@gem5.org
To unsubscribe send an email to gem5-dev-le...@gem5.org
%(web_page_url)slistinfo%(cgiext)s/%(_internal_name)s