[llvm] [VPlan] Fix commutative-matcher error in mul-to-shl simpl (PR #174558)

via llvm-commits llvm-commits at lists.llvm.org
Tue Jan 6 02:23:05 PST 2026


github-actions[bot] wrote:

<!--PREMERGE ADVISOR COMMENT: Linux-->
# :penguin: Linux x64 Test Results

* 167674 tests passed
* 2970 tests skipped
* 1 test failed

## Failed Tests
(click on a test name to see its output)

### LLVM
<details>
<summary>LLVM.Transforms/LoopVectorize/vplan-sink-scalars-and-merge.ll</summary>

```
Exit Code: 1

Command Output (stdout):
--
# RUN: at line 3
/home/gha/actions-runner/_work/llvm-project/llvm-project/build/bin/opt -passes=loop-vectorize -force-vector-interleave=1 -force-vector-width=2 -force-widen-divrem-via-safe-divisor=0 -debug -disable-output /home/gha/actions-runner/_work/llvm-project/llvm-project/llvm/test/Transforms/LoopVectorize/vplan-sink-scalars-and-merge.ll 2>&1 | /home/gha/actions-runner/_work/llvm-project/llvm-project/build/bin/FileCheck /home/gha/actions-runner/_work/llvm-project/llvm-project/llvm/test/Transforms/LoopVectorize/vplan-sink-scalars-and-merge.ll
# executed command: /home/gha/actions-runner/_work/llvm-project/llvm-project/build/bin/opt -passes=loop-vectorize -force-vector-interleave=1 -force-vector-width=2 -force-widen-divrem-via-safe-divisor=0 -debug -disable-output /home/gha/actions-runner/_work/llvm-project/llvm-project/llvm/test/Transforms/LoopVectorize/vplan-sink-scalars-and-merge.ll
# note: command had no output on stdout or stderr
# executed command: /home/gha/actions-runner/_work/llvm-project/llvm-project/build/bin/FileCheck /home/gha/actions-runner/_work/llvm-project/llvm-project/llvm/test/Transforms/LoopVectorize/vplan-sink-scalars-and-merge.ll
# .---command stderr------------
# | /home/gha/actions-runner/_work/llvm-project/llvm-project/llvm/test/Transforms/LoopVectorize/vplan-sink-scalars-and-merge.ll:31:15: error: CHECK-NEXT: is not on the line after the previous match
# | ; CHECK-NEXT: EMIT vp<[[MASK:%.+]]> = icmp ule ir<%iv>, vp<[[BTC]]>
# |               ^
# | <stdin>:216:2: note: 'next' match was here
# |  EMIT vp<%7> = icmp ule ir<%iv>, vp<%3>
# |  ^
# | <stdin>:214:48: note: previous match ended here
# |  ir<%iv> = WIDEN-INDUCTION ir<0>, ir<1>, vp<%0>
# |                                                ^
# | <stdin>:215:1: note: non-matching line after previous match is here
# |  vp<%6> = SCALAR-STEPS vp<%5>, ir<1>, vp<%0>
# | ^
# | 
# | Input file: <stdin>
# | Check file: /home/gha/actions-runner/_work/llvm-project/llvm-project/llvm/test/Transforms/LoopVectorize/vplan-sink-scalars-and-merge.ll
# | 
# | -dump-input=help explains the following input dump.
# | 
# | Input was:
# | <<<<<<
# |          .
# |          .
# |          .
# |        211: <x1> vector loop: { 
# |        212:  vector.body: 
# |        213:  EMIT vp<%5> = CANONICAL-INDUCTION ir<0>, vp<%index.next> 
# |        214:  ir<%iv> = WIDEN-INDUCTION ir<0>, ir<1>, vp<%0> 
# |        215:  vp<%6> = SCALAR-STEPS vp<%5>, ir<1>, vp<%0> 
# |        216:  EMIT vp<%7> = icmp ule ir<%iv>, vp<%3> 
# | next:31      !~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~  error: match on wrong line
# |        217:  WIDEN ir<%cond> = icmp eq ir<%iv>, ir<%x> 
# |        218:  EMIT vp<%8> = logical-and vp<%7>, ir<%cond> 
# |        219:  Successor(s): pred.load 
# |        220:  
# |        221:  <xVFxUF> pred.load: { 
# |          .
# |          .
# |          .
# | >>>>>>
# `-----------------------------
# error: command failed with exit status: 1

--

```
</details>

If these failures are unrelated to your changes (for example tests are broken or flaky at HEAD), please open an issue at https://github.com/llvm/llvm-project/issues and add the `infrastructure` label.

https://github.com/llvm/llvm-project/pull/174558


More information about the llvm-commits mailing list