gem5/cpu
Steve Reinhardt 7976794aad Restructuring of LiveProcess etc. to support multiple emulated OS syscall
interfaces, and specific support for Alpha Linux.  Split syscall emulation
functions into several groups, based on whether they depend on the specific
OS and/or architecture (and all combinations of above), including the use of
template functions to support syscalls with slightly different constants
or interface structs.

arch/alpha/alpha_tru64_process.cc:
    Incorporate full Tru64 object definition here, including structure and constant definitions.
    This way we can wrap all of the functions inside the object, and not worry about namespace
    conflicts because no one outside this file will ever see it.
base/loader/aout_object.cc:
base/loader/aout_object.hh:
base/loader/ecoff_object.cc:
base/loader/ecoff_object.hh:
base/loader/elf_object.cc:
base/loader/elf_object.hh:
base/loader/object_file.cc:
base/loader/object_file.hh:
    Add enums to ObjectFile to indicate the object's architecture and operating system.
cpu/exec_context.cc:
    prog.hh is now process.hh
cpu/exec_context.hh:
    prog.hh is now process.hh
    move architecture-specific syscall arg accessors into ExecContext
cpu/simple_cpu/simple_cpu.cc:
    No need to include prog.hh (which has been renamed)
sim/process.cc:
sim/process.hh:
    LiveProcess is now effectively an abstract base class.
    New LiveProcess::create() function takes an object file and dynamically picks the
    appropriate subclass of LiveProcess to handle the syscall interface that file expects
    (currently Tru64 or Linux).

--HG--
rename : arch/alpha/fake_syscall.cc => arch/alpha/alpha_tru64_process.cc
rename : sim/prog.cc => sim/process.cc
rename : sim/prog.hh => sim/process.hh
extra : convert_revision : 4a03ca7d94a34177cb672931f8aae83a6bad179a
2003-12-01 19:34:38 -08:00
..
full_cpu File moves for the reorg. Tree is in broken state until I commit the makefile and 2003-10-10 09:57:26 -07:00
memtest Various fixes to memory code. 2003-11-06 18:39:26 -05:00
simple_cpu Restructuring of LiveProcess etc. to support multiple emulated OS syscall 2003-12-01 19:34:38 -08:00
base_cpu.cc Initial support for CPU switching. New SamplingCPU object encompasses a set 2003-10-23 19:07:52 -07:00
base_cpu.hh Make FullCPU schedule its TickEvent when one of its contexts becomes active. 2003-10-24 23:02:36 -07:00
exec_context.cc Restructuring of LiveProcess etc. to support multiple emulated OS syscall 2003-12-01 19:34:38 -08:00
exec_context.hh Restructuring of LiveProcess etc. to support multiple emulated OS syscall 2003-12-01 19:34:38 -08:00
exetrace.cc Minor changes to instruction trace output. 2003-11-03 20:26:51 -08:00
exetrace.hh Get rid of obsolete code, most of it '#if 0'ed anyway. 2003-10-19 17:30:26 -07:00
inst_seq.hh File moves for the reorg. Tree is in broken state until I commit the makefile and 2003-10-10 09:57:26 -07:00
intr_control.cc General fixes for Sampling CPU in full system mode, and serialization of sampling CPU 2003-11-02 19:38:22 -05:00
intr_control.hh General fixes for Sampling CPU in full system mode, and serialization of sampling CPU 2003-11-02 19:38:22 -05:00
pc_event.cc Remove all of the Tru64 specific stuff from the base System object 2003-10-14 12:19:59 -04:00
pc_event.hh Move to non-architecture specific MemReq 2003-10-23 16:40:08 -04:00
static_inst.cc Make include paths explicit and update makefile accordingly. 2003-10-10 11:09:00 -07:00
static_inst.hh Rename CPU object to FullCPU 2003-10-13 22:21:19 -07:00