Commit b69578e19c
Changed files (2)
lib
docs
src
lib/docs/main.js
@@ -1267,6 +1267,18 @@ const NAV_MODES = {
payloadHtml += "frameSize";
break;
}
+ case "work_item_id": {
+ payloadHtml += "workItemId";
+ break;
+ }
+ case "work_group_size": {
+ payloadHtml += "workGroupSize";
+ break;
+ }
+ case "work_group_id": {
+ payloadHtml += "workGroupId";
+ break;
+ }
case "ptr_to_int": {
payloadHtml += "ptrToInt";
break;
src/Autodoc.zig
@@ -2991,6 +2991,26 @@ fn walkInstruction(
.expr = .{ .builtinIndex = bin_index },
};
},
+ .work_item_id,
+ .work_group_size,
+ .work_group_id,
+ => {
+ const extra = file.zir.extraData(Zir.Inst.UnNode, extended.operand).data;
+ const bin_index = self.exprs.items.len;
+ try self.exprs.append(self.arena, .{ .builtin = .{ .param = 0 } });
+ const param = try self.walkRef(file, parent_scope, parent_src, extra.operand, false);
+
+ const param_index = self.exprs.items.len;
+ try self.exprs.append(self.arena, param.expr);
+
+ self.exprs.items[bin_index] = .{ .builtin = .{ .name = @tagName(extended.opcode), .param = param_index } };
+
+ return DocData.WalkResult{
+ // from docs we know they return u32
+ .typeRef = .{ .type = @enumToInt(Ref.u32_type) },
+ .expr = .{ .builtinIndex = bin_index },
+ };
+ },
.cmpxchg => {
const extra = file.zir.extraData(Zir.Inst.Cmpxchg, extended.operand).data;