@@ -699,6 +699,8 @@ def XeGPU_LoadGatherOp : XeGPU_Op<"load", [
699699 }];
700700
701701 let arguments = (ins XeGPU_TensorDesc_or_MemRef: $source,
702+ Variadic<Index>: $offsets,
703+ OptionalAttr<DenseI64ArrayAttr>: $const_offsets,
702704 XeGPU_MaskType: $mask,
703705 OptionalAttr<XeGPU_CacheHintAttr>: $l1_hint,
704706 OptionalAttr<XeGPU_CacheHintAttr>: $l2_hint,
@@ -730,8 +732,20 @@ def XeGPU_LoadGatherOp : XeGPU_Op<"load", [
730732
731733 }];
732734
733- let assemblyFormat = [{$source `,` $mask prop-dict attr-dict
734- `:` qualified(type($source)) `,` type($mask) `->` type($value)}];
735+ let assemblyFormat = [{
736+ $source `,`
737+ custom<OptionalDynamicIndexList>($offsets, $const_offsets)
738+ $mask prop-dict
739+ attr-dict `:` qualified(type($source)) `,` type($mask) `->` type($value)
740+ }];
741+
742+ // let builders = [
743+ // OpBuilder<(ins "Type": $value, "Value": $TensorDesc,
744+ // "UnitAttr": $packed, "DenseI64ArrayAttr": $transpose,
745+ // "xegpu::CachePolicyAttr": $l1_hint,
746+ // "xegpu::CachePolicyAttr": $l2_hint,
747+ // "xegpu::CachePolicyAttr": $l3_hint)>
748+ // ];
735749
736750 let hasVerifier = 1;
737751}
0 commit comments