From 3886c4a8f2e1bfe17cbf7a5a76ba0fc978c6bb48 Mon Sep 17 00:00:00 2001 From: Brandon Potter Date: Wed, 9 Nov 2016 14:27:40 -0600 Subject: syscall_emul: [patch 5/22] remove LiveProcess class and use Process instead The EIOProcess class was removed recently and it was the only other class which derived from Process. Since every Process invocation is also a LiveProcess invocation, it makes sense to simplify the organization by combining the fields from LiveProcess into Process. --- src/arch/arm/linux/process.cc | 20 ++++++++++---------- src/arch/arm/linux/process.hh | 10 +++++----- 2 files changed, 15 insertions(+), 15 deletions(-) (limited to 'src/arch/arm/linux') diff --git a/src/arch/arm/linux/process.cc b/src/arch/arm/linux/process.cc index 36a628d52..b8f40be81 100644 --- a/src/arch/arm/linux/process.cc +++ b/src/arch/arm/linux/process.cc @@ -61,7 +61,7 @@ using namespace ArmISA; /// Target uname() handler. static SyscallReturn -unameFunc32(SyscallDesc *desc, int callnum, LiveProcess *process, +unameFunc32(SyscallDesc *desc, int callnum, Process *process, ThreadContext *tc) { int index = 0; @@ -79,7 +79,7 @@ unameFunc32(SyscallDesc *desc, int callnum, LiveProcess *process, /// Target uname() handler. static SyscallReturn -unameFunc64(SyscallDesc *desc, int callnum, LiveProcess *process, +unameFunc64(SyscallDesc *desc, int callnum, Process *process, ThreadContext *tc) { int index = 0; @@ -97,7 +97,7 @@ unameFunc64(SyscallDesc *desc, int callnum, LiveProcess *process, /// Target set_tls() handler. static SyscallReturn -setTLSFunc32(SyscallDesc *desc, int callnum, LiveProcess *process, +setTLSFunc32(SyscallDesc *desc, int callnum, Process *process, ThreadContext *tc) { int index = 0; @@ -110,7 +110,7 @@ setTLSFunc32(SyscallDesc *desc, int callnum, LiveProcess *process, } static SyscallReturn -setTLSFunc64(SyscallDesc *desc, int callnum, LiveProcess *process, +setTLSFunc64(SyscallDesc *desc, int callnum, Process *process, ThreadContext *tc) { int index = 0; @@ -1589,9 +1589,9 @@ static SyscallDesc privSyscallDescs64[] = { /* 5 */ SyscallDesc("set_tls", setTLSFunc64) }; -ArmLinuxProcess32::ArmLinuxProcess32(LiveProcessParams * params, +ArmLinuxProcess32::ArmLinuxProcess32(ProcessParams * params, ObjectFile *objFile, ObjectFile::Arch _arch) - : ArmLiveProcess32(params, objFile, _arch) + : ArmProcess32(params, objFile, _arch) { SyscallTable table; @@ -1608,9 +1608,9 @@ ArmLinuxProcess32::ArmLinuxProcess32(LiveProcessParams * params, syscallTables.push_back(table); } -ArmLinuxProcess64::ArmLinuxProcess64(LiveProcessParams * params, +ArmLinuxProcess64::ArmLinuxProcess64(ProcessParams * params, ObjectFile *objFile, ObjectFile::Arch _arch) - : ArmLiveProcess64(params, objFile, _arch) + : ArmProcess64(params, objFile, _arch) { SyscallTable table; @@ -1667,7 +1667,7 @@ ArmLinuxProcess64::getDesc(int callnum) void ArmLinuxProcess32::initState() { - ArmLiveProcess32::initState(); + ArmProcess32::initState(); allocateMem(commPage, PageBytes); ThreadContext *tc = system->getThreadContext(contextIds[0]); @@ -1714,6 +1714,6 @@ ArmLinuxProcess32::initState() void ArmLinuxProcess64::initState() { - ArmLiveProcess64::initState(); + ArmProcess64::initState(); // The 64 bit equivalent of the comm page would be set up here. } diff --git a/src/arch/arm/linux/process.hh b/src/arch/arm/linux/process.hh index 670739438..d4b7ca7d3 100644 --- a/src/arch/arm/linux/process.hh +++ b/src/arch/arm/linux/process.hh @@ -65,16 +65,16 @@ class ArmLinuxProcessBits }; /// A process with emulated Arm/Linux syscalls. -class ArmLinuxProcess32 : public ArmLiveProcess32, public ArmLinuxProcessBits +class ArmLinuxProcess32 : public ArmProcess32, public ArmLinuxProcessBits { public: - ArmLinuxProcess32(LiveProcessParams * params, ObjectFile *objFile, + ArmLinuxProcess32(ProcessParams * params, ObjectFile *objFile, ObjectFile::Arch _arch); void initState(); /// Explicitly import the otherwise hidden getSyscallArg - using ArmLiveProcess::getSyscallArg; + using ArmProcess::getSyscallArg; /// A page to hold "kernel" provided functions. The name might be wrong. static const Addr commPage; @@ -83,10 +83,10 @@ class ArmLinuxProcess32 : public ArmLiveProcess32, public ArmLinuxProcessBits }; /// A process with emulated Arm/Linux syscalls. -class ArmLinuxProcess64 : public ArmLiveProcess64, public ArmLinuxProcessBits +class ArmLinuxProcess64 : public ArmProcess64, public ArmLinuxProcessBits { public: - ArmLinuxProcess64(LiveProcessParams * params, ObjectFile *objFile, + ArmLinuxProcess64(ProcessParams * params, ObjectFile *objFile, ObjectFile::Arch _arch); void initState(); -- cgit v1.2.3