Reduce stack size used by interpreter frame on Windows MSVC. (mono/mono#14659)
authorJohan Lorensson <lateralusx.github@gmail.com>
Mon, 27 May 2019 21:55:52 +0000 (23:55 +0200)
committermonojenkins <jo.shields+jenkins@xamarin.com>
Mon, 27 May 2019 21:55:52 +0000 (17:55 -0400)
commite31e98618cd8c834b969aaad4c4d2aca11294e01
treedf2aa31cf253c1ec732b006770ece0ec5b7bed5e
parent694300e594b1d940312234482a134e2fc8bcb919
Reduce stack size used by interpreter frame on Windows MSVC. (mono/mono#14659)

Reduce stack size used by interpreter frame on Windows MSVC.

Interpreter frame was 1248 bytes in size under Windows MSVC. This was almost double the size of other platforms ~670 bytes. After investigating different constructs in interpreter switch statement in interp_exec_method_full, it turns out that local declared errors couldn't be reused over different case statements and added ~100 bytes each. Switching local declared errors to shared one, reduce the stack size down to ~670 bytes under Windows MSVC.

Commit migrated from https://github.com/mono/mono/commit/8d0ad4c81634643f8903c58ba4f11e462a2e26a6
src/mono/mono/mini/interp/interp.c