diff options
Diffstat (limited to 'src/cpu/o3/mem_dep_unit_impl.hh')
-rw-r--r-- | src/cpu/o3/mem_dep_unit_impl.hh | 13 |
1 files changed, 13 insertions, 0 deletions
diff --git a/src/cpu/o3/mem_dep_unit_impl.hh b/src/cpu/o3/mem_dep_unit_impl.hh index 6684e4ff0..376198fc1 100644 --- a/src/cpu/o3/mem_dep_unit_impl.hh +++ b/src/cpu/o3/mem_dep_unit_impl.hh @@ -128,6 +128,19 @@ MemDepUnit<MemDepPred, Impl>::regStats() } template <class MemDepPred, class Impl> +bool +MemDepUnit<MemDepPred, Impl>::isDrained() const +{ + bool drained = instsToReplay.empty() + && memDepHash.empty() + && instsToReplay.empty(); + for (int i = 0; i < Impl::MaxThreads; ++i) + drained = drained && instList[i].empty(); + + return drained; +} + +template <class MemDepPred, class Impl> void MemDepUnit<MemDepPred, Impl>::drainSanityCheck() const { |