-
Notifications
You must be signed in to change notification settings - Fork 4.9k
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
arch-wasm
WebAssembly architecture
area-Codegen-AOT-mono
in-pr
There is an active PR which will close this issue when it is merged
os-browser
Browser variant of arch-wasm
Milestone
Comments
Tagging subscribers to 'arch-wasm': @lewing |
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
arch-wasm
WebAssembly architecture
area-Codegen-AOT-mono
in-pr
There is an active PR which will close this issue when it is merged
os-browser
Browser variant of arch-wasm
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: