@@ -2584,7 +2584,7 @@ def NVVM_CpAsyncBulkSharedCTAToGlobalOp :
25842584// NVVM Wgmma Ops
25852585//===----------------------------------------------------------------------===//
25862586
2587- def NVVM_WgmmaFenceAlignedOp : NVVM_Op<"wgmma.fence.aligned", [NVVMRequiresSMa<90 >]> {
2587+ def NVVM_WgmmaFenceAlignedOp : NVVM_Op<"wgmma.fence.aligned", [NVVMRequiresSMa<[90] >]> {
25882588 let arguments = (ins);
25892589 let description = [{
25902590 Enforce an ordering of register accesses between warpgroup level matrix
@@ -2598,7 +2598,7 @@ def NVVM_WgmmaFenceAlignedOp : NVVM_Op<"wgmma.fence.aligned", [NVVMRequiresSMa<9
25982598 }];
25992599}
26002600
2601- def NVVM_WgmmaGroupSyncAlignedOp : NVVM_Op<"wgmma.commit.group.sync.aligned", [NVVMRequiresSMa<90 >]> {
2601+ def NVVM_WgmmaGroupSyncAlignedOp : NVVM_Op<"wgmma.commit.group.sync.aligned", [NVVMRequiresSMa<[90] >]> {
26022602 let assemblyFormat = "attr-dict";
26032603 let description = [{
26042604 Commits all prior uncommitted warpgroup level matrix multiplication operations.
@@ -2610,7 +2610,7 @@ def NVVM_WgmmaGroupSyncAlignedOp : NVVM_Op<"wgmma.commit.group.sync.aligned", [N
26102610 }];
26112611}
26122612
2613- def NVVM_WgmmaWaitGroupSyncOp : NVVM_Op<"wgmma.wait.group.sync.aligned", [NVVMRequiresSMa<90 >]> {
2613+ def NVVM_WgmmaWaitGroupSyncOp : NVVM_Op<"wgmma.wait.group.sync.aligned", [NVVMRequiresSMa<[90] >]> {
26142614 let arguments = (ins I64Attr:$group);
26152615 let assemblyFormat = "attr-dict $group";
26162616 let description = [{
@@ -2973,7 +2973,7 @@ def Tcgen05WaitKindAttr :
29732973 let assemblyFormat = "`<` $value `>`";
29742974}
29752975
2976- def NVVM_Tcgen05AllocOp : NVVM_Op<"tcgen05.alloc", [NVVMRequiresSM< 100, "true", "false" >]> {
2976+ def NVVM_Tcgen05AllocOp : NVVM_Op<"tcgen05.alloc", [NVVMRequiresSMa<[ 100, 101] >]> {
29772977 let summary = "Tcgen05 alloc operation";
29782978 let description = [{
29792979 The `tcgen05.alloc` Op allocates tensor core memory for
@@ -3003,7 +3003,7 @@ def NVVM_Tcgen05AllocOp : NVVM_Op<"tcgen05.alloc", [NVVMRequiresSM<100, "true",
30033003 }];
30043004}
30053005
3006- def NVVM_Tcgen05DeallocOp : NVVM_Op<"tcgen05.dealloc", [NVVMRequiresSM< 100, "true", "false" >]> {
3006+ def NVVM_Tcgen05DeallocOp : NVVM_Op<"tcgen05.dealloc", [NVVMRequiresSMa<[ 100, 101] >]> {
30073007 let summary = "Tcgen05 dealloc operation";
30083008 let description = [{
30093009 The `tcgen05.dealloc` Op de-allocates the tensor core memory
@@ -3031,7 +3031,7 @@ def NVVM_Tcgen05DeallocOp : NVVM_Op<"tcgen05.dealloc", [NVVMRequiresSM<100, "tru
30313031 }];
30323032}
30333033
3034- def NVVM_Tcgen05RelinquishAllocPermitOp : NVVM_Op<"tcgen05.relinquish_alloc_permit", [NVVMRequiresSM< 100, "true", "false" >]> {
3034+ def NVVM_Tcgen05RelinquishAllocPermitOp : NVVM_Op<"tcgen05.relinquish_alloc_permit", [NVVMRequiresSMa<[ 100, 101] >]> {
30353035 let summary = "Tcgen05 Op to relinquish the right to allocate";
30363036 let description = [{
30373037 The `tcgen05.relinquish_alloc_permit` Op specifies that the CTA
@@ -3054,7 +3054,7 @@ def NVVM_Tcgen05RelinquishAllocPermitOp : NVVM_Op<"tcgen05.relinquish_alloc_perm
30543054 }];
30553055}
30563056
3057- def NVVM_Tcgen05FenceOp : NVVM_Op<"tcgen05.fence", [NVVMRequiresSM< 100, "true", "false" >]> {
3057+ def NVVM_Tcgen05FenceOp : NVVM_Op<"tcgen05.fence", [NVVMRequiresSMa<[ 100, 101] >]> {
30583058 let summary = "Tcgen05 fence operations";
30593059 let description = [{
30603060 The `tcgen05.fence<before>` orders all prior async tcgen05 operations
@@ -3076,7 +3076,7 @@ def NVVM_Tcgen05FenceOp : NVVM_Op<"tcgen05.fence", [NVVMRequiresSM<100, "true",
30763076 }];
30773077}
30783078
3079- def NVVM_Tcgen05WaitOp : NVVM_Op<"tcgen05.wait", [NVVMRequiresSM< 100, "true", "false" >]> {
3079+ def NVVM_Tcgen05WaitOp : NVVM_Op<"tcgen05.wait", [NVVMRequiresSMa<[ 100, 101] >]> {
30803080 let summary = "Tcgen05 wait operations";
30813081 let description = [{
30823082 The `tcgen05.wait<load>` causes the executing thread to block until
@@ -3098,7 +3098,7 @@ def NVVM_Tcgen05WaitOp : NVVM_Op<"tcgen05.wait", [NVVMRequiresSM<100, "true", "f
30983098 }];
30993099}
31003100
3101- def NVVM_Tcgen05CommitOp : NVVM_Op<"tcgen05.commit", [NVVMRequiresSM< 100, "true", "false" >]> {
3101+ def NVVM_Tcgen05CommitOp : NVVM_Op<"tcgen05.commit", [NVVMRequiresSMa<[ 100, 101] >]> {
31023102 let summary = "Tcgen05 commit operations";
31033103 let description = [{
31043104 The `tcgen05.commit` makes the mbarrier object, specified by
@@ -3136,7 +3136,7 @@ def NVVM_Tcgen05CommitOp : NVVM_Op<"tcgen05.commit", [NVVMRequiresSM<100, "true"
31363136 }];
31373137}
31383138
3139- def NVVM_Tcgen05ShiftOp : NVVM_Op<"tcgen05.shift", [NVVMRequiresSM< 100, "true", "false" >]> {
3139+ def NVVM_Tcgen05ShiftOp : NVVM_Op<"tcgen05.shift", [NVVMRequiresSMa<[ 100, 101, 103] >]> {
31403140 let summary = "Tcgen05 shift operation";
31413141 let description = [{
31423142 The `tcgen05.shift` is an asynchronous instruction which initiates
@@ -3202,7 +3202,7 @@ def Tcgen05CpSrcFormatAttr : EnumAttr<NVVM_Dialect, Tcgen05CpSrcFormat, "tcgen05
32023202 let assemblyFormat = "`<` $value `>`";
32033203}
32043204
3205- def NVVM_Tcgen05CpOp : NVVM_Op<"tcgen05.cp", [NVVMRequiresSM< 100, "true", "false" >]> {
3205+ def NVVM_Tcgen05CpOp : NVVM_Op<"tcgen05.cp", [NVVMRequiresSMa<[ 100, 101] >]> {
32063206 let summary = "Tcgen05 copy operation";
32073207 let description = [{
32083208 Instruction tcgen05.cp initiates an asynchronous copy operation from
@@ -3272,7 +3272,7 @@ def Tcgen05LdStShapeAttr: EnumAttr<NVVM_Dialect, Tcgen05LdStShape, "tcgen05_ldst
32723272// NVVM tcgen05.ld Op
32733273//===----------------------------------------------------------------------===//
32743274
3275- def NVVM_Tcgen05LdOp : NVVM_Op<"tcgen05.ld", [NVVMRequiresSM< 100, "true", "false" >]> {
3275+ def NVVM_Tcgen05LdOp : NVVM_Op<"tcgen05.ld", [NVVMRequiresSMa<[ 100, 101] >]> {
32763276 let summary = "tensor memory load instructions";
32773277 let arguments = (ins
32783278 // Attributes
@@ -3362,7 +3362,7 @@ def NVVM_Tcgen05LdOp : NVVM_Op<"tcgen05.ld", [NVVMRequiresSM<100, "true", "false
33623362// NVVM tcgen05.st Op
33633363//===----------------------------------------------------------------------===//
33643364
3365- def NVVM_Tcgen05StOp : NVVM_Op<"tcgen05.st", [NVVMRequiresSM< 100, "true", "false" >]> {
3365+ def NVVM_Tcgen05StOp : NVVM_Op<"tcgen05.st", [NVVMRequiresSMa<[ 100, 101] >]> {
33663366 let summary = "tensor memory store instructions";
33673367 let arguments = (ins
33683368 // Attributes
0 commit comments