Skip to content

Commit b087f97

Browse files
committed
[MLIR][ROCDL] Added SchedGroupBarrier and IglpOpt ops
1 parent d4efc3e commit b087f97

File tree

1 file changed

+18
-0
lines changed

1 file changed

+18
-0
lines changed

mlir/include/mlir/Dialect/LLVMIR/ROCDLOps.td

Lines changed: 18 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -297,6 +297,24 @@ def ROCDL_SchedBarrier : ROCDL_IntrOp<"sched.barrier", [], [], [], 0>,
297297
"createIntrinsicCall(builder, llvm::Intrinsic::amdgcn_sched_barrier,builder.getInt32(op.getMask()));";
298298
}
299299

300+
def ROCDL_SchedGroupBarrier : ROCDL_IntrOp<"sched.group.barrier", [], [], [], 0>,
301+
Arguments<(ins I32Attr:$mask, I32Attr:$size, I32Attr:$groupId)> {
302+
let results = (outs);
303+
let assemblyFormat = "$mask `,` $size `,` $groupId attr-dict";
304+
string llvmBuilder = [{
305+
createIntrinsicCall(builder,
306+
llvm::Intrinsic::amdgcn_sched_group_barrier,
307+
{builder.getInt32(op.getMask()), builder.getInt32(op.getSize()), builder.getInt32(op.getGroupId())});
308+
}];
309+
}
310+
311+
def ROCDL_IglpOpt : ROCDL_IntrOp<"iglp.opt", [], [], [], 0>,
312+
Arguments<(ins I32Attr:$variant)> {
313+
let results = (outs);
314+
let assemblyFormat = "$variant attr-dict";
315+
string llvmBuilder =
316+
"createIntrinsicCall(builder, llvm::Intrinsic::amdgcn_iglp_opt,builder.getInt32(op.getVariant()));";
317+
}
300318

301319
//===---------------------------------------------------------------------===//
302320
// Xdlops intrinsics

0 commit comments

Comments
 (0)