diff options
author | Kevin Lim <ktlim@umich.edu> | 2007-04-04 15:38:59 -0400 |
---|---|---|
committer | Kevin Lim <ktlim@umich.edu> | 2007-04-04 15:38:59 -0400 |
commit | 6ff6621f20eb6513e12c769f601dba0b47b47697 (patch) | |
tree | 4a0da2fd882ae94d15361577807ede7111cd4626 /src/cpu/o3/iew_impl.hh | |
parent | 9e1f3bc11a0f8cdb3bbb1ce12d4cd77d4c2c96c3 (diff) | |
download | gem5-6ff6621f20eb6513e12c769f601dba0b47b47697.tar.xz |
Pass ISA-specific O3 CPU as a constructor parameter instead of using setCPU functions.
src/cpu/o3/alpha/cpu_impl.hh:
Pass ISA-specific O3 CPU to FullO3CPU as a constructor parameter instead of using setCPU functions.
--HG--
extra : convert_revision : 74f4b1f5fb6f95a56081f367cce7ff44acb5688a
Diffstat (limited to 'src/cpu/o3/iew_impl.hh')
-rw-r--r-- | src/cpu/o3/iew_impl.hh | 21 |
1 files changed, 4 insertions, 17 deletions
diff --git a/src/cpu/o3/iew_impl.hh b/src/cpu/o3/iew_impl.hh index d2948a525..62e656e93 100644 --- a/src/cpu/o3/iew_impl.hh +++ b/src/cpu/o3/iew_impl.hh @@ -39,10 +39,11 @@ #include "cpu/o3/iew.hh" template<class Impl> -DefaultIEW<Impl>::DefaultIEW(Params *params) +DefaultIEW<Impl>::DefaultIEW(O3CPU *_cpu, Params *params) : issueToExecQueue(params->backComSize, params->forwardComSize), - instQueue(params), - ldstQueue(params), + cpu(_cpu), + instQueue(_cpu, this, params), + ldstQueue(_cpu, this, params), fuPool(params->fuPool), commitToIEWDelay(params->commitToIEWDelay), renameToIEWDelay(params->renameToIEWDelay), @@ -64,9 +65,6 @@ DefaultIEW<Impl>::DefaultIEW(Params *params) // Instruction queue needs the queue between issue and execute. instQueue.setIssueToExecuteQueue(&issueToExecQueue); - instQueue.setIEW(this); - ldstQueue.setIEW(this); - for (int i=0; i < numThreads; i++) { dispatchStatus[i] = Running; stalls[i].commit = false; @@ -276,17 +274,6 @@ DefaultIEW<Impl>::initStage() toRename->iewInfo[tid].freeLSQEntries = ldstQueue.numFreeEntries(tid); } -} - -template<class Impl> -void -DefaultIEW<Impl>::setCPU(O3CPU *cpu_ptr) -{ - cpu = cpu_ptr; - DPRINTF(IEW, "Setting CPU pointer.\n"); - - instQueue.setCPU(cpu_ptr); - ldstQueue.setCPU(cpu_ptr); cpu->activateStage(O3CPU::IEWIdx); } |