diff options
Diffstat (limited to 'src/arch/alpha/linux')
-rw-r--r-- | src/arch/alpha/linux/process.cc | 7 | ||||
-rw-r--r-- | src/arch/alpha/linux/process.hh | 2 |
2 files changed, 9 insertions, 0 deletions
diff --git a/src/arch/alpha/linux/process.cc b/src/arch/alpha/linux/process.cc index 1ac53a5a0..26d5f26cd 100644 --- a/src/arch/alpha/linux/process.cc +++ b/src/arch/alpha/linux/process.cc @@ -620,3 +620,10 @@ AlphaLinuxProcess::getDesc(int callnum) return NULL; return &syscallDescs[callnum]; } + +void +AlphaLinuxProcess::syscall(ThreadContext *tc, Fault *fault) +{ + doSyscall(tc->readIntReg(0), tc, fault); +} + diff --git a/src/arch/alpha/linux/process.hh b/src/arch/alpha/linux/process.hh index 46c22d288..991ddbd08 100644 --- a/src/arch/alpha/linux/process.hh +++ b/src/arch/alpha/linux/process.hh @@ -42,6 +42,8 @@ class AlphaLinuxProcess : public AlphaProcess /// Constructor. AlphaLinuxProcess(ProcessParams * params, ObjectFile *objFile); + void syscall(ThreadContext *tc, Fault *fault) override; + virtual SyscallDesc* getDesc(int callnum); /// Array of syscall descriptors, indexed by call number. |