diff options
author | Mitch Hayenga <mitch.hayenga@arm.com> | 2016-07-21 17:19:16 +0100 |
---|---|---|
committer | Mitch Hayenga <mitch.hayenga@arm.com> | 2016-07-21 17:19:16 +0100 |
commit | ff4009ac005be0347015f8ba5a8e37a3aa930e69 (patch) | |
tree | b80cfa7c70c0e39f54c8c3d78527722cb6658510 /src/cpu/minor/pipeline.cc | |
parent | 8a476d387c84f037d0ccf3cc20dc88870ab45fec (diff) | |
download | gem5-ff4009ac005be0347015f8ba5a8e37a3aa930e69.tar.xz |
cpu: Add SMT support to MinorCPU
This patch adds SMT support to the MinorCPU. Currently
RoundRobin or Random thread scheduling are supported.
Change-Id: I91faf39ff881af5918cca05051829fc6261f20e3
Diffstat (limited to 'src/cpu/minor/pipeline.cc')
-rw-r--r-- | src/cpu/minor/pipeline.cc | 9 |
1 files changed, 7 insertions, 2 deletions
diff --git a/src/cpu/minor/pipeline.cc b/src/cpu/minor/pipeline.cc index 39b7f31f9..8c04e3949 100644 --- a/src/cpu/minor/pipeline.cc +++ b/src/cpu/minor/pipeline.cc @@ -187,9 +187,9 @@ Pipeline::getDataPort() } void -Pipeline::wakeupFetch() +Pipeline::wakeupFetch(ThreadID tid) { - execute.wakeupFetch(); + fetch1.wakeupFetch(tid); } bool @@ -212,6 +212,11 @@ void Pipeline::drainResume() { DPRINTF(Drain, "Drain resume\n"); + + for (ThreadID tid = 0; tid < cpu.numThreads; tid++) { + fetch1.wakeupFetch(tid); + } + execute.drainResume(); } |