diff options
author | Ali Saidi <Ali.Saidi@ARM.com> | 2013-01-07 13:05:33 -0500 |
---|---|---|
committer | Ali Saidi <Ali.Saidi@ARM.com> | 2013-01-07 13:05:33 -0500 |
commit | 5146a69835bc9ba37fba7d3b0ff72ecaf9b98b74 (patch) | |
tree | 694786d4ffd6384a3736d48e1fd20e29408bf56d /src/cpu/ozone/dyn_inst_impl.hh | |
parent | 90bd20aae2bc940397628a4598b5b25f2c8549b5 (diff) | |
download | gem5-5146a69835bc9ba37fba7d3b0ff72ecaf9b98b74.tar.xz |
cpu: rename the misleading inSyscall to noSquashFromTC
isSyscall was originally created because during handling of a syscall in SE
mode the threadcontext had to be updated. However, in many places this is used
in FS mode (e.g. fault handlers) and the name doesn't make much sense. The
boolean actually stops gem5 from squashing speculative and non-committed state
when a write to a threadcontext happens, so re-name the variable to something
more appropriate
Diffstat (limited to 'src/cpu/ozone/dyn_inst_impl.hh')
-rw-r--r-- | src/cpu/ozone/dyn_inst_impl.hh | 12 |
1 files changed, 6 insertions, 6 deletions
diff --git a/src/cpu/ozone/dyn_inst_impl.hh b/src/cpu/ozone/dyn_inst_impl.hh index 96d326ffc..2066c58d7 100644 --- a/src/cpu/ozone/dyn_inst_impl.hh +++ b/src/cpu/ozone/dyn_inst_impl.hh @@ -71,12 +71,12 @@ OzoneDynInst<Impl>::execute() // @todo: Pretty convoluted way to avoid squashing from happening when using // the XC during an instruction's execution (specifically for instructions // that have sideeffects that use the XC). Fix this. - bool in_syscall = this->thread->inSyscall; - this->thread->inSyscall = true; + bool no_squash_from_TC = this->thread->noSquashFromTC; + this->thread->noSquashFromTC = true; this->fault = this->staticInst->execute(this, this->traceData); - this->thread->inSyscall = in_syscall; + this->thread->noSquashFromTC = no_squash_from_TC; return this->fault; } @@ -88,12 +88,12 @@ OzoneDynInst<Impl>::initiateAcc() // @todo: Pretty convoluted way to avoid squashing from happening when using // the XC during an instruction's execution (specifically for instructions // that have sideeffects that use the XC). Fix this. - bool in_syscall = this->thread->inSyscall; - this->thread->inSyscall = true; + bool no_squash_from_TC = this->thread->noSquashFromTC; + this->thread->noSquashFromTC = true; this->fault = this->staticInst->initiateAcc(this, this->traceData); - this->thread->inSyscall = in_syscall; + this->thread->noSquashFromTC = no_squash_from_TC; return this->fault; } |