[llvm] [AArch64] Fold BUILD_VECTORs splats into users by using SVE immediates (PR #165559)

via llvm-commits llvm-commits at lists.llvm.org
Mon Mar 9 10:39:38 PDT 2026


github-actions[bot] wrote:

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

* 170909 tests passed
* 3016 tests skipped
* 1 test failed

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

### LLVM
<details>
<summary>LLVM.CodeGen/AArch64/partial-reduction-add-predicated.ll</summary>

```
Exit Code: 1

Command Output (stdout):
--
# RUN: at line 2
/home/gha/actions-runner/_work/llvm-project/llvm-project/build/bin/llc < /home/gha/actions-runner/_work/llvm-project/llvm-project/llvm/test/CodeGen/AArch64/partial-reduction-add-predicated.ll | /home/gha/actions-runner/_work/llvm-project/llvm-project/build/bin/FileCheck /home/gha/actions-runner/_work/llvm-project/llvm-project/llvm/test/CodeGen/AArch64/partial-reduction-add-predicated.ll
# executed command: /home/gha/actions-runner/_work/llvm-project/llvm-project/build/bin/llc
# 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/CodeGen/AArch64/partial-reduction-add-predicated.ll
# .---command stderr------------
# | /home/gha/actions-runner/_work/llvm-project/llvm-project/llvm/test/CodeGen/AArch64/partial-reduction-add-predicated.ll:26:15: error: CHECK-NEXT: expected string not found in input
# | ; CHECK-NEXT: movi v3.16b, #127
# |               ^
# | <stdin>:21:24: note: scanning from here
# |  shl v1.16b, v1.16b, #7
# |                        ^
# | <stdin>:22:2: note: possible intended match here
# |  cmlt v1.16b, v1.16b, #0
# |  ^
# | /home/gha/actions-runner/_work/llvm-project/llvm-project/llvm/test/CodeGen/AArch64/partial-reduction-add-predicated.ll:69:15: error: CHECK-NEXT: expected string not found in input
# | ; CHECK-NEXT: movi v3.16b, #1
# |               ^
# | <stdin>:58:10: note: scanning from here
# | // %bb.0:
# |          ^
# | <stdin>:61:9: note: possible intended match here
# |  sdot v0.4s, v2.16b, v1.16b
# |         ^
# | 
# | Input file: <stdin>
# | Check file: /home/gha/actions-runner/_work/llvm-project/llvm-project/llvm/test/CodeGen/AArch64/partial-reduction-add-predicated.ll
# | 
# | -dump-input=help explains the following input dump.
# | 
# | Input was:
# | <<<<<<
# |            .
# |            .
# |            .
# |           16:  .globl predicate_dot_by_C_fixed_length // -- Begin function predicate_dot_by_C_fixed_length 
# |           17:  .p2align 2 
# |           18:  .type predicate_dot_by_C_fixed_length, at function 
# |           19: predicate_dot_by_C_fixed_length: // @predicate_dot_by_C_fixed_length 
# |           20: // %bb.0: 
# |           21:  shl v1.16b, v1.16b, #7 
# | next:26'0                            X error: no match found
# |           22:  cmlt v1.16b, v1.16b, #0 
# | next:26'0     ~~~~~~~~~~~~~~~~~~~~~~~~~
# | next:26'1      ?                        possible intended match
# |           23:  and z1.b, z1.b, #0x7f 
# | next:26'0     ~~~~~~~~~~~~~~~~~~~~~~~
# |           24:  sdot v0.4s, v2.16b, v1.16b 
# | next:26'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |           25:  ret 
# | next:26'0     ~~~~~
# |           26: .Lfunc_end1: 
# | next:26'0     ~~~~~~~~~~~~~
# |           27:  .size predicate_dot_by_C_fixed_length, .Lfunc_end1-predicate_dot_by_C_fixed_length 
# | next:26'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |            .
# |            .
# |            .
# |           53:  // -- End function 
# |           54:  .globl predicate_ext_mul_fixed_length // -- Begin function predicate_ext_mul_fixed_length 
# |           55:  .p2align 2 
# |           56:  .type predicate_ext_mul_fixed_length, at function 
# |           57: predicate_ext_mul_fixed_length: // @predicate_ext_mul_fixed_length 
# |           58: // %bb.0: 
# | next:69'0              X error: no match found
# |           59:  // kill: def $q1 killed $q1 def $z1 
# | next:69'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |           60:  and z1.b, z1.b, #0x1 
# | next:69'0     ~~~~~~~~~~~~~~~~~~~~~~
# |           61:  sdot v0.4s, v2.16b, v1.16b 
# | next:69'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# | next:69'1             ?                    possible intended match
# |           62:  ret 
# | next:69'0     ~~~~~
# |           63: .Lfunc_end4: 
# | next:69'0     ~~~~~~~~~~~~~
# |           64:  .size predicate_ext_mul_fixed_length, .Lfunc_end4-predicate_ext_mul_fixed_length 
# | next:69'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |           65:  // -- End function 
# | next:69'0     ~~~~~~~~~~~~~~~~~~~~
# |           66:  .globl predicate_ext_mul_scalable // -- Begin function predicate_ext_mul_scalable 
# | next:69'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |            .
# |            .
# |            .
# | >>>>>>
# `-----------------------------
# 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/165559


More information about the llvm-commits mailing list