[llvm] [AMDGPU][ISEL] Use target specific hook to block narrowing insert-extract sub-vector (PR #201056)
via llvm-commits
llvm-commits at lists.llvm.org
Tue Jun 2 20:54:45 PDT 2026
github-actions[bot] wrote:
<!--PREMERGE ADVISOR COMMENT: Windows-->
# :window: Windows x64 Test Results
* 135343 tests passed
* 3360 tests skipped
* 6 tests failed
## Failed Tests
(click on a test name to see its output)
### LLVM
<details>
<summary>LLVM.CodeGen/AArch64/add.ll</summary>
```
Exit Code: 1
Command Output (stdout):
--
# RUN: at line 2
c:\_work\llvm-project\llvm-project\build\bin\llc.exe -mtriple=aarch64-none-eabi -verify-machineinstrs C:\_work\llvm-project\llvm-project\llvm\test\CodeGen\AArch64\add.ll -o - | c:\_work\llvm-project\llvm-project\build\bin\filecheck.exe C:\_work\llvm-project\llvm-project\llvm\test\CodeGen\AArch64\add.ll --check-prefixes=CHECK,CHECK-SD
# executed command: 'c:\_work\llvm-project\llvm-project\build\bin\llc.exe' -mtriple=aarch64-none-eabi -verify-machineinstrs 'C:\_work\llvm-project\llvm-project\llvm\test\CodeGen\AArch64\add.ll' -o -
# note: command had no output on stdout or stderr
# executed command: 'c:\_work\llvm-project\llvm-project\build\bin\filecheck.exe' 'C:\_work\llvm-project\llvm-project\llvm\test\CodeGen\AArch64\add.ll' --check-prefixes=CHECK,CHECK-SD
# .---command stderr------------
# | C:\_work\llvm-project\llvm-project\llvm\test\CodeGen\AArch64\add.ll:354:18: error: CHECK-SD-NEXT: expected string not found in input
# | ; CHECK-SD-NEXT: add d0, d0, d3
# | ^
# | <stdin>:297:20: note: scanning from here
# | // %bb.0: // %entry
# | ^
# | <stdin>:302:2: note: possible intended match here
# | add d2, d2, d5
# | ^
# |
# | Input file: <stdin>
# | Check file: C:\_work\llvm-project\llvm-project\llvm\test\CodeGen\AArch64\add.ll
# |
# | -dump-input=help explains the following input dump.
# |
# | Input was:
# | <<<<<<
# | .
# | .
# | .
# | 292: .globl v3i64 // -- Begin function v3i64
# | 293: .p2align 2
# | 294: .type v3i64, at function
# | 295: v3i64: // @v3i64
# | 296: .cfi_startproc
# | 297: // %bb.0: // %entry
# | next:354'0 X error: no match found
# | 298: // kill: def $d3 killed $d3 def $q3
# | next:354'0 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# | 299: // kill: def $d0 killed $d0 def $q0
# | next:354'0 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# | 300: // kill: def $d4 killed $d4 def $q4
# | next:354'0 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# | 301: // kill: def $d1 killed $d1 def $q1
# | next:354'0 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# | 302: add d2, d2, d5
# | next:354'0 ~~~~~~~~~~~~~~~~
# | next:354'1 ? possible intended match
# | 303: mov v3.d[1], v4.d[0]
# | next:354'0 ~~~~~~~~~~~~~~~~~~~~~~
# | 304: mov v0.d[1], v1.d[0]
# | next:354'0 ~~~~~~~~~~~~~~~~~~~~~~
# | 305: add v0.2d, v0.2d, v3.2d
# | next:354'0 ~~~~~~~~~~~~~~~~~~~~~~~~~
# | 306: mov d1, v0.d[1]
# | next:354'0 ~~~~~~~~~~~~~~~~~
# | 307: // kill: def $d0 killed $d0 killed $q0
# | next:354'0 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# | .
# | .
# | .
# | >>>>>>
# `-----------------------------
# error: command failed with exit status: 1
--
```
</details>
<details>
<summary>LLVM.CodeGen/AArch64/concat-vector-add-combine.ll</summary>
```
Exit Code: 1
Command Output (stdout):
--
# RUN: at line 2
c:\_work\llvm-project\llvm-project\build\bin\llc.exe -mtriple=aarch64 < C:\_work\llvm-project\llvm-project\llvm\test\CodeGen\AArch64\concat-vector-add-combine.ll | c:\_work\llvm-project\llvm-project\build\bin\filecheck.exe C:\_work\llvm-project\llvm-project\llvm\test\CodeGen\AArch64\concat-vector-add-combine.ll
# executed command: 'c:\_work\llvm-project\llvm-project\build\bin\llc.exe' -mtriple=aarch64
# note: command had no output on stdout or stderr
# executed command: 'c:\_work\llvm-project\llvm-project\build\bin\filecheck.exe' 'C:\_work\llvm-project\llvm-project\llvm\test\CodeGen\AArch64\concat-vector-add-combine.ll'
# .---command stderr------------
# | C:\_work\llvm-project\llvm-project\llvm\test\CodeGen\AArch64\concat-vector-add-combine.ll:8:15: error: CHECK-NEXT: is not on the line after the previous match
# | ; CHECK-NEXT: ldr h1, [sp]
# | ^
# | <stdin>:11:2: note: 'next' match was here
# | ldr h1, [sp]
# | ^
# | <stdin>:9:13: note: previous match ended here
# | fmov s0, w0
# | ^
# | <stdin>:10:1: note: non-matching line after previous match is here
# | add x8, sp, #32
# | ^
# |
# | Input file: <stdin>
# | Check file: C:\_work\llvm-project\llvm-project\llvm\test\CodeGen\AArch64\concat-vector-add-combine.ll
# |
# | -dump-input=help explains the following input dump.
# |
# | Input was:
# | <<<<<<
# | .
# | .
# | .
# | 6: combine_add_16xi16: // @combine_add_16xi16
# | 7: .cfi_startproc
# | 8: // %bb.0:
# | 9: fmov s0, w0
# | 10: add x8, sp, #32
# | 11: ldr h1, [sp]
# | next:8 !~~~~~~~~~~~ error: match on wrong line
# | 12: ldr h2, [x8]
# | 13: add x8, sp, #8
# | 14: add x9, sp, #40
# | 15: ld1 { v1.h }[1], [x8]
# | 16: add x8, sp, #16
# | .
# | .
# | .
# | >>>>>>
# `-----------------------------
# error: command failed with exit status: 1
--
```
</details>
<details>
<summary>LLVM.CodeGen/AArch64/ptradd.ll</summary>
```
Exit Code: 1
Command Output (stdout):
--
# RUN: at line 2
c:\_work\llvm-project\llvm-project\build\bin\llc.exe < C:\_work\llvm-project\llvm-project\llvm\test\CodeGen\AArch64\ptradd.ll -mtriple=aarch64 -verify-machineinstrs -global-isel=0 | c:\_work\llvm-project\llvm-project\build\bin\filecheck.exe C:\_work\llvm-project\llvm-project\llvm\test\CodeGen\AArch64\ptradd.ll --check-prefixes=CHECK,CHECK-SD
# executed command: 'c:\_work\llvm-project\llvm-project\build\bin\llc.exe' -mtriple=aarch64 -verify-machineinstrs -global-isel=0
# note: command had no output on stdout or stderr
# executed command: 'c:\_work\llvm-project\llvm-project\build\bin\filecheck.exe' 'C:\_work\llvm-project\llvm-project\llvm\test\CodeGen\AArch64\ptradd.ll' --check-prefixes=CHECK,CHECK-SD
# .---command stderr------------
# | C:\_work\llvm-project\llvm-project\llvm\test\CodeGen\AArch64\ptradd.ll:158:18: error: CHECK-SD-NEXT: expected string not found in input
# | ; CHECK-SD-NEXT: add d0, d0, d3
# | ^
# | <stdin>:139:20: note: scanning from here
# | // %bb.0: // %entry
# | ^
# | <stdin>:144:2: note: possible intended match here
# | add d2, d2, d5
# | ^
# |
# | Input file: <stdin>
# | Check file: C:\_work\llvm-project\llvm-project\llvm\test\CodeGen\AArch64\ptradd.ll
# |
# | -dump-input=help explains the following input dump.
# |
# | Input was:
# | <<<<<<
# | .
# | .
# | .
# | 134: .globl vector_gep_v3i64 // -- Begin function vector_gep_v3i64
# | 135: .p2align 2
# | 136: .type vector_gep_v3i64, at function
# | 137: vector_gep_v3i64: // @vector_gep_v3i64
# | 138: .cfi_startproc
# | 139: // %bb.0: // %entry
# | next:158'0 X error: no match found
# | 140: // kill: def $d3 killed $d3 def $q3
# | next:158'0 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# | 141: // kill: def $d0 killed $d0 def $q0
# | next:158'0 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# | 142: // kill: def $d4 killed $d4 def $q4
# | next:158'0 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# | 143: // kill: def $d1 killed $d1 def $q1
# | next:158'0 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# | 144: add d2, d2, d5
# | next:158'0 ~~~~~~~~~~~~~~~~
# | next:158'1 ? possible intended match
# | 145: mov v3.d[1], v4.d[0]
# | next:158'0 ~~~~~~~~~~~~~~~~~~~~~~
# | 146: mov v0.d[1], v1.d[0]
# | next:158'0 ~~~~~~~~~~~~~~~~~~~~~~
# | 147: add v0.2d, v0.2d, v3.2d
# | next:158'0 ~~~~~~~~~~~~~~~~~~~~~~~~~
# | 148: mov d1, v0.d[1]
# | next:158'0 ~~~~~~~~~~~~~~~~~
# | 149: // kill: def $d0 killed $d0 killed $q0
# | next:158'0 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# | .
# | .
# | .
# | >>>>>>
# `-----------------------------
# error: command failed with exit status: 1
--
```
</details>
<details>
<summary>LLVM.CodeGen/AArch64/sub.ll</summary>
```
Exit Code: 1
Command Output (stdout):
--
# RUN: at line 2
c:\_work\llvm-project\llvm-project\build\bin\llc.exe -mtriple=aarch64-none-eabi -verify-machineinstrs C:\_work\llvm-project\llvm-project\llvm\test\CodeGen\AArch64\sub.ll -o - | c:\_work\llvm-project\llvm-project\build\bin\filecheck.exe C:\_work\llvm-project\llvm-project\llvm\test\CodeGen\AArch64\sub.ll --check-prefixes=CHECK,CHECK-SD
# executed command: 'c:\_work\llvm-project\llvm-project\build\bin\llc.exe' -mtriple=aarch64-none-eabi -verify-machineinstrs 'C:\_work\llvm-project\llvm-project\llvm\test\CodeGen\AArch64\sub.ll' -o -
# note: command had no output on stdout or stderr
# executed command: 'c:\_work\llvm-project\llvm-project\build\bin\filecheck.exe' 'C:\_work\llvm-project\llvm-project\llvm\test\CodeGen\AArch64\sub.ll' --check-prefixes=CHECK,CHECK-SD
# .---command stderr------------
# | C:\_work\llvm-project\llvm-project\llvm\test\CodeGen\AArch64\sub.ll:354:18: error: CHECK-SD-NEXT: expected string not found in input
# | ; CHECK-SD-NEXT: sub d0, d0, d3
# | ^
# | <stdin>:297:20: note: scanning from here
# | // %bb.0: // %entry
# | ^
# | <stdin>:302:2: note: possible intended match here
# | sub d2, d2, d5
# | ^
# |
# | Input file: <stdin>
# | Check file: C:\_work\llvm-project\llvm-project\llvm\test\CodeGen\AArch64\sub.ll
# |
# | -dump-input=help explains the following input dump.
# |
# | Input was:
# | <<<<<<
# | .
# | .
# | .
# | 292: .globl v3i64 // -- Begin function v3i64
# | 293: .p2align 2
# | 294: .type v3i64, at function
# | 295: v3i64: // @v3i64
# | 296: .cfi_startproc
# | 297: // %bb.0: // %entry
# | next:354'0 X error: no match found
# | 298: // kill: def $d3 killed $d3 def $q3
# | next:354'0 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# | 299: // kill: def $d0 killed $d0 def $q0
# | next:354'0 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# | 300: // kill: def $d4 killed $d4 def $q4
# | next:354'0 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# | 301: // kill: def $d1 killed $d1 def $q1
# | next:354'0 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# | 302: sub d2, d2, d5
# | next:354'0 ~~~~~~~~~~~~~~~~
# | next:354'1 ? possible intended match
# | 303: mov v3.d[1], v4.d[0]
# | next:354'0 ~~~~~~~~~~~~~~~~~~~~~~
# | 304: mov v0.d[1], v1.d[0]
# | next:354'0 ~~~~~~~~~~~~~~~~~~~~~~
# | 305: sub v0.2d, v0.2d, v3.2d
# | next:354'0 ~~~~~~~~~~~~~~~~~~~~~~~~~
# | 306: mov d1, v0.d[1]
# | next:354'0 ~~~~~~~~~~~~~~~~~
# | 307: // kill: def $d0 killed $d0 killed $q0
# | next:354'0 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# | .
# | .
# | .
# | >>>>>>
# `-----------------------------
# error: command failed with exit status: 1
--
```
</details>
<details>
<summary>LLVM.CodeGen/RISCV/calling-conv-p-ext-vector.ll</summary>
```
Exit Code: 1
Command Output (stdout):
--
# RUN: at line 2
c:\_work\llvm-project\llvm-project\build\bin\llc.exe -mtriple=riscv32 -mattr=+experimental-p,+m,+zbb -verify-machineinstrs < C:\_work\llvm-project\llvm-project\llvm\test\CodeGen\RISCV\calling-conv-p-ext-vector.ll | c:\_work\llvm-project\llvm-project\build\bin\filecheck.exe --check-prefixes=CHECK,RV32 C:\_work\llvm-project\llvm-project\llvm\test\CodeGen\RISCV\calling-conv-p-ext-vector.ll
# executed command: 'c:\_work\llvm-project\llvm-project\build\bin\llc.exe' -mtriple=riscv32 -mattr=+experimental-p,+m,+zbb -verify-machineinstrs
# note: command had no output on stdout or stderr
# executed command: 'c:\_work\llvm-project\llvm-project\build\bin\filecheck.exe' --check-prefixes=CHECK,RV32 'C:\_work\llvm-project\llvm-project\llvm\test\CodeGen\RISCV\calling-conv-p-ext-vector.ll'
# .---command stderr------------
# | C:\_work\llvm-project\llvm-project\llvm\test\CodeGen\RISCV\calling-conv-p-ext-vector.ll:73:14: error: RV32-NEXT: expected string not found in input
# | ; RV32-NEXT: lw a3, 0(a2)
# | ^
# | <stdin>:70:9: note: scanning from here
# | # %bb.0:
# | ^
# | <stdin>:73:2: note: possible intended match here
# | lw a4, 0(a2)
# | ^
# | C:\_work\llvm-project\llvm-project\llvm\test\CodeGen\RISCV\calling-conv-p-ext-vector.ll:103:14: error: RV32-NEXT: expected string not found in input
# | ; RV32-NEXT: lw a3, 0(a2)
# | ^
# | <stdin>:95:9: note: scanning from here
# | # %bb.0:
# | ^
# | <stdin>:98:2: note: possible intended match here
# | lw a4, 0(a2)
# | ^
# |
# | Input file: <stdin>
# | Check file: C:\_work\llvm-project\llvm-project\llvm\test\CodeGen\RISCV\calling-conv-p-ext-vector.ll
# |
# | -dump-input=help explains the following input dump.
# |
# | Input was:
# | <<<<<<
# | .
# | .
# | .
# | 65: .globl test_cc_v16i8 # -- Begin function test_cc_v16i8
# | 66: .p2align 2
# | 67: .type test_cc_v16i8, at function
# | 68: test_cc_v16i8: # @test_cc_v16i8
# | 69: .cfi_startproc
# | 70: # %bb.0:
# | next:73'0 X error: no match found
# | 71: lw a5, 4(a2)
# | next:73'0 ~~~~~~~~~~~~~~
# | 72: lw a3, 12(a2)
# | next:73'0 ~~~~~~~~~~~~~~~
# | 73: lw a4, 0(a2)
# | next:73'0 ~~~~~~~~~~~~~~
# | next:73'1 ? possible intended match
# | 74: lw a2, 8(a2)
# | next:73'0 ~~~~~~~~~~~~~~
# | 75: lw a7, 4(a1)
# | next:73'0 ~~~~~~~~~~~~~~
# | 76: lw t2, 12(a1)
# | next:73'0 ~~~~~~~~~~~~~~~
# | 77: lw a6, 0(a1)
# | next:73'0 ~~~~~~~~~~~~~~
# | 78: lw t1, 8(a1)
# | next:73'0 ~~~~~~~~~~~~~~
# | .
# | .
# | .
# | 90: .globl test_cc_v8i16 # -- Begin function test_cc_v8i16
# | next:73'0 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# | 91: .p2align 2
# | next:73'0 ~~~~~~~~~~~~
# | 92: .type test_cc_v8i16, at function
# | next:73'0 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# | 93: test_cc_v8i16: # @test_cc_v8i16
# | next:73'0 ~~~~~~~~~~~~~~
# | 94: .cfi_startproc
# | 95: # %bb.0:
# | next:103'0 X error: no match found
# | 96: lw a5, 4(a2)
# | next:103'0 ~~~~~~~~~~~~~~
# | 97: lw a3, 12(a2)
# | next:103'0 ~~~~~~~~~~~~~~~
# | 98: lw a4, 0(a2)
# | next:103'0 ~~~~~~~~~~~~~~
# | next:103'1 ? possible intended match
# | 99: lw a2, 8(a2)
# | next:103'0 ~~~~~~~~~~~~~~
# | 100: lw a7, 4(a1)
# | next:103'0 ~~~~~~~~~~~~~~
# | 101: lw t2, 12(a1)
# | next:103'0 ~~~~~~~~~~~~~~~
# | 102: lw a6, 0(a1)
# | next:103'0 ~~~~~~~~~~~~~~
# | 103: lw t1, 8(a1)
# | next:103'0 ~~~~~~~~~~~~~~
# | .
# | .
# | .
# | >>>>>>
# `-----------------------------
# error: command failed with exit status: 1
--
```
</details>
<details>
<summary>LLVM.CodeGen/RISCV/rvv/musttail-indirect-args.ll</summary>
```
Exit Code: 1
Command Output (stdout):
--
# RUN: at line 2
c:\_work\llvm-project\llvm-project\build\bin\llc.exe -mtriple=riscv32 -mattr=+m,+v C:\_work\llvm-project\llvm-project\llvm\test\CodeGen\RISCV\rvv\musttail-indirect-args.ll -o - | c:\_work\llvm-project\llvm-project\build\bin\filecheck.exe C:\_work\llvm-project\llvm-project\llvm\test\CodeGen\RISCV\rvv\musttail-indirect-args.ll --check-prefixes=CHECK,RV32
# executed command: 'c:\_work\llvm-project\llvm-project\build\bin\llc.exe' -mtriple=riscv32 -mattr=+m,+v 'C:\_work\llvm-project\llvm-project\llvm\test\CodeGen\RISCV\rvv\musttail-indirect-args.ll' -o -
# note: command had no output on stdout or stderr
# executed command: 'c:\_work\llvm-project\llvm-project\build\bin\filecheck.exe' 'C:\_work\llvm-project\llvm-project\llvm\test\CodeGen\RISCV\rvv\musttail-indirect-args.ll' --check-prefixes=CHECK,RV32
# .---command stderr------------
# | C:\_work\llvm-project\llvm-project\llvm\test\CodeGen\RISCV\rvv\musttail-indirect-args.ll:34:15: error: CHECK-NEXT: is not on the line after the previous match
# | ; CHECK-NEXT: slli a1, a1, 3
# | ^
# | <stdin>:23:2: note: 'next' match was here
# | slli a1, a1, 3
# | ^
# | <stdin>:21:16: note: previous match ended here
# | csrr a1, vlenb
# | ^
# | <stdin>:22:1: note: non-matching line after previous match is here
# | vl8re32.v v24, (a0)
# | ^
# | C:\_work\llvm-project\llvm-project\llvm\test\CodeGen\RISCV\rvv\musttail-indirect-args.ll:55:15: error: CHECK-NEXT: is not on the line after the previous match
# | ; CHECK-NEXT: slli a1, a1, 3
# | ^
# | <stdin>:43:2: note: 'next' match was here
# | slli a1, a1, 3
# | ^
# | <stdin>:41:16: note: previous match ended here
# | csrr a1, vlenb
# | ^
# | <stdin>:42:1: note: non-matching line after previous match is here
# | vl8re32.v v24, (a0)
# | ^
# |
# | Input file: <stdin>
# | Check file: C:\_work\llvm-project\llvm-project\llvm\test\CodeGen\RISCV\rvv\musttail-indirect-args.ll
# |
# | -dump-input=help explains the following input dump.
# |
# | Input was:
# | <<<<<<
# | .
# | .
# | .
# | 18: .variant_cc caller_musttail_scalable_computed
# | 19: caller_musttail_scalable_computed: # @caller_musttail_scalable_computed
# | 20: # %bb.0:
# | 21: csrr a1, vlenb
# | 22: vl8re32.v v24, (a0)
# | 23: slli a1, a1, 3
# | next:34 !~~~~~~~~~~~~~ error: match on wrong line
# | 24: add a1, a0, a1
# | 25: vl8re32.v v0, (a1)
# | 26: vsetvli a2, zero, e32, m8, ta, ma
# | 27: vadd.vv v8, v8, v24
# | 28: vadd.vv v16, v16, v0
# | .
# | .
# | .
# | 38: .variant_cc caller_musttail_scalable_mixed
# | 39: caller_musttail_scalable_mixed: # @caller_musttail_scalable_mixed
# | 40: # %bb.0:
# | 41: csrr a1, vlenb
# | 42: vl8re32.v v24, (a0)
# | 43: slli a1, a1, 3
# | next:55 !~~~~~~~~~~~~~ error: match on wrong line
# | 44: add a1, a0, a1
# | 45: vl8re32.v v0, (a1)
# | 46: vsetvli a2, zero, e32, m8, ta, ma
# | 47: vadd.vv v24, v8, v24
# | 48: vadd.vv v0, v16, v0
# | .
# | .
# | .
# | >>>>>>
# `-----------------------------
# 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/201056
More information about the llvm-commits
mailing list