diff options
Diffstat (limited to 'cpu/o3/rename_impl.hh')
-rw-r--r-- | cpu/o3/rename_impl.hh | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/cpu/o3/rename_impl.hh b/cpu/o3/rename_impl.hh index 49627e3d4..a41e8d016 100644 --- a/cpu/o3/rename_impl.hh +++ b/cpu/o3/rename_impl.hh @@ -864,6 +864,11 @@ DefaultRename<Impl>::doSquash(unsigned tid) // Put the renamed physical register back on the free list. freeList->addReg(hb_it->newPhysReg); + // Be sure to mark its register as ready if it's a misc register. + if (hb_it->newPhysReg >= maxPhysicalRegs) { + scoreboard->setReg(hb_it->newPhysReg); + } + historyBuffer[tid].erase(hb_it++); ++renameUndoneMaps; |