OSDN Git Service

target-tricore: fix rslcx restoring the upper context instead of the lower
authorBastian Koppelmann <kbastian@mail.uni-paderborn.de>
Tue, 5 May 2015 17:39:18 +0000 (19:39 +0200)
committerBastian Koppelmann <kbastian@mail.uni-paderborn.de>
Mon, 11 May 2015 12:25:41 +0000 (14:25 +0200)
Signed-off-by: Bastian Koppelmann <kbastian@mail.uni-paderborn.de>
target-tricore/op_helper.c

index 9907e07..1dc25c2 100644 (file)
@@ -2581,7 +2581,7 @@ void helper_rslcx(CPUTriCoreState *env)
          ((env->PCXI & MASK_PCXI_PCXO) << 6);
     /* {new_PCXI, A[11], A[10], A[11], D[8], D[9], D[10], D[11], A[12],
         A[13], A[14], A[15], D[12], D[13], D[14], D[15]} = M(EA, 16 * word); */
-    restore_context_upper(env, ea, &new_PCXI, &env->gpr_a[11]);
+    restore_context_lower(env, ea, &env->gpr_a[11], &new_PCXI);
     /* M(EA, word) = FCX; */
     cpu_stl_data(env, ea, env->FCX);
     /* M(EA, word) = FCX; */