changeset 1072:cd6048e0397b

Fixed a bug in call_raxfallback that would cause the call to be omitted completely in the RAX fallback case. This fixes a crash on OpenBSD and possibly other systems
author Michael Pavone <pavone@retrodev.com>
date Tue, 09 Aug 2016 21:29:49 -0700
parents 0fff9bf3a3ee
children 0eb4264c2287
files gen_x86.c
diffstat 1 files changed, 1 insertions(+), 1 deletions(-) [+]
line wrap: on
line diff
--- a/gen_x86.c	Sat Aug 06 07:41:01 2016 -0700
+++ b/gen_x86.c	Tue Aug 09 21:29:49 2016 -0700
@@ -2019,11 +2019,11 @@
 		*(out++) = disp;
 		disp >>= 8;
 		*(out++) = disp;
+		code->cur = out;
 	} else {
 		mov_ir(code, (int64_t)fun, RAX, SZ_PTR);
 		call_r(code, RAX);
 	}
-	code->cur = out;
 }
 
 void call_r(code_info *code, uint8_t dst)