diff options
author | Steve Reinhardt <steve.reinhardt@amd.com> | 2014-05-12 14:23:31 -0700 |
---|---|---|
committer | Steve Reinhardt <steve.reinhardt@amd.com> | 2014-05-12 14:23:31 -0700 |
commit | 109908c2a6322d1fa31c0b486ea2bada14a292b8 (patch) | |
tree | 08f7341bba700aeab9b3ee7974bcbad6b0cc0052 /src/arch/alpha/process.cc | |
parent | 72403cb59561a37d42e5b5bc4b0499ddaf9012cf (diff) | |
download | gem5-109908c2a6322d1fa31c0b486ea2bada14a292b8.tar.xz |
syscall emulation: clean up & comment SyscallReturn
Diffstat (limited to 'src/arch/alpha/process.cc')
-rw-r--r-- | src/arch/alpha/process.cc | 9 |
1 files changed, 4 insertions, 5 deletions
diff --git a/src/arch/alpha/process.cc b/src/arch/alpha/process.cc index 07208fb29..8cc83b0fd 100644 --- a/src/arch/alpha/process.cc +++ b/src/arch/alpha/process.cc @@ -220,19 +220,18 @@ AlphaLiveProcess::setSyscallArg(ThreadContext *tc, } void -AlphaLiveProcess::setSyscallReturn(ThreadContext *tc, - SyscallReturn return_value) +AlphaLiveProcess::setSyscallReturn(ThreadContext *tc, SyscallReturn sysret) { // check for error condition. Alpha syscall convention is to // indicate success/failure in reg a3 (r19) and put the // return value itself in the standard return value reg (v0). - if (return_value.successful()) { + if (sysret.successful()) { // no error tc->setIntReg(SyscallSuccessReg, 0); - tc->setIntReg(ReturnValueReg, return_value.value()); + tc->setIntReg(ReturnValueReg, sysret.returnValue()); } else { // got an error, return details tc->setIntReg(SyscallSuccessReg, (IntReg)-1); - tc->setIntReg(ReturnValueReg, -return_value.value()); + tc->setIntReg(ReturnValueReg, sysret.errnoValue()); } } |