diff options
Diffstat (limited to 'src/cpu/o3/cpu.cc')
-rw-r--r-- | src/cpu/o3/cpu.cc | 10 |
1 files changed, 8 insertions, 2 deletions
diff --git a/src/cpu/o3/cpu.cc b/src/cpu/o3/cpu.cc index ac003bc24..4f48e29d9 100644 --- a/src/cpu/o3/cpu.cc +++ b/src/cpu/o3/cpu.cc @@ -1009,12 +1009,18 @@ FullO3CPU<Impl>::activateWhenReady(ThreadID tid) "IQ entries.\n", tid); ready = false; - } else if (iew.ldstQueue.numFreeEntries() >= + } else if (iew.ldstQueue.numFreeLoadEntries() >= iew.ldstQueue.entryAmount(activeThreads.size() + 1)) { DPRINTF(O3CPU,"[tid:%i] Suspending thread due to not enough " - "LSQ entries.\n", + "LQ entries.\n", tid); ready = false; + } else if (iew.ldstQueue.numFreeStoreEntries() >= + iew.ldstQueue.entryAmount(activeThreads.size() + 1)) { + DPRINTF(O3CPU,"[tid:%i] Suspending thread due to not enough " + "SQ entries.\n", + tid); + ready = false; } if (ready) { |