[llvm] [CostModel][X86] getShuffleCost - use processShuffleMasks to split SK_PermuteTwoSrc shuffles to legal types (PR #120599)

LLVM Continuous Integration via llvm-commits llvm-commits at lists.llvm.org
Sat Dec 21 11:58:40 PST 2024


llvm-ci wrote:

LLVM Buildbot has detected a new failure on builder `clang-arm64-windows-msvc` running on `linaro-armv8-windows-msvc-04` while building `llvm` at step 5 "ninja check 1".

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

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

```
Step 5 (ninja check 1) failure: stage 1 checked (failure)
******************** TEST 'LLVM :: Transforms/PhaseOrdering/X86/hadd.ll' FAILED ********************
Exit Code: 1

Command Output (stdout):
--
# RUN: at line 2
c:\users\tcwg\llvm-worker\clang-arm64-windows-msvc\stage1\bin\opt.exe < C:\Users\tcwg\llvm-worker\clang-arm64-windows-msvc\llvm\llvm\test\Transforms\PhaseOrdering\X86\hadd.ll -O3 -S -mtriple=x86_64-- -mcpu=x86-64    | c:\users\tcwg\llvm-worker\clang-arm64-windows-msvc\stage1\bin\filecheck.exe C:\Users\tcwg\llvm-worker\clang-arm64-windows-msvc\llvm\llvm\test\Transforms\PhaseOrdering\X86\hadd.ll --check-prefixes=CHECK,SSE,SSE2
# executed command: 'c:\users\tcwg\llvm-worker\clang-arm64-windows-msvc\stage1\bin\opt.exe' -O3 -S -mtriple=x86_64-- -mcpu=x86-64
# executed command: 'c:\users\tcwg\llvm-worker\clang-arm64-windows-msvc\stage1\bin\filecheck.exe' 'C:\Users\tcwg\llvm-worker\clang-arm64-windows-msvc\llvm\llvm\test\Transforms\PhaseOrdering\X86\hadd.ll' --check-prefixes=CHECK,SSE,SSE2
# .---command stderr------------
# | C:\Users\tcwg\llvm-worker\clang-arm64-windows-msvc\llvm\llvm\test\Transforms\PhaseOrdering\X86\hadd.ll:450:14: error: SSE2-NEXT: is not on the line after the previous match
# | ; SSE2-NEXT: [[TMP2:%.*]] = shufflevector <8 x i32> [[A]], <8 x i32> [[B:%.*]], <8 x i32> <i32 0, i32 2, i32 8, i32 10, i32 poison, i32 poison, i32 poison, i32 poison>
# |              ^
# | <stdin>:122:2: note: 'next' match was here
# |  %5 = shufflevector <8 x i32> %a, <8 x i32> %b, <8 x i32> <i32 0, i32 2, i32 8, i32 10, i32 poison, i32 poison, i32 poison, i32 poison>
# |  ^
# | <stdin>:118:31: note: previous match ended here
# |  %1 = add <8 x i32> %a, %shift
# |                               ^
# | <stdin>:119:1: note: non-matching line after previous match is here
# |  %2 = shufflevector <8 x i32> %b, <8 x i32> poison, <2 x i32> <i32 5, i32 6>
# | ^
# | C:\Users\tcwg\llvm-worker\clang-arm64-windows-msvc\llvm\llvm\test\Transforms\PhaseOrdering\X86\hadd.ll:844:13: error: SSE-NEXT: is not on the line after the previous match
# | ; SSE-NEXT: [[TMP1:%.*]] = shufflevector <8 x float> [[A]], <8 x float> [[B:%.*]], <8 x i32> <i32 0, i32 2, i32 8, i32 poison, i32 4, i32 poison, i32 poison, i32 poison>
# |             ^
# | <stdin>:219:2: note: 'next' match was here
# |  %4 = shufflevector <8 x float> %a, <8 x float> %b, <8 x i32> <i32 0, i32 2, i32 8, i32 poison, i32 4, i32 poison, i32 poison, i32 poison>
# |  ^
# | <stdin>:215:28: note: previous match ended here
# |  %a67 = fadd float %a6, %a7
# |                            ^
# | <stdin>:216:1: note: non-matching line after previous match is here
# |  %1 = shufflevector <8 x float> %b, <8 x float> poison, <2 x i32> <i32 5, i32 6>
# | ^
# | C:\Users\tcwg\llvm-worker\clang-arm64-windows-msvc\llvm\llvm\test\Transforms\PhaseOrdering\X86\hadd.ll:1058:13: error: SSE-NEXT: is not on the line after the previous match
# | ; SSE-NEXT: [[B2:%.*]] = extractelement <4 x double> [[B:%.*]], i64 2
# |             ^
# | <stdin>:282:2: note: 'next' match was here
# |  %b2 = extractelement <4 x double> %b, i64 2
# |  ^
# | <stdin>:278:37: note: previous match ended here
# | define <4 x double> @add_v4f64_0u23(<4 x double> %a, <4 x double> %b) local_unnamed_addr #0 {
# |                                     ^
# | <stdin>:279:1: note: non-matching line after previous match is here
# |  %1 = shufflevector <4 x double> %a, <4 x double> poison, <2 x i32> <i32 1, i32 2>
# | ^
# | C:\Users\tcwg\llvm-worker\clang-arm64-windows-msvc\llvm\llvm\test\Transforms\PhaseOrdering\X86\hadd.ll:1100:13: error: SSE-NEXT: is not on the line after the previous match
# | ; SSE-NEXT: [[B23:%.*]] = fadd double [[B2]], [[B3]]
# |             ^
# | <stdin>:297:2: note: 'next' match was here
...

```

</details>

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


More information about the llvm-commits mailing list