From 0d4ef1fc9ff0ca6a9e56c2f7aa72446ddeffb9cf Mon Sep 17 00:00:00 2001 From: Matthew Flatt Date: Wed, 5 Aug 2009 12:36:27 +0000 Subject: [PATCH] complain when the up-to-3-arguments JIT constraint is broken svn: r15674 --- src/mzscheme/src/lightning/i386/core-common.h | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/src/mzscheme/src/lightning/i386/core-common.h b/src/mzscheme/src/lightning/i386/core-common.h index 2b23409a1e..fa4197e4da 100644 --- a/src/mzscheme/src/lightning/i386/core-common.h +++ b/src/mzscheme/src/lightning/i386/core-common.h @@ -284,7 +284,11 @@ static jit_state _jit; #define jit_pushr_p(rs) jit_pushr_ul(rs) #define jit_popr_p(rs) jit_popr_ul(rs) -#define jit_prepare(nint) jit_prepare_i((nint)) +static void jit_check_arg_count(int n) { + if (n > 3) printf("jit_prepare: arg count must be less than 3 for x86_64!\n"); +} + +#define jit_prepare(nint) (jit_check_arg_count(nint), jit_prepare_i((nint))) #define jit_pusharg_c(rs) jit_pusharg_i(rs) #define jit_pusharg_s(rs) jit_pusharg_i(rs) #define jit_pusharg_uc(rs) jit_pusharg_i(rs)