105c105,109
< return sc_gem5::reportMsgInfoMap[it->second].actions == SC_DO_NOTHING;
---
> auto &msgInfo = sc_gem5::reportMsgInfoMap[it->second];
>
> return (msgInfo.actions == SC_DO_NOTHING ||
> (msgInfo.sevActions[SC_INFO] == SC_DO_NOTHING &&
> msgInfo.sevActions[SC_WARNING] == SC_DO_NOTHING));
142,145c146,156
< if (suppress)
< sc_gem5::reportMsgInfoMap[it->second].actions = SC_DO_NOTHING;
< else
< sc_gem5::reportMsgInfoMap[it->second].actions = SC_UNSPECIFIED;
---
> if (suppress) {
> sc_gem5::reportMsgInfoMap[it->second].
> sevActions[SC_INFO] = SC_DO_NOTHING;
> sc_gem5::reportMsgInfoMap[it->second].
> sevActions[SC_WARNING] = SC_DO_NOTHING;
> } else {
> sc_gem5::reportMsgInfoMap[it->second].
> sevActions[SC_INFO] = SC_UNSPECIFIED;
> sc_gem5::reportMsgInfoMap[it->second].
> sevActions[SC_WARNING] = SC_UNSPECIFIED;
> }