From 26a323b8f3c359fc9a4e1078f63d65431e13da58 Mon Sep 17 00:00:00 2001 From: Jay Krell Date: Mon, 9 Sep 2019 10:31:37 -0700 Subject: [PATCH] [interp] Let compiler decide clear_resume_state inlining. (mono/mono#16704) Manual inlining shows no additional stack use any longer. Commit migrated from https://github.com/mono/mono/commit/83f965eca5cda8dc8bfd01b969a1d1481faa6977 --- src/mono/mono/mini/interp/interp.c | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/src/mono/mono/mini/interp/interp.c b/src/mono/mono/mini/interp/interp.c index 4fd448d..d3d53f8 100644 --- a/src/mono/mono/mini/interp/interp.c +++ b/src/mono/mono/mini/interp/interp.c @@ -228,9 +228,7 @@ int mono_interp_traceopt = 0; #define MINT_IN_DEFAULT default: #endif -// FIXME The inlining of this needs to be reevaluated in the context of later changes. -// Also there is now only one caller, so consider inlining it manually. -static MONO_NEVER_INLINE GSList* // Inlining this causes caller to use more stack. +static GSList* clear_resume_state (ThreadContext *context, InterpFrame *frame, GSList* finally_ips) { /* We have thrown an exception from a finally block. Some of the leave targets were unwound already */ -- 2.7.4