inorder: clear reg. dep entry after removing from list
this will safeguard future code from trying to remove from the list twice. That code wouldnt break but would waste time.
This commit is contained in:
parent
b963b339b9
commit
477e7039b3
2 changed files with 5 additions and 0 deletions
|
@ -943,6 +943,9 @@ class InOrderDynInst : public FastAlloc, public RefCounted
|
||||||
/** Sets this instruction as entered on the CPU Reg Dep Map */
|
/** Sets this instruction as entered on the CPU Reg Dep Map */
|
||||||
void setRegDepEntry() { status.set(RegDepMapEntry); }
|
void setRegDepEntry() { status.set(RegDepMapEntry); }
|
||||||
|
|
||||||
|
/** Unsets this instruction as entered on the CPU Reg Dep Map */
|
||||||
|
void clearRegDepEntry() { status.reset(RegDepMapEntry); }
|
||||||
|
|
||||||
/** Returns whether or not the entry is on the CPU Reg Dep Map */
|
/** Returns whether or not the entry is on the CPU Reg Dep Map */
|
||||||
bool isRegDepEntry() const { return status[RegDepMapEntry]; }
|
bool isRegDepEntry() const { return status[RegDepMapEntry]; }
|
||||||
|
|
||||||
|
|
|
@ -157,6 +157,8 @@ RegDepMap::remove(DynInstPtr inst)
|
||||||
|
|
||||||
remove(reg_type, flat_idx, inst);
|
remove(reg_type, flat_idx, inst);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
inst->clearRegDepEntry();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
Loading…
Reference in a new issue