diff gen_x86.c @ 1298:d5a47597b61f

Prevent blowing past our native translated instruction size of 255 bytes when translating movem with a large register list. Fixes bug in which Fantastic Dizzy was completely broken on 32-bit builds
author Michael Pavone <pavone@retrodev.com>
date Sat, 25 Mar 2017 00:21:32 -0700
parents 0649cd8ca097
children 101b5ce682fe
line wrap: on
line diff
--- a/gen_x86.c	Wed Mar 22 22:16:39 2017 -0700
+++ b/gen_x86.c	Sat Mar 25 00:21:32 2017 -0700
@@ -1999,9 +1999,10 @@
 	code->cur = out;
 }
 
-
+volatile int foo;
 void call(code_info *code, code_ptr fun)
 {
+	foo = *fun;
 	code->stack_off += sizeof(void *);
 	int32_t adjust = 0;
 	if (code->stack_off & 0xF) {
@@ -2064,6 +2065,11 @@
 	code->cur = out;
 }
 
+void rts(code_info *code)
+{
+	retn(code);
+}
+
 void cdq(code_info *code)
 {
 	check_alloc_code(code, 1);