diff options
Diffstat (limited to 'src/arch/arm/faults.cc')
-rw-r--r-- | src/arch/arm/faults.cc | 9 |
1 files changed, 1 insertions, 8 deletions
diff --git a/src/arch/arm/faults.cc b/src/arch/arm/faults.cc index 85e9fa7e9..5a7b8e8ea 100644 --- a/src/arch/arm/faults.cc +++ b/src/arch/arm/faults.cc @@ -845,15 +845,8 @@ SupervisorCall::invoke(ThreadContext *tc, const StaticInstPtr &inst) // As of now, there isn't a 32 bit thumb version of this instruction. assert(!machInst.bigThumb); - uint32_t callNum; - CPSR cpsr = tc->readMiscReg(MISCREG_CPSR); - OperatingMode mode = (OperatingMode)(uint8_t)cpsr.mode; - if (opModeIs64(mode)) - callNum = tc->readIntReg(INTREG_X8); - else - callNum = tc->readIntReg(INTREG_R7); Fault fault; - tc->syscall(callNum, &fault); + tc->syscall(&fault); // Advance the PC since that won't happen automatically. PCState pc = tc->pcState(); |