diff options
author | Gabe Black <gabeblack@google.com> | 2018-01-05 15:40:47 -0800 |
---|---|---|
committer | Gabe Black <gabeblack@google.com> | 2018-01-09 03:03:04 +0000 |
commit | ed8b7f2e310ce8828cd98caa8eb895d99da6f7ef (patch) | |
tree | 2085abb4042c4b6f9e89992fed86e8cf12e3ff9c /src/cpu | |
parent | b52ea6e98cb27c97aeea1085c4f5fdcbbdf66f0c (diff) | |
download | gem5-ed8b7f2e310ce8828cd98caa8eb895d99da6f7ef.tar.xz |
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>
Diffstat (limited to 'src/cpu')
-rw-r--r-- | src/cpu/base_dyn_inst.hh | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/src/cpu/base_dyn_inst.hh b/src/cpu/base_dyn_inst.hh index 127b0629c..ae408e3fb 100644 --- a/src/cpu/base_dyn_inst.hh +++ b/src/cpu/base_dyn_inst.hh @@ -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; } + //////////////////////////////////////////// // |