Do not spill operand debuginfo to stack for AArch64 SVE predicates <vscale x N x i1> where N != 16#150420
Merged
bors merged 3 commits intorust-lang:mainfrom Dec 31, 2025
Merged
Conversation
Collaborator
Contributor
Author
|
r? @davidtwco |
b05e0a6 to
ed1a5e7
Compare
This comment has been minimized.
This comment has been minimized.
ed1a5e7 to
0479d98
Compare
workingjubilee
requested changes
Dec 27, 2025
Collaborator
|
Reminder, once the PR becomes ready for a review, use |
0479d98 to
4c485a4
Compare
Collaborator
|
This PR was rebased onto a different main commit. Here's a range-diff highlighting what actually changed. Rebasing is a normal part of keeping PRs up to date, so no action is needed—this note is just to help reviewers. |
Contributor
Author
|
@rustbot ready |
Member
|
Excellent, excellent, happy to have it. @bors r+ rollup |
Collaborator
bors
added a commit
that referenced
this pull request
Dec 30, 2025
…uwer Rollup of 3 pull requests Successful merges: - #150058 (Enable file locking support for Hurd) - #150420 (Do not spill operand debuginfo to stack for AArch64 SVE predicates `<vscale x N x i1>` where `N != 16`) - #150501 (Fix Typos in Platform Support Tables) r? `@ghost` `@rustbot` modify labels: rollup
rust-timer
added a commit
that referenced
this pull request
Dec 31, 2025
Rollup merge of #150420 - h3fang:sve-debuginfo-fix, r=workingjubilee Do not spill operand debuginfo to stack for AArch64 SVE predicates `<vscale x N x i1>` where `N != 16` This pull request tries to fix #150419. The debuginfo for AArch64 SVE predicates `<vscale x N x i1>` where `N != 16` should be ignored by this [commit](89eea57). https://github.com/rust-lang/rust/blob/89eea57594e3e1d8e618dd530ea1c8e7c9b4c7a4/compiler/rustc_codegen_ssa/src/mir/debuginfo.rs#L438-L452 But in line 446, the `marker_type.kind()` is `ty::Bool` instead of `ty::Slice`, so the code doesn't work as intended. This pull request uses the [`Ty::scalable_vector_element_count_and_type`](https://github.com/rust-lang/rust/blob/main/compiler/rustc_middle/src/ty/sty.rs#L1272) method to fix the condition checks for `<vscale x N x i1>` where `N != 16` and add a compiletest for this case.
Member
|
Thanks for this fix @h3fang and for handling the review @workingjubilee! |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
This pull request tries to fix #150419.
The debuginfo for AArch64 SVE predicates
<vscale x N x i1>whereN != 16should be ignored by this commit.rust/compiler/rustc_codegen_ssa/src/mir/debuginfo.rs
Lines 438 to 452 in 89eea57
But in line 446, the
marker_type.kind()isty::Boolinstead ofty::Slice, so the code doesn't work as intended.This pull request uses the
Ty::scalable_vector_element_count_and_typemethod to fix the condition checks for<vscale x N x i1>whereN != 16and add a compiletest for this case.