cpu: Add a NotAnInst flag to the BaseDynInst class.

This flag means that the instruction isn't an actual instruction, it's
just a placeholder to carry a fault down a pipeline, for instance.

Change-Id: I1cc12b068662dbd3d3b089c9941a07b6e88b57e3
Reviewed-on: https://gem5-review.googlesource.com/7123
Reviewed-by: Jason Lowe-Power <jason@lowepower.com>
Maintainer: Gabe Black <gabeblack@google.com>
This commit is contained in:
Gabe Black
2018-01-05 15:40:47 -08:00
parent b52ea6e98c
commit ed8b7f2e31

View File

@@ -124,6 +124,7 @@ class BaseDynInst : public ExecContext, public RefCounted
};
enum Flags {
NotAnInst,
TranslationStarted,
TranslationCompleted,
PossibleLoadViolation,
@@ -274,6 +275,9 @@ class BaseDynInst : public ExecContext, public RefCounted
bool memOpDone() const { return instFlags[MemOpDone]; }
void memOpDone(bool f) { instFlags[MemOpDone] = f; }
bool notAnInst() const { return instFlags[NotAnInst]; }
void setNotAnInst() { instFlags[NotAnInst] = true; }
////////////////////////////////////////////
//