X-Git-Url: https://git.libre-soc.org/?a=blobdiff_plain;f=src%2Fcpu%2Finorder%2Finorder_cpu_builder.cc;h=569652bd294a34d8226834c888c4b5f8d7ba17bc;hb=1eec115c31395e2819c073a1859d75eb5933dac2;hp=0088a3bd96bcaadde49252c8005312fef50fa4c0;hpb=30cd2d21fad6c12e2540672f315f561c9a1643ec;p=gem5.git diff --git a/src/cpu/inorder/inorder_cpu_builder.cc b/src/cpu/inorder/inorder_cpu_builder.cc index 0088a3bd9..569652bd2 100644 --- a/src/cpu/inorder/inorder_cpu_builder.cc +++ b/src/cpu/inorder/inorder_cpu_builder.cc @@ -31,30 +31,31 @@ #include -#include "cpu/base.hh" -#include "cpu/inst_seq.hh" -#include "cpu/static_inst.hh" #include "cpu/inorder/cpu.hh" #include "cpu/inorder/inorder_dyn_inst.hh" #include "cpu/inorder/pipeline_traits.hh" +#include "cpu/base.hh" +#include "cpu/inst_seq.hh" +#include "cpu/static_inst.hh" #include "params/InOrderCPU.hh" +#include "sim/full_system.hh" InOrderCPU * InOrderCPUParams::create() { - int actual_num_threads = - (numThreads >= workload.size()) ? numThreads : workload.size(); - - if (workload.size() == 0) { - fatal("Must specify at least one workload!"); + ThreadID actual_num_threads; + if (FullSystem) { + // Full-system only supports a single thread for the moment. + actual_num_threads = 1; + } else { + actual_num_threads = + (numThreads >= workload.size()) ? numThreads : workload.size(); + + if (workload.size() == 0) { + fatal("Must specify at least one workload!"); + } } numThreads = actual_num_threads; - - instShiftAmt = 2; - return new InOrderCPU(this); } - - -