aboutsummaryrefslogtreecommitdiffhomepage
path: root/src
diff options
context:
space:
mode:
authorGravatar bunnei <ericbunnie@gmail.com>2014-05-22 18:47:42 -0400
committerGravatar bunnei <ericbunnie@gmail.com>2014-05-22 18:47:42 -0400
commit481d936d34c595b994f48b00819bb2c4bcfa7e57 (patch)
tree8fdfe8c688075e8de5f094b05b31cafa70510b6f /src
parent6a78be5930fd5eabbea740a5cf17efa5a7f1bc98 (diff)
arm_interpreter: fixed load context to currently resume a thread
Diffstat (limited to 'src')
-rw-r--r--src/core/arm/interpreter/arm_interpreter.cpp5
1 files changed, 4 insertions, 1 deletions
diff --git a/src/core/arm/interpreter/arm_interpreter.cpp b/src/core/arm/interpreter/arm_interpreter.cpp
index a9ec9482..17f787b8 100644
--- a/src/core/arm/interpreter/arm_interpreter.cpp
+++ b/src/core/arm/interpreter/arm_interpreter.cpp
@@ -115,7 +115,7 @@ void ARM_Interpreter::SaveContext(ThreadContext& ctx) {
ctx.lr = state->Reg[14];
ctx.pc = state->pc;
ctx.cpsr = state->Cpsr;
-
+
ctx.fpscr = state->VFP[1];
ctx.fpexc = state->VFP[2];
}
@@ -136,4 +136,7 @@ void ARM_Interpreter::LoadContext(const ThreadContext& ctx) {
state->VFP[1] = ctx.fpscr;
state->VFP[2] = ctx.fpexc;
+
+ state->Reg[15] = ctx.pc;
+ state->NextInstr = RESUME;
}