Skip to content

Update some tests for LLVM 21 #144632

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

Merged
merged 3 commits into from
Jul 30, 2025
Merged

Update some tests for LLVM 21 #144632

merged 3 commits into from
Jul 30, 2025

Conversation

nikic
Copy link
Contributor

@nikic nikic commented Jul 29, 2025

Fixes #144604.
Fixes #144606.

r? @durin42

nikic added 2 commits July 29, 2025 12:15
This is now printed on the same line. Use NEXT/SAME depending on
the LLVM version.
The two xors get folded into the select.
@nikic nikic added the llvm-main Marks PRs that are making Rust work with LLVM main (this label is consumed by CI tooling) label Jul 29, 2025
@rustbot rustbot added S-waiting-on-review Status: Awaiting review from the assignee but also interested parties. T-compiler Relevant to the compiler team, which will review and decide on the PR/issue. labels Jul 29, 2025
// LLVM20: %[[B_DISCR:.+]] = select i1 %[[B_IS_NICHE]], i8 %[[B_REL_DISCR]], i8 1

// LLVM21: %[[A_DISCR:.+]] = select i1 %[[A_IS_NICHE]], i8 %a, i8 -127
// LLVM21: %[[B_DISCR:.+]] = select i1 %[[B_IS_NICHE]], i8 %b, i8 -127
Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@scottmcm This is an improvement, but it's not the improvement you actually wanted...

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Looks like the assumes prevent folding the case below: llvm/llvm-project#134024 (comment)

On LLVM 21 additional %esp adjustments are generated. Don't use
NEXT to allow these.
@durin42
Copy link
Contributor

durin42 commented Jul 29, 2025

@bors r+

@bors
Copy link
Collaborator

bors commented Jul 29, 2025

📌 Commit ccf660f has been approved by durin42

It is now in the queue for this repository.

@bors bors added S-waiting-on-bors Status: Waiting on bors to run and complete tests. Bors will change the label on completion. and removed S-waiting-on-review Status: Awaiting review from the assignee but also interested parties. labels Jul 29, 2025
@durin42
Copy link
Contributor

durin42 commented Jul 29, 2025

@bors rollup=always

bors added a commit that referenced this pull request Jul 29, 2025
Rollup of 8 pull requests

Successful merges:

 - #144034 (tests: Test line number in debuginfo for diverging function calls)
 - #144510 (Fix Ord, Eq and Hash implementation of panic::Location)
 - #144583 (Enable T-compiler backport nomination)
 - #144586 (Update wasi-sdk to 27.0 in CI)
 - #144605 (Resolve: cachify `ExternPreludeEntry.binding` through a `Cell`)
 - #144632 (Update some tests for LLVM 21)
 - #144639 (Update rustc-perf submodule)
 - #144640 (Add support for the m68k architecture in 'object_architecture')

r? `@ghost`
`@rustbot` modify labels: rollup
@bors bors merged commit bd40dd6 into rust-lang:master Jul 30, 2025
10 checks passed
@rustbot rustbot added this to the 1.90.0 milestone Jul 30, 2025
rust-timer added a commit that referenced this pull request Jul 30, 2025
Rollup merge of #144632 - nikic:llvm-21-tests, r=durin42

Update some tests for LLVM 21

Fixes #144604.
Fixes #144606.

r? `@durin42`
github-actions bot pushed a commit to model-checking/verify-rust-std that referenced this pull request Jul 31, 2025
Rollup of 8 pull requests

Successful merges:

 - rust-lang#144034 (tests: Test line number in debuginfo for diverging function calls)
 - rust-lang#144510 (Fix Ord, Eq and Hash implementation of panic::Location)
 - rust-lang#144583 (Enable T-compiler backport nomination)
 - rust-lang#144586 (Update wasi-sdk to 27.0 in CI)
 - rust-lang#144605 (Resolve: cachify `ExternPreludeEntry.binding` through a `Cell`)
 - rust-lang#144632 (Update some tests for LLVM 21)
 - rust-lang#144639 (Update rustc-perf submodule)
 - rust-lang#144640 (Add support for the m68k architecture in 'object_architecture')

r? `@ghost`
`@rustbot` modify labels: rollup
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
llvm-main Marks PRs that are making Rust work with LLVM main (this label is consumed by CI tooling) S-waiting-on-bors Status: Waiting on bors to run and complete tests. Bors will change the label on completion. T-compiler Relevant to the compiler team, which will review and decide on the PR/issue.
Projects
None yet
Development

Successfully merging this pull request may close these issues.

LLVM 21: f128/i128 now 16-byte aligned on x86-32 LLVM 21/22 failure: enum/enum-discriminant-eq.rs
4 participants