6
6
//
7
7
//===----------------------------------------------------------------------===//
8
8
9
+
9
10
#ifndef MLIR_DIALECT_XEGPU_TRANSFORMS_PASSES_TD
10
11
#define MLIR_DIALECT_XEGPU_TRANSFORMS_PASSES_TD
11
12
@@ -17,32 +18,24 @@ def XeGPUFoldAliasOps : Pass<"xegpu-fold-alias-ops"> {
17
18
The pass folds aliasing ops into XeGPU ops that they operate on the original
18
19
source references.
19
20
}];
20
- let dependentDialects = ["memref::MemRefDialect", "xegpu::XeGPUDialect"];
21
+ let dependentDialects = [
22
+ "memref::MemRefDialect", "xegpu::XeGPUDialect"
23
+ ];
21
24
}
22
25
23
26
def XeGPUSubgroupDistribute : Pass<"xegpu-subgroup-distribute"> {
24
27
let summary = "Distribute XeGPU ops to work items";
25
28
let description = [{
26
29
The pass distributes subgroup level (SIMD) XeGPU ops to work items.
27
30
}];
28
- let dependentDialects = ["memref::MemRefDialect", "xegpu::XeGPUDialect",
29
- "vector::VectorDialect"];
30
- let options = [Option<
31
- "printOnly", "print-analysis-only", "bool",
32
- /*default=*/"false",
33
- "Print the result of the subgroup map propagation analysis and exit.">];
34
- }
35
-
36
- def XeGPUWgToSgDistribute : Pass<"xegpu-wg-to-sg-distribute"> {
37
- let summary = "Transform WorkGroup level XeGPU code to SubGroup level";
38
- let description = [{
39
- This transform pass distributes the workgroup level computation to
40
- multiple subgroups based on the sg_layout and sg_data attributes.
41
- }];
42
-
43
- let dependentDialects = ["memref::MemRefDialect", "xegpu::XeGPUDialect",
44
- "vector::VectorDialect", "arith::ArithDialect",
45
- "gpu::GPUDialect", "index::IndexDialect"];
31
+ let dependentDialects = [
32
+ "memref::MemRefDialect", "xegpu::XeGPUDialect", "vector::VectorDialect"
33
+ ];
34
+ let options = [
35
+ Option<"printOnly", "print-analysis-only", "bool",
36
+ /*default=*/"false",
37
+ "Print the result of the subgroup map propagation analysis and exit.">
38
+ ];
46
39
}
47
40
48
41
#endif // MLIR_DIALECT_XEGPU_TRANSFORMS_PASSES_TD
0 commit comments