@@ -284,10 +284,56 @@ def ROCDL_BarrierWaitOp : ROCDL_ConcreteNonMemIntrOp<"s.barrier.wait", [], 0, [0
284
284
let assemblyFormat = "$id attr-dict";
285
285
}
286
286
287
- def ROCDL_WaitDscntOp: ROCDL_ConcreteNonMemIntrOp<"s.wait.dscnt", [], 0, [0], ["id"]>,
288
- Arguments<(ins I16Attr:$id)> {
287
+ def ROCDL_WaitDscntOp: ROCDL_ConcreteNonMemIntrOp<"s.wait.dscnt", [], 0, [0], ["count"]>,
288
+ Arguments<(ins I16Attr:$count)> {
289
+ let summary = "Wait until DSCNT is less than or equal to `count`";
290
+ let description = [{
291
+ Wait for the counter specified to be less-than or equal-to the `count`
292
+ before continuing.
293
+
294
+ Available on gfx12+.
295
+ }];
289
296
let results = (outs);
290
- let assemblyFormat = "$id attr-dict";
297
+ let assemblyFormat = "$count attr-dict";
298
+ }
299
+
300
+ def ROCDL_WaitLoadcntOp: ROCDL_ConcreteNonMemIntrOp<"s.wait.loadcnt", [], 0, [0], ["count"]>,
301
+ Arguments<(ins I16Attr:$count)> {
302
+ let summary = "Wait until LOADCNT is less than or equal to `count`";
303
+ let description = [{
304
+ Wait for the counter specified to be less-than or equal-to the `count`
305
+ before continuing.
306
+
307
+ Available on gfx12+.
308
+ }];
309
+ let results = (outs);
310
+ let assemblyFormat = "$count attr-dict";
311
+ }
312
+
313
+ def ROCDL_WaitStorecntOp: ROCDL_ConcreteNonMemIntrOp<"s.wait.storecnt", [], 0, [0], ["count"]>,
314
+ Arguments<(ins I16Attr:$count)> {
315
+ let summary = "Wait until STORECNT is less than or equal to `count`";
316
+ let description = [{
317
+ Wait for the counter specified to be less-than or equal-to the `count`
318
+ before continuing.
319
+
320
+ Available on gfx12+.
321
+ }];
322
+ let results = (outs);
323
+ let assemblyFormat = "$count attr-dict";
324
+ }
325
+
326
+ def ROCDL_WaitExpcntOp: ROCDL_ConcreteNonMemIntrOp<"s.wait.expcnt", [], 0, [0], ["count"]>,
327
+ Arguments<(ins I16Attr:$count)> {
328
+ let summary = "Wait until EXPCNT is less than or equal to `count`";
329
+ let description = [{
330
+ Wait for the counter specified to be less-than or equal-to the `count`
331
+ before continuing.
332
+
333
+ Available on gfx12+.
334
+ }];
335
+ let results = (outs);
336
+ let assemblyFormat = "$count attr-dict";
291
337
}
292
338
293
339
def ROCDL_SetPrioOp : ROCDL_ConcreteNonMemIntrOp<"s.setprio", [], 0, [0], ["priority"]>,
0 commit comments