Skip to content

Conversation

@IanButterworth
Copy link
Member

@IanButterworth IanButterworth commented Dec 7, 2025

FastISel was disabled on AArch64 in #13393 to fix issue #13321, but that issue was specifically about 32-bit ARM (ARMv7) segfaults during bootstrap. AFAICT the AArch64 exclusion was added conservatively alongside the ARM fix.

AArch64 FastISel has been actively maintained upstream with recent bug fixes:

This enables faster instruction selection for JIT compilation on AArch64 at lower optimization levels, reducing compilation latency.

Co-authored-by: Claude

FastISel was disabled on AArch64 in 2015 (PR JuliaLang#13393) to fix issue JuliaLang#13321, but
that issue was specifically about 32-bit ARM (ARMv7) segfaults during bootstrap.
The AArch64 exclusion was added conservatively alongside the ARM fix.

AArch64 FastISel has been actively maintained upstream with recent bug fixes:
- llvm/llvm-project#75993 (Jan 2024)
- llvm/llvm-project#133987 (May 2025)

This enables faster instruction selection for JIT compilation on AArch64 at
lower optimization levels, reducing compilation latency.
@IanButterworth IanButterworth added the compiler:codegen Generation of LLVM IR and native code label Dec 7, 2025
@IanButterworth
Copy link
Member Author

Both this and #60339 are green. That PR is the more correct choice today, if I understand correctly.

@gbaraldi
Copy link
Member

gbaraldi commented Dec 8, 2025

I disabled it because we've seen several miscompiles on it.

@IanButterworth
Copy link
Member Author

Ok. As you mention over in #60339 lets try that out.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

compiler:codegen Generation of LLVM IR and native code

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants