[llvm] [SLP][REVEC] Fix type comparison and mask transformation for REVEC. (PR #135310)

LLVM Continuous Integration via llvm-commits llvm-commits at lists.llvm.org
Fri Apr 11 02:50:42 PDT 2025


llvm-ci wrote:

LLVM Buildbot has detected a new failure on builder `llvm-nvptx-nvidia-ubuntu` running on `as-builder-7` while building `llvm` at step 6 "test-build-unified-tree-check-llvm".

Full details are available at: https://lab.llvm.org/buildbot/#/builders/180/builds/16140

<details>
<summary>Here is the relevant piece of the build log for the reference</summary>

```
Step 6 (test-build-unified-tree-check-llvm) failure: test (failure)
******************** TEST 'LLVM :: Transforms/SLPVectorizer/X86/revec-SplitVectorize.ll' FAILED ********************
Exit Code: 1

Command Output (stderr):
--
/home/buildbot/worker/as-builder-7/ramdisk/llvm-nvptx-nvidia-ubuntu/build/bin/opt -mtriple=x86_64-unknown-linux-gnu -mattr=+avx -passes=slp-vectorizer -S -slp-revec < /home/buildbot/worker/as-builder-7/ramdisk/llvm-nvptx-nvidia-ubuntu/llvm-project/llvm/test/Transforms/SLPVectorizer/X86/revec-SplitVectorize.ll | /home/buildbot/worker/as-builder-7/ramdisk/llvm-nvptx-nvidia-ubuntu/build/bin/FileCheck /home/buildbot/worker/as-builder-7/ramdisk/llvm-nvptx-nvidia-ubuntu/llvm-project/llvm/test/Transforms/SLPVectorizer/X86/revec-SplitVectorize.ll # RUN: at line 2
+ /home/buildbot/worker/as-builder-7/ramdisk/llvm-nvptx-nvidia-ubuntu/build/bin/opt -mtriple=x86_64-unknown-linux-gnu -mattr=+avx -passes=slp-vectorizer -S -slp-revec
+ /home/buildbot/worker/as-builder-7/ramdisk/llvm-nvptx-nvidia-ubuntu/build/bin/FileCheck /home/buildbot/worker/as-builder-7/ramdisk/llvm-nvptx-nvidia-ubuntu/llvm-project/llvm/test/Transforms/SLPVectorizer/X86/revec-SplitVectorize.ll
/home/buildbot/worker/as-builder-7/ramdisk/llvm-nvptx-nvidia-ubuntu/llvm-project/llvm/test/Transforms/SLPVectorizer/X86/revec-SplitVectorize.ll:16:15: error: CHECK-NEXT: expected string not found in input
; CHECK-NEXT: [[TMP9:%.*]] = call <16 x i1> @llvm.vector.insert.v16i1.v4i1(<16 x i1> poison, <4 x i1> zeroinitializer, i64 0)
              ^
<stdin>:16:39: note: scanning from here
 %8 = trunc <32 x i32> %7 to <32 x i1>
                                      ^
<stdin>:29:2: note: possible intended match here
 %14 = call <32 x i1> @llvm.vector.insert.v32i1.v4i1(<32 x i1> %13, <4 x i1> zeroinitializer, i64 16)
 ^

Input file: <stdin>
Check file: /home/buildbot/worker/as-builder-7/ramdisk/llvm-nvptx-nvidia-ubuntu/llvm-project/llvm/test/Transforms/SLPVectorizer/X86/revec-SplitVectorize.ll

-dump-input=help explains the following input dump.

Input was:
<<<<<<
           .
           .
           .
          11:  %3 = call <32 x i32> @llvm.vector.insert.v32i32.v4i32(<32 x i32> %2, <4 x i32> zeroinitializer, i64 12) 
          12:  %4 = call <32 x i32> @llvm.vector.insert.v32i32.v4i32(<32 x i32> %3, <4 x i32> zeroinitializer, i64 16) 
          13:  %5 = call <32 x i32> @llvm.vector.insert.v32i32.v4i32(<32 x i32> %4, <4 x i32> zeroinitializer, i64 20) 
          14:  %6 = call <32 x i32> @llvm.vector.insert.v32i32.v4i32(<32 x i32> %5, <4 x i32> zeroinitializer, i64 24) 
          15:  %7 = call <32 x i32> @llvm.vector.insert.v32i32.v4i32(<32 x i32> %6, <4 x i32> zeroinitializer, i64 28) 
          16:  %8 = trunc <32 x i32> %7 to <32 x i1> 
next:16'0                                           X error: no match found
          17:  br label %vector.body 
next:16'0     ~~~~~~~~~~~~~~~~~~~~~~~
          18:  
next:16'0     ~
          19: vector.body: ; preds = %vector.body, %entry 
next:16'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
          20:  %9 = phi <32 x i1> [ %8, %entry ], [ %18, %vector.body ] 
next:16'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
          21:  %narrow = select <4 x i1> zeroinitializer, <4 x i1> zeroinitializer, <4 x i1> zeroinitializer 
next:16'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
           .
           .
           .
          24:  %narrow68 = select <4 x i1> zeroinitializer, <4 x i1> zeroinitializer, <4 x i1> zeroinitializer 
next:16'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
...

```

</details>

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


More information about the llvm-commits mailing list