diff options
author | Kevin Lim <ktlim@umich.edu> | 2006-07-06 23:20:44 -0400 |
---|---|---|
committer | Kevin Lim <ktlim@umich.edu> | 2006-07-06 23:20:44 -0400 |
commit | 55e59e26c1a7acd8715262999451c451fc50b480 (patch) | |
tree | a2d314bb791c0be13dc32901a42261a35d55b987 /src/cpu/o3/commit_impl.hh | |
parent | 1ccfdb442ff34f9f2b38ee7716b7baee99a397c2 (diff) | |
parent | 6872b99c29cd4263062bb8b3ef15aa5a9f2532d4 (diff) | |
download | gem5-55e59e26c1a7acd8715262999451c451fc50b480.tar.xz |
Merge ktlim@zizzer:/bk/newmem
into zamp.eecs.umich.edu:/z/ktlim2/clean/newmem-merge
--HG--
extra : convert_revision : 942c43e2fdd68cde7aaaba5e88a667f80feab162
Diffstat (limited to 'src/cpu/o3/commit_impl.hh')
-rw-r--r-- | src/cpu/o3/commit_impl.hh | 11 |
1 files changed, 10 insertions, 1 deletions
diff --git a/src/cpu/o3/commit_impl.hh b/src/cpu/o3/commit_impl.hh index 2eb05afac..39e1cf3fe 100644 --- a/src/cpu/o3/commit_impl.hh +++ b/src/cpu/o3/commit_impl.hh @@ -350,10 +350,18 @@ DefaultCommit<Impl>::initStage() } template <class Impl> -void +bool DefaultCommit<Impl>::drain() { drainPending = true; + + // If it's already drained, return true. + if (rob->isEmpty() && !iewStage->hasStoresToWB()) { + cpu->signalDrained(); + return true; + } + + return false; } template <class Impl> @@ -369,6 +377,7 @@ template <class Impl> void DefaultCommit<Impl>::resume() { + drainPending = false; } template <class Impl> |