[release/6.0] [mini] Dynamically allocate a buffer for large runtime invoke results...
authorgithub-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
Wed, 1 Sep 2021 10:16:43 +0000 (12:16 +0200)
committerGitHub <noreply@github.com>
Wed, 1 Sep 2021 10:16:43 +0000 (12:16 +0200)
commit9c8962e087225da3d87e374afc3b308549174de2
tree9ce5aaaa4b4e7a2327c4d0506eaa2f4223ed7089
parent5ed210c0f242e94877a35ac805931cf15f389174
[release/6.0] [mini] Dynamically allocate a buffer for large runtime invoke results (#58364)

* [mini] Dynamically allocate a buffer for large runtime invoke results

If the return type is a struct that's bigger than our buffer, malloc a
buffer for it instead of using a fixed-size stack buffer

* Throw nullbyrefreturn exception for non-LLVM dyn invoke

Fixes various tests in InvokeRefReturnNetcoreTests

Co-authored-by: Aleksey Kliger <alklig@microsoft.com>
src/mono/mono/mini/mini-runtime.c