[llvm] [TTI] getTypeBasedIntrinsicInstrCost - add basic handling for strided load/store intrinsics (PR #125223)

LLVM Continuous Integration via llvm-commits llvm-commits at lists.llvm.org
Fri Jan 31 22:25:12 PST 2025


llvm-ci wrote:

LLVM Buildbot has detected a new failure on builder `premerge-monolithic-linux` running on `premerge-linux-1` while building `llvm` at step 7 "test-build-unified-tree-check-all".

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

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

```
Step 7 (test-build-unified-tree-check-all) failure: test (failure)
******************** TEST 'LLVM :: Transforms/SLPVectorizer/RISCV/complex-loads.ll' FAILED ********************
Exit Code: 1

Command Output (stderr):
--
RUN: at line 2: /build/buildbot/premerge-monolithic-linux/build/bin/opt -S -mtriple riscv64-unknown-linux-gnu < /build/buildbot/premerge-monolithic-linux/llvm-project/llvm/test/Transforms/SLPVectorizer/RISCV/complex-loads.ll --passes=slp-vectorizer -mattr=+v -slp-threshold=-20 | /build/buildbot/premerge-monolithic-linux/build/bin/FileCheck /build/buildbot/premerge-monolithic-linux/llvm-project/llvm/test/Transforms/SLPVectorizer/RISCV/complex-loads.ll
+ /build/buildbot/premerge-monolithic-linux/build/bin/opt -S -mtriple riscv64-unknown-linux-gnu --passes=slp-vectorizer -mattr=+v -slp-threshold=-20
+ /build/buildbot/premerge-monolithic-linux/build/bin/FileCheck /build/buildbot/premerge-monolithic-linux/llvm-project/llvm/test/Transforms/SLPVectorizer/RISCV/complex-loads.ll
/build/buildbot/premerge-monolithic-linux/llvm-project/llvm/test/Transforms/SLPVectorizer/RISCV/complex-loads.ll:31:15: error: CHECK-NEXT: expected string not found in input
; CHECK-NEXT: [[ARRAYIDX8_2:%.*]] = getelementptr i8, ptr [[ADD_PTR_1]], i64 1
              ^
<stdin>:29:58: note: scanning from here
 %arrayidx5.2 = getelementptr i8, ptr %add.ptr64.1, i64 4
                                                         ^
<stdin>:29:58: note: with "ADD_PTR_1" equal to "%add\\.ptr\\.1"
 %arrayidx5.2 = getelementptr i8, ptr %add.ptr64.1, i64 4
                                                         ^
<stdin>:66:12: note: possible intended match here
 %arrayidx5.3 = getelementptr i8, ptr null, i64 4
           ^

Input file: <stdin>
Check file: /build/buildbot/premerge-monolithic-linux/llvm-project/llvm/test/Transforms/SLPVectorizer/RISCV/complex-loads.ll

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

Input was:
<<<<<<
           .
           .
           .
          24:  %3 = load i8, ptr %arrayidx32.1, align 1 
          25:  %conv33.1 = zext i8 %3 to i32 
          26:  %add.ptr.1 = getelementptr i8, ptr %add.ptr, i64 %idx.ext 
          27:  %add.ptr64.1 = getelementptr i8, ptr %add.ptr64, i64 %idx.ext63 
          28:  %arrayidx3.2 = getelementptr i8, ptr %add.ptr.1, i64 4 
          29:  %arrayidx5.2 = getelementptr i8, ptr %add.ptr64.1, i64 4 
next:31'0                                                              X error: no match found
next:31'1                                                                with "ADD_PTR_1" equal to "%add\\.ptr\\.1"
          30:  %4 = load <4 x i8>, ptr %add.ptr.1, align 1 
next:31'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
          31:  %5 = shufflevector <4 x i8> %4, <4 x i8> poison, <2 x i32> <i32 0, i32 2> 
next:31'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
          32:  %6 = zext <2 x i8> %5 to <2 x i32> 
next:31'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
          33:  %7 = load <4 x i8>, ptr %add.ptr64.1, align 1 
next:31'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
          34:  %8 = shufflevector <4 x i8> %7, <4 x i8> poison, <2 x i32> <i32 0, i32 2> 
next:31'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
           .
...

```

</details>

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


More information about the llvm-commits mailing list