-
Notifications
You must be signed in to change notification settings - Fork 5.2k
Open
Description
Description
Apple mobile smoke tests targeting iOS/tvOS 18.x (scouting queues) are failing in full AOT mode when built in Release configuration. Similar functional app works correctly when running with the interpreter.
Investigation
When building the iOS.Device.Aot.Test
app locally in Release mode, an Xcode project is generated. Running the app via Xcode in Debug build works as expected. However, when running the Release build, the app fails at runtime with exit code 1
and the following assertion:
((null) error) * Assertion at /Users/miloskotlar/dotnet/runtime/src/mono/mono/mini/aot-runtime.c:5332, condition `plt_entry' not met
* thread #9, name = 'tid_4d03', queue = 'com.apple.root.default-qos', stop reason = breakpoint 2.1
* frame #0: 0x00000001051103e4 iOS.Device.Aot.Test`mono_aot_plt_resolve(aot_module=0x000000015a0b1e00, regs=0x000000016b28dc90, code="H\x8c", error=0x000000016b28dc00) at aot-runtime.c:5332:2 [opt]
frame #1: 0x000000010511e404 iOS.Device.Aot.Test`mono_aot_plt_trampoline(...) at mini-trampolines.c:937:8 [opt]
frame #2: 0x00000001055811bc iOS.Device.Aot.Test`generic_trampoline_aot_plt + 236
This indicates a failure in resolving a PLT (Procedure Linkage Table) entry during AOT runtime execution. The issue is only reproducible in the Release build with full AOT enabled.