[mono][aot] Rework the code which handles llvmonly compilation failures and transitio...
authorZoltan Varga <vargaz@gmail.com>
Wed, 2 Jun 2021 13:28:24 +0000 (09:28 -0400)
committerGitHub <noreply@github.com>
Wed, 2 Jun 2021 13:28:24 +0000 (09:28 -0400)
commit3c1f5b380e6704f9d14de02a4a22adaec5095cd1
tree3d23b25a50a025182b8cfe127670487bcc516b31
parent3f7642d6a99b0cfd667c21d46390e49fe5370a65
[mono][aot] Rework the code which handles llvmonly compilation failures and transition to the interpreter (#53485)

* [mono][aot] Rework the code which handles llvmonly compilation failures.

If llvm fails for a method, retry the compilation and emit
the interp entry code during the second try.

* Fix invalid llvm code generation in interp_entry_only mode, there is no need to create PHI nodes.

* Fix returning values from interp_entry_only methods.
src/mono/mono/mini/method-to-ir.c
src/mono/mono/mini/mini-llvm.c
src/mono/mono/mini/mini.c