diff options
author | Ali Saidi <Ali.Saidi@ARM.com> | 2012-03-09 09:59:26 -0500 |
---|---|---|
committer | Ali Saidi <Ali.Saidi@ARM.com> | 2012-03-09 09:59:26 -0500 |
commit | 3ce2d0fad04201b168dd9847a5120c80408f6498 (patch) | |
tree | 76c86f659e55295c3b9d85b3d424bf8fa3b35765 /src/arch/alpha/system.hh | |
parent | ec1ef24895de75e8408398492ee8190866650bb5 (diff) | |
download | gem5-3ce2d0fad04201b168dd9847a5120c80408f6498.tar.xz |
System: Move code in initState() back into constructor whenever possible.
The change to port proxies recently moved code out of the constructor into
initState(). This is needed for code that loads data into memory, however
for code that setups symbol tables, kernel based events, etc this is the wrong
thing to do as that code is only called when a checkpoint isn't being restored
from.
Diffstat (limited to 'src/arch/alpha/system.hh')
-rw-r--r-- | src/arch/alpha/system.hh | 10 |
1 files changed, 10 insertions, 0 deletions
diff --git a/src/arch/alpha/system.hh b/src/arch/alpha/system.hh index 0e809cb94..d832dfe77 100644 --- a/src/arch/alpha/system.hh +++ b/src/arch/alpha/system.hh @@ -62,6 +62,10 @@ class AlphaSystem : public System virtual void serialize(std::ostream &os); virtual void unserialize(Checkpoint *cp, const std::string §ion); + /** Override loadState to provide a path to call setupFuncEvents() + */ + virtual void loadState(Checkpoint *cp); + /** * Set the m5AlphaAccess pointer in the console */ @@ -89,6 +93,12 @@ class AlphaSystem : public System const Params *params() const { return (const Params *)_params; } + + /** Setup all the function events. Must be done after init() for Alpha since + * fixFuncEvent() requires a function port + */ + virtual void setupFuncEvents(); + /** Add a function-based event to PALcode. */ template <class T> T * |