-
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
[Wasm][AOT] methods with try/catch/finally blocks are not AOTed #111281
Labels
Milestone
Comments
dotnet-issue-labeler
bot
added
the
needs-area-label
An area label is needed to ensure this gets routed to the appropriate area owners
label
Jan 10, 2025
dotnet-policy-service
bot
added
the
untriaged
New issue has not been triaged by the area owner
label
Jan 10, 2025
steveisok
added
os-browser
Browser variant of arch-wasm
arch-wasm
WebAssembly architecture
labels
Jan 10, 2025
Tagging subscribers to 'arch-wasm': @lewing |
steveisok
added
area-Codegen-AOT-mono
and removed
needs-area-label
An area label is needed to ensure this gets routed to the appropriate area owners
labels
Jan 10, 2025
jeromelaban
added a commit
to unoplatform/uno
that referenced
this issue
Jan 14, 2025
mergify bot
pushed a commit
to unoplatform/uno
that referenced
this issue
Jan 15, 2025
Related to dotnet/runtime#111281 (cherry picked from commit f6108bb)
mergify bot
pushed a commit
to unoplatform/uno
that referenced
this issue
Jan 15, 2025
Related to dotnet/runtime#111281 (cherry picked from commit f6108bb) # Conflicts: # src/Uno.UI/UI/Xaml/Controls/Frame/Frame.legacy.cs
jeromelaban
added a commit
to unoplatform/Uno.Wasm.Bootstrap
that referenced
this issue
Jan 20, 2025
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Labels
Description
Related to the work in #56309, the AOT compiler is skipping methods containing
try/catch/finally
blocks, specifically.try/finally
andtry/catch
blocks are AOTed properly.This causes those specific methods to be executed by the interpreter, therefore being slow.
Reproduction Steps
Build and run the following repro: 20250110-issue-111281-ehissue02.zip
The output looks as follows in the profiler:
Where the last method should be be entering the interpreter to execute.
Expected behavior
No interpreter is used to execute any of the methods defined by the user when a try/catch/finally pattern is used.
Actual behavior
See above.
Regression?
No. Related to #78653.
Known Workarounds
Split the methods so that one contains a try/finally, and the other a try/catch, if possible.
Configuration
9.0.100
Other information
No response
The text was updated successfully, but these errors were encountered: