Add in a new translating port that allows syscalls to translate addresses via the page table before accessing the memory port.

Other compile issues cleaned up.

SConscript:
    Changes to compile the new Translating Port.
    Split out memtester and eio support, will rework them back in after first getting a simpleCPU to work
arch/alpha/alpha_linux_process.cc:
arch/alpha/alpha_tru64_process.cc:
sim/syscall_emul.cc:
sim/syscall_emul.hh:
    Changes to use the new translating Port.
cpu/exec_context.cc:
cpu/exec_context.hh:
    Create a translating port in each execution context.
sim/process.cc:
    Fix the way we do proxy memory

--HG--
extra : convert_revision : 3d33218fe8b425a5d9ce24757f1112b4aa6001fd
This commit is contained in:
Ron Dreslinski
2006-02-20 23:26:39 -05:00
parent b74f1b829d
commit d96de69abc
10 changed files with 288 additions and 115 deletions

View File

@@ -93,7 +93,7 @@ base_sources = Split('''
mem/memory.cc
mem/page_table.cc
mem/physical.cc
mem/proxy.cc
mem/translating_port.cc
python/pyconfig.cc
python/embedded_py.cc
@@ -294,14 +294,21 @@ syscall_emulation_sources = Split('''
arch/alpha/alpha_common_syscall_emul.cc
arch/alpha/alpha_linux_process.cc
arch/alpha/alpha_tru64_process.cc
cpu/memtest/memtest.cc
encumbered/eio/eio.cc
encumbered/eio/exolex.cc
encumbered/eio/libexo.cc
sim/process.cc
sim/syscall_emul.cc
''')
eio_sources = Split('''
encumbered/eio/eio.cc
''')
memtest_sources = Split('''
cpu/memtest/memtest.cc
''')
targetarch_files = Split('''
alpha_common_syscall_emul.hh
alpha_linux_process.hh