changeset 698:0a86e81fa87d

Fixed a missed call to do_sync when updating SR in 68K core
author Michael Pavone <pavone@retrodev.com>
date Mon, 11 May 2015 20:30:13 -0700
parents 7f96bd1cb1be
children d8a1fdec68fc
files m68k_core_x86.c
diffstat 1 files changed, 6 insertions(+), 1 deletions(-) [+]
line wrap: on
line diff
--- a/m68k_core_x86.c	Mon May 11 00:28:47 2015 -0700
+++ b/m68k_core_x86.c	Mon May 11 20:30:13 2015 -0700
@@ -2013,7 +2013,12 @@
 				mov_rdispr(code, src_op->base, src_op->disp, opts->gen.scratch1, SZ_W);
 			}
 		}
-		call(code, inst->op == M68K_MOVE_SR ? opts->set_sr : opts->set_ccr);
+		if (inst->op == M68K_MOVE_SR) {
+			call(code, opts->set_sr);
+			call(code, opts->do_sync);
+		} else {
+			call(code, opts->set_ccr);
+		}
 		cycles(&opts->gen, 12);
 	}
 }