Add a functional port that is used to load the original binaries in FS

SE mode now has a port that goes to whatever toplevel mem object the
CPU sees that does the appropriate translation for syscall emulation

SConscript:
    translating port is a syscall emu only source
arch/alpha/system.cc:
base/loader/object_file.cc:
base/loader/object_file.hh:
    Use the new functional port to write the binaries into memory
cpu/cpu_exec_context.cc:
cpu/cpu_exec_context.hh:
cpu/simple/cpu.cc:
    We aren't always going to be writing straight to memory with syscalls
    support writing to a cache
mem/port.hh:
    Add a simple unidirectional functional port that panics on any incoming requests
mem/translating_port.hh:
    make translating port inherit from the simple port
sim/system.cc:
sim/system.hh:
    Add a functional port that is used to load the original binaries

--HG--
extra : convert_revision : 9096866d0b23e3aceea68394abb76e63c0f8fd8d
This commit is contained in:
Ali Saidi
2006-03-30 18:06:00 -05:00
parent e196d20d9d
commit 5936c79ba0
11 changed files with 52 additions and 31 deletions

View File

@@ -92,7 +92,6 @@ base_sources = Split('''
mem/mem_object.cc
mem/physical.cc
mem/port.cc
mem/translating_port.cc
mem/bus.cc
python/pyconfig.cc
@@ -254,6 +253,7 @@ turbolaser_sources = Split('''
# Syscall emulation (non-full-system) sources
syscall_emulation_sources = Split('''
kern/linux/linux.cc
mem/translating_port.cc
mem/page_table.cc
sim/process.cc
sim/syscall_emul.cc