From 87d566aa5ab3cd234df73a57e726cc5a60d12a54 Mon Sep 17 00:00:00 2001 From: Bernhard Urban Date: Sat, 25 Mar 2017 22:06:09 -0400 Subject: [PATCH] [interp] allow more gregs, enable pinvoke17.exe --- mono/mini/interp/interp.c | 2 +- mono/mini/tramp-amd64.c | 2 +- mono/tests/Makefile.am | 1 - 3 files changed, 2 insertions(+), 3 deletions(-) diff --git a/mono/mini/interp/interp.c b/mono/mini/interp/interp.c index 668a9454641..649db8cbfb8 100644 --- a/mono/mini/interp/interp.c +++ b/mono/mini/interp/interp.c @@ -763,7 +763,7 @@ static MethodArguments* build_args_from_sig (MonoMethodSignature *sig, MonoInvoc if (margs->flen > 0) margs->fargs = g_malloc0 (sizeof (double) * margs->flen); - if (margs->ilen > 8) + if (margs->ilen > 12) g_error ("build_args_from_sig: TODO, allocate gregs: %d\n", margs->ilen); if (margs->flen > 3) diff --git a/mono/mini/tramp-amd64.c b/mono/mini/tramp-amd64.c index 2e00450da1b..cf5d75e4ceb 100644 --- a/mono/mini/tramp-amd64.c +++ b/mono/mini/tramp-amd64.c @@ -1009,7 +1009,7 @@ gpointer mono_arch_get_enter_icall_trampoline (MonoTrampInfo **info) { #ifdef ENABLE_INTERPRETER - const int gregs_num = 8; + const int gregs_num = 12; const int fregs_num = 3; guint8 *start = NULL, *code, *label_gexits [gregs_num], *label_fexits [fregs_num], *label_leave_tramp [3], *label_is_float_ret; MonoJumpInfo *ji = NULL; diff --git a/mono/tests/Makefile.am b/mono/tests/Makefile.am index db5399099ab..db4fc470964 100644 --- a/mono/tests/Makefile.am +++ b/mono/tests/Makefile.am @@ -1021,7 +1021,6 @@ INTERP_DISABLED_TESTS = \ pinvoke-utf8.exe \ pinvoke.exe \ pinvoke11.exe \ - pinvoke17.exe \ pinvoke2.exe \ pinvoke3.exe \ pinvoke_ppcc.exe \ -- 2.11.4.GIT