diff options
author | Gabe Black <gblack@eecs.umich.edu> | 2006-03-04 03:19:58 -0500 |
---|---|---|
committer | Gabe Black <gblack@eecs.umich.edu> | 2006-03-04 03:19:58 -0500 |
commit | 1e3b221fe38a09d477f306ac837e9f816bcea029 (patch) | |
tree | c093f375a5a0a177e74c2fe92a60f6c5a087602c /sim/system.hh | |
parent | 62d149d9be9627593dc3e89505daa20b349ec116 (diff) | |
parent | 9ad917858763bb44c8e6e22b7bb370fd50d518df (diff) | |
download | gem5-1e3b221fe38a09d477f306ac837e9f816bcea029.tar.xz |
Merge gblack@m5.eecs.umich.edu:/bk/multiarch
into ewok.(none):/home/gblack/m5/multiarch
--HG--
extra : convert_revision : cb6de8d050ac5abb8f61eb5780deeb06e93b1a0c
Diffstat (limited to 'sim/system.hh')
-rw-r--r-- | sim/system.hh | 55 |
1 files changed, 10 insertions, 45 deletions
diff --git a/sim/system.hh b/sim/system.hh index aa697c040..ea482a102 100644 --- a/sim/system.hh +++ b/sim/system.hh @@ -71,21 +71,9 @@ class System : public SimObject /** kernel symbol table */ SymbolTable *kernelSymtab; - /** console symbol table */ - SymbolTable *consoleSymtab; - - /** pal symbol table */ - SymbolTable *palSymtab; - /** Object pointer for the kernel code */ ObjectFile *kernel; - /** Object pointer for the console code */ - ObjectFile *console; - - /** Object pointer for the PAL code */ - ObjectFile *pal; - /** Begining of kernel code */ Addr kernelStart; @@ -97,11 +85,6 @@ class System : public SimObject Kernel::Binning *kernelBinning; -#ifndef NDEBUG - /** Event to halt the simulator if the console calls panic() */ - BreakPCEvent *consolePanicEvent; -#endif - protected: /** @@ -109,7 +92,7 @@ class System : public SimObject * events on to target function executions. See comment in * system.cc for details. */ - Addr fixFuncEventAddr(Addr addr); + virtual Addr fixFuncEventAddr(Addr addr) = 0; /** * Add a function-based event to the given function, to be looked @@ -135,24 +118,10 @@ class System : public SimObject return addFuncEvent<T>(kernelSymtab, lbl); } - /** Add a function-based event to PALcode. */ - template <class T> - T *System::addPalFuncEvent(const char *lbl) - { - return addFuncEvent<T>(palSymtab, lbl); - } - - /** Add a function-based event to the console code. */ - template <class T> - T *System::addConsoleFuncEvent(const char *lbl) - { - return addFuncEvent<T>(consoleSymtab, lbl); - } - public: std::vector<RemoteGDB *> remoteGDB; std::vector<GDBListener *> gdbListen; - bool breakpoint(); + virtual bool breakpoint() = 0; public: struct Params @@ -167,27 +136,21 @@ class System : public SimObject bool bin_int; std::string kernel_path; - std::string console_path; - std::string palcode; - std::string boot_osflags; - std::string readfile; - uint64_t system_type; - uint64_t system_rev; }; - Params *params; + protected: + Params *_params; + + public: System(Params *p); ~System(); void startup(); - public: - /** - * Set the m5AlphaAccess pointer in the console - */ - void setAlphaAccess(Addr access); + const Params *params() const { return (const Params *)_params; } + public: /** * Returns the addess the kernel starts at. * @return address the kernel starts at @@ -224,6 +187,8 @@ class System : public SimObject static int numSystemsRunning; static void printSystems(); + + }; #endif // __SYSTEM_HH__ |