@@ -167,16 +167,6 @@ def XeGPU_FenceScope: I32EnumAttr<"FenceScope",
167167 let cppNamespace = "::mlir::xegpu";
168168}
169169
170- def XeGPU_WGLevel: I32EnumAttrCase<"WG", 0, "wg">;
171- def XeGPU_SGLevel: I32EnumAttrCase<"SG", 1, "sg">;
172- def XeGPU_WILevel: I32EnumAttrCase<"WI", 2, "wi">;
173- def XeGPU_DistributionLevel: I32EnumAttr<"DistributionLevel",
174- "Specify target level for offsets distribution utility.",
175- [XeGPU_WGLevel, XeGPU_SGLevel, XeGPU_WILevel]> {
176- let genSpecializedAttr = 0;
177- let cppNamespace = "::mlir::xegpu";
178- }
179-
180170def XeGPU_FenceScopeAttr:
181171 EnumAttr<XeGPU_Dialect, XeGPU_FenceScope, "fence_scope"> {
182172 let summary = [{Describes the scope of fence.
@@ -234,17 +224,17 @@ def DistributeLayoutAttr: AttrInterface<"DistributeLayoutAttr"> {
234224 "xegpu::DistributeLayoutAttr",
235225 "dropInstData">,
236226 InterfaceMethod<[{Delinearizes a linear ID into its multidimensional
237- indices based on the effective `level` layout.}],
227+ indices based on the effective layout level .}],
238228 "FailureOr<SmallVector<Value>>",
239229 "delinearizeId",
240- (ins "OpBuilder &": $builder, "Location":$loc, "Value":$linearId, "xegpu::DistributionLevel": $level )>,
230+ (ins "OpBuilder &": $builder, "Location":$loc, "Value":$linearId)>,
241231 InterfaceMethod<[{Generates instructions to compute multidimensional offsets for dist units
242- assigned to a ` level` identified by linearId. The shape parameter
243- represents the higher-level problem size. Each ` level` may access
232+ assigned to a level identified by linearId. The shape parameter
233+ represents the higher-level problem size. Each level may access
244234 multiple blocks according to round-robin distribution rules.}],
245235 "FailureOr<SmallVector<SmallVector<Value>>>",
246236 "computeDistributedOffsets",
247- (ins "OpBuilder &": $builder, "Location":$loc, "Value":$linearId, "ArrayRef<int64_t>":$shape, "xegpu::DistributionLevel": $level )>,
237+ (ins "OpBuilder &": $builder, "Location":$loc, "Value":$linearId, "ArrayRef<int64_t>":$shape)>,
248238 InterfaceMethod</*desc=*/[{Check if this layout can be achieved by applying a transpose
249239 to some other layout according to given permutation of (0...n-1).}],
250240 /*retTy=*/"bool",
@@ -487,16 +477,16 @@ def XeGPU_LayoutAttr : XeGPUAttr<"Layout", "layout", [DistributeLayoutAttr]> {
487477 }
488478
489479 /// Delinearizes a linear ID into its multidimensional indices
490- /// based on the effective ` level` layout.
480+ /// based on the effective level of the layout.
491481 FailureOr<SmallVector<Value>>
492- delinearizeId(OpBuilder &builder, Location loc, Value linearId, xegpu::DistributionLevel level );
482+ delinearizeId(OpBuilder &builder, Location loc, Value linearId);
493483
494484 /// Generates instructions to compute multidimensional offsets for dist units
495- /// assigned to a ` level` identified by linearId. The shape parameter
485+ /// assigned to a level identified by linearId. The shape parameter
496486 /// represents the higher-level problem size. Each `level` may access
497487 /// multiple blocks according to round-robin distribution rules.
498488 FailureOr<SmallVector<SmallVector<Value>>>
499- computeDistributedOffsets(OpBuilder &builder, Location loc, Value linearId, ArrayRef<int64_t> shape, xegpu::DistributionLevel level );
489+ computeDistributedOffsets(OpBuilder &builder, Location loc, Value linearId, ArrayRef<int64_t> shape);
500490
501491 /// Check if this is slice of some other layout.
502492 bool isSliceOf(const xegpu::DistributeLayoutAttr &other) { return false; }
@@ -653,15 +643,15 @@ def XeGPU_SliceAttr : XeGPUAttr<"Slice", "slice", [DistributeLayoutAttr]> {
653643 /// Delinearizes a linear subgroup ID into its multidimensional indices
654644 /// based on the effective subgroup layout.
655645 FailureOr<SmallVector<Value>>
656- delinearizeId(OpBuilder &builder, Location loc, Value linearId, xegpu::DistributionLevel level );
646+ delinearizeId(OpBuilder &builder, Location loc, Value linearId);
657647
658648 /// Generates instructions to compute multidimensional offsets for blocks
659649 /// assigned to a subgroup identified by linearId. The shape parameter
660650 /// represents the workgroup-level problem size. Each subgroup may access
661651 /// multiple blocks according to round-robin distribution rules.
662652
663653 FailureOr<SmallVector<SmallVector<Value>>>
664- computeDistributedOffsets(OpBuilder &builder, Location loc, Value linearId,ArrayRef<int64_t> shape, xegpu::DistributionLevel level );
654+ computeDistributedOffsets(OpBuilder &builder, Location loc, Value linearId,ArrayRef<int64_t> shape);
665655
666656 /// Check if this is slice of some other layout.
667657 bool isSliceOf(const xegpu::DistributeLayoutAttr &other);
0 commit comments