summaryrefslogtreecommitdiff
path: root/src/cpu/base_dyn_inst.hh
diff options
context:
space:
mode:
Diffstat (limited to 'src/cpu/base_dyn_inst.hh')
-rw-r--r--src/cpu/base_dyn_inst.hh8
1 files changed, 6 insertions, 2 deletions
diff --git a/src/cpu/base_dyn_inst.hh b/src/cpu/base_dyn_inst.hh
index 756a5aa9f..d533ad9bf 100644
--- a/src/cpu/base_dyn_inst.hh
+++ b/src/cpu/base_dyn_inst.hh
@@ -478,11 +478,15 @@ class BaseDynInst : public ExecContext, public RefCounted
_prevDestRegIdx[idx] = previous_rename;
}
- void taintDestRegs(void)
+ void taintDestRegs(bool istaint)
{
for (size_t i = 0; i < numDestRegs(); i++) {
auto dstreg = _destRegIdx[i];
- cpu->setTaint(dstreg);
+ if (istaint) {
+ cpu->setTaint(dstreg);
+ } else {
+ cpu->clearTaint(dstreg);
+ }
}
}