From cead68a78189f764a98be88206592884cdde75ec Mon Sep 17 00:00:00 2001 From: Andreas Hansson Date: Wed, 4 Sep 2013 13:22:55 -0400 Subject: [PATCH] alpha: Move system virtProxy to Alpha only This patch moves the system virtual port proxy to the Alpha system only to make the resurrection of the NOISA slightly less painful. Alpha is the only ISA that is actually using it. --- src/arch/alpha/system.cc | 2 +- src/arch/alpha/system.hh | 6 ++++++ src/sim/system.cc | 1 - src/sim/system.hh | 3 +-- 4 files changed, 8 insertions(+), 4 deletions(-) diff --git a/src/arch/alpha/system.cc b/src/arch/alpha/system.cc index f8e65015a7..3ebc02b64b 100644 --- a/src/arch/alpha/system.cc +++ b/src/arch/alpha/system.cc @@ -45,7 +45,7 @@ using namespace AlphaISA; AlphaSystem::AlphaSystem(Params *p) - : System(p), intrFreq(0) + : System(p), intrFreq(0), virtProxy(getSystemPort(), p->cache_line_size) { consoleSymtab = new SymbolTable; palSymtab = new SymbolTable; diff --git a/src/arch/alpha/system.hh b/src/arch/alpha/system.hh index bbf281c39e..11a5e90a4c 100644 --- a/src/arch/alpha/system.hh +++ b/src/arch/alpha/system.hh @@ -38,6 +38,7 @@ #include "base/loader/symtab.hh" #include "cpu/pc_event.hh" #include "kern/system_events.hh" +#include "mem/fs_translating_port_proxy.hh" #include "params/AlphaSystem.hh" #include "sim/sim_object.hh" #include "sim/system.hh" @@ -91,6 +92,11 @@ class AlphaSystem : public System protected: Tick intrFreq; + /** + * Proxy used to copy arguments directly into kernel memory. + */ + FSTranslatingPortProxy virtProxy; + const Params *params() const { return (const Params *)_params; } diff --git a/src/sim/system.cc b/src/sim/system.cc index f9799d26f9..24f9dfbada 100644 --- a/src/sim/system.cc +++ b/src/sim/system.cc @@ -79,7 +79,6 @@ System::System(Params *p) pagePtr(0), init_param(p->init_param), physProxy(_systemPort, p->cache_line_size), - virtProxy(_systemPort, p->cache_line_size), loadAddrMask(p->load_addr_mask), nextPID(0), physmem(name() + ".physmem", p->memories), diff --git a/src/sim/system.hh b/src/sim/system.hh index 6e44d0ab55..5058e7b26f 100644 --- a/src/sim/system.hh +++ b/src/sim/system.hh @@ -57,9 +57,9 @@ #include "cpu/pc_event.hh" #include "enums/MemoryMode.hh" #include "kern/system_events.hh" -#include "mem/fs_translating_port_proxy.hh" #include "mem/mem_object.hh" #include "mem/port.hh" +#include "mem/port_proxy.hh" #include "mem/physical.hh" #include "params/System.hh" @@ -211,7 +211,6 @@ class System : public MemObject /** Port to physical memory used for writing object files into ram at * boot.*/ PortProxy physProxy; - FSTranslatingPortProxy virtProxy; /** kernel symbol table */ SymbolTable *kernelSymtab;