diff options
author | Ali Saidi <saidi@eecs.umich.edu> | 2006-03-03 14:24:15 -0500 |
---|---|---|
committer | Ali Saidi <saidi@eecs.umich.edu> | 2006-03-03 14:24:15 -0500 |
commit | 0bf25c595364f7ca9b5e632c84fcf0d35dc3490a (patch) | |
tree | 2bb67579d3c562ee23990dcc8d889feece7177e3 /kern | |
parent | 51647e7bec8e8607fc5713b4ace2c24ce8a7455a (diff) | |
download | gem5-0bf25c595364f7ca9b5e632c84fcf0d35dc3490a.tar.xz |
First cut at moving alpha specefic stuff out of /sim/system* into
arch/alpha/system*.
SConscript:
dev/alpha_console.cc:
dev/alpha_console.hh:
kern/freebsd/freebsd_system.cc:
kern/freebsd/freebsd_system.hh:
kern/kernel_stats.cc:
kern/linux/linux_system.cc:
kern/linux/linux_system.hh:
kern/tru64/tru64_system.cc:
kern/tru64/tru64_system.hh:
sim/pseudo_inst.cc:
sim/system.cc:
sim/system.hh:
First cut at moving alpha specefic stuff out of /sim/system*
--HG--
extra : convert_revision : eba58f537fc04e605af4fc216e184b074a44c8a0
Diffstat (limited to 'kern')
-rw-r--r-- | kern/freebsd/freebsd_system.cc | 5 | ||||
-rw-r--r-- | kern/freebsd/freebsd_system.hh | 2 | ||||
-rw-r--r-- | kern/kernel_stats.cc | 2 | ||||
-rw-r--r-- | kern/linux/linux_system.cc | 9 | ||||
-rw-r--r-- | kern/linux/linux_system.hh | 2 | ||||
-rw-r--r-- | kern/tru64/tru64_system.cc | 4 | ||||
-rw-r--r-- | kern/tru64/tru64_system.hh | 5 |
7 files changed, 16 insertions, 13 deletions
diff --git a/kern/freebsd/freebsd_system.cc b/kern/freebsd/freebsd_system.cc index cead8caaf..a9052081a 100644 --- a/kern/freebsd/freebsd_system.cc +++ b/kern/freebsd/freebsd_system.cc @@ -33,6 +33,7 @@ * */ +#include "arch/alpha/system.hh" #include "base/loader/symtab.hh" #include "cpu/exec_context.hh" #include "kern/freebsd/freebsd_system.hh" @@ -49,7 +50,7 @@ using namespace std; using namespace TheISA; FreebsdSystem::FreebsdSystem(Params *p) - : System(p) + : AlphaSystem(p) { /** * Any time DELAY is called just skip the function. @@ -143,7 +144,7 @@ END_INIT_SIM_OBJECT_PARAMS(FreebsdSystem) CREATE_SIM_OBJECT(FreebsdSystem) { - System::Params *p = new System::Params; + AlphaSystem::Params *p = new AlphaSystem::Params; p->name = getInstanceName(); p->boot_cpu_frequency = boot_cpu_frequency; p->memctrl = memctrl; diff --git a/kern/freebsd/freebsd_system.hh b/kern/freebsd/freebsd_system.hh index ecb842ec6..f87fb03ef 100644 --- a/kern/freebsd/freebsd_system.hh +++ b/kern/freebsd/freebsd_system.hh @@ -31,7 +31,7 @@ #include "kern/system_events.hh" -class FreebsdSystem : public System +class FreebsdSystem : public AlphaSystem { private: class SkipCalibrateClocksEvent : public SkipFuncEvent diff --git a/kern/kernel_stats.cc b/kern/kernel_stats.cc index 50bbaee00..6d2f2a774 100644 --- a/kern/kernel_stats.cc +++ b/kern/kernel_stats.cc @@ -47,7 +47,7 @@ Statistics::Statistics(ExecContext *context) : xc(context), idleProcess((Addr)-1), themode(kernel), lastModeTick(0), iplLast(0), iplLastTick(0) { - bin_int = xc->system->params->bin_int; + bin_int = xc->system->params()->bin_int; } void diff --git a/kern/linux/linux_system.cc b/kern/linux/linux_system.cc index c5a9e184a..db13da0ec 100644 --- a/kern/linux/linux_system.cc +++ b/kern/linux/linux_system.cc @@ -35,6 +35,7 @@ * up boot time. */ +#include "arch/alpha/system.hh" #include "base/loader/symtab.hh" #include "cpu/exec_context.hh" #include "cpu/base.hh" @@ -53,7 +54,7 @@ using namespace std; using namespace TheISA; LinuxSystem::LinuxSystem(Params *p) - : System(p) + : AlphaSystem(p) { Addr addr = 0; Addr paddr = 0; @@ -73,7 +74,7 @@ LinuxSystem::LinuxSystem(Params *p) paddr = vtophys(physmem, CommandLine()); char *commandline = (char *)physmem->dma_addr(paddr, sizeof(uint64_t)); if (commandline) - strncpy(commandline, params->boot_osflags.c_str(), CommandLineSize); + strncpy(commandline, params()->boot_osflags.c_str(), CommandLineSize); /** * find the address of the est_cycle_freq variable and insert it @@ -146,7 +147,7 @@ LinuxSystem::LinuxSystem(Params *p) printThreadEvent = NULL; } - if (params->bin_int) { + if (params()->bin_int) { intStartEvent = addPalFuncEvent<InterruptStartEvent>("sys_int_21"); if (!intStartEvent) panic("could not find symbol: sys_int_21\n"); @@ -277,7 +278,7 @@ END_INIT_SIM_OBJECT_PARAMS(LinuxSystem) CREATE_SIM_OBJECT(LinuxSystem) { - System::Params *p = new System::Params; + AlphaSystem::Params *p = new AlphaSystem::Params; p->name = getInstanceName(); p->boot_cpu_frequency = boot_cpu_frequency; p->memctrl = memctrl; diff --git a/kern/linux/linux_system.hh b/kern/linux/linux_system.hh index f883bef93..9fecb7290 100644 --- a/kern/linux/linux_system.hh +++ b/kern/linux/linux_system.hh @@ -40,7 +40,7 @@ class PrintThreadInfo; * It points to objects that are the system binaries to load and patches them * appropriately to work in simulator. */ -class LinuxSystem : public System +class LinuxSystem : public AlphaSystem { private: class SkipDelayLoopEvent : public SkipFuncEvent diff --git a/kern/tru64/tru64_system.cc b/kern/tru64/tru64_system.cc index ebcdc1553..8337d38db 100644 --- a/kern/tru64/tru64_system.cc +++ b/kern/tru64/tru64_system.cc @@ -42,7 +42,7 @@ using namespace std; Tru64System::Tru64System(Tru64System::Params *p) - : System(p) + : AlphaSystem(p) { Addr addr = 0; if (kernelSymtab->findAddress("enable_async_printf", addr)) { @@ -136,7 +136,7 @@ END_INIT_SIM_OBJECT_PARAMS(Tru64System) CREATE_SIM_OBJECT(Tru64System) { - System::Params *p = new System::Params; + AlphaSystem::Params *p = new AlphaSystem::Params; p->name = getInstanceName(); p->boot_cpu_frequency = boot_cpu_frequency; p->memctrl = memctrl; diff --git a/kern/tru64/tru64_system.hh b/kern/tru64/tru64_system.hh index d4eb5a59a..38e6d9dd7 100644 --- a/kern/tru64/tru64_system.hh +++ b/kern/tru64/tru64_system.hh @@ -29,8 +29,9 @@ #ifndef __KERN_TRU64_TRU64_SYSTEM_HH__ #define __KERN_TRU64_TRU64_SYSTEM_HH__ -#include "sim/system.hh" +#include "arch/alpha/system.hh" #include "arch/isa_traits.hh" +#include "sim/system.hh" class ExecContext; @@ -42,7 +43,7 @@ class DebugPrintfEvent; class DumpMbufEvent; class AlphaArguments; -class Tru64System : public System +class Tru64System : public AlphaSystem { private: #ifdef DEBUG |