Verified Solution

[rust-lang/rust] LLVM 23 breaks tests/codegen-llvm/char-ascii-branchless.rs

Sponsored Content
### ROOT CAUSE The test `tests/codegen-llvm/char-ascii-branchless.rs` is failing because the LLVM 23 change introduced a branch in the generated IR that the test was not expecting. The test uses a `CHECK-NOT` directive to exclude any branch, but the specific branch generated now matches the pattern, causing the test to fail. The root cause is the interaction between the test's `CHECK-NOT` pattern and the new LLVM code generation behavior. ### CODE FIX To fix the issue, update the test to be more specific in its exclusion of branches. Replace the broad `CHECK-NOT` pattern with a more precise one that targets the specific branch now being generated. In `tests/codegen-llvm/char-ascii-branchless.rs`, change: ```rust // CHECK-NOT: br {{.*}} ``` to: ```rust // CHECK-NOT: br i1 %_8.i, label %bb6.i, label %_RNvMNtNtCscGzNLIcHm04_4core4char7methodsc20is_ascii_punctuation.exit ``` This change ensures the test only excludes the specific branch introduced by LLVM 23, while still allowing other branches (if any) to be generated, thus making the test more resilient to changes in code generation.
Deploy on DigitalOcean ($200 Credit)

Related Fixes

[gitlab-org/gitlab] Creation flow for custom types
[pytorch/pytorch] scaled_dot_product_attention_math usage and perf implications of returning the second value
[tensorflow/tensorflow] Integer overflow in Detection PostProcess max_detections * max_classes_per_detection causes heap buffer overflow