[Mlir-commits] [mlir] [MLIR][XeGPU] Enable one-step subgroup distribution of cross-lane reduction to shuffle op (PR #182698)
llvmlistbot at llvm.org
llvmlistbot at llvm.org
Sat Feb 21 12:00:28 PST 2026
github-actions[bot] wrote:
<!--PREMERGE ADVISOR COMMENT: Linux-->
# :penguin: Linux x64 Test Results
* 7514 tests passed
* 601 tests skipped
* 1 test failed
## Failed Tests
(click on a test name to see its output)
### MLIR
<details>
<summary>MLIR.Dialect/XeGPU/sg-to-wi-experimental-unit.mlir</summary>
```
Exit Code: 1
Command Output (stdout):
--
# RUN: at line 2
/home/gha/actions-runner/_work/llvm-project/llvm-project/build/bin/mlir-opt --xevm-attach-target='module=xevm_* chip=pvc' --allow-unregistered-dialect --test-xegpu-sg-to-wi-distribute-experimental --split-input-file /home/gha/actions-runner/_work/llvm-project/llvm-project/mlir/test/Dialect/XeGPU/sg-to-wi-experimental-unit.mlir | /home/gha/actions-runner/_work/llvm-project/llvm-project/build/bin/FileCheck /home/gha/actions-runner/_work/llvm-project/llvm-project/mlir/test/Dialect/XeGPU/sg-to-wi-experimental-unit.mlir
# executed command: /home/gha/actions-runner/_work/llvm-project/llvm-project/build/bin/mlir-opt '--xevm-attach-target=module=xevm_* chip=pvc' --allow-unregistered-dialect --test-xegpu-sg-to-wi-distribute-experimental --split-input-file /home/gha/actions-runner/_work/llvm-project/llvm-project/mlir/test/Dialect/XeGPU/sg-to-wi-experimental-unit.mlir
# 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/mlir/test/Dialect/XeGPU/sg-to-wi-experimental-unit.mlir
# .---command stderr------------
# | /home/gha/actions-runner/_work/llvm-project/llvm-project/mlir/test/Dialect/XeGPU/sg-to-wi-experimental-unit.mlir:188:11: error: CHECK: expected string not found in input
# | // CHECK: %c1_i32 = arith.constant 1 : i32
# | ^
# | <stdin>:122:36: note: scanning from here
# | %c16_i32 = arith.constant 16 : i32
# | ^
# | <stdin>:125:2: note: possible intended match here
# | %c2_i32 = arith.constant 2 : i32
# | ^
# | /home/gha/actions-runner/_work/llvm-project/llvm-project/mlir/test/Dialect/XeGPU/sg-to-wi-experimental-unit.mlir:253:11: error: CHECK: expected string not found in input
# | // CHECK: %c1_i32 = arith.constant 1 : i32
# | ^
# | <stdin>:173:36: note: scanning from here
# | %c16_i32 = arith.constant 16 : i32
# | ^
# | <stdin>:176:2: note: possible intended match here
# | %c2_i32 = arith.constant 2 : i32
# | ^
# |
# | Input file: <stdin>
# | Check file: /home/gha/actions-runner/_work/llvm-project/llvm-project/mlir/test/Dialect/XeGPU/sg-to-wi-experimental-unit.mlir
# |
# | -dump-input=help explains the following input dump.
# |
# | Input was:
# | <<<<<<
# | .
# | .
# | .
# | 117: %0 = vector.extract_strided_slice %cst {offsets = [0, 0], sizes = [1, 1], strides = [1, 1]} : vector<2x1xf32> to vector<1x1xf32>
# | 118: %1 = vector.shape_cast %0 : vector<1x1xf32> to vector<1xf32>
# | 119: %2 = vector.extract %cst_0[0] : f32 from vector<2xf32>
# | 120: %3 = vector.reduction <add>, %1 : vector<1xf32> into f32
# | 121: %c1_i32 = arith.constant 1 : i32
# | 122: %c16_i32 = arith.constant 16 : i32
# | check:188'0 X error: no match found
# | 123: %shuffleResult, %valid = gpu.shuffle xor %3, %c1_i32, %c16_i32 : f32
# | check:188'0 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# | 124: %4 = arith.addf %3, %shuffleResult : f32
# | check:188'0 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# | 125: %c2_i32 = arith.constant 2 : i32
# | check:188'0 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# | check:188'1 ? possible intended match
# | 126: %c16_i32_2 = arith.constant 16 : i32
# | check:188'0 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# | 127: %shuffleResult_3, %valid_4 = gpu.shuffle xor %4, %c2_i32, %c16_i32_2 : f32
# | check:188'0 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# | 128: %5 = arith.addf %4, %shuffleResult_3 : f32
# | check:188'0 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# | 129: %c4_i32 = arith.constant 4 : i32
# | check:188'0 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# | 130: %c16_i32_5 = arith.constant 16 : i32
# | check:188'0 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# | .
# | .
# | .
# | 168: %0 = vector.extract_strided_slice %cst {offsets = [0, 0], sizes = [1, 1], strides = [1, 1]} : vector<1x2xf32> to vector<1x1xf32>
# | 169: %1 = vector.shape_cast %0 : vector<1x1xf32> to vector<1xf32>
# | 170: %2 = vector.extract %cst_0[0] : f32 from vector<2xf32>
# | 171: %3 = vector.reduction <add>, %1 : vector<1xf32> into f32
# | 172: %c1_i32 = arith.constant 1 : i32
# | 173: %c16_i32 = arith.constant 16 : i32
# | check:253'0 X error: no match found
# | 174: %shuffleResult, %valid = gpu.shuffle xor %3, %c1_i32, %c16_i32 : f32
# | check:253'0 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# | 175: %4 = arith.addf %3, %shuffleResult : f32
# | check:253'0 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# | 176: %c2_i32 = arith.constant 2 : i32
# | check:253'0 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# | check:253'1 ? possible intended match
# | 177: %c16_i32_2 = arith.constant 16 : i32
# | check:253'0 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# | 178: %shuffleResult_3, %valid_4 = gpu.shuffle xor %4, %c2_i32, %c16_i32_2 : f32
# | check:253'0 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# | 179: %5 = arith.addf %4, %shuffleResult_3 : f32
# | check:253'0 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# | 180: %c4_i32 = arith.constant 4 : i32
# | check:253'0 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# | 181: %c16_i32_5 = arith.constant 16 : i32
# | check:253'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/182698
More information about the Mlir-commits
mailing list