-
Notifications
You must be signed in to change notification settings - Fork 4.9k
New issue
Have a question about this project? # for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “#”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? # to your account
[mono][llvm] Support exception filters #54185
Comments
@BrzVlad - any overlap between work done on exception filters from issues in your queue ? |
Supporting exception filters with llvm requires some research, unrelated with any other work. We never supported exception filters with llvm. Doesn't seem feasible for .NET 6.0 |
Moving this to Future milestone. |
@jandupej #54176 is closed but referenced in runtime/src/tests/issues.targets Lines 1207 to 1212 in f020861
non-temporal store intrinsics are not supported on this platform .
|
@kasperk81 The reason for disabling the test you indicate is strange. I created an issue where enabling these tests can be tracked: #93202 |
Seen in https://github.com/dotnet/runtime/blob/6474c725025a8b29b4265c4d9485018982ee6b16/src/tests/JIT/HardwareIntrinsics/X86/Sse42.X64/Crc32.cs. Makes Mono bail out of translating to LLVM with "LLVM failed for 'Program.Main': non-finally/catch/fault clause."
The resulting test then ends up with weird semi-consistent codegen which causes it to print:
but still yield 0 (instead of 100) as an exit code.
Random notes:
https://llvm.org/docs/LangRef.html#llvm-localescape-and-llvm-localrecover-intrinsics
https://github.com/dotnet/llvm-project/blob/release/11.x/llvm/test/CodeGen/X86/wineh-coreclr.ll
One difficulty with
llvm.localaddress
andllvm.localrecover
is that they are currently only supported on x86, x86-64, and aarch64. But it doesn't look like it'd be too hard to add support for other platforms. (But I have no idea how involved this would be for WASM)Also enable JIT/HardwareIntrinsics/X86/Sse42.X64/Crc32_{r,ro} test with the fix
The text was updated successfully, but these errors were encountered: