-
-
Notifications
You must be signed in to change notification settings - Fork 5.5k
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
DARWIN/ARM64: Bad codegen for sign extend #39823
Comments
I guess another piece I should have mentioned is that it's spilling the register:
If it had used the original x0, there wouldn't be an issue because the value comes in sign extended. |
Includes patches for JuliaLang/julia#39823 JuliaLang/julia#39820 JuliaLang/julia#39818 as well as an issue causing an assertion in debug mode due to address spaces.
Includes patches for JuliaLang/julia#39823 JuliaLang/julia#39820 JuliaLang/julia#39818 as well as an issue causing an assertion in debug mode due to address spaces.
Includes patches for JuliaLang/julia#39823 JuliaLang/julia#39820 JuliaLang/julia#39818 as well as an issue causing an assertion in debug mode due to address spaces.
I commented on the LLVM bug report, but wanted to ask here as well: what's stopping adoption of the default instruction selector at -O0 (GlobalISel) over using FastISel? |
My guess would be speed, but perhaps @Keno has a more specific reason. |
No, there isn't any good reason other than that nobody has tried it and measured the impact. |
In that case I'd recommend that Julia just use the default selector, since GlobalISel is actively maintained. |
LLVM IR:
Assembly:
w9
is not sign extended in thex9
registerThe text was updated successfully, but these errors were encountered: