[Mlir-commits] [mlir] [mlir][XeGPUToXeVM][XeVMToLLVM] Update the default cache-control values. (PR #190954)
llvmlistbot at llvm.org
llvmlistbot at llvm.org
Wed Apr 8 04:03:59 PDT 2026
github-actions[bot] wrote:
<!--PREMERGE ADVISOR COMMENT: Windows-->
# :window: Windows x64 Test Results
* 3607 tests passed
* 416 tests skipped
* 5 tests failed
## Failed Tests
(click on a test name to see its output)
### MLIR
<details>
<summary>MLIR.Conversion/XeGPUToXeVM/loadstore_1d.mlir</summary>
```
Exit Code: 1
Command Output (stdout):
--
# RUN: at line 1
c:\_work\llvm-project\llvm-project\build\bin\mlir-opt.exe -convert-xegpu-to-xevm -canonicalize C:\_work\llvm-project\llvm-project\mlir\test\Conversion\XeGPUToXeVM\loadstore_1d.mlir | c:\_work\llvm-project\llvm-project\build\bin\filecheck.exe C:\_work\llvm-project\llvm-project\mlir\test\Conversion\XeGPUToXeVM\loadstore_1d.mlir
# executed command: 'c:\_work\llvm-project\llvm-project\build\bin\mlir-opt.exe' -convert-xegpu-to-xevm -canonicalize 'C:\_work\llvm-project\llvm-project\mlir\test\Conversion\XeGPUToXeVM\loadstore_1d.mlir'
# 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\mlir\test\Conversion\XeGPUToXeVM\loadstore_1d.mlir'
# .---command stderr------------
# | C:\_work\llvm-project\llvm-project\mlir\test\Conversion\XeGPUToXeVM\loadstore_1d.mlir:22:12: error: CHECK: expected string not found in input
# | // CHECK: %[[LOAD:.*]] = xevm.blockload %[[PTR]] <{cache_control = #xevm.load_cache_control<L1c_L2uc_L3uc>}>
# | ^
# | <stdin>:13:45: note: scanning from here
# | %3 = llvm.inttoptr %2 : i64 to !llvm.ptr<1>
# | ^
# | <stdin>:13:45: note: with "PTR" equal to "3"
# | %3 = llvm.inttoptr %2 : i64 to !llvm.ptr<1>
# | ^
# | <stdin>:14:2: note: possible intended match here
# | %4 = xevm.blockload %3 <{cache_control = #xevm.load_cache_control<L1c_L2uc_L3c>}> : (!llvm.ptr<1>) -> vector<2xi32>
# | ^
# |
# | Input file: <stdin>
# | Check file: C:\_work\llvm-project\llvm-project\mlir\test\Conversion\XeGPUToXeVM\loadstore_1d.mlir
# |
# | -dump-input=help explains the following input dump.
# |
# | Input was:
# | <<<<<<
# | .
# | .
# | .
# | 8: %0 = arith.index_castui %intptr : index to i64
# | 9: %memspacecast_0 = memref.memory_space_cast %arg1 : memref<256xf32, 1> to memref<256xf32>
# | 10: %intptr_1 = memref.extract_aligned_pointer_as_index %memspacecast_0 : memref<256xf32> -> index
# | 11: %1 = arith.index_castui %intptr_1 : index to i64
# | 12: %2 = arith.addi %0, %c384_i64 : i64
# | 13: %3 = llvm.inttoptr %2 : i64 to !llvm.ptr<1>
# | check:22'0 X error: no match found
# | check:22'1 with "PTR" equal to "3"
# | 14: %4 = xevm.blockload %3 <{cache_control = #xevm.load_cache_control<L1c_L2uc_L3c>}> : (!llvm.ptr<1>) -> vector<2xi32>
# | check:22'0 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# | check:22'2 ? possible intended match
# | 15: %5 = arith.addi %1, %c512_i64 : i64
# | check:22'0 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# | 16: %6 = llvm.inttoptr %5 : i64 to !llvm.ptr<1>
# | check:22'0 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# | 17: xevm.blockstore %6, %4 <{cache_control = #xevm.store_cache_control<L1wb_L2uc_L3wb>}> : (!llvm.ptr<1>, vector<2xi32>)
# | check:22'0 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# | 18: gpu.return
# | check:22'0 ~~~~~~~~~~~~
# | 19: }
# | check:22'0 ~~~
# | .
# | .
# | .
# | >>>>>>
# `-----------------------------
# error: command failed with exit status: 1
--
```
</details>
<details>
<summary>MLIR.Conversion/XeGPUToXeVM/loadstore_nd_sub_byte.mlir</summary>
```
Exit Code: 1
Command Output (stdout):
--
# RUN: at line 1
c:\_work\llvm-project\llvm-project\build\bin\mlir-opt.exe -convert-xegpu-to-xevm -canonicalize C:\_work\llvm-project\llvm-project\mlir\test\Conversion\XeGPUToXeVM\loadstore_nd_sub_byte.mlir | c:\_work\llvm-project\llvm-project\build\bin\filecheck.exe C:\_work\llvm-project\llvm-project\mlir\test\Conversion\XeGPUToXeVM\loadstore_nd_sub_byte.mlir
# executed command: 'c:\_work\llvm-project\llvm-project\build\bin\mlir-opt.exe' -convert-xegpu-to-xevm -canonicalize 'C:\_work\llvm-project\llvm-project\mlir\test\Conversion\XeGPUToXeVM\loadstore_nd_sub_byte.mlir'
# 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\mlir\test\Conversion\XeGPUToXeVM\loadstore_nd_sub_byte.mlir'
# .---command stderr------------
# | C:\_work\llvm-project\llvm-project\mlir\test\Conversion\XeGPUToXeVM\loadstore_nd_sub_byte.mlir:33:17: error: CHECK-SAME: expected string not found in input
# | // CHECK-SAME: cache_control = #xevm.load_cache_control<L1c_L2uc_L3uc>, elem_size_in_bits = 16 : i32,
# | ^
# | <stdin>:23:79: note: scanning from here
# | %10 = xevm.blockload2d %9, %c64_i32, %c16_i32, %c64_i32, %c16_i32, %c8_i32 <{cache_control = #xevm.load_cache_control<L1c_L2uc_L3c>, elem_size_in_bits = 16 : i32, pack_register = false, tile_height = 8 : i32, tile_width = 16 : i32, transpose = false, v_blocks = 1 : i32}> : (!llvm.ptr<1>, i32, i32, i32, i32, i32) -> vector<8xi16>
# | ^
# | C:\_work\llvm-project\llvm-project\mlir\test\Conversion\XeGPUToXeVM\loadstore_nd_sub_byte.mlir:69:17: error: CHECK-SAME: expected string not found in input
# | // CHECK-SAME: cache_control = #xevm.load_cache_control<L1c_L2uc_L3uc>, elem_size_in_bits = 8 : i32,
# | ^
# | <stdin>:55:79: note: scanning from here
# | %9 = xevm.blockload2d %8, %c64_i32, %c64_i32, %c64_i32, %c16_i32, %c32_i32 <{cache_control = #xevm.load_cache_control<L1c_L2uc_L3c>, elem_size_in_bits = 8 : i32, pack_register = true, tile_height = 32 : i32, tile_width = 16 : i32, transpose = false, v_blocks = 1 : i32}> : (!llvm.ptr<1>, i32, i32, i32, i32, i32) -> vector<8xi32>
# | ^
# |
# | Input file: <stdin>
# | Check file: C:\_work\llvm-project\llvm-project\mlir\test\Conversion\XeGPUToXeVM\loadstore_nd_sub_byte.mlir
# |
# | -dump-input=help explains the following input dump.
# |
# | Input was:
# | <<<<<<
# | .
# | .
# | .
# | 18: %5 = vector.insert %c16_i32, %4 [3] : i32 into vector<8xi32>
# | 19: %6 = vector.insert %c128_i32, %5 [4] : i32 into vector<8xi32>
# | 20: %7 = vector.bitcast %6 : vector<8xi32> to vector<4xi64>
# | 21: %8 = vector.extract %7[0] : i64 from vector<4xi64>
# | 22: %9 = llvm.inttoptr %8 : i64 to !llvm.ptr<1>
# | 23: %10 = xevm.blockload2d %9, %c64_i32, %c16_i32, %c64_i32, %c16_i32, %c8_i32 <{cache_control = #xevm.load_cache_control<L1c_L2uc_L3c>, elem_size_in_bits = 16 : i32, pack_register = false, tile_height = 8 : i32, tile_width = 16 : i32, transpose = false, v_blocks = 1 : i32}> : (!llvm.ptr<1>, i32, i32, i32, i32, i32) -> vector<8xi16>
# | same:33 X~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ error: no match found
# | 24: %11 = vector.insert %1, %cst [0] : i64 into vector<4xi64>
# | same:33 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# | 25: %12 = vector.bitcast %11 : vector<4xi64> to vector<8xi32>
# | same:33 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# | 26: %13 = vector.insert %c128_i32, %12 [2] : i32 into vector<8xi32>
# | same:33 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# | 27: %14 = vector.insert %c16_i32, %13 [3] : i32 into vector<8xi32>
# | same:33 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# | 28: %15 = vector.insert %c128_i32, %14 [4] : i32 into vector<8xi32>
# | same:33 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# | .
# | .
# | .
# | 50: %4 = vector.insert %c64_i32, %3 [3] : i32 into vector<8xi32>
# | 51: %5 = vector.insert %c128_i32, %4 [4] : i32 into vector<8xi32>
# | 52: %6 = vector.bitcast %5 : vector<8xi32> to vector<4xi64>
# | 53: %7 = vector.extract %6[0] : i64 from vector<4xi64>
# | 54: %8 = llvm.inttoptr %7 : i64 to !llvm.ptr<1>
# | 55: %9 = xevm.blockload2d %8, %c64_i32, %c64_i32, %c64_i32, %c16_i32, %c32_i32 <{cache_control = #xevm.load_cache_control<L1c_L2uc_L3c>, elem_size_in_bits = 8 : i32, pack_register = true, tile_height = 32 : i32, tile_width = 16 : i32, transpose = false, v_blocks = 1 : i32}> : (!llvm.ptr<1>, i32, i32, i32, i32, i32) -> vector<8xi32>
# | same:69 X~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ error: no match found
# | 56: %10 = vector.bitcast %9 : vector<8xi32> to vector<64xi4>
# | same:69 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# | 57: vector.store %10, %memspacecast_0[%c32, %c0] : memref<64x128xi4>, vector<64xi4>
# | same:69 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# | 58: gpu.return
# | same:69 ~~~~~~~~~~~~
# | 59: }
# | same:69 ~~~
# | 60: }
# | same:69 ~~~
# | .
# | .
# | .
# | >>>>>>
# `-----------------------------
# error: command failed with exit status: 1
--
```
</details>
<details>
<summary>MLIR.Conversion/XeGPUToXeVM/loadstoreprefetch.mlir</summary>
```
Exit Code: 1
Command Output (stdout):
--
# RUN: at line 1
c:\_work\llvm-project\llvm-project\build\bin\mlir-opt.exe C:\_work\llvm-project\llvm-project\mlir\test\Conversion\XeGPUToXeVM\loadstoreprefetch.mlir --split-input-file -convert-xegpu-to-xevm -canonicalize | c:\_work\llvm-project\llvm-project\build\bin\filecheck.exe C:\_work\llvm-project\llvm-project\mlir\test\Conversion\XeGPUToXeVM\loadstoreprefetch.mlir
# executed command: 'c:\_work\llvm-project\llvm-project\build\bin\mlir-opt.exe' 'C:\_work\llvm-project\llvm-project\mlir\test\Conversion\XeGPUToXeVM\loadstoreprefetch.mlir' --split-input-file -convert-xegpu-to-xevm -canonicalize
# 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\mlir\test\Conversion\XeGPUToXeVM\loadstoreprefetch.mlir'
# .---command stderr------------
# | C:\_work\llvm-project\llvm-project\mlir\test\Conversion\XeGPUToXeVM\loadstoreprefetch.mlir:18:12: error: CHECK: expected string not found in input
# | // CHECK: %[[VAR7:.*]] = llvm.load %[[VAR5]] {cache_control = #xevm.load_cache_control<L1c_L2uc_L3uc>} : !llvm.ptr<1> -> f16
# | ^
# | <stdin>:13:27: note: scanning from here
# | %6 = scf.if %0 -> (f16) {
# | ^
# | <stdin>:13:27: note: with "VAR5" equal to "5"
# | %6 = scf.if %0 -> (f16) {
# | ^
# | <stdin>:14:2: note: possible intended match here
# | %8 = llvm.load %5 {cache_control = #xevm.load_cache_control<L1c_L2uc_L3c>} : !llvm.ptr<1> -> f16
# | ^
# | C:\_work\llvm-project\llvm-project\mlir\test\Conversion\XeGPUToXeVM\loadstoreprefetch.mlir:65:12: error: CHECK: expected string not found in input
# | // CHECK: llvm.store %[[CST_0]], %[[VAR6]] {cache_control = #xevm.store_cache_control<L1wb_L2uc_L3uc>} : f32, !llvm.ptr<1>
# | ^
# | <stdin>:64:13: note: scanning from here
# | scf.if %0 {
# | ^
# | <stdin>:64:13: note: with "CST_0" equal to "cst"
# | scf.if %0 {
# | ^
# | <stdin>:64:13: note: with "VAR6" equal to "5"
# | scf.if %0 {
# | ^
# | <stdin>:65:2: note: possible intended match here
# | llvm.store %cst, %5 {cache_control = #xevm.store_cache_control<L1wb_L2uc_L3wb>} : f32, !llvm.ptr<1>
# | ^
# | C:\_work\llvm-project\llvm-project\mlir\test\Conversion\XeGPUToXeVM\loadstoreprefetch.mlir:84:12: error: CHECK: expected string not found in input
# | // CHECK: xevm.prefetch %[[VAR4]] <{cache_control = #xevm.load_cache_control<L1c_L2uc_L3uc>}> : (!llvm.ptr<1>)
# | ^
# | <stdin>:81:45: note: scanning from here
# | %4 = llvm.inttoptr %3 : i64 to !llvm.ptr<1>
# | ^
# | <stdin>:81:45: note: with "VAR4" equal to "4"
# | %4 = llvm.inttoptr %3 : i64 to !llvm.ptr<1>
# | ^
# | <stdin>:82:2: note: possible intended match here
# | xevm.prefetch %4 <{cache_control = #xevm.load_cache_control<L1c_L2uc_L3c>}> : (!llvm.ptr<1>)
# | ^
# | C:\_work\llvm-project\llvm-project\mlir\test\Conversion\XeGPUToXeVM\loadstoreprefetch.mlir:104:12: error: CHECK: expected string not found in input
# | // CHECK: xevm.prefetch %[[VAR5]] <{cache_control = #xevm.load_cache_control<L1c_L2uc_L3uc>}> : (!llvm.ptr<1>)
# | ^
# | <stdin>:99:45: note: scanning from here
# | %5 = llvm.inttoptr %4 : i64 to !llvm.ptr<1>
# | ^
# | <stdin>:99:45: note: with "VAR5" equal to "5"
# | %5 = llvm.inttoptr %4 : i64 to !llvm.ptr<1>
# | ^
# | <stdin>:100:2: note: possible intended match here
# | xevm.prefetch %5 <{cache_control = #xevm.load_cache_control<L1c_L2uc_L3c>}> : (!llvm.ptr<1>)
# | ^
# |
# | Input file: <stdin>
# | Check file: C:\_work\llvm-project\llvm-project\mlir\test\Conversion\XeGPUToXeVM\loadstoreprefetch.mlir
# |
# | -dump-input=help explains the following input dump.
# |
# | Input was:
# | <<<<<<
# | .
# | .
# | .
# | 8: %1 = vector.extract %arg1[0] : index from vector<1xindex>
# | 9: %2 = arith.index_castui %1 : index to i64
# | 10: %3 = arith.muli %2, %c2_i64 : i64
# | 11: %4 = arith.addi %arg0, %3 : i64
# | 12: %5 = llvm.inttoptr %4 : i64 to !llvm.ptr<1>
# | 13: %6 = scf.if %0 -> (f16) {
# | check:18'0 X error: no match found
# | check:18'1 with "VAR5" equal to "5"
# | 14: %8 = llvm.load %5 {cache_control = #xevm.load_cache_control<L1c_L2uc_L3c>} : !llvm.ptr<1> -> f16
# | check:18'0 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# | check:18'2 ? possible intended match
# | 15: scf.yield %8 : f16
# | check:18'0 ~~~~~~~~~~~~~~~~~~~~
# | 16: } else {
# | check:18'0 ~~~~~~~~~~
# | 17: scf.yield %cst : f16
# | check:18'0 ~~~~~~~~~~~~~~~~~~~~~~
# | 18: }
# | check:18'0 ~~~
# | 19: %7 = vector.broadcast %6 : f16 to vector<1xf16>
# | check:18'0 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# | .
# | .
# | .
# | 59: %1 = vector.extract %arg1[0] : index from vector<1xindex>
# | 60: %2 = arith.index_castui %1 : index to i64
# | 61: %3 = arith.muli %2, %c4_i64 : i64
# | 62: %4 = arith.addi %arg0, %3 : i64
# | 63: %5 = llvm.inttoptr %4 : i64 to !llvm.ptr<1>
# | 64: scf.if %0 {
# | check:65'0 X error: no match found
# | check:65'1 with "CST_0" equal to "cst"
# | check:65'2 with "VAR6" equal to "5"
# | 65: llvm.store %cst, %5 {cache_control = #xevm.store_cache_control<L1wb_L2uc_L3wb>} : f32, !llvm.ptr<1>
# | check:65'0 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# | check:65'3 ? possible intended match
# | 66: }
# | check:65'0 ~~~
# | 67: gpu.return
# | check:65'0 ~~~~~~~~~~~~
# | 68: }
# | check:65'0 ~~~
# | 69: }
# | check:65'0 ~~~
# | 70: }
# | check:65'0 ~~
# | .
# | .
# | .
# | 76: %c4_i64 = arith.constant 4 : i64
# | 77: %0 = vector.extract %arg1[0] : index from vector<1xindex>
# | 78: %1 = arith.index_castui %0 : index to i64
# | 79: %2 = arith.muli %1, %c4_i64 : i64
# | 80: %3 = arith.addi %arg0, %2 : i64
# | 81: %4 = llvm.inttoptr %3 : i64 to !llvm.ptr<1>
# | check:84'0 X error: no match found
# | check:84'1 with "VAR4" equal to "4"
# | 82: xevm.prefetch %4 <{cache_control = #xevm.load_cache_control<L1c_L2uc_L3c>}> : (!llvm.ptr<1>)
# | check:84'0 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# | check:84'2 ? possible intended match
# | 83: gpu.return
# | check:84'0 ~~~~~~~~~~~~
# | 84: }
# | check:84'0 ~~~
# | 85: }
# | check:84'0 ~~~
# | 86: }
# | check:84'0 ~~
# | 87:
# | check:84'0 ~
# | .
# | .
# | .
# | 94: %1 = arith.index_castui %0 : index to i64
# | 95: %intptr = memref.extract_aligned_pointer_as_index %arg0 : memref<256xf32> -> index
# | 96: %2 = arith.index_castui %intptr : index to i64
# | 97: %3 = arith.muli %1, %c4_i64 : i64
# | 98: %4 = arith.addi %2, %3 : i64
# | 99: %5 = llvm.inttoptr %4 : i64 to !llvm.ptr<1>
# | check:104'0 X error: no match found
# | check:104'1 with "VAR5" equal to "5"
# | 100: xevm.prefetch %5 <{cache_control = #xevm.load_cache_control<L1c_L2uc_L3c>}> : (!llvm.ptr<1>)
# | check:104'0 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# | check:104'2 ? possible intended match
# | 101: gpu.return
# | check:104'0 ~~~~~~~~~~~~
# | 102: }
# | check:104'0 ~~~
# | 103: }
# | check:104'0 ~~~
# | 104: }
# | check:104'0 ~~
# | 105:
# | check:104'0 ~
# | .
# | .
# | .
# | >>>>>>
# `-----------------------------
# error: command failed with exit status: 1
--
```
</details>
<details>
<summary>MLIR.Conversion/XeGPUToXeVM/prefetch_nd.mlir</summary>
```
Exit Code: 1
Command Output (stdout):
--
# RUN: at line 1
c:\_work\llvm-project\llvm-project\build\bin\mlir-opt.exe -convert-xegpu-to-xevm -canonicalize C:\_work\llvm-project\llvm-project\mlir\test\Conversion\XeGPUToXeVM\prefetch_nd.mlir | c:\_work\llvm-project\llvm-project\build\bin\filecheck.exe C:\_work\llvm-project\llvm-project\mlir\test\Conversion\XeGPUToXeVM\prefetch_nd.mlir
# executed command: 'c:\_work\llvm-project\llvm-project\build\bin\mlir-opt.exe' -convert-xegpu-to-xevm -canonicalize 'C:\_work\llvm-project\llvm-project\mlir\test\Conversion\XeGPUToXeVM\prefetch_nd.mlir'
# 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\mlir\test\Conversion\XeGPUToXeVM\prefetch_nd.mlir'
# .---command stderr------------
# | C:\_work\llvm-project\llvm-project\mlir\test\Conversion\XeGPUToXeVM\prefetch_nd.mlir:16:16: error: CHECK-SAME: expected string not found in input
# | //CHECK-SAME: <{cache_control = #xevm.load_cache_control<L1c_L2uc_L3uc>, elem_size_in_bits = 32 : i32,
# | ^
# | <stdin>:20:72: note: scanning from here
# | xevm.blockprefetch2d %8, %c64_i32, %c8_i32, %c64_i32, %c0_i32, %c0_i32 <{cache_control = #xevm.load_cache_control<L1c_L2uc_L3c>, elem_size_in_bits = 32 : i32, tile_height = 8 : i32, tile_width = 16 : i32, v_blocks = 1 : i32}> : (!llvm.ptr<1>, i32, i32, i32, i32, i32)
# | ^
# | <stdin>:20:73: note: possible intended match here
# | xevm.blockprefetch2d %8, %c64_i32, %c8_i32, %c64_i32, %c0_i32, %c0_i32 <{cache_control = #xevm.load_cache_control<L1c_L2uc_L3c>, elem_size_in_bits = 32 : i32, tile_height = 8 : i32, tile_width = 16 : i32, v_blocks = 1 : i32}> : (!llvm.ptr<1>, i32, i32, i32, i32, i32)
# | ^
# |
# | Input file: <stdin>
# | Check file: C:\_work\llvm-project\llvm-project\mlir\test\Conversion\XeGPUToXeVM\prefetch_nd.mlir
# |
# | -dump-input=help explains the following input dump.
# |
# | Input was:
# | <<<<<<
# | .
# | .
# | .
# | 15: %4 = vector.insert %c8_i32, %3 [3] : i32 into vector<8xi32>
# | 16: %5 = vector.insert %c16_i32, %4 [4] : i32 into vector<8xi32>
# | 17: %6 = vector.bitcast %5 : vector<8xi32> to vector<4xi64>
# | 18: %7 = vector.extract %6[0] : i64 from vector<4xi64>
# | 19: %8 = llvm.inttoptr %7 : i64 to !llvm.ptr<1>
# | 20: xevm.blockprefetch2d %8, %c64_i32, %c8_i32, %c64_i32, %c0_i32, %c0_i32 <{cache_control = #xevm.load_cache_control<L1c_L2uc_L3c>, elem_size_in_bits = 32 : i32, tile_height = 8 : i32, tile_width = 16 : i32, v_blocks = 1 : i32}> : (!llvm.ptr<1>, i32, i32, i32, i32, i32)
# | same:16'0 X~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ error: no match found
# | same:16'1 ? possible intended match
# | 21: gpu.return
# | same:16'0 ~~~~~~~~~~~~
# | 22: }
# | same:16'0 ~~~
# | 23: }
# | same:16'0 ~~~
# | 24: }
# | same:16'0 ~~
# | 25:
# | same:16'0 ~
# | >>>>>>
# `-----------------------------
# error: command failed with exit status: 1
--
```
</details>
<details>
<summary>MLIR.Conversion/XeGPUToXeVM/prefetch_nd_sub_byte.mlir</summary>
```
Exit Code: 1
Command Output (stdout):
--
# RUN: at line 1
c:\_work\llvm-project\llvm-project\build\bin\mlir-opt.exe -convert-xegpu-to-xevm -canonicalize C:\_work\llvm-project\llvm-project\mlir\test\Conversion\XeGPUToXeVM\prefetch_nd_sub_byte.mlir | c:\_work\llvm-project\llvm-project\build\bin\filecheck.exe C:\_work\llvm-project\llvm-project\mlir\test\Conversion\XeGPUToXeVM\prefetch_nd_sub_byte.mlir
# executed command: 'c:\_work\llvm-project\llvm-project\build\bin\mlir-opt.exe' -convert-xegpu-to-xevm -canonicalize 'C:\_work\llvm-project\llvm-project\mlir\test\Conversion\XeGPUToXeVM\prefetch_nd_sub_byte.mlir'
# 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\mlir\test\Conversion\XeGPUToXeVM\prefetch_nd_sub_byte.mlir'
# .---command stderr------------
# | C:\_work\llvm-project\llvm-project\mlir\test\Conversion\XeGPUToXeVM\prefetch_nd_sub_byte.mlir:14:17: error: CHECK-SAME: expected string not found in input
# | // CHECK-SAME: <{cache_control = #xevm.load_cache_control<L1c_L2uc_L3uc>, elem_size_in_bits = 16 : i32,
# | ^
# | <stdin>:20:74: note: scanning from here
# | xevm.blockprefetch2d %8, %c64_i32, %c16_i32, %c64_i32, %c16_i32, %c8_i32 <{cache_control = #xevm.load_cache_control<L1c_L2uc_L3c>, elem_size_in_bits = 16 : i32, tile_height = 8 : i32, tile_width = 16 : i32, v_blocks = 1 : i32}> : (!llvm.ptr<1>, i32, i32, i32, i32, i32)
# | ^
# | <stdin>:20:75: note: possible intended match here
# | xevm.blockprefetch2d %8, %c64_i32, %c16_i32, %c64_i32, %c16_i32, %c8_i32 <{cache_control = #xevm.load_cache_control<L1c_L2uc_L3c>, elem_size_in_bits = 16 : i32, tile_height = 8 : i32, tile_width = 16 : i32, v_blocks = 1 : i32}> : (!llvm.ptr<1>, i32, i32, i32, i32, i32)
# | ^
# |
# | Input file: <stdin>
# | Check file: C:\_work\llvm-project\llvm-project\mlir\test\Conversion\XeGPUToXeVM\prefetch_nd_sub_byte.mlir
# |
# | -dump-input=help explains the following input dump.
# |
# | Input was:
# | <<<<<<
# | .
# | .
# | .
# | 15: %4 = vector.insert %c16_i32, %3 [3] : i32 into vector<8xi32>
# | 16: %5 = vector.insert %c128_i32, %4 [4] : i32 into vector<8xi32>
# | 17: %6 = vector.bitcast %5 : vector<8xi32> to vector<4xi64>
# | 18: %7 = vector.extract %6[0] : i64 from vector<4xi64>
# | 19: %8 = llvm.inttoptr %7 : i64 to !llvm.ptr<1>
# | 20: xevm.blockprefetch2d %8, %c64_i32, %c16_i32, %c64_i32, %c16_i32, %c8_i32 <{cache_control = #xevm.load_cache_control<L1c_L2uc_L3c>, elem_size_in_bits = 16 : i32, tile_height = 8 : i32, tile_width = 16 : i32, v_blocks = 1 : i32}> : (!llvm.ptr<1>, i32, i32, i32, i32, i32)
# | same:14'0 X~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ error: no match found
# | same:14'1 ? possible intended match
# | 21: gpu.return
# | same:14'0 ~~~~~~~~~~~~
# | 22: }
# | same:14'0 ~~~
# | 23: }
# | same:14'0 ~~~
# | 24: }
# | same:14'0 ~~
# | 25:
# | same:14'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/190954
More information about the Mlir-commits
mailing list