-
Notifications
You must be signed in to change notification settings - Fork 12.6k
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
Incorrect codegen for unaligned load/store (ARM NEON) #59081
Milestone
Comments
@llvm/issue-subscribers-backend-arm |
nikic
added a commit
to nikic/llvm-project
that referenced
this issue
Sep 2, 2024
These intrinsics currently assume natural alignment. Instead, respect the alignment attribute on the intrinsic. Teach InstCombine to improve that alignment. If desired I could also adjust the clang frontend to add alignment annotations equivalent to the previous behavior, but I don't see any indication that such an assumption is correct in the ARM intrinsics docs. Fixes llvm#59081.
nikic
added a commit
to nikic/llvm-project
that referenced
this issue
Sep 2, 2024
These intrinsics currently assume natural alignment. Instead, respect the alignment attribute on the intrinsic. Teach InstCombine to improve that alignment. If desired I could also adjust the clang frontend to add alignment annotations equivalent to the previous behavior, but I don't see any indication that such an assumption is correct in the ARM intrinsics docs. Fixes llvm#59081.
nikic
added a commit
that referenced
this issue
Sep 5, 2024
These intrinsics currently assume natural alignment. Instead, respect the alignment attribute on the intrinsic. Teach InstCombine to improve that alignment. If desired I could also adjust the clang frontend to add alignment annotations equivalent to the previous behavior, but I don't see any indication that such an assumption is correct in the ARM intrinsics docs. Fixes #59081.
/cherry-pick a7697c8 |
Error: Command failed due to missing milestone. |
/cherry-pick a7697c8 |
Failed to cherry-pick: a7697c8 https://github.com/llvm/llvm-project/actions/runs/12403059897 Please manually backport the fix and push it to your github fork. Once this is done, please create a pull request |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
https://clang.godbolt.org/z/nEfsT961d
https://developer.arm.com/documentation/den0018/a/NEON-Instruction-Set-Architecture/Alignment
It seems that there is no way to generate unaligned load/store instructions.
The text was updated successfully, but these errors were encountered: