changeset 443:9ac3828ea560

Fix sign flag on swap
author Mike Pavone <pavone@retrodev.com>
date Wed, 17 Jul 2013 00:23:45 -0700
parents 1a48b31f5316
children cc754a309ead
files m68k_to_x86.c
diffstat 1 files changed, 3 insertions(+), 0 deletions(-) [+]
line wrap: on
line diff
--- a/m68k_to_x86.c	Wed Jul 17 00:18:28 2013 -0700
+++ b/m68k_to_x86.c	Wed Jul 17 00:23:45 2013 -0700
@@ -3840,9 +3840,12 @@
 		dst = cycles(dst, BUS);
 		if (src_op.mode == MODE_REG_DIRECT) {
 			dst = rol_ir(dst, 16, src_op.base, SZ_D);
+			dst = cmp_ir(dst, 0, src_op.base, SZ_D);
 		} else{
 			dst = rol_irdisp8(dst, 16, src_op.base, src_op.disp, SZ_D);
+			dst = cmp_irdisp8(dst, 0, src_op.base, src_op.disp, SZ_D);
 		}
+		
 		dst = mov_ir(dst, 0, FLAG_C, SZ_B);
 		dst = setcc_r(dst, CC_Z, FLAG_Z);
 		dst = setcc_r(dst, CC_S, FLAG_N);