fix(tests): allow either branch direction in ilog_known_base#158359
Merged
rust-bors[bot] merged 1 commit intoJun 26, 2026
Conversation
Signed-off-by: HNO3Miracle <xiangao.or@isrc.iscas.ac.cn>
Collaborator
|
Thanks for the pull request, and welcome! The Rust Project is excited to review your changes, and you should hear from @petrochenkov (or someone else) some time within the next two weeks. Please see the contribution instructions for more information. Namely, in order to ensure the minimum review times lag, PR authors and assigned reviewers should ensure that the review label (
Why was this reviewer chosen?The reviewer was selected based on:
|
Contributor
|
@bors r+ |
Contributor
JonathanBrouwer
added a commit
to JonathanBrouwer/rust
that referenced
this pull request
Jun 25, 2026
…ase, r=petrochenkov fix(tests): allow either branch direction in ilog_known_base Fixes rust-lang#158339. `tests/codegen-llvm/ilog_known_base.rs` checks that `checked_ilog` with a known power-of-two base is lowered through the faster `llvm.ctlz` path. On `riscv64gc-unknown-linux-gnu`, LLVM emits the zero check with the opposite branch direction (`icmp eq i32 %val, 0`) from what the test currently expects (`icmp ne i32 %val, 0`). Both forms still guard the same `llvm.ctlz` fast path, so this relaxes the FileCheck pattern to accept either comparison direction. This also fixes the `checked_ilog16` FileCheck variable to use the `DIV4` result it just matched. Tested: ```sh ./x test --stage 2 tests/codegen-llvm/ilog_known_base.rs ```
rust-bors Bot
pushed a commit
that referenced
this pull request
Jun 25, 2026
Rollup of 10 pull requests Successful merges: - #158410 (Update LLVM for Mach-O __LINKEDIT alignment fix.) - #157397 (cmse: clear padding when crossing the secure boundary) - #158036 (Add -Zinstrument-mcount=fentry to -Zinstrument-mcount) - #158330 (llvm: use intrinsics for f16, f32 minimum/maximum) - #158359 (fix(tests): allow either branch direction in ilog_known_base) - #158067 (LLVM 23: Adapt codegen test to moved assume) - #158261 (Move part of the target checking for `#[may_dangle]` to the parser) - #158358 (Fix invalid E0609 raw pointer deref suggestion inside macros) - #158392 (delegation: add tests for defaults and infers in generics) - #158394 (Generate synthetic generic args only for delegation's child segment)
rust-timer
added a commit
that referenced
this pull request
Jun 26, 2026
Rollup merge of #158359 - HNO3Miracle:fix-riscv-ilog-known-base, r=petrochenkov fix(tests): allow either branch direction in ilog_known_base Fixes #158339. `tests/codegen-llvm/ilog_known_base.rs` checks that `checked_ilog` with a known power-of-two base is lowered through the faster `llvm.ctlz` path. On `riscv64gc-unknown-linux-gnu`, LLVM emits the zero check with the opposite branch direction (`icmp eq i32 %val, 0`) from what the test currently expects (`icmp ne i32 %val, 0`). Both forms still guard the same `llvm.ctlz` fast path, so this relaxes the FileCheck pattern to accept either comparison direction. This also fixes the `checked_ilog16` FileCheck variable to use the `DIV4` result it just matched. Tested: ```sh ./x test --stage 2 tests/codegen-llvm/ilog_known_base.rs ```
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.
Fixes #158339.
tests/codegen-llvm/ilog_known_base.rschecks thatchecked_ilogwith a known power-of-two base is lowered through the fasterllvm.ctlzpath.On
riscv64gc-unknown-linux-gnu, LLVM emits the zero check with the opposite branch direction (icmp eq i32 %val, 0) from what the test currently expects (icmp ne i32 %val, 0). Both forms still guard the samellvm.ctlzfast path, so this relaxes the FileCheck pattern to accept either comparison direction.This also fixes the
checked_ilog16FileCheck variable to use theDIV4result it just matched.Tested:
./x test --stage 2 tests/codegen-llvm/ilog_known_base.rs