-
Notifications
You must be signed in to change notification settings - Fork 4.8k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
[Mono][full-aot] Fix runtime invoke with delegate parameter #95824
[Mono][full-aot] Fix runtime invoke with delegate parameter #95824
Conversation
Currently, only these library tests are run on iOS devices. I would like to add |
/azp run runtime-ioslike |
Azure Pipelines successfully started running 1 pipeline(s). |
The library tests for iOS are listed here runtime/src/libraries/tests.proj Lines 651 to 671 in c28bec4
System.Reflection.Tests are running on tvOS, we should consider them as covered.
|
Then I would expect the test mentioned in the description area failing on main. |
This is the log of
However, the test was flagged as failed. And the log for that is
This seems to be a test infrastructure issue. Opened a github issue #95862. cc: @kotlarmilos |
All other CI failures are known. |
This is why the test mentioned in the description box weren't failing on main. They are currently disabled on tvOS because of existing issue. runtime/src/libraries/tests.proj Lines 262 to 282 in c28bec4
|
A follow up fix for the runtime invoke issue found in #95469
TLDR: This bug only affected iOS target in release build. The following library test needs to run on iOS or full-aot on arm64 platform to lockdown this behavior:
runtime/src/libraries/System.Runtime/tests/System.Reflection.Tests/MethodCommonTests.cs
Line 280 in 701428f
This issue is only reproducible when
dyn_call_info
field is set.dyn_call_info
field is only set when condition!mono_llvm_only && (mono_aot_only || mini_debug_options.dyn_runtime_invoke)
is met andMONO_ARCH_DYN_CALL_SUPPORTED
is set.MONO_ARCH_DYN_CALL_SUPPORTED
is only set formono_llvm_only
setting to false, andmono_aot_only
setting to trueMONO_AOT_MODE_FULL
--full-aot
switchMONO_AOT_MODE_INTERP