gem5  v20.1.0.0
Classes | Functions | Variables
process.cc File Reference
#include "arch/arm/linux/process.hh"
#include <sys/syscall.h>
#include "arch/arm/isa_traits.hh"
#include "arch/arm/linux/linux.hh"
#include "base/loader/object_file.hh"
#include "base/trace.hh"
#include "cpu/thread_context.hh"
#include "kern/linux/linux.hh"
#include "sim/process.hh"
#include "sim/syscall_desc.hh"
#include "sim/syscall_emul.hh"
#include "sim/system.hh"

Go to the source code of this file.

Classes

class  SyscallTable32
 
class  SyscallTable64
 

Functions

static SyscallReturn unameFunc32 (SyscallDesc *desc, ThreadContext *tc, VPtr< Linux::utsname > name)
 Target uname() handler. More...
 
static SyscallReturn unameFunc64 (SyscallDesc *desc, ThreadContext *tc, VPtr< Linux::utsname > name)
 Target uname() handler. More...
 
static SyscallReturn setTLSFunc32 (SyscallDesc *desc, ThreadContext *tc, uint32_t tlsPtr)
 Target set_tls() handler. More...
 
static SyscallReturn setTLSFunc64 (SyscallDesc *desc, ThreadContext *tc, uint32_t tlsPtr)
 

Variables

static SyscallTable32 syscallDescs32Low (0)
 
static SyscallTable32 syscallDescs32High (0x900000)
 
static SyscallTable64 syscallDescs64Low (0)
 
static SyscallTable64 syscallDescs64High (0x900000)
 
static SyscallDescTable< ArmLinuxProcess32::SyscallABIprivSyscallDescs32
 
static SyscallDescTable< ArmLinuxProcess64::SyscallABIprivSyscallDescs64
 

Function Documentation

◆ setTLSFunc32()

static SyscallReturn setTLSFunc32 ( SyscallDesc desc,
ThreadContext tc,
uint32_t  tlsPtr 
)
static

◆ setTLSFunc64()

static SyscallReturn setTLSFunc64 ( SyscallDesc desc,
ThreadContext tc,
uint32_t  tlsPtr 
)
static

Definition at line 142 of file process.cc.

References ArmISA::MISCREG_TPIDRRO_EL0, and ThreadContext::setMiscReg().

◆ unameFunc32()

static SyscallReturn unameFunc32 ( SyscallDesc desc,
ThreadContext tc,
VPtr< Linux::utsname name 
)
static

Target uname() handler.

Definition at line 103 of file process.cc.

References ThreadContext::getProcessPtr(), and name().

Referenced by SyscallTable32::SyscallTable32().

◆ unameFunc64()

static SyscallReturn unameFunc64 ( SyscallDesc desc,
ThreadContext tc,
VPtr< Linux::utsname name 
)
static

Target uname() handler.

Definition at line 118 of file process.cc.

References ThreadContext::getProcessPtr(), and name().

Referenced by SyscallTable64::SyscallTable64().

Variable Documentation

◆ privSyscallDescs32

SyscallDescTable<ArmLinuxProcess32::SyscallABI> privSyscallDescs32
static
Initial value:
= {
{ 0xf0001, "breakpoint" },
{ 0xf0002, "cacheflush" },
{ 0xf0003, "usr26" },
{ 0xf0004, "usr32" },
{ 0xf0005, "set_tls", setTLSFunc32 },
}

Definition at line 834 of file process.cc.

Referenced by ArmLinuxProcess32::syscall().

◆ privSyscallDescs64

SyscallDescTable<ArmLinuxProcess64::SyscallABI> privSyscallDescs64
static
Initial value:
= {
{ 0x1002, "cacheflush" },
{ 0x1005, "set_tls", setTLSFunc64 }
}

Definition at line 843 of file process.cc.

Referenced by ArmLinuxProcess64::syscall().

◆ syscallDescs32High

SyscallTable32 syscallDescs32High(0x900000)

◆ syscallDescs32Low

SyscallTable32 syscallDescs32Low(0)
static

◆ syscallDescs64High

SyscallTable64 syscallDescs64High(0x900000)

◆ syscallDescs64Low

SyscallTable64 syscallDescs64Low(0)
static
setTLSFunc32
static SyscallReturn setTLSFunc32(SyscallDesc *desc, ThreadContext *tc, uint32_t tlsPtr)
Target set_tls() handler.
Definition: process.cc:133
setTLSFunc64
static SyscallReturn setTLSFunc64(SyscallDesc *desc, ThreadContext *tc, uint32_t tlsPtr)
Definition: process.cc:142

Generated on Wed Sep 30 2020 14:02:18 for gem5 by doxygen 1.8.17