summaryrefslogtreecommitdiff
path: root/sim/startup.cc
AgeCommit message (Collapse)Author
2005-01-14Fixes so m5 compiles on gcc 3.4, which has much stricter syntax. Most ↵Kevin Lim
changes come from templated code, which is evaluated slightly differently than in previous versions of gcc. arch/alpha/alpha_linux_process.cc: Alphabetize includes. arch/alpha/vptr.hh: Change the constants that are being used for alpha pagebytes to come from the ISA. base/random.hh: cpu/static_inst.cc: sim/param.cc: Fix up template syntax. base/range.hh: Include iostream for << operator. base/res_list.hh: base/statistics.hh: cpu/simple_cpu/simple_cpu.hh: cpu/static_inst.hh: sim/eventq.hh: sim/param.hh: Fixup for templated code to resolve different scope lookup in gcc 3.4. This defers the lookup of the function/variable until actual instantiation time by making it dependent on the templated class/function. base/trace.cc: Fix call to new. base/trace.hh: Fix up #define to have full path. cpu/base_cpu.cc: Fix up call to new. dev/etherlink.hh: dev/ns_gige.hh: dev/sinic.hh: Fixup for friend class/function declaration. g++ 3.4 no longer allows typedefs to be declared as a friend class. dev/pcidev.hh: Fix up re-definition of access level to params. kern/linux/linux_syscalls.hh: kern/tru64/tru64_syscalls.hh: Fix up header. Fix up template syntax. sim/serialize.cc: Include errno.h. sim/startup.cc: Change startupq. queue was getting destructed before all things had called ~StartupCallback(), which lead to a segfault. This puts startupq in global space, and we allocate it ourselves. Other code may be similar to this and may need changing in the future. sim/syscall_emul.hh: Include cpu/exec_context.hh and sim/process.hh, as forward declarations are no longer sufficient. sim/universe.cc: Include errno.h --HG-- extra : convert_revision : e49d08ee89eb06a28351f02bafc028ca6652d5af
2004-11-03add a new phase to the simulator. Basically the simulator now goesNathan Binkert
through the following phases. 1) Construct all param contexts 2) Call the checkParams() on each context 3) Build the configuration hierarchy 4) Construct all SimObjects 5) Initialize all SimObjects by calling init() on each one 6) Unserialize the checkpoint 7) Register all statisitcs 8) Check validity of all statistics (after that, no new stats) 9) Reset all stats. 10) Call SimStartup() which calls startup() on all SimObjects, ParamContexts, and any other object deriving from StartupCallback SConscript: no more SimInit() we have SimStartup() now sim/param.hh: Make all params have a startup callback. sim/sim_events.cc: the init callbacks no longer exist. We can simplify code by using startup(). sim/sim_object.hh: Make all SimObjects derive from StartupCallback --HG-- extra : convert_revision : ab81e259eb5510cc597f7bacb2bfb619fb4cc15f