[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
Fri Dec 20 02:16:58 PST 2024


llvm-ci wrote:

LLVM Buildbot has detected a new failure on builder `fuchsia-x86_64-linux` running on `fuchsia-debian-64-us-central1-a-1` while building `llvm` at step 4 "annotate".

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

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

```
Step 4 (annotate) failure: 'python ../llvm-zorg/zorg/buildbot/builders/annotated/fuchsia-linux.py ...' (failure)
...
[1355/1359] Building CXX object unittests/Transforms/Scalar/CMakeFiles/ScalarTests.dir/LoopPassManagerTest.cpp.o
clang++: warning: optimization flag '-ffat-lto-objects' is not supported [-Wignored-optimization-argument]
[1357/1359] Linking CXX executable unittests/Transforms/Scalar/ScalarTests
[1358/1359] Running the LLVM regression tests
llvm-lit: /var/lib/buildbot/fuchsia-x86_64-linux/llvm-project/llvm/utils/lit/lit/llvm/config.py:506: note: using ld.lld: /var/lib/buildbot/fuchsia-x86_64-linux/build/llvm-build-w5j6x0cz/bin/ld.lld
llvm-lit: /var/lib/buildbot/fuchsia-x86_64-linux/llvm-project/llvm/utils/lit/lit/llvm/config.py:506: note: using lld-link: /var/lib/buildbot/fuchsia-x86_64-linux/build/llvm-build-w5j6x0cz/bin/lld-link
llvm-lit: /var/lib/buildbot/fuchsia-x86_64-linux/llvm-project/llvm/utils/lit/lit/llvm/config.py:506: note: using ld64.lld: /var/lib/buildbot/fuchsia-x86_64-linux/build/llvm-build-w5j6x0cz/bin/ld64.lld
llvm-lit: /var/lib/buildbot/fuchsia-x86_64-linux/llvm-project/llvm/utils/lit/lit/llvm/config.py:506: note: using wasm-ld: /var/lib/buildbot/fuchsia-x86_64-linux/build/llvm-build-w5j6x0cz/bin/wasm-ld
-- Testing: 57426 tests, 60 workers --
Testing:  0.. 10.. 20.. 30.. 40.. 50.. 60.. 70.. 80
FAIL: LLVM :: Transforms/PhaseOrdering/X86/hadd.ll (47703 of 57426)
******************** TEST 'LLVM :: Transforms/PhaseOrdering/X86/hadd.ll' FAILED ********************
Exit Code: 1

Command Output (stderr):
--
RUN: at line 2: /var/lib/buildbot/fuchsia-x86_64-linux/build/llvm-build-w5j6x0cz/bin/opt < /var/lib/buildbot/fuchsia-x86_64-linux/llvm-project/llvm/test/Transforms/PhaseOrdering/X86/hadd.ll -O3 -S -mtriple=x86_64-- -mcpu=x86-64    | /var/lib/buildbot/fuchsia-x86_64-linux/build/llvm-build-w5j6x0cz/bin/FileCheck /var/lib/buildbot/fuchsia-x86_64-linux/llvm-project/llvm/test/Transforms/PhaseOrdering/X86/hadd.ll --check-prefixes=CHECK,SSE,SSE2
+ /var/lib/buildbot/fuchsia-x86_64-linux/build/llvm-build-w5j6x0cz/bin/opt -O3 -S -mtriple=x86_64-- -mcpu=x86-64
+ /var/lib/buildbot/fuchsia-x86_64-linux/build/llvm-build-w5j6x0cz/bin/FileCheck /var/lib/buildbot/fuchsia-x86_64-linux/llvm-project/llvm/test/Transforms/PhaseOrdering/X86/hadd.ll --check-prefixes=CHECK,SSE,SSE2
/var/lib/buildbot/fuchsia-x86_64-linux/llvm-project/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>
^
/var/lib/buildbot/fuchsia-x86_64-linux/llvm-project/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>
^
/var/lib/buildbot/fuchsia-x86_64-linux/llvm-project/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
 ^
Step 7 (check) failure: check (failure)
...
[1355/1359] Building CXX object unittests/Transforms/Scalar/CMakeFiles/ScalarTests.dir/LoopPassManagerTest.cpp.o
clang++: warning: optimization flag '-ffat-lto-objects' is not supported [-Wignored-optimization-argument]
[1357/1359] Linking CXX executable unittests/Transforms/Scalar/ScalarTests
[1358/1359] Running the LLVM regression tests
llvm-lit: /var/lib/buildbot/fuchsia-x86_64-linux/llvm-project/llvm/utils/lit/lit/llvm/config.py:506: note: using ld.lld: /var/lib/buildbot/fuchsia-x86_64-linux/build/llvm-build-w5j6x0cz/bin/ld.lld
llvm-lit: /var/lib/buildbot/fuchsia-x86_64-linux/llvm-project/llvm/utils/lit/lit/llvm/config.py:506: note: using lld-link: /var/lib/buildbot/fuchsia-x86_64-linux/build/llvm-build-w5j6x0cz/bin/lld-link
llvm-lit: /var/lib/buildbot/fuchsia-x86_64-linux/llvm-project/llvm/utils/lit/lit/llvm/config.py:506: note: using ld64.lld: /var/lib/buildbot/fuchsia-x86_64-linux/build/llvm-build-w5j6x0cz/bin/ld64.lld
llvm-lit: /var/lib/buildbot/fuchsia-x86_64-linux/llvm-project/llvm/utils/lit/lit/llvm/config.py:506: note: using wasm-ld: /var/lib/buildbot/fuchsia-x86_64-linux/build/llvm-build-w5j6x0cz/bin/wasm-ld
-- Testing: 57426 tests, 60 workers --
Testing:  0.. 10.. 20.. 30.. 40.. 50.. 60.. 70.. 80
FAIL: LLVM :: Transforms/PhaseOrdering/X86/hadd.ll (47703 of 57426)
******************** TEST 'LLVM :: Transforms/PhaseOrdering/X86/hadd.ll' FAILED ********************
Exit Code: 1

Command Output (stderr):
--
RUN: at line 2: /var/lib/buildbot/fuchsia-x86_64-linux/build/llvm-build-w5j6x0cz/bin/opt < /var/lib/buildbot/fuchsia-x86_64-linux/llvm-project/llvm/test/Transforms/PhaseOrdering/X86/hadd.ll -O3 -S -mtriple=x86_64-- -mcpu=x86-64    | /var/lib/buildbot/fuchsia-x86_64-linux/build/llvm-build-w5j6x0cz/bin/FileCheck /var/lib/buildbot/fuchsia-x86_64-linux/llvm-project/llvm/test/Transforms/PhaseOrdering/X86/hadd.ll --check-prefixes=CHECK,SSE,SSE2
+ /var/lib/buildbot/fuchsia-x86_64-linux/build/llvm-build-w5j6x0cz/bin/opt -O3 -S -mtriple=x86_64-- -mcpu=x86-64
+ /var/lib/buildbot/fuchsia-x86_64-linux/build/llvm-build-w5j6x0cz/bin/FileCheck /var/lib/buildbot/fuchsia-x86_64-linux/llvm-project/llvm/test/Transforms/PhaseOrdering/X86/hadd.ll --check-prefixes=CHECK,SSE,SSE2
/var/lib/buildbot/fuchsia-x86_64-linux/llvm-project/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>
^
/var/lib/buildbot/fuchsia-x86_64-linux/llvm-project/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>
^
/var/lib/buildbot/fuchsia-x86_64-linux/llvm-project/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
 ^

```

</details>

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


More information about the llvm-commits mailing list