gem5/cpu/o3
Nathan Binkert 8a0bc84022 Allow CPUs to specify their own CPU ids.
Make the AlphaConsole calculate the number of CPUs instead
of passing that in as a parameter.

cpu/base.cc:
    pass the desired cpu_id into registerExecContext, offsetting it
    by the thread number.  a cpu_id of -1 means that it should be
    generated for you.
cpu/base.hh:
    Take the cpu_id as a parameter
cpu/o3/alpha_cpu_builder.cc:
cpu/simple/cpu.cc:
    Accept the cpu_id as a parameter
    while we're here, let's remove the multiplier since it is
    not used.
dev/alpha_console.cc:
    don't take the number of CPUs as a parameter.  Calculate it from
    the system based on the number of CPUs that have been registered.
    move init() code to startup() to ensure that all CPUs are registerd.
dev/alpha_console.hh:
python/m5/objects/AlphaConsole.py:
    don't take the number of CPUs as a parameter.
    move init() code to startup() to ensure that all CPUs are registerd.
python/m5/objects/BaseCPU.py:
    take the cpu_id as a parameter.  Default it to -1 which means
    that it will be generated.
sim/system.cc:
    allow the registerExecContext functioin to take a desired
    cpu_id as a parameter.  Check to ensure that the id isn't
    already used.  Accept -1 as a request to have an id assigned.
sim/system.hh:
    keep track of the number of registered exec contexts.
    provide a function for accessing the number of exec contexts
    that checks to ensure that they are all registered correctly.

--HG--
extra : convert_revision : 8e12f96ff8a49fa16cdbbdb4c05c651376c35788
2005-06-29 01:20:41 -04:00
..
2bit_local_pred.cc shuffle files around for new directory structure 2005-06-04 20:50:10 -04:00
2bit_local_pred.hh Update #defines for the O3CPU. Also include the copyright. 2005-06-05 03:25:26 -04:00
alpha_cpu.cc shuffle files around for new directory structure 2005-06-04 20:50:10 -04:00
alpha_cpu.hh Update #defines for the O3CPU. Also include the copyright. 2005-06-05 03:25:26 -04:00
alpha_cpu_builder.cc Allow CPUs to specify their own CPU ids. 2005-06-29 01:20:41 -04:00
alpha_cpu_impl.hh Update #defines for the O3CPU. Also include the copyright. 2005-06-05 03:25:26 -04:00
alpha_dyn_inst.cc shuffle files around for new directory structure 2005-06-04 20:50:10 -04:00
alpha_dyn_inst.hh Update #defines for the O3CPU. Also include the copyright. 2005-06-05 03:25:26 -04:00
alpha_dyn_inst_impl.hh shuffle files around for new directory structure 2005-06-04 20:50:10 -04:00
alpha_impl.hh Update #defines for the O3CPU. Also include the copyright. 2005-06-05 03:25:26 -04:00
alpha_params.hh Update #defines for the O3CPU. Also include the copyright. 2005-06-05 03:25:26 -04:00
bpred_unit.cc shuffle files around for new directory structure 2005-06-04 20:50:10 -04:00
bpred_unit.hh shuffle files around for new directory structure 2005-06-04 20:50:10 -04:00
bpred_unit_impl.hh shuffle files around for new directory structure 2005-06-04 20:50:10 -04:00
btb.cc shuffle files around for new directory structure 2005-06-04 20:50:10 -04:00
btb.hh Update #defines for the O3CPU. Also include the copyright. 2005-06-05 03:25:26 -04:00
comm.hh Update #defines for the O3CPU. Also include the copyright. 2005-06-05 03:25:26 -04:00
commit.cc shuffle files around for new directory structure 2005-06-04 20:50:10 -04:00
commit.hh Update #defines for the O3CPU. Also include the copyright. 2005-06-05 03:25:26 -04:00
commit_impl.hh shuffle files around for new directory structure 2005-06-04 20:50:10 -04:00
cpu.cc Update #defines for the O3CPU. Also include the copyright. 2005-06-05 03:25:26 -04:00
cpu.hh Update #defines for the O3CPU. Also include the copyright. 2005-06-05 03:25:26 -04:00
cpu_policy.hh Update #defines for the O3CPU. Also include the copyright. 2005-06-05 03:25:26 -04:00
decode.cc shuffle files around for new directory structure 2005-06-04 20:50:10 -04:00
decode.hh Update #defines for the O3CPU. Also include the copyright. 2005-06-05 03:25:26 -04:00
decode_impl.hh shuffle files around for new directory structure 2005-06-04 20:50:10 -04:00
fetch.cc shuffle files around for new directory structure 2005-06-04 20:50:10 -04:00
fetch.hh Fix minor doxygen issues. 2005-06-05 08:08:29 -04:00
fetch_impl.hh shuffle files around for new directory structure 2005-06-04 20:50:10 -04:00
free_list.cc shuffle files around for new directory structure 2005-06-04 20:50:10 -04:00
free_list.hh Update #defines for the O3CPU. Also include the copyright. 2005-06-05 03:25:26 -04:00
iew.cc shuffle files around for new directory structure 2005-06-04 20:50:10 -04:00
iew.hh Update #defines for the O3CPU. Also include the copyright. 2005-06-05 03:25:26 -04:00
iew_impl.hh shuffle files around for new directory structure 2005-06-04 20:50:10 -04:00
inst_queue.cc shuffle files around for new directory structure 2005-06-04 20:50:10 -04:00
inst_queue.hh Update #defines for the O3CPU. Also include the copyright. 2005-06-05 03:25:26 -04:00
inst_queue_impl.hh shuffle files around for new directory structure 2005-06-04 20:50:10 -04:00
mem_dep_unit.cc shuffle files around for new directory structure 2005-06-04 20:50:10 -04:00
mem_dep_unit.hh Update #defines for the O3CPU. Also include the copyright. 2005-06-05 03:25:26 -04:00
mem_dep_unit_impl.hh shuffle files around for new directory structure 2005-06-04 20:50:10 -04:00
ras.cc shuffle files around for new directory structure 2005-06-04 20:50:10 -04:00
ras.hh Update #defines for the O3CPU. Also include the copyright. 2005-06-05 03:25:26 -04:00
regfile.hh Update #defines for the O3CPU. Also include the copyright. 2005-06-05 03:25:26 -04:00
rename.cc shuffle files around for new directory structure 2005-06-04 20:50:10 -04:00
rename.hh Update #defines for the O3CPU. Also include the copyright. 2005-06-05 03:25:26 -04:00
rename_impl.hh shuffle files around for new directory structure 2005-06-04 20:50:10 -04:00
rename_map.cc shuffle files around for new directory structure 2005-06-04 20:50:10 -04:00
rename_map.hh Fix minor doxygen issues. 2005-06-05 08:08:29 -04:00
rob.cc Update #defines for the O3CPU. Also include the copyright. 2005-06-05 03:25:26 -04:00
rob.hh Fix minor doxygen issues. 2005-06-05 08:08:29 -04:00
rob_impl.hh Update #defines for the O3CPU. Also include the copyright. 2005-06-05 03:25:26 -04:00
sat_counter.cc Many files: 2005-06-05 05:16:00 -04:00
sat_counter.hh Many files: 2005-06-05 05:16:00 -04:00
store_set.cc shuffle files around for new directory structure 2005-06-04 20:50:10 -04:00
store_set.hh Update #defines for the O3CPU. Also include the copyright. 2005-06-05 03:25:26 -04:00
tournament_pred.cc shuffle files around for new directory structure 2005-06-04 20:50:10 -04:00
tournament_pred.hh Update #defines for the O3CPU. Also include the copyright. 2005-06-05 03:25:26 -04:00