diff options
Diffstat (limited to 'src/sim')
-rw-r--r-- | src/sim/process.cc | 2 | ||||
-rw-r--r-- | src/sim/process.hh | 5 |
2 files changed, 5 insertions, 2 deletions
diff --git a/src/sim/process.cc b/src/sim/process.cc index db013aee0..e7f682aad 100644 --- a/src/sim/process.cc +++ b/src/sim/process.cc @@ -437,7 +437,7 @@ Process::map(Addr vaddr, Addr paddr, int size, bool cacheable) } void -Process::syscall(int64_t callnum, ThreadContext *tc, Fault *fault) +Process::doSyscall(int64_t callnum, ThreadContext *tc, Fault *fault) { numSyscalls++; diff --git a/src/sim/process.hh b/src/sim/process.hh index 5d4a9672e..70be3ab8a 100644 --- a/src/sim/process.hh +++ b/src/sim/process.hh @@ -63,6 +63,9 @@ class ThreadContext; class Process : public SimObject { + protected: + void doSyscall(int64_t callnum, ThreadContext *tc, Fault *fault); + public: Process(ProcessParams *params, EmulationPageTable *pTable, ObjectFile *obj_file); @@ -74,7 +77,7 @@ class Process : public SimObject void initState() override; DrainState drain() override; - virtual void syscall(int64_t callnum, ThreadContext *tc, Fault *fault); + virtual void syscall(ThreadContext *tc, Fault *fault) = 0; virtual RegVal getSyscallArg(ThreadContext *tc, int &i) = 0; virtual RegVal getSyscallArg(ThreadContext *tc, int &i, int width); virtual void setSyscallReturn(ThreadContext *tc, |