bugfixes for Cyclone r9 change
[picodrive.git] / cpu / Cyclone / OpMove.cpp
index ac2abea..be91b18 100644 (file)
@@ -376,23 +376,20 @@ int OpMovem(int op)
 \r
   OpStart(op,ea,0,1);\r
 \r
+  ot("  ldrh r11,[r4],#2 ;@ r11=register mask\n");\r
+  ot("\n");\r
+  ot(";@ Get the address into r6:\n");\r
+  EaCalc(6,0x003f,cea,size);\r
+\r
 #if !MEMHANDLERS_NEED_PREV_PC\r
   // must save PC, need a spare register\r
   ot("  str r4,[r7,#0x40] ;@ Save PC\n");\r
 #endif\r
-#if !MEMHANDLERS_NEED_CYCLES\r
-  ot("  str r5,[r7,#0x5c] ;@ Save Cycles\n");\r
-#endif\r
-  ot("  ldrh r11,[r4],#2 ;@ r11=register mask\n");\r
 \r
   ot(";@ r4=Register Index*4:\n");\r
   if (decr) ot("  mov r4,#0x40 ;@ order reversed for -(An)\n");\r
   else      ot("  mov r4,#-4\n");\r
   \r
-  ot("\n");\r
-  ot(";@ Get the address into r6:\n");\r
-  EaCalc(6,0x003f,cea,size);\r
-\r
   ot("\n");\r
   ot("  tst r11,r11\n");        // sanity check\r
   ot("  beq NoRegs%.4x\n",op);\r