Commit f43f89a705

Ali Cheraghi <alichraghi@proton.me>
2025-07-12 14:35:45
spirv: snake-case the spec
1 parent 2f3cd17
src/codegen/spirv/Assembler.zig
@@ -7,8 +7,7 @@ const assert = std.debug.assert;
 const spec = @import("spec.zig");
 const Opcode = spec.Opcode;
 const Word = spec.Word;
-const IdRef = spec.IdRef;
-const IdResult = spec.IdResult;
+const Id = spec.Id;
 const StorageClass = spec.StorageClass;
 
 const SpvModule = @import("Module.zig");
@@ -127,10 +126,10 @@ const AsmValue = union(enum) {
     unresolved_forward_reference,
 
     /// This result-value is a normal result produced by a different instruction.
-    value: IdRef,
+    value: Id,
 
     /// This result-value represents a type registered into the module's type system.
-    ty: IdRef,
+    ty: Id,
 
     /// This is a pre-supplied constant integer value.
     constant: u32,
@@ -141,7 +140,7 @@ const AsmValue = union(enum) {
     /// Retrieve the result-id of this AsmValue. Asserts that this AsmValue
     /// is of a variant that allows the result to be obtained (not an unresolved
     /// forward declaration, not in the process of being declared, etc).
-    pub fn resultId(self: AsmValue) IdRef {
+    pub fn resultId(self: AsmValue) Id {
         return switch (self) {
             .just_declared,
             .unresolved_forward_reference,
@@ -314,7 +313,7 @@ fn processInstruction(self: *Assembler) !void {
             return;
         },
         else => switch (self.inst.opcode.class()) {
-            .TypeDeclaration => try self.processTypeInstruction(),
+            .type_declaration => try self.processTypeInstruction(),
             else => (try self.processGenericInstruction()) orelse return,
         },
     };
@@ -392,7 +391,7 @@ fn processTypeInstruction(self: *Assembler) !AsmValue {
             break :blk result_id;
         },
         .OpTypeStruct => blk: {
-            const ids = try self.gpa.alloc(IdRef, operands[1..].len);
+            const ids = try self.gpa.alloc(Id, operands[1..].len);
             defer self.gpa.free(ids);
             for (operands[1..], ids) |op, *id| id.* = try self.resolveRefId(op.ref_id);
             const result_id = self.spv.allocId();
@@ -429,7 +428,7 @@ fn processTypeInstruction(self: *Assembler) !AsmValue {
             const param_operands = operands[2..];
             const return_type = try self.resolveRefId(operands[1].ref_id);
 
-            const param_types = try self.spv.gpa.alloc(IdRef, param_operands.len);
+            const param_types = try self.spv.gpa.alloc(Id, param_operands.len);
             defer self.spv.gpa.free(param_types);
             for (param_types, param_operands) |*param, operand| {
                 param.* = try self.resolveRefId(operand.ref_id);
@@ -457,17 +456,17 @@ fn processGenericInstruction(self: *Assembler) !?AsmValue {
     const operands = self.inst.operands.items;
     var maybe_spv_decl_index: ?SpvModule.Decl.Index = null;
     const section = switch (self.inst.opcode.class()) {
-        .ConstantCreation => &self.spv.sections.types_globals_constants,
-        .Annotation => &self.spv.sections.annotations,
-        .TypeDeclaration => unreachable, // Handled elsewhere.
+        .constant_creation => &self.spv.sections.types_globals_constants,
+        .annotation => &self.spv.sections.annotations,
+        .type_declaration => unreachable, // Handled elsewhere.
         else => switch (self.inst.opcode) {
             .OpEntryPoint => unreachable,
             .OpExecutionMode, .OpExecutionModeId => &self.spv.sections.execution_modes,
             .OpVariable => section: {
                 const storage_class: spec.StorageClass = @enumFromInt(operands[2].value);
-                if (storage_class == .Function) break :section &self.func.prologue;
+                if (storage_class == .function) break :section &self.func.prologue;
                 maybe_spv_decl_index = try self.spv.allocDecl(.global);
-                if (self.spv.version.minor < 4 and storage_class != .Input and storage_class != .Output) {
+                if (self.spv.version.minor < 4 and storage_class != .input and storage_class != .output) {
                     // Before version 1.4, the interface’s storage classes are limited to the Input and Output
                     break :section &self.spv.sections.types_globals_constants;
                 }
@@ -481,7 +480,7 @@ fn processGenericInstruction(self: *Assembler) !?AsmValue {
         },
     };
 
-    var maybe_result_id: ?IdResult = null;
+    var maybe_result_id: ?Id = null;
     const first_word = section.instructions.items.len;
     // At this point we're not quite sure how many operands this instruction is going to have,
     // so insert 0 and patch up the actual opcode word later.
@@ -504,12 +503,12 @@ fn processGenericInstruction(self: *Assembler) !?AsmValue {
                 else
                     self.spv.allocId();
                 try section.ensureUnusedCapacity(self.spv.gpa, 1);
-                section.writeOperand(IdResult, maybe_result_id.?);
+                section.writeOperand(Id, maybe_result_id.?);
             },
             .ref_id => |index| {
                 const result = try self.resolveRef(index);
                 try section.ensureUnusedCapacity(self.spv.gpa, 1);
-                section.writeOperand(spec.IdRef, result.resultId());
+                section.writeOperand(spec.Id, result.resultId());
             },
             .string => |offset| {
                 const text = std.mem.sliceTo(self.inst.string_bytes.items[offset..], 0);
@@ -558,7 +557,7 @@ fn resolveRef(self: *Assembler, ref: AsmValue.Ref) !AsmValue {
     }
 }
 
-fn resolveRefId(self: *Assembler, ref: AsmValue.Ref) !IdRef {
+fn resolveRefId(self: *Assembler, ref: AsmValue.Ref) !Id {
     const value = try self.resolveRef(ref);
     return value.resultId();
 }
@@ -600,7 +599,7 @@ fn parseInstruction(self: *Assembler) !void {
     const expected_operands = inst.operands;
     // This is a loop because the result-id is not always the first operand.
     const requires_lhs_result = for (expected_operands) |op| {
-        if (op.kind == .IdResult) break true;
+        if (op.kind == .id_result) break true;
     } else false;
 
     if (requires_lhs_result and maybe_lhs_result == null) {
@@ -614,7 +613,7 @@ fn parseInstruction(self: *Assembler) !void {
     }
 
     for (expected_operands) |operand| {
-        if (operand.kind == .IdResult) {
+        if (operand.kind == .id_result) {
             try self.inst.operands.append(self.gpa, .{ .result_id = maybe_lhs_result.? });
             continue;
         }
@@ -646,11 +645,11 @@ fn parseOperand(self: *Assembler, kind: spec.OperandKind) Error!void {
         .value_enum => try self.parseValueEnum(kind),
         .id => try self.parseRefId(),
         else => switch (kind) {
-            .LiteralInteger => try self.parseLiteralInteger(),
-            .LiteralString => try self.parseString(),
-            .LiteralContextDependentNumber => try self.parseContextDependentNumber(),
-            .LiteralExtInstInteger => try self.parseLiteralExtInstInteger(),
-            .PairIdRefIdRef => try self.parsePhiSource(),
+            .literal_integer => try self.parseLiteralInteger(),
+            .literal_string => try self.parseString(),
+            .literal_context_dependent_number => try self.parseContextDependentNumber(),
+            .literal_ext_inst_integer => try self.parseLiteralExtInstInteger(),
+            .pair_id_ref_id_ref => try self.parsePhiSource(),
             else => return self.todo("parse operand of type {s}", .{@tagName(kind)}),
         },
     }
src/codegen/spirv/extinst.zig.grammar.json
@@ -1,13 +1,11 @@
 {
-    "version": 0,
-    "revision": 0,
-    "instructions": [
-        {
-            "opname": "InvocationGlobal",
-            "opcode": 0,
-            "operands": [
-                { "kind": "IdRef", "name": "initializer function" }
-            ]
-        }
-    ]
+  "version": 0,
+  "revision": 0,
+  "instructions": [
+    {
+      "opname": "InvocationGlobal",
+      "opcode": 0,
+      "operands": [{ "kind": "IdRef", "name": "initializer function" }]
+    }
+  ]
 }
src/codegen/spirv/Module.zig
@@ -15,9 +15,7 @@ const Wyhash = std.hash.Wyhash;
 
 const spec = @import("spec.zig");
 const Word = spec.Word;
-const IdRef = spec.IdRef;
-const IdResult = spec.IdResult;
-const IdResultType = spec.IdResultType;
+const Id = spec.Id;
 
 const Section = @import("Section.zig");
 
@@ -82,7 +80,7 @@ pub const Decl = struct {
     /// - For `func`, this is the result-id of the associated OpFunction instruction.
     /// - For `global`, this is the result-id of the associated OpVariable instruction.
     /// - For `invocation_global`, this is the result-id of the associated InvocationGlobal instruction.
-    result_id: IdRef,
+    result_id: Id,
     /// The offset of the first dependency of this decl in the `decl_deps` array.
     begin_dep: u32,
     /// The past-end offset of the dependencies of this decl in the `decl_deps` array.
@@ -150,7 +148,7 @@ sections: struct {
 next_result_id: Word,
 
 /// Cache for results of OpString instructions.
-strings: std.StringArrayHashMapUnmanaged(IdRef) = .empty,
+strings: std.StringArrayHashMapUnmanaged(Id) = .empty,
 
 /// Some types shouldn't be emitted more than one time, but cannot be caught by
 /// the `intern_map` during codegen. Sometimes, IDs are compared to check if
@@ -161,20 +159,20 @@ strings: std.StringArrayHashMapUnmanaged(IdRef) = .empty,
 /// Additionally, this is used for other values which can be cached, for example,
 /// built-in variables.
 cache: struct {
-    bool_type: ?IdRef = null,
-    void_type: ?IdRef = null,
-    int_types: std.AutoHashMapUnmanaged(std.builtin.Type.Int, IdRef) = .empty,
-    float_types: std.AutoHashMapUnmanaged(std.builtin.Type.Float, IdRef) = .empty,
-    vector_types: std.AutoHashMapUnmanaged(struct { IdRef, u32 }, IdRef) = .empty,
-    array_types: std.AutoHashMapUnmanaged(struct { IdRef, IdRef }, IdRef) = .empty,
+    bool_type: ?Id = null,
+    void_type: ?Id = null,
+    int_types: std.AutoHashMapUnmanaged(std.builtin.Type.Int, Id) = .empty,
+    float_types: std.AutoHashMapUnmanaged(std.builtin.Type.Float, Id) = .empty,
+    vector_types: std.AutoHashMapUnmanaged(struct { Id, u32 }, Id) = .empty,
+    array_types: std.AutoHashMapUnmanaged(struct { Id, Id }, Id) = .empty,
 
     capabilities: std.AutoHashMapUnmanaged(spec.Capability, void) = .empty,
     extensions: std.StringHashMapUnmanaged(void) = .empty,
-    extended_instruction_set: std.AutoHashMapUnmanaged(spec.InstructionSet, IdRef) = .empty,
-    decorations: std.AutoHashMapUnmanaged(struct { IdRef, spec.Decoration }, void) = .empty,
-    builtins: std.AutoHashMapUnmanaged(struct { IdRef, spec.BuiltIn }, Decl.Index) = .empty,
+    extended_instruction_set: std.AutoHashMapUnmanaged(spec.InstructionSet, Id) = .empty,
+    decorations: std.AutoHashMapUnmanaged(struct { Id, spec.Decoration }, void) = .empty,
+    builtins: std.AutoHashMapUnmanaged(struct { Id, spec.BuiltIn }, Decl.Index) = .empty,
 
-    bool_const: [2]?IdRef = .{ null, null },
+    bool_const: [2]?Id = .{ null, null },
 } = .{},
 
 /// Set of Decls, referred to by Decl.Index.
@@ -185,7 +183,7 @@ decls: std.ArrayListUnmanaged(Decl) = .empty,
 decl_deps: std.ArrayListUnmanaged(Decl.Index) = .empty,
 
 /// The list of entry points that should be exported from this module.
-entry_points: std.AutoArrayHashMapUnmanaged(IdRef, EntryPoint) = .empty,
+entry_points: std.AutoArrayHashMapUnmanaged(Id, EntryPoint) = .empty,
 
 pub fn init(gpa: Allocator, target: *const std.Target) Module {
     const version_minor: u8 = blk: {
@@ -245,7 +243,7 @@ pub const IdRange = struct {
     base: u32,
     len: u32,
 
-    pub fn at(range: IdRange, i: usize) IdResult {
+    pub fn at(range: IdRange, i: usize) Id {
         assert(i < range.len);
         return @enumFromInt(range.base + i);
     }
@@ -259,7 +257,7 @@ pub fn allocIds(self: *Module, n: u32) IdRange {
     };
 }
 
-pub fn allocId(self: *Module) IdResult {
+pub fn allocId(self: *Module) Id {
     return self.allocIds(1).at(0);
 }
 
@@ -275,7 +273,7 @@ fn addEntryPointDeps(
     self: *Module,
     decl_index: Decl.Index,
     seen: *std.DynamicBitSetUnmanaged,
-    interface: *std.ArrayList(IdRef),
+    interface: *std.ArrayList(Id),
 ) !void {
     const decl = self.declPtr(decl_index);
     const deps = self.decl_deps.items[decl.begin_dep..decl.end_dep];
@@ -299,7 +297,7 @@ fn entryPoints(self: *Module) !Section {
     var entry_points = Section{};
     errdefer entry_points.deinit(self.gpa);
 
-    var interface = std.ArrayList(IdRef).init(self.gpa);
+    var interface = std.ArrayList(Id).init(self.gpa);
     defer interface.deinit();
 
     var seen = try std.DynamicBitSetUnmanaged.initEmpty(self.gpa, self.decls.items.len);
@@ -317,12 +315,12 @@ fn entryPoints(self: *Module) !Section {
             .interface = interface.items,
         });
 
-        if (entry_point.exec_mode == null and entry_point.exec_model == .Fragment) {
+        if (entry_point.exec_mode == null and entry_point.exec_model == .fragment) {
             switch (self.target.os.tag) {
                 .vulkan, .opengl => |tag| {
                     try self.sections.execution_modes.emit(self.gpa, .OpExecutionMode, .{
                         .entry_point = entry_point_id,
-                        .mode = if (tag == .vulkan) .OriginUpperLeft else .OriginLowerLeft,
+                        .mode = if (tag == .vulkan) .origin_upper_left else .origin_lower_left,
                     });
                 },
                 .opencl => {},
@@ -338,59 +336,59 @@ pub fn finalize(self: *Module, a: Allocator) ![]Word {
     // Emit capabilities and extensions
     switch (self.target.os.tag) {
         .opengl => {
-            try self.addCapability(.Shader);
-            try self.addCapability(.Matrix);
+            try self.addCapability(.shader);
+            try self.addCapability(.matrix);
         },
         .vulkan => {
-            try self.addCapability(.Shader);
-            try self.addCapability(.Matrix);
+            try self.addCapability(.shader);
+            try self.addCapability(.matrix);
             if (self.target.cpu.arch == .spirv64) {
                 try self.addExtension("SPV_KHR_physical_storage_buffer");
-                try self.addCapability(.PhysicalStorageBufferAddresses);
+                try self.addCapability(.physical_storage_buffer_addresses);
             }
         },
         .opencl, .amdhsa => {
-            try self.addCapability(.Kernel);
-            try self.addCapability(.Addresses);
+            try self.addCapability(.kernel);
+            try self.addCapability(.addresses);
         },
         else => unreachable,
     }
-    if (self.target.cpu.arch == .spirv64) try self.addCapability(.Int64);
-    if (self.target.cpu.has(.spirv, .int64)) try self.addCapability(.Int64);
-    if (self.target.cpu.has(.spirv, .float16)) try self.addCapability(.Float16);
-    if (self.target.cpu.has(.spirv, .float64)) try self.addCapability(.Float64);
-    if (self.target.cpu.has(.spirv, .generic_pointer)) try self.addCapability(.GenericPointer);
-    if (self.target.cpu.has(.spirv, .vector16)) try self.addCapability(.Vector16);
+    if (self.target.cpu.arch == .spirv64) try self.addCapability(.int64);
+    if (self.target.cpu.has(.spirv, .int64)) try self.addCapability(.int64);
+    if (self.target.cpu.has(.spirv, .float16)) try self.addCapability(.float16);
+    if (self.target.cpu.has(.spirv, .float64)) try self.addCapability(.float64);
+    if (self.target.cpu.has(.spirv, .generic_pointer)) try self.addCapability(.generic_pointer);
+    if (self.target.cpu.has(.spirv, .vector16)) try self.addCapability(.vector16);
     if (self.target.cpu.has(.spirv, .storage_push_constant16)) {
         try self.addExtension("SPV_KHR_16bit_storage");
-        try self.addCapability(.StoragePushConstant16);
+        try self.addCapability(.storage_push_constant16);
     }
     if (self.target.cpu.has(.spirv, .arbitrary_precision_integers)) {
         try self.addExtension("SPV_INTEL_arbitrary_precision_integers");
-        try self.addCapability(.ArbitraryPrecisionIntegersINTEL);
+        try self.addCapability(.arbitrary_precision_integers_intel);
     }
     if (self.target.cpu.has(.spirv, .variable_pointers)) {
         try self.addExtension("SPV_KHR_variable_pointers");
-        try self.addCapability(.VariablePointersStorageBuffer);
-        try self.addCapability(.VariablePointers);
+        try self.addCapability(.variable_pointers_storage_buffer);
+        try self.addCapability(.variable_pointers);
     }
     // These are well supported
-    try self.addCapability(.Int8);
-    try self.addCapability(.Int16);
+    try self.addCapability(.int8);
+    try self.addCapability(.int16);
 
     // Emit memory model
     const addressing_model: spec.AddressingModel = switch (self.target.os.tag) {
-        .opengl => .Logical,
-        .vulkan => if (self.target.cpu.arch == .spirv32) .Logical else .PhysicalStorageBuffer64,
-        .opencl => if (self.target.cpu.arch == .spirv32) .Physical32 else .Physical64,
-        .amdhsa => .Physical64,
+        .opengl => .logical,
+        .vulkan => if (self.target.cpu.arch == .spirv32) .logical else .physical_storage_buffer64,
+        .opencl => if (self.target.cpu.arch == .spirv32) .physical32 else .physical64,
+        .amdhsa => .physical64,
         else => unreachable,
     };
     try self.sections.memory_model.emit(self.gpa, .OpMemoryModel, .{
         .addressing_model = addressing_model,
         .memory_model = switch (self.target.os.tag) {
-            .opencl => .OpenCL,
-            .vulkan, .opengl => .GLSL450,
+            .opencl => .open_cl,
+            .vulkan, .opengl => .glsl450,
             else => unreachable,
         },
     });
@@ -411,7 +409,7 @@ pub fn finalize(self: *Module, a: Allocator) ![]Word {
     var source = Section{};
     defer source.deinit(self.gpa);
     try self.sections.debug_strings.emit(self.gpa, .OpSource, .{
-        .source_language = .Zig,
+        .source_language = .zig,
         .version = 0,
         // We cannot emit these because the Khronos translator does not parse this instruction
         // correctly.
@@ -473,7 +471,7 @@ pub fn addExtension(self: *Module, ext: []const u8) !void {
 }
 
 /// Imports or returns the existing id of an extended instruction set
-pub fn importInstructionSet(self: *Module, set: spec.InstructionSet) !IdRef {
+pub fn importInstructionSet(self: *Module, set: spec.InstructionSet) !Id {
     assert(set != .core);
 
     const gop = try self.cache.extended_instruction_set.getOrPut(self.gpa, set);
@@ -490,7 +488,7 @@ pub fn importInstructionSet(self: *Module, set: spec.InstructionSet) !IdRef {
 }
 
 /// Fetch the result-id of an instruction corresponding to a string.
-pub fn resolveString(self: *Module, string: []const u8) !IdRef {
+pub fn resolveString(self: *Module, string: []const u8) !Id {
     if (self.strings.get(string)) |id| {
         return id;
     }
@@ -506,7 +504,7 @@ pub fn resolveString(self: *Module, string: []const u8) !IdRef {
     return id;
 }
 
-pub fn structType(self: *Module, result_id: IdResult, types: []const IdRef, maybe_names: ?[]const []const u8) !void {
+pub fn structType(self: *Module, result_id: Id, types: []const Id, maybe_names: ?[]const []const u8) !void {
     try self.sections.types_globals_constants.emit(self.gpa, .OpTypeStruct, .{
         .id_result = result_id,
         .id_ref = types,
@@ -520,7 +518,7 @@ pub fn structType(self: *Module, result_id: IdResult, types: []const IdRef, mayb
     }
 }
 
-pub fn boolType(self: *Module) !IdRef {
+pub fn boolType(self: *Module) !Id {
     if (self.cache.bool_type) |id| return id;
 
     const result_id = self.allocId();
@@ -531,7 +529,7 @@ pub fn boolType(self: *Module) !IdRef {
     return result_id;
 }
 
-pub fn voidType(self: *Module) !IdRef {
+pub fn voidType(self: *Module) !Id {
     if (self.cache.void_type) |id| return id;
 
     const result_id = self.allocId();
@@ -543,7 +541,7 @@ pub fn voidType(self: *Module) !IdRef {
     return result_id;
 }
 
-pub fn intType(self: *Module, signedness: std.builtin.Signedness, bits: u16) !IdRef {
+pub fn intType(self: *Module, signedness: std.builtin.Signedness, bits: u16) !Id {
     assert(bits > 0);
     const entry = try self.cache.int_types.getOrPut(self.gpa, .{ .signedness = signedness, .bits = bits });
     if (!entry.found_existing) {
@@ -566,7 +564,7 @@ pub fn intType(self: *Module, signedness: std.builtin.Signedness, bits: u16) !Id
     return entry.value_ptr.*;
 }
 
-pub fn floatType(self: *Module, bits: u16) !IdRef {
+pub fn floatType(self: *Module, bits: u16) !Id {
     assert(bits > 0);
     const entry = try self.cache.float_types.getOrPut(self.gpa, .{ .bits = bits });
     if (!entry.found_existing) {
@@ -581,7 +579,7 @@ pub fn floatType(self: *Module, bits: u16) !IdRef {
     return entry.value_ptr.*;
 }
 
-pub fn vectorType(self: *Module, len: u32, child_ty_id: IdRef) !IdRef {
+pub fn vectorType(self: *Module, len: u32, child_ty_id: Id) !Id {
     const entry = try self.cache.vector_types.getOrPut(self.gpa, .{ child_ty_id, len });
     if (!entry.found_existing) {
         const result_id = self.allocId();
@@ -595,7 +593,7 @@ pub fn vectorType(self: *Module, len: u32, child_ty_id: IdRef) !IdRef {
     return entry.value_ptr.*;
 }
 
-pub fn arrayType(self: *Module, len_id: IdRef, child_ty_id: IdRef) !IdRef {
+pub fn arrayType(self: *Module, len_id: Id, child_ty_id: Id) !Id {
     const entry = try self.cache.array_types.getOrPut(self.gpa, .{ child_ty_id, len_id });
     if (!entry.found_existing) {
         const result_id = self.allocId();
@@ -609,7 +607,7 @@ pub fn arrayType(self: *Module, len_id: IdRef, child_ty_id: IdRef) !IdRef {
     return entry.value_ptr.*;
 }
 
-pub fn functionType(self: *Module, return_ty_id: IdRef, param_type_ids: []const IdRef) !IdRef {
+pub fn functionType(self: *Module, return_ty_id: Id, param_type_ids: []const Id) !Id {
     const result_id = self.allocId();
     try self.sections.types_globals_constants.emit(self.gpa, .OpTypeFunction, .{
         .id_result = result_id,
@@ -619,7 +617,7 @@ pub fn functionType(self: *Module, return_ty_id: IdRef, param_type_ids: []const
     return result_id;
 }
 
-pub fn constant(self: *Module, result_ty_id: IdRef, value: spec.LiteralContextDependentNumber) !IdRef {
+pub fn constant(self: *Module, result_ty_id: Id, value: spec.LiteralContextDependentNumber) !Id {
     const result_id = self.allocId();
     const section = &self.sections.types_globals_constants;
     try section.emit(self.gpa, .OpConstant, .{
@@ -630,7 +628,7 @@ pub fn constant(self: *Module, result_ty_id: IdRef, value: spec.LiteralContextDe
     return result_id;
 }
 
-pub fn constBool(self: *Module, value: bool) !IdRef {
+pub fn constBool(self: *Module, value: bool) !Id {
     if (self.cache.bool_const[@intFromBool(value)]) |b| return b;
 
     const result_ty_id = try self.boolType();
@@ -653,7 +651,7 @@ pub fn constBool(self: *Module, value: bool) !IdRef {
 
 /// Return a pointer to a builtin variable. `result_ty_id` must be a **pointer**
 /// with storage class `.Input`.
-pub fn builtin(self: *Module, result_ty_id: IdRef, spirv_builtin: spec.BuiltIn) !Decl.Index {
+pub fn builtin(self: *Module, result_ty_id: Id, spirv_builtin: spec.BuiltIn) !Decl.Index {
     const entry = try self.cache.builtins.getOrPut(self.gpa, .{ result_ty_id, spirv_builtin });
     if (!entry.found_existing) {
         const decl_index = try self.allocDecl(.global);
@@ -662,15 +660,15 @@ pub fn builtin(self: *Module, result_ty_id: IdRef, spirv_builtin: spec.BuiltIn)
         try self.sections.types_globals_constants.emit(self.gpa, .OpVariable, .{
             .id_result_type = result_ty_id,
             .id_result = result_id,
-            .storage_class = .Input,
+            .storage_class = .input,
         });
-        try self.decorate(result_id, .{ .BuiltIn = .{ .built_in = spirv_builtin } });
+        try self.decorate(result_id, .{ .built_in = .{ .built_in = spirv_builtin } });
         try self.declareDeclDeps(decl_index, &.{});
     }
     return entry.value_ptr.*;
 }
 
-pub fn constUndef(self: *Module, ty_id: IdRef) !IdRef {
+pub fn constUndef(self: *Module, ty_id: Id) !Id {
     const result_id = self.allocId();
     try self.sections.types_globals_constants.emit(self.gpa, .OpUndef, .{
         .id_result_type = ty_id,
@@ -679,7 +677,7 @@ pub fn constUndef(self: *Module, ty_id: IdRef) !IdRef {
     return result_id;
 }
 
-pub fn constNull(self: *Module, ty_id: IdRef) !IdRef {
+pub fn constNull(self: *Module, ty_id: Id) !Id {
     const result_id = self.allocId();
     try self.sections.types_globals_constants.emit(self.gpa, .OpConstantNull, .{
         .id_result_type = ty_id,
@@ -691,7 +689,7 @@ pub fn constNull(self: *Module, ty_id: IdRef) !IdRef {
 /// Decorate a result-id.
 pub fn decorate(
     self: *Module,
-    target: IdRef,
+    target: Id,
     decoration: spec.Decoration.Extended,
 ) !void {
     const entry = try self.cache.decorations.getOrPut(self.gpa, .{ target, decoration });
@@ -707,7 +705,7 @@ pub fn decorate(
 /// We really don't have to and shouldn't need to cache this.
 pub fn decorateMember(
     self: *Module,
-    structure_type: IdRef,
+    structure_type: Id,
     member: u32,
     decoration: spec.Decoration.Extended,
 ) !void {
@@ -762,20 +760,20 @@ pub fn declareEntryPoint(
     if (!gop.found_existing) gop.value_ptr.exec_mode = exec_mode;
 }
 
-pub fn debugName(self: *Module, target: IdResult, name: []const u8) !void {
+pub fn debugName(self: *Module, target: Id, name: []const u8) !void {
     try self.sections.debug_names.emit(self.gpa, .OpName, .{
         .target = target,
         .name = name,
     });
 }
 
-pub fn debugNameFmt(self: *Module, target: IdResult, comptime fmt: []const u8, args: anytype) !void {
+pub fn debugNameFmt(self: *Module, target: Id, comptime fmt: []const u8, args: anytype) !void {
     const name = try std.fmt.allocPrint(self.gpa, fmt, args);
     defer self.gpa.free(name);
     try self.debugName(target, name);
 }
 
-pub fn memberDebugName(self: *Module, target: IdResult, member: u32, name: []const u8) !void {
+pub fn memberDebugName(self: *Module, target: Id, member: u32, name: []const u8) !void {
     try self.sections.debug_names.emit(self.gpa, .OpMemberName, .{
         .type = target,
         .member = member,
src/codegen/spirv/Section.zig
@@ -79,7 +79,7 @@ pub fn emit(
 pub fn emitBranch(
     section: *Section,
     allocator: Allocator,
-    target_label: spec.IdRef,
+    target_label: spec.Id,
 ) !void {
     try section.emit(allocator, .OpBranch, .{
         .target_label = target_label,
@@ -94,8 +94,8 @@ pub fn emitSpecConstantOp(
 ) !void {
     const word_count = operandsSize(opcode.Operands(), operands);
     try section.emitRaw(allocator, .OpSpecConstantOp, 1 + word_count);
-    section.writeOperand(spec.IdRef, operands.id_result_type);
-    section.writeOperand(spec.IdRef, operands.id_result);
+    section.writeOperand(spec.Id, operands.id_result_type);
+    section.writeOperand(spec.Id, operands.id_result);
     section.writeOperand(Opcode, opcode);
 
     const fields = @typeInfo(opcode.Operands()).@"struct".fields;
@@ -134,7 +134,7 @@ fn writeOperands(section: *Section, comptime Operands: type, operands: Operands)
 
 pub fn writeOperand(section: *Section, comptime Operand: type, operand: Operand) void {
     switch (Operand) {
-        spec.IdResult => section.writeWord(@intFromEnum(operand)),
+        spec.Id => section.writeWord(@intFromEnum(operand)),
 
         spec.LiteralInteger => section.writeWord(operand),
 
@@ -266,7 +266,7 @@ fn operandsSize(comptime Operands: type, operands: Operands) usize {
 
 fn operandSize(comptime Operand: type, operand: Operand) usize {
     return switch (Operand) {
-        spec.IdResult,
+        spec.Id,
         spec.LiteralInteger,
         spec.LiteralExtInstInteger,
         => 1,
src/codegen/spirv/spec.zig
@@ -1,7 +1,6 @@
 //! This file is auto-generated by tools/gen_spirv_spec.zig.
 
 const std = @import("std");
-const assert = std.debug.assert;
 
 pub const Version = packed struct(Word) {
     padding: u8 = 0,
@@ -15,22 +14,17 @@ pub const Version = packed struct(Word) {
 };
 
 pub const Word = u32;
-pub const IdResult = enum(Word) {
+pub const Id = enum(Word) {
     none,
     _,
 
-    pub fn format(self: IdResult, writer: *std.io.Writer) std.io.Writer.Error!void {
+    pub fn format(self: Id, writer: *std.io.Writer) std.io.Writer.Error!void {
         switch (self) {
             .none => try writer.writeAll("(none)"),
             else => try writer.print("%{d}", .{@intFromEnum(self)}),
         }
     }
 };
-pub const IdResultType = IdResult;
-pub const IdRef = IdResult;
-
-pub const IdMemorySemantics = IdRef;
-pub const IdScope = IdRef;
 
 pub const LiteralInteger = Word;
 pub const LiteralFloat = Word;
@@ -45,9 +39,9 @@ pub const LiteralContextDependentNumber = union(enum) {
 };
 pub const LiteralExtInstInteger = struct { inst: Word };
 pub const LiteralSpecConstantOpInteger = struct { opcode: Opcode };
-pub const PairLiteralIntegerIdRef = struct { value: LiteralInteger, label: IdRef };
-pub const PairIdRefLiteralInteger = struct { target: IdRef, member: LiteralInteger };
-pub const PairIdRefIdRef = [2]IdRef;
+pub const PairLiteralIntegerIdRef = struct { value: LiteralInteger, label: Id };
+pub const PairIdRefLiteralInteger = struct { target: Id, member: LiteralInteger };
+pub const PairIdRefIdRef = [2]Id;
 
 pub const Quantifier = enum {
     required,
@@ -81,1499 +75,1564 @@ pub const Instruction = struct {
 };
 
 pub const zig_generator_id: Word = 41;
-pub const version = Version{ .major = 1, .minor = 6, .patch = 1 };
+pub const version: Version = .{ .major = 1, .minor = 6, .patch = 4 };
 pub const magic_number: Word = 0x07230203;
 
 pub const Class = enum {
-    Miscellaneous,
-    Debug,
-    Extension,
-    ModeSetting,
-    TypeDeclaration,
-    ConstantCreation,
-    Function,
-    Memory,
-    Annotation,
-    Composite,
-    Image,
-    Conversion,
-    Arithmetic,
-    RelationalAndLogical,
-    Bit,
-    Derivative,
-    Primitive,
-    Barrier,
-    Atomic,
-    ControlFlow,
-    Group,
-    Pipe,
-    DeviceSideEnqueue,
-    NonUniform,
-    Reserved,
+    miscellaneous,
+    debug,
+    extension,
+    mode_setting,
+    type_declaration,
+    constant_creation,
+    function,
+    memory,
+    annotation,
+    composite,
+    image,
+    conversion,
+    arithmetic,
+    relational_and_logical,
+    bit,
+    derivative,
+    primitive,
+    barrier,
+    atomic,
+    control_flow,
+    group,
+    pipe,
+    device_side_enqueue,
+    non_uniform,
+    tensor,
+    graph,
+    reserved,
 };
 
 pub const OperandKind = enum {
-    Opcode,
-    ImageOperands,
-    FPFastMathMode,
-    SelectionControl,
-    LoopControl,
-    FunctionControl,
-    MemorySemantics,
-    MemoryAccess,
-    KernelProfilingInfo,
-    RayFlags,
-    FragmentShadingRate,
-    RawAccessChainOperands,
-    SourceLanguage,
-    ExecutionModel,
-    AddressingModel,
-    MemoryModel,
-    ExecutionMode,
-    StorageClass,
-    Dim,
-    SamplerAddressingMode,
-    SamplerFilterMode,
-    ImageFormat,
-    ImageChannelOrder,
-    ImageChannelDataType,
-    FPRoundingMode,
-    FPDenormMode,
-    QuantizationModes,
-    FPOperationMode,
-    OverflowModes,
-    LinkageType,
-    AccessQualifier,
-    HostAccessQualifier,
-    FunctionParameterAttribute,
-    Decoration,
-    BuiltIn,
-    Scope,
-    GroupOperation,
-    KernelEnqueueFlags,
-    Capability,
-    RayQueryIntersection,
-    RayQueryCommittedIntersectionType,
-    RayQueryCandidateIntersectionType,
-    PackedVectorFormat,
-    CooperativeMatrixOperands,
-    CooperativeMatrixLayout,
-    CooperativeMatrixUse,
-    InitializationModeQualifier,
-    LoadCacheControl,
-    StoreCacheControl,
-    NamedMaximumNumberOfRegisters,
-    IdResultType,
-    IdResult,
-    IdMemorySemantics,
-    IdScope,
-    IdRef,
-    LiteralInteger,
-    LiteralString,
-    LiteralFloat,
-    LiteralContextDependentNumber,
-    LiteralExtInstInteger,
-    LiteralSpecConstantOpInteger,
-    PairLiteralIntegerIdRef,
-    PairIdRefLiteralInteger,
-    PairIdRefIdRef,
-    @"OpenCL.DebugInfo.100.DebugInfoFlags",
-    @"OpenCL.DebugInfo.100.DebugBaseTypeAttributeEncoding",
-    @"OpenCL.DebugInfo.100.DebugCompositeType",
-    @"OpenCL.DebugInfo.100.DebugTypeQualifier",
-    @"OpenCL.DebugInfo.100.DebugOperation",
-    @"OpenCL.DebugInfo.100.DebugImportedEntity",
-    @"NonSemantic.Shader.DebugInfo.100.DebugInfoFlags",
-    @"NonSemantic.Shader.DebugInfo.100.BuildIdentifierFlags",
-    @"NonSemantic.Shader.DebugInfo.100.DebugBaseTypeAttributeEncoding",
-    @"NonSemantic.Shader.DebugInfo.100.DebugCompositeType",
-    @"NonSemantic.Shader.DebugInfo.100.DebugTypeQualifier",
-    @"NonSemantic.Shader.DebugInfo.100.DebugOperation",
-    @"NonSemantic.Shader.DebugInfo.100.DebugImportedEntity",
-    @"NonSemantic.ClspvReflection.6.KernelPropertyFlags",
-    @"DebugInfo.DebugInfoFlags",
-    @"DebugInfo.DebugBaseTypeAttributeEncoding",
-    @"DebugInfo.DebugCompositeType",
-    @"DebugInfo.DebugTypeQualifier",
-    @"DebugInfo.DebugOperation",
+    opcode,
+    image_operands,
+    fp_fast_math_mode,
+    selection_control,
+    loop_control,
+    function_control,
+    memory_semantics,
+    memory_access,
+    kernel_profiling_info,
+    ray_flags,
+    fragment_shading_rate,
+    raw_access_chain_operands,
+    source_language,
+    execution_model,
+    addressing_model,
+    memory_model,
+    execution_mode,
+    storage_class,
+    dim,
+    sampler_addressing_mode,
+    sampler_filter_mode,
+    image_format,
+    image_channel_order,
+    image_channel_data_type,
+    fp_rounding_mode,
+    fp_denorm_mode,
+    quantization_modes,
+    fp_operation_mode,
+    overflow_modes,
+    linkage_type,
+    access_qualifier,
+    host_access_qualifier,
+    function_parameter_attribute,
+    decoration,
+    built_in,
+    scope,
+    group_operation,
+    kernel_enqueue_flags,
+    capability,
+    ray_query_intersection,
+    ray_query_committed_intersection_type,
+    ray_query_candidate_intersection_type,
+    packed_vector_format,
+    cooperative_matrix_operands,
+    cooperative_matrix_layout,
+    cooperative_matrix_use,
+    cooperative_matrix_reduce,
+    tensor_clamp_mode,
+    tensor_addressing_operands,
+    initialization_mode_qualifier,
+    load_cache_control,
+    store_cache_control,
+    named_maximum_number_of_registers,
+    matrix_multiply_accumulate_operands,
+    fp_encoding,
+    cooperative_vector_matrix_layout,
+    component_type,
+    id_result_type,
+    id_result,
+    id_memory_semantics,
+    id_scope,
+    id_ref,
+    literal_integer,
+    literal_string,
+    literal_float,
+    literal_context_dependent_number,
+    literal_ext_inst_integer,
+    literal_spec_constant_op_integer,
+    pair_literal_integer_id_ref,
+    pair_id_ref_literal_integer,
+    pair_id_ref_id_ref,
+    tensor_operands,
+    debug_info_debug_info_flags,
+    debug_info_debug_base_type_attribute_encoding,
+    debug_info_debug_composite_type,
+    debug_info_debug_type_qualifier,
+    debug_info_debug_operation,
+    open_cl_debug_info_100_debug_info_flags,
+    open_cl_debug_info_100_debug_base_type_attribute_encoding,
+    open_cl_debug_info_100_debug_composite_type,
+    open_cl_debug_info_100_debug_type_qualifier,
+    open_cl_debug_info_100_debug_operation,
+    open_cl_debug_info_100_debug_imported_entity,
+    non_semantic_clspv_reflection_6_kernel_property_flags,
+    non_semantic_shader_debug_info_100_debug_info_flags,
+    non_semantic_shader_debug_info_100_build_identifier_flags,
+    non_semantic_shader_debug_info_100_debug_base_type_attribute_encoding,
+    non_semantic_shader_debug_info_100_debug_composite_type,
+    non_semantic_shader_debug_info_100_debug_type_qualifier,
+    non_semantic_shader_debug_info_100_debug_operation,
+    non_semantic_shader_debug_info_100_debug_imported_entity,
 
     pub fn category(self: OperandKind) OperandCategory {
         return switch (self) {
-            .Opcode => .literal,
-            .ImageOperands => .bit_enum,
-            .FPFastMathMode => .bit_enum,
-            .SelectionControl => .bit_enum,
-            .LoopControl => .bit_enum,
-            .FunctionControl => .bit_enum,
-            .MemorySemantics => .bit_enum,
-            .MemoryAccess => .bit_enum,
-            .KernelProfilingInfo => .bit_enum,
-            .RayFlags => .bit_enum,
-            .FragmentShadingRate => .bit_enum,
-            .RawAccessChainOperands => .bit_enum,
-            .SourceLanguage => .value_enum,
-            .ExecutionModel => .value_enum,
-            .AddressingModel => .value_enum,
-            .MemoryModel => .value_enum,
-            .ExecutionMode => .value_enum,
-            .StorageClass => .value_enum,
-            .Dim => .value_enum,
-            .SamplerAddressingMode => .value_enum,
-            .SamplerFilterMode => .value_enum,
-            .ImageFormat => .value_enum,
-            .ImageChannelOrder => .value_enum,
-            .ImageChannelDataType => .value_enum,
-            .FPRoundingMode => .value_enum,
-            .FPDenormMode => .value_enum,
-            .QuantizationModes => .value_enum,
-            .FPOperationMode => .value_enum,
-            .OverflowModes => .value_enum,
-            .LinkageType => .value_enum,
-            .AccessQualifier => .value_enum,
-            .HostAccessQualifier => .value_enum,
-            .FunctionParameterAttribute => .value_enum,
-            .Decoration => .value_enum,
-            .BuiltIn => .value_enum,
-            .Scope => .value_enum,
-            .GroupOperation => .value_enum,
-            .KernelEnqueueFlags => .value_enum,
-            .Capability => .value_enum,
-            .RayQueryIntersection => .value_enum,
-            .RayQueryCommittedIntersectionType => .value_enum,
-            .RayQueryCandidateIntersectionType => .value_enum,
-            .PackedVectorFormat => .value_enum,
-            .CooperativeMatrixOperands => .bit_enum,
-            .CooperativeMatrixLayout => .value_enum,
-            .CooperativeMatrixUse => .value_enum,
-            .InitializationModeQualifier => .value_enum,
-            .LoadCacheControl => .value_enum,
-            .StoreCacheControl => .value_enum,
-            .NamedMaximumNumberOfRegisters => .value_enum,
-            .IdResultType => .id,
-            .IdResult => .id,
-            .IdMemorySemantics => .id,
-            .IdScope => .id,
-            .IdRef => .id,
-            .LiteralInteger => .literal,
-            .LiteralString => .literal,
-            .LiteralFloat => .literal,
-            .LiteralContextDependentNumber => .literal,
-            .LiteralExtInstInteger => .literal,
-            .LiteralSpecConstantOpInteger => .literal,
-            .PairLiteralIntegerIdRef => .composite,
-            .PairIdRefLiteralInteger => .composite,
-            .PairIdRefIdRef => .composite,
-            .@"OpenCL.DebugInfo.100.DebugInfoFlags" => .bit_enum,
-            .@"OpenCL.DebugInfo.100.DebugBaseTypeAttributeEncoding" => .value_enum,
-            .@"OpenCL.DebugInfo.100.DebugCompositeType" => .value_enum,
-            .@"OpenCL.DebugInfo.100.DebugTypeQualifier" => .value_enum,
-            .@"OpenCL.DebugInfo.100.DebugOperation" => .value_enum,
-            .@"OpenCL.DebugInfo.100.DebugImportedEntity" => .value_enum,
-            .@"NonSemantic.Shader.DebugInfo.100.DebugInfoFlags" => .bit_enum,
-            .@"NonSemantic.Shader.DebugInfo.100.BuildIdentifierFlags" => .bit_enum,
-            .@"NonSemantic.Shader.DebugInfo.100.DebugBaseTypeAttributeEncoding" => .value_enum,
-            .@"NonSemantic.Shader.DebugInfo.100.DebugCompositeType" => .value_enum,
-            .@"NonSemantic.Shader.DebugInfo.100.DebugTypeQualifier" => .value_enum,
-            .@"NonSemantic.Shader.DebugInfo.100.DebugOperation" => .value_enum,
-            .@"NonSemantic.Shader.DebugInfo.100.DebugImportedEntity" => .value_enum,
-            .@"NonSemantic.ClspvReflection.6.KernelPropertyFlags" => .bit_enum,
-            .@"DebugInfo.DebugInfoFlags" => .bit_enum,
-            .@"DebugInfo.DebugBaseTypeAttributeEncoding" => .value_enum,
-            .@"DebugInfo.DebugCompositeType" => .value_enum,
-            .@"DebugInfo.DebugTypeQualifier" => .value_enum,
-            .@"DebugInfo.DebugOperation" => .value_enum,
+            .opcode => .literal,
+            .image_operands => .bit_enum,
+            .fp_fast_math_mode => .bit_enum,
+            .selection_control => .bit_enum,
+            .loop_control => .bit_enum,
+            .function_control => .bit_enum,
+            .memory_semantics => .bit_enum,
+            .memory_access => .bit_enum,
+            .kernel_profiling_info => .bit_enum,
+            .ray_flags => .bit_enum,
+            .fragment_shading_rate => .bit_enum,
+            .raw_access_chain_operands => .bit_enum,
+            .source_language => .value_enum,
+            .execution_model => .value_enum,
+            .addressing_model => .value_enum,
+            .memory_model => .value_enum,
+            .execution_mode => .value_enum,
+            .storage_class => .value_enum,
+            .dim => .value_enum,
+            .sampler_addressing_mode => .value_enum,
+            .sampler_filter_mode => .value_enum,
+            .image_format => .value_enum,
+            .image_channel_order => .value_enum,
+            .image_channel_data_type => .value_enum,
+            .fp_rounding_mode => .value_enum,
+            .fp_denorm_mode => .value_enum,
+            .quantization_modes => .value_enum,
+            .fp_operation_mode => .value_enum,
+            .overflow_modes => .value_enum,
+            .linkage_type => .value_enum,
+            .access_qualifier => .value_enum,
+            .host_access_qualifier => .value_enum,
+            .function_parameter_attribute => .value_enum,
+            .decoration => .value_enum,
+            .built_in => .value_enum,
+            .scope => .value_enum,
+            .group_operation => .value_enum,
+            .kernel_enqueue_flags => .value_enum,
+            .capability => .value_enum,
+            .ray_query_intersection => .value_enum,
+            .ray_query_committed_intersection_type => .value_enum,
+            .ray_query_candidate_intersection_type => .value_enum,
+            .packed_vector_format => .value_enum,
+            .cooperative_matrix_operands => .bit_enum,
+            .cooperative_matrix_layout => .value_enum,
+            .cooperative_matrix_use => .value_enum,
+            .cooperative_matrix_reduce => .bit_enum,
+            .tensor_clamp_mode => .value_enum,
+            .tensor_addressing_operands => .bit_enum,
+            .initialization_mode_qualifier => .value_enum,
+            .load_cache_control => .value_enum,
+            .store_cache_control => .value_enum,
+            .named_maximum_number_of_registers => .value_enum,
+            .matrix_multiply_accumulate_operands => .bit_enum,
+            .fp_encoding => .value_enum,
+            .cooperative_vector_matrix_layout => .value_enum,
+            .component_type => .value_enum,
+            .id_result_type => .id,
+            .id_result => .id,
+            .id_memory_semantics => .id,
+            .id_scope => .id,
+            .id_ref => .id,
+            .literal_integer => .literal,
+            .literal_string => .literal,
+            .literal_float => .literal,
+            .literal_context_dependent_number => .literal,
+            .literal_ext_inst_integer => .literal,
+            .literal_spec_constant_op_integer => .literal,
+            .pair_literal_integer_id_ref => .composite,
+            .pair_id_ref_literal_integer => .composite,
+            .pair_id_ref_id_ref => .composite,
+            .tensor_operands => .bit_enum,
+            .debug_info_debug_info_flags => .bit_enum,
+            .debug_info_debug_base_type_attribute_encoding => .value_enum,
+            .debug_info_debug_composite_type => .value_enum,
+            .debug_info_debug_type_qualifier => .value_enum,
+            .debug_info_debug_operation => .value_enum,
+            .open_cl_debug_info_100_debug_info_flags => .bit_enum,
+            .open_cl_debug_info_100_debug_base_type_attribute_encoding => .value_enum,
+            .open_cl_debug_info_100_debug_composite_type => .value_enum,
+            .open_cl_debug_info_100_debug_type_qualifier => .value_enum,
+            .open_cl_debug_info_100_debug_operation => .value_enum,
+            .open_cl_debug_info_100_debug_imported_entity => .value_enum,
+            .non_semantic_clspv_reflection_6_kernel_property_flags => .bit_enum,
+            .non_semantic_shader_debug_info_100_debug_info_flags => .bit_enum,
+            .non_semantic_shader_debug_info_100_build_identifier_flags => .bit_enum,
+            .non_semantic_shader_debug_info_100_debug_base_type_attribute_encoding => .value_enum,
+            .non_semantic_shader_debug_info_100_debug_composite_type => .value_enum,
+            .non_semantic_shader_debug_info_100_debug_type_qualifier => .value_enum,
+            .non_semantic_shader_debug_info_100_debug_operation => .value_enum,
+            .non_semantic_shader_debug_info_100_debug_imported_entity => .value_enum,
         };
     }
     pub fn enumerants(self: OperandKind) []const Enumerant {
         return switch (self) {
-            .Opcode => unreachable,
-            .ImageOperands => &[_]Enumerant{
-                .{ .name = "Bias", .value = 0x0001, .parameters = &[_]OperandKind{.IdRef} },
-                .{ .name = "Lod", .value = 0x0002, .parameters = &[_]OperandKind{.IdRef} },
-                .{ .name = "Grad", .value = 0x0004, .parameters = &[_]OperandKind{ .IdRef, .IdRef } },
-                .{ .name = "ConstOffset", .value = 0x0008, .parameters = &[_]OperandKind{.IdRef} },
-                .{ .name = "Offset", .value = 0x0010, .parameters = &[_]OperandKind{.IdRef} },
-                .{ .name = "ConstOffsets", .value = 0x0020, .parameters = &[_]OperandKind{.IdRef} },
-                .{ .name = "Sample", .value = 0x0040, .parameters = &[_]OperandKind{.IdRef} },
-                .{ .name = "MinLod", .value = 0x0080, .parameters = &[_]OperandKind{.IdRef} },
-                .{ .name = "MakeTexelAvailable", .value = 0x0100, .parameters = &[_]OperandKind{.IdScope} },
-                .{ .name = "MakeTexelAvailableKHR", .value = 0x0100, .parameters = &[_]OperandKind{.IdScope} },
-                .{ .name = "MakeTexelVisible", .value = 0x0200, .parameters = &[_]OperandKind{.IdScope} },
-                .{ .name = "MakeTexelVisibleKHR", .value = 0x0200, .parameters = &[_]OperandKind{.IdScope} },
-                .{ .name = "NonPrivateTexel", .value = 0x0400, .parameters = &[_]OperandKind{} },
-                .{ .name = "NonPrivateTexelKHR", .value = 0x0400, .parameters = &[_]OperandKind{} },
-                .{ .name = "VolatileTexel", .value = 0x0800, .parameters = &[_]OperandKind{} },
-                .{ .name = "VolatileTexelKHR", .value = 0x0800, .parameters = &[_]OperandKind{} },
-                .{ .name = "SignExtend", .value = 0x1000, .parameters = &[_]OperandKind{} },
-                .{ .name = "ZeroExtend", .value = 0x2000, .parameters = &[_]OperandKind{} },
-                .{ .name = "Nontemporal", .value = 0x4000, .parameters = &[_]OperandKind{} },
-                .{ .name = "Offsets", .value = 0x10000, .parameters = &[_]OperandKind{.IdRef} },
+            .opcode => unreachable,
+            .image_operands => &.{
+                .{ .name = "Bias", .value = 0x0001, .parameters = &.{.id_ref} },
+                .{ .name = "Lod", .value = 0x0002, .parameters = &.{.id_ref} },
+                .{ .name = "Grad", .value = 0x0004, .parameters = &.{ .id_ref, .id_ref } },
+                .{ .name = "ConstOffset", .value = 0x0008, .parameters = &.{.id_ref} },
+                .{ .name = "Offset", .value = 0x0010, .parameters = &.{.id_ref} },
+                .{ .name = "ConstOffsets", .value = 0x0020, .parameters = &.{.id_ref} },
+                .{ .name = "Sample", .value = 0x0040, .parameters = &.{.id_ref} },
+                .{ .name = "MinLod", .value = 0x0080, .parameters = &.{.id_ref} },
+                .{ .name = "MakeTexelAvailable", .value = 0x0100, .parameters = &.{.id_scope} },
+                .{ .name = "MakeTexelVisible", .value = 0x0200, .parameters = &.{.id_scope} },
+                .{ .name = "NonPrivateTexel", .value = 0x0400, .parameters = &.{} },
+                .{ .name = "VolatileTexel", .value = 0x0800, .parameters = &.{} },
+                .{ .name = "SignExtend", .value = 0x1000, .parameters = &.{} },
+                .{ .name = "ZeroExtend", .value = 0x2000, .parameters = &.{} },
+                .{ .name = "Nontemporal", .value = 0x4000, .parameters = &.{} },
+                .{ .name = "Offsets", .value = 0x10000, .parameters = &.{.id_ref} },
+            },
+            .fp_fast_math_mode => &.{
+                .{ .name = "NotNaN", .value = 0x0001, .parameters = &.{} },
+                .{ .name = "NotInf", .value = 0x0002, .parameters = &.{} },
+                .{ .name = "NSZ", .value = 0x0004, .parameters = &.{} },
+                .{ .name = "AllowRecip", .value = 0x0008, .parameters = &.{} },
+                .{ .name = "Fast", .value = 0x0010, .parameters = &.{} },
+                .{ .name = "AllowContract", .value = 0x10000, .parameters = &.{} },
+                .{ .name = "AllowReassoc", .value = 0x20000, .parameters = &.{} },
+                .{ .name = "AllowTransform", .value = 0x40000, .parameters = &.{} },
+            },
+            .selection_control => &.{
+                .{ .name = "Flatten", .value = 0x0001, .parameters = &.{} },
+                .{ .name = "DontFlatten", .value = 0x0002, .parameters = &.{} },
+            },
+            .loop_control => &.{
+                .{ .name = "Unroll", .value = 0x0001, .parameters = &.{} },
+                .{ .name = "DontUnroll", .value = 0x0002, .parameters = &.{} },
+                .{ .name = "DependencyInfinite", .value = 0x0004, .parameters = &.{} },
+                .{ .name = "DependencyLength", .value = 0x0008, .parameters = &.{.literal_integer} },
+                .{ .name = "MinIterations", .value = 0x0010, .parameters = &.{.literal_integer} },
+                .{ .name = "MaxIterations", .value = 0x0020, .parameters = &.{.literal_integer} },
+                .{ .name = "IterationMultiple", .value = 0x0040, .parameters = &.{.literal_integer} },
+                .{ .name = "PeelCount", .value = 0x0080, .parameters = &.{.literal_integer} },
+                .{ .name = "PartialCount", .value = 0x0100, .parameters = &.{.literal_integer} },
+                .{ .name = "InitiationIntervalINTEL", .value = 0x10000, .parameters = &.{.literal_integer} },
+                .{ .name = "MaxConcurrencyINTEL", .value = 0x20000, .parameters = &.{.literal_integer} },
+                .{ .name = "DependencyArrayINTEL", .value = 0x40000, .parameters = &.{.literal_integer} },
+                .{ .name = "PipelineEnableINTEL", .value = 0x80000, .parameters = &.{.literal_integer} },
+                .{ .name = "LoopCoalesceINTEL", .value = 0x100000, .parameters = &.{.literal_integer} },
+                .{ .name = "MaxInterleavingINTEL", .value = 0x200000, .parameters = &.{.literal_integer} },
+                .{ .name = "SpeculatedIterationsINTEL", .value = 0x400000, .parameters = &.{.literal_integer} },
+                .{ .name = "NoFusionINTEL", .value = 0x800000, .parameters = &.{} },
+                .{ .name = "LoopCountINTEL", .value = 0x1000000, .parameters = &.{.literal_integer} },
+                .{ .name = "MaxReinvocationDelayINTEL", .value = 0x2000000, .parameters = &.{.literal_integer} },
+            },
+            .function_control => &.{
+                .{ .name = "Inline", .value = 0x0001, .parameters = &.{} },
+                .{ .name = "DontInline", .value = 0x0002, .parameters = &.{} },
+                .{ .name = "Pure", .value = 0x0004, .parameters = &.{} },
+                .{ .name = "Const", .value = 0x0008, .parameters = &.{} },
+                .{ .name = "OptNoneEXT", .value = 0x10000, .parameters = &.{} },
+            },
+            .memory_semantics => &.{
+                .{ .name = "Relaxed", .value = 0x0000, .parameters = &.{} },
+                .{ .name = "Acquire", .value = 0x0002, .parameters = &.{} },
+                .{ .name = "Release", .value = 0x0004, .parameters = &.{} },
+                .{ .name = "AcquireRelease", .value = 0x0008, .parameters = &.{} },
+                .{ .name = "SequentiallyConsistent", .value = 0x0010, .parameters = &.{} },
+                .{ .name = "UniformMemory", .value = 0x0040, .parameters = &.{} },
+                .{ .name = "SubgroupMemory", .value = 0x0080, .parameters = &.{} },
+                .{ .name = "WorkgroupMemory", .value = 0x0100, .parameters = &.{} },
+                .{ .name = "CrossWorkgroupMemory", .value = 0x0200, .parameters = &.{} },
+                .{ .name = "AtomicCounterMemory", .value = 0x0400, .parameters = &.{} },
+                .{ .name = "ImageMemory", .value = 0x0800, .parameters = &.{} },
+                .{ .name = "OutputMemory", .value = 0x1000, .parameters = &.{} },
+                .{ .name = "MakeAvailable", .value = 0x2000, .parameters = &.{} },
+                .{ .name = "MakeVisible", .value = 0x4000, .parameters = &.{} },
+                .{ .name = "Volatile", .value = 0x8000, .parameters = &.{} },
+            },
+            .memory_access => &.{
+                .{ .name = "Volatile", .value = 0x0001, .parameters = &.{} },
+                .{ .name = "Aligned", .value = 0x0002, .parameters = &.{.literal_integer} },
+                .{ .name = "Nontemporal", .value = 0x0004, .parameters = &.{} },
+                .{ .name = "MakePointerAvailable", .value = 0x0008, .parameters = &.{.id_scope} },
+                .{ .name = "MakePointerVisible", .value = 0x0010, .parameters = &.{.id_scope} },
+                .{ .name = "NonPrivatePointer", .value = 0x0020, .parameters = &.{} },
+                .{ .name = "AliasScopeINTELMask", .value = 0x10000, .parameters = &.{.id_ref} },
+                .{ .name = "NoAliasINTELMask", .value = 0x20000, .parameters = &.{.id_ref} },
             },
-            .FPFastMathMode => &[_]Enumerant{
-                .{ .name = "NotNaN", .value = 0x0001, .parameters = &[_]OperandKind{} },
-                .{ .name = "NotInf", .value = 0x0002, .parameters = &[_]OperandKind{} },
-                .{ .name = "NSZ", .value = 0x0004, .parameters = &[_]OperandKind{} },
-                .{ .name = "AllowRecip", .value = 0x0008, .parameters = &[_]OperandKind{} },
-                .{ .name = "Fast", .value = 0x0010, .parameters = &[_]OperandKind{} },
-                .{ .name = "AllowContract", .value = 0x10000, .parameters = &[_]OperandKind{} },
-                .{ .name = "AllowContractFastINTEL", .value = 0x10000, .parameters = &[_]OperandKind{} },
-                .{ .name = "AllowReassoc", .value = 0x20000, .parameters = &[_]OperandKind{} },
-                .{ .name = "AllowReassocINTEL", .value = 0x20000, .parameters = &[_]OperandKind{} },
-                .{ .name = "AllowTransform", .value = 0x40000, .parameters = &[_]OperandKind{} },
+            .kernel_profiling_info => &.{
+                .{ .name = "CmdExecTime", .value = 0x0001, .parameters = &.{} },
             },
-            .SelectionControl => &[_]Enumerant{
-                .{ .name = "Flatten", .value = 0x0001, .parameters = &[_]OperandKind{} },
-                .{ .name = "DontFlatten", .value = 0x0002, .parameters = &[_]OperandKind{} },
+            .ray_flags => &.{
+                .{ .name = "NoneKHR", .value = 0x0000, .parameters = &.{} },
+                .{ .name = "OpaqueKHR", .value = 0x0001, .parameters = &.{} },
+                .{ .name = "NoOpaqueKHR", .value = 0x0002, .parameters = &.{} },
+                .{ .name = "TerminateOnFirstHitKHR", .value = 0x0004, .parameters = &.{} },
+                .{ .name = "SkipClosestHitShaderKHR", .value = 0x0008, .parameters = &.{} },
+                .{ .name = "CullBackFacingTrianglesKHR", .value = 0x0010, .parameters = &.{} },
+                .{ .name = "CullFrontFacingTrianglesKHR", .value = 0x0020, .parameters = &.{} },
+                .{ .name = "CullOpaqueKHR", .value = 0x0040, .parameters = &.{} },
+                .{ .name = "CullNoOpaqueKHR", .value = 0x0080, .parameters = &.{} },
+                .{ .name = "SkipTrianglesKHR", .value = 0x0100, .parameters = &.{} },
+                .{ .name = "SkipAABBsKHR", .value = 0x0200, .parameters = &.{} },
+                .{ .name = "ForceOpacityMicromap2StateEXT", .value = 0x0400, .parameters = &.{} },
             },
-            .LoopControl => &[_]Enumerant{
-                .{ .name = "Unroll", .value = 0x0001, .parameters = &[_]OperandKind{} },
-                .{ .name = "DontUnroll", .value = 0x0002, .parameters = &[_]OperandKind{} },
-                .{ .name = "DependencyInfinite", .value = 0x0004, .parameters = &[_]OperandKind{} },
-                .{ .name = "DependencyLength", .value = 0x0008, .parameters = &[_]OperandKind{.LiteralInteger} },
-                .{ .name = "MinIterations", .value = 0x0010, .parameters = &[_]OperandKind{.LiteralInteger} },
-                .{ .name = "MaxIterations", .value = 0x0020, .parameters = &[_]OperandKind{.LiteralInteger} },
-                .{ .name = "IterationMultiple", .value = 0x0040, .parameters = &[_]OperandKind{.LiteralInteger} },
-                .{ .name = "PeelCount", .value = 0x0080, .parameters = &[_]OperandKind{.LiteralInteger} },
-                .{ .name = "PartialCount", .value = 0x0100, .parameters = &[_]OperandKind{.LiteralInteger} },
-                .{ .name = "InitiationIntervalINTEL", .value = 0x10000, .parameters = &[_]OperandKind{.LiteralInteger} },
-                .{ .name = "MaxConcurrencyINTEL", .value = 0x20000, .parameters = &[_]OperandKind{.LiteralInteger} },
-                .{ .name = "DependencyArrayINTEL", .value = 0x40000, .parameters = &[_]OperandKind{.LiteralInteger} },
-                .{ .name = "PipelineEnableINTEL", .value = 0x80000, .parameters = &[_]OperandKind{.LiteralInteger} },
-                .{ .name = "LoopCoalesceINTEL", .value = 0x100000, .parameters = &[_]OperandKind{.LiteralInteger} },
-                .{ .name = "MaxInterleavingINTEL", .value = 0x200000, .parameters = &[_]OperandKind{.LiteralInteger} },
-                .{ .name = "SpeculatedIterationsINTEL", .value = 0x400000, .parameters = &[_]OperandKind{.LiteralInteger} },
-                .{ .name = "NoFusionINTEL", .value = 0x800000, .parameters = &[_]OperandKind{} },
-                .{ .name = "LoopCountINTEL", .value = 0x1000000, .parameters = &[_]OperandKind{.LiteralInteger} },
-                .{ .name = "MaxReinvocationDelayINTEL", .value = 0x2000000, .parameters = &[_]OperandKind{.LiteralInteger} },
+            .fragment_shading_rate => &.{
+                .{ .name = "Vertical2Pixels", .value = 0x0001, .parameters = &.{} },
+                .{ .name = "Vertical4Pixels", .value = 0x0002, .parameters = &.{} },
+                .{ .name = "Horizontal2Pixels", .value = 0x0004, .parameters = &.{} },
+                .{ .name = "Horizontal4Pixels", .value = 0x0008, .parameters = &.{} },
             },
-            .FunctionControl => &[_]Enumerant{
-                .{ .name = "Inline", .value = 0x0001, .parameters = &[_]OperandKind{} },
-                .{ .name = "DontInline", .value = 0x0002, .parameters = &[_]OperandKind{} },
-                .{ .name = "Pure", .value = 0x0004, .parameters = &[_]OperandKind{} },
-                .{ .name = "Const", .value = 0x0008, .parameters = &[_]OperandKind{} },
-                .{ .name = "OptNoneINTEL", .value = 0x10000, .parameters = &[_]OperandKind{} },
+            .raw_access_chain_operands => &.{
+                .{ .name = "RobustnessPerComponentNV", .value = 0x0001, .parameters = &.{} },
+                .{ .name = "RobustnessPerElementNV", .value = 0x0002, .parameters = &.{} },
             },
-            .MemorySemantics => &[_]Enumerant{
-                .{ .name = "Relaxed", .value = 0x0000, .parameters = &[_]OperandKind{} },
-                .{ .name = "Acquire", .value = 0x0002, .parameters = &[_]OperandKind{} },
-                .{ .name = "Release", .value = 0x0004, .parameters = &[_]OperandKind{} },
-                .{ .name = "AcquireRelease", .value = 0x0008, .parameters = &[_]OperandKind{} },
-                .{ .name = "SequentiallyConsistent", .value = 0x0010, .parameters = &[_]OperandKind{} },
-                .{ .name = "UniformMemory", .value = 0x0040, .parameters = &[_]OperandKind{} },
-                .{ .name = "SubgroupMemory", .value = 0x0080, .parameters = &[_]OperandKind{} },
-                .{ .name = "WorkgroupMemory", .value = 0x0100, .parameters = &[_]OperandKind{} },
-                .{ .name = "CrossWorkgroupMemory", .value = 0x0200, .parameters = &[_]OperandKind{} },
-                .{ .name = "AtomicCounterMemory", .value = 0x0400, .parameters = &[_]OperandKind{} },
-                .{ .name = "ImageMemory", .value = 0x0800, .parameters = &[_]OperandKind{} },
-                .{ .name = "OutputMemory", .value = 0x1000, .parameters = &[_]OperandKind{} },
-                .{ .name = "OutputMemoryKHR", .value = 0x1000, .parameters = &[_]OperandKind{} },
-                .{ .name = "MakeAvailable", .value = 0x2000, .parameters = &[_]OperandKind{} },
-                .{ .name = "MakeAvailableKHR", .value = 0x2000, .parameters = &[_]OperandKind{} },
-                .{ .name = "MakeVisible", .value = 0x4000, .parameters = &[_]OperandKind{} },
-                .{ .name = "MakeVisibleKHR", .value = 0x4000, .parameters = &[_]OperandKind{} },
-                .{ .name = "Volatile", .value = 0x8000, .parameters = &[_]OperandKind{} },
+            .source_language => &.{
+                .{ .name = "Unknown", .value = 0, .parameters = &.{} },
+                .{ .name = "ESSL", .value = 1, .parameters = &.{} },
+                .{ .name = "GLSL", .value = 2, .parameters = &.{} },
+                .{ .name = "OpenCL_C", .value = 3, .parameters = &.{} },
+                .{ .name = "OpenCL_CPP", .value = 4, .parameters = &.{} },
+                .{ .name = "HLSL", .value = 5, .parameters = &.{} },
+                .{ .name = "CPP_for_OpenCL", .value = 6, .parameters = &.{} },
+                .{ .name = "SYCL", .value = 7, .parameters = &.{} },
+                .{ .name = "HERO_C", .value = 8, .parameters = &.{} },
+                .{ .name = "NZSL", .value = 9, .parameters = &.{} },
+                .{ .name = "WGSL", .value = 10, .parameters = &.{} },
+                .{ .name = "Slang", .value = 11, .parameters = &.{} },
+                .{ .name = "Zig", .value = 12, .parameters = &.{} },
+                .{ .name = "Rust", .value = 13, .parameters = &.{} },
             },
-            .MemoryAccess => &[_]Enumerant{
-                .{ .name = "Volatile", .value = 0x0001, .parameters = &[_]OperandKind{} },
-                .{ .name = "Aligned", .value = 0x0002, .parameters = &[_]OperandKind{.LiteralInteger} },
-                .{ .name = "Nontemporal", .value = 0x0004, .parameters = &[_]OperandKind{} },
-                .{ .name = "MakePointerAvailable", .value = 0x0008, .parameters = &[_]OperandKind{.IdScope} },
-                .{ .name = "MakePointerAvailableKHR", .value = 0x0008, .parameters = &[_]OperandKind{.IdScope} },
-                .{ .name = "MakePointerVisible", .value = 0x0010, .parameters = &[_]OperandKind{.IdScope} },
-                .{ .name = "MakePointerVisibleKHR", .value = 0x0010, .parameters = &[_]OperandKind{.IdScope} },
-                .{ .name = "NonPrivatePointer", .value = 0x0020, .parameters = &[_]OperandKind{} },
-                .{ .name = "NonPrivatePointerKHR", .value = 0x0020, .parameters = &[_]OperandKind{} },
-                .{ .name = "AliasScopeINTELMask", .value = 0x10000, .parameters = &[_]OperandKind{.IdRef} },
-                .{ .name = "NoAliasINTELMask", .value = 0x20000, .parameters = &[_]OperandKind{.IdRef} },
+            .execution_model => &.{
+                .{ .name = "Vertex", .value = 0, .parameters = &.{} },
+                .{ .name = "TessellationControl", .value = 1, .parameters = &.{} },
+                .{ .name = "TessellationEvaluation", .value = 2, .parameters = &.{} },
+                .{ .name = "Geometry", .value = 3, .parameters = &.{} },
+                .{ .name = "Fragment", .value = 4, .parameters = &.{} },
+                .{ .name = "GLCompute", .value = 5, .parameters = &.{} },
+                .{ .name = "Kernel", .value = 6, .parameters = &.{} },
+                .{ .name = "TaskNV", .value = 5267, .parameters = &.{} },
+                .{ .name = "MeshNV", .value = 5268, .parameters = &.{} },
+                .{ .name = "RayGenerationKHR", .value = 5313, .parameters = &.{} },
+                .{ .name = "IntersectionKHR", .value = 5314, .parameters = &.{} },
+                .{ .name = "AnyHitKHR", .value = 5315, .parameters = &.{} },
+                .{ .name = "ClosestHitKHR", .value = 5316, .parameters = &.{} },
+                .{ .name = "MissKHR", .value = 5317, .parameters = &.{} },
+                .{ .name = "CallableKHR", .value = 5318, .parameters = &.{} },
+                .{ .name = "TaskEXT", .value = 5364, .parameters = &.{} },
+                .{ .name = "MeshEXT", .value = 5365, .parameters = &.{} },
             },
-            .KernelProfilingInfo => &[_]Enumerant{
-                .{ .name = "CmdExecTime", .value = 0x0001, .parameters = &[_]OperandKind{} },
+            .addressing_model => &.{
+                .{ .name = "Logical", .value = 0, .parameters = &.{} },
+                .{ .name = "Physical32", .value = 1, .parameters = &.{} },
+                .{ .name = "Physical64", .value = 2, .parameters = &.{} },
+                .{ .name = "PhysicalStorageBuffer64", .value = 5348, .parameters = &.{} },
             },
-            .RayFlags => &[_]Enumerant{
-                .{ .name = "NoneKHR", .value = 0x0000, .parameters = &[_]OperandKind{} },
-                .{ .name = "OpaqueKHR", .value = 0x0001, .parameters = &[_]OperandKind{} },
-                .{ .name = "NoOpaqueKHR", .value = 0x0002, .parameters = &[_]OperandKind{} },
-                .{ .name = "TerminateOnFirstHitKHR", .value = 0x0004, .parameters = &[_]OperandKind{} },
-                .{ .name = "SkipClosestHitShaderKHR", .value = 0x0008, .parameters = &[_]OperandKind{} },
-                .{ .name = "CullBackFacingTrianglesKHR", .value = 0x0010, .parameters = &[_]OperandKind{} },
-                .{ .name = "CullFrontFacingTrianglesKHR", .value = 0x0020, .parameters = &[_]OperandKind{} },
-                .{ .name = "CullOpaqueKHR", .value = 0x0040, .parameters = &[_]OperandKind{} },
-                .{ .name = "CullNoOpaqueKHR", .value = 0x0080, .parameters = &[_]OperandKind{} },
-                .{ .name = "SkipTrianglesKHR", .value = 0x0100, .parameters = &[_]OperandKind{} },
-                .{ .name = "SkipAABBsKHR", .value = 0x0200, .parameters = &[_]OperandKind{} },
-                .{ .name = "ForceOpacityMicromap2StateEXT", .value = 0x0400, .parameters = &[_]OperandKind{} },
+            .memory_model => &.{
+                .{ .name = "Simple", .value = 0, .parameters = &.{} },
+                .{ .name = "GLSL450", .value = 1, .parameters = &.{} },
+                .{ .name = "OpenCL", .value = 2, .parameters = &.{} },
+                .{ .name = "Vulkan", .value = 3, .parameters = &.{} },
             },
-            .FragmentShadingRate => &[_]Enumerant{
-                .{ .name = "Vertical2Pixels", .value = 0x0001, .parameters = &[_]OperandKind{} },
-                .{ .name = "Vertical4Pixels", .value = 0x0002, .parameters = &[_]OperandKind{} },
-                .{ .name = "Horizontal2Pixels", .value = 0x0004, .parameters = &[_]OperandKind{} },
-                .{ .name = "Horizontal4Pixels", .value = 0x0008, .parameters = &[_]OperandKind{} },
+            .execution_mode => &.{
+                .{ .name = "Invocations", .value = 0, .parameters = &.{.literal_integer} },
+                .{ .name = "SpacingEqual", .value = 1, .parameters = &.{} },
+                .{ .name = "SpacingFractionalEven", .value = 2, .parameters = &.{} },
+                .{ .name = "SpacingFractionalOdd", .value = 3, .parameters = &.{} },
+                .{ .name = "VertexOrderCw", .value = 4, .parameters = &.{} },
+                .{ .name = "VertexOrderCcw", .value = 5, .parameters = &.{} },
+                .{ .name = "PixelCenterInteger", .value = 6, .parameters = &.{} },
+                .{ .name = "OriginUpperLeft", .value = 7, .parameters = &.{} },
+                .{ .name = "OriginLowerLeft", .value = 8, .parameters = &.{} },
+                .{ .name = "EarlyFragmentTests", .value = 9, .parameters = &.{} },
+                .{ .name = "PointMode", .value = 10, .parameters = &.{} },
+                .{ .name = "Xfb", .value = 11, .parameters = &.{} },
+                .{ .name = "DepthReplacing", .value = 12, .parameters = &.{} },
+                .{ .name = "DepthGreater", .value = 14, .parameters = &.{} },
+                .{ .name = "DepthLess", .value = 15, .parameters = &.{} },
+                .{ .name = "DepthUnchanged", .value = 16, .parameters = &.{} },
+                .{ .name = "LocalSize", .value = 17, .parameters = &.{ .literal_integer, .literal_integer, .literal_integer } },
+                .{ .name = "LocalSizeHint", .value = 18, .parameters = &.{ .literal_integer, .literal_integer, .literal_integer } },
+                .{ .name = "InputPoints", .value = 19, .parameters = &.{} },
+                .{ .name = "InputLines", .value = 20, .parameters = &.{} },
+                .{ .name = "InputLinesAdjacency", .value = 21, .parameters = &.{} },
+                .{ .name = "Triangles", .value = 22, .parameters = &.{} },
+                .{ .name = "InputTrianglesAdjacency", .value = 23, .parameters = &.{} },
+                .{ .name = "Quads", .value = 24, .parameters = &.{} },
+                .{ .name = "Isolines", .value = 25, .parameters = &.{} },
+                .{ .name = "OutputVertices", .value = 26, .parameters = &.{.literal_integer} },
+                .{ .name = "OutputPoints", .value = 27, .parameters = &.{} },
+                .{ .name = "OutputLineStrip", .value = 28, .parameters = &.{} },
+                .{ .name = "OutputTriangleStrip", .value = 29, .parameters = &.{} },
+                .{ .name = "VecTypeHint", .value = 30, .parameters = &.{.literal_integer} },
+                .{ .name = "ContractionOff", .value = 31, .parameters = &.{} },
+                .{ .name = "Initializer", .value = 33, .parameters = &.{} },
+                .{ .name = "Finalizer", .value = 34, .parameters = &.{} },
+                .{ .name = "SubgroupSize", .value = 35, .parameters = &.{.literal_integer} },
+                .{ .name = "SubgroupsPerWorkgroup", .value = 36, .parameters = &.{.literal_integer} },
+                .{ .name = "SubgroupsPerWorkgroupId", .value = 37, .parameters = &.{.id_ref} },
+                .{ .name = "LocalSizeId", .value = 38, .parameters = &.{ .id_ref, .id_ref, .id_ref } },
+                .{ .name = "LocalSizeHintId", .value = 39, .parameters = &.{ .id_ref, .id_ref, .id_ref } },
+                .{ .name = "NonCoherentColorAttachmentReadEXT", .value = 4169, .parameters = &.{} },
+                .{ .name = "NonCoherentDepthAttachmentReadEXT", .value = 4170, .parameters = &.{} },
+                .{ .name = "NonCoherentStencilAttachmentReadEXT", .value = 4171, .parameters = &.{} },
+                .{ .name = "SubgroupUniformControlFlowKHR", .value = 4421, .parameters = &.{} },
+                .{ .name = "PostDepthCoverage", .value = 4446, .parameters = &.{} },
+                .{ .name = "DenormPreserve", .value = 4459, .parameters = &.{.literal_integer} },
+                .{ .name = "DenormFlushToZero", .value = 4460, .parameters = &.{.literal_integer} },
+                .{ .name = "SignedZeroInfNanPreserve", .value = 4461, .parameters = &.{.literal_integer} },
+                .{ .name = "RoundingModeRTE", .value = 4462, .parameters = &.{.literal_integer} },
+                .{ .name = "RoundingModeRTZ", .value = 4463, .parameters = &.{.literal_integer} },
+                .{ .name = "NonCoherentTileAttachmentReadQCOM", .value = 4489, .parameters = &.{} },
+                .{ .name = "TileShadingRateQCOM", .value = 4490, .parameters = &.{ .literal_integer, .literal_integer, .literal_integer } },
+                .{ .name = "EarlyAndLateFragmentTestsAMD", .value = 5017, .parameters = &.{} },
+                .{ .name = "StencilRefReplacingEXT", .value = 5027, .parameters = &.{} },
+                .{ .name = "CoalescingAMDX", .value = 5069, .parameters = &.{} },
+                .{ .name = "IsApiEntryAMDX", .value = 5070, .parameters = &.{.id_ref} },
+                .{ .name = "MaxNodeRecursionAMDX", .value = 5071, .parameters = &.{.id_ref} },
+                .{ .name = "StaticNumWorkgroupsAMDX", .value = 5072, .parameters = &.{ .id_ref, .id_ref, .id_ref } },
+                .{ .name = "ShaderIndexAMDX", .value = 5073, .parameters = &.{.id_ref} },
+                .{ .name = "MaxNumWorkgroupsAMDX", .value = 5077, .parameters = &.{ .id_ref, .id_ref, .id_ref } },
+                .{ .name = "StencilRefUnchangedFrontAMD", .value = 5079, .parameters = &.{} },
+                .{ .name = "StencilRefGreaterFrontAMD", .value = 5080, .parameters = &.{} },
+                .{ .name = "StencilRefLessFrontAMD", .value = 5081, .parameters = &.{} },
+                .{ .name = "StencilRefUnchangedBackAMD", .value = 5082, .parameters = &.{} },
+                .{ .name = "StencilRefGreaterBackAMD", .value = 5083, .parameters = &.{} },
+                .{ .name = "StencilRefLessBackAMD", .value = 5084, .parameters = &.{} },
+                .{ .name = "QuadDerivativesKHR", .value = 5088, .parameters = &.{} },
+                .{ .name = "RequireFullQuadsKHR", .value = 5089, .parameters = &.{} },
+                .{ .name = "SharesInputWithAMDX", .value = 5102, .parameters = &.{ .id_ref, .id_ref } },
+                .{ .name = "OutputLinesEXT", .value = 5269, .parameters = &.{} },
+                .{ .name = "OutputPrimitivesEXT", .value = 5270, .parameters = &.{.literal_integer} },
+                .{ .name = "DerivativeGroupQuadsKHR", .value = 5289, .parameters = &.{} },
+                .{ .name = "DerivativeGroupLinearKHR", .value = 5290, .parameters = &.{} },
+                .{ .name = "OutputTrianglesEXT", .value = 5298, .parameters = &.{} },
+                .{ .name = "PixelInterlockOrderedEXT", .value = 5366, .parameters = &.{} },
+                .{ .name = "PixelInterlockUnorderedEXT", .value = 5367, .parameters = &.{} },
+                .{ .name = "SampleInterlockOrderedEXT", .value = 5368, .parameters = &.{} },
+                .{ .name = "SampleInterlockUnorderedEXT", .value = 5369, .parameters = &.{} },
+                .{ .name = "ShadingRateInterlockOrderedEXT", .value = 5370, .parameters = &.{} },
+                .{ .name = "ShadingRateInterlockUnorderedEXT", .value = 5371, .parameters = &.{} },
+                .{ .name = "SharedLocalMemorySizeINTEL", .value = 5618, .parameters = &.{.literal_integer} },
+                .{ .name = "RoundingModeRTPINTEL", .value = 5620, .parameters = &.{.literal_integer} },
+                .{ .name = "RoundingModeRTNINTEL", .value = 5621, .parameters = &.{.literal_integer} },
+                .{ .name = "FloatingPointModeALTINTEL", .value = 5622, .parameters = &.{.literal_integer} },
+                .{ .name = "FloatingPointModeIEEEINTEL", .value = 5623, .parameters = &.{.literal_integer} },
+                .{ .name = "MaxWorkgroupSizeINTEL", .value = 5893, .parameters = &.{ .literal_integer, .literal_integer, .literal_integer } },
+                .{ .name = "MaxWorkDimINTEL", .value = 5894, .parameters = &.{.literal_integer} },
+                .{ .name = "NoGlobalOffsetINTEL", .value = 5895, .parameters = &.{} },
+                .{ .name = "NumSIMDWorkitemsINTEL", .value = 5896, .parameters = &.{.literal_integer} },
+                .{ .name = "SchedulerTargetFmaxMhzINTEL", .value = 5903, .parameters = &.{.literal_integer} },
+                .{ .name = "MaximallyReconvergesKHR", .value = 6023, .parameters = &.{} },
+                .{ .name = "FPFastMathDefault", .value = 6028, .parameters = &.{ .id_ref, .id_ref } },
+                .{ .name = "StreamingInterfaceINTEL", .value = 6154, .parameters = &.{.literal_integer} },
+                .{ .name = "RegisterMapInterfaceINTEL", .value = 6160, .parameters = &.{.literal_integer} },
+                .{ .name = "NamedBarrierCountINTEL", .value = 6417, .parameters = &.{.literal_integer} },
+                .{ .name = "MaximumRegistersINTEL", .value = 6461, .parameters = &.{.literal_integer} },
+                .{ .name = "MaximumRegistersIdINTEL", .value = 6462, .parameters = &.{.id_ref} },
+                .{ .name = "NamedMaximumRegistersINTEL", .value = 6463, .parameters = &.{.named_maximum_number_of_registers} },
             },
-            .RawAccessChainOperands => &[_]Enumerant{
-                .{ .name = "RobustnessPerComponentNV", .value = 0x0001, .parameters = &[_]OperandKind{} },
-                .{ .name = "RobustnessPerElementNV", .value = 0x0002, .parameters = &[_]OperandKind{} },
+            .storage_class => &.{
+                .{ .name = "UniformConstant", .value = 0, .parameters = &.{} },
+                .{ .name = "Input", .value = 1, .parameters = &.{} },
+                .{ .name = "Uniform", .value = 2, .parameters = &.{} },
+                .{ .name = "Output", .value = 3, .parameters = &.{} },
+                .{ .name = "Workgroup", .value = 4, .parameters = &.{} },
+                .{ .name = "CrossWorkgroup", .value = 5, .parameters = &.{} },
+                .{ .name = "Private", .value = 6, .parameters = &.{} },
+                .{ .name = "Function", .value = 7, .parameters = &.{} },
+                .{ .name = "Generic", .value = 8, .parameters = &.{} },
+                .{ .name = "PushConstant", .value = 9, .parameters = &.{} },
+                .{ .name = "AtomicCounter", .value = 10, .parameters = &.{} },
+                .{ .name = "Image", .value = 11, .parameters = &.{} },
+                .{ .name = "StorageBuffer", .value = 12, .parameters = &.{} },
+                .{ .name = "TileImageEXT", .value = 4172, .parameters = &.{} },
+                .{ .name = "TileAttachmentQCOM", .value = 4491, .parameters = &.{} },
+                .{ .name = "NodePayloadAMDX", .value = 5068, .parameters = &.{} },
+                .{ .name = "CallableDataKHR", .value = 5328, .parameters = &.{} },
+                .{ .name = "IncomingCallableDataKHR", .value = 5329, .parameters = &.{} },
+                .{ .name = "RayPayloadKHR", .value = 5338, .parameters = &.{} },
+                .{ .name = "HitAttributeKHR", .value = 5339, .parameters = &.{} },
+                .{ .name = "IncomingRayPayloadKHR", .value = 5342, .parameters = &.{} },
+                .{ .name = "ShaderRecordBufferKHR", .value = 5343, .parameters = &.{} },
+                .{ .name = "PhysicalStorageBuffer", .value = 5349, .parameters = &.{} },
+                .{ .name = "HitObjectAttributeNV", .value = 5385, .parameters = &.{} },
+                .{ .name = "TaskPayloadWorkgroupEXT", .value = 5402, .parameters = &.{} },
+                .{ .name = "CodeSectionINTEL", .value = 5605, .parameters = &.{} },
+                .{ .name = "DeviceOnlyINTEL", .value = 5936, .parameters = &.{} },
+                .{ .name = "HostOnlyINTEL", .value = 5937, .parameters = &.{} },
             },
-            .SourceLanguage => &[_]Enumerant{
-                .{ .name = "Unknown", .value = 0, .parameters = &[_]OperandKind{} },
-                .{ .name = "ESSL", .value = 1, .parameters = &[_]OperandKind{} },
-                .{ .name = "GLSL", .value = 2, .parameters = &[_]OperandKind{} },
-                .{ .name = "OpenCL_C", .value = 3, .parameters = &[_]OperandKind{} },
-                .{ .name = "OpenCL_CPP", .value = 4, .parameters = &[_]OperandKind{} },
-                .{ .name = "HLSL", .value = 5, .parameters = &[_]OperandKind{} },
-                .{ .name = "CPP_for_OpenCL", .value = 6, .parameters = &[_]OperandKind{} },
-                .{ .name = "SYCL", .value = 7, .parameters = &[_]OperandKind{} },
-                .{ .name = "HERO_C", .value = 8, .parameters = &[_]OperandKind{} },
-                .{ .name = "NZSL", .value = 9, .parameters = &[_]OperandKind{} },
-                .{ .name = "WGSL", .value = 10, .parameters = &[_]OperandKind{} },
-                .{ .name = "Slang", .value = 11, .parameters = &[_]OperandKind{} },
-                .{ .name = "Zig", .value = 12, .parameters = &[_]OperandKind{} },
+            .dim => &.{
+                .{ .name = "1D", .value = 0, .parameters = &.{} },
+                .{ .name = "2D", .value = 1, .parameters = &.{} },
+                .{ .name = "3D", .value = 2, .parameters = &.{} },
+                .{ .name = "Cube", .value = 3, .parameters = &.{} },
+                .{ .name = "Rect", .value = 4, .parameters = &.{} },
+                .{ .name = "Buffer", .value = 5, .parameters = &.{} },
+                .{ .name = "SubpassData", .value = 6, .parameters = &.{} },
+                .{ .name = "TileImageDataEXT", .value = 4173, .parameters = &.{} },
             },
-            .ExecutionModel => &[_]Enumerant{
-                .{ .name = "Vertex", .value = 0, .parameters = &[_]OperandKind{} },
-                .{ .name = "TessellationControl", .value = 1, .parameters = &[_]OperandKind{} },
-                .{ .name = "TessellationEvaluation", .value = 2, .parameters = &[_]OperandKind{} },
-                .{ .name = "Geometry", .value = 3, .parameters = &[_]OperandKind{} },
-                .{ .name = "Fragment", .value = 4, .parameters = &[_]OperandKind{} },
-                .{ .name = "GLCompute", .value = 5, .parameters = &[_]OperandKind{} },
-                .{ .name = "Kernel", .value = 6, .parameters = &[_]OperandKind{} },
-                .{ .name = "TaskNV", .value = 5267, .parameters = &[_]OperandKind{} },
-                .{ .name = "MeshNV", .value = 5268, .parameters = &[_]OperandKind{} },
-                .{ .name = "RayGenerationNV", .value = 5313, .parameters = &[_]OperandKind{} },
-                .{ .name = "RayGenerationKHR", .value = 5313, .parameters = &[_]OperandKind{} },
-                .{ .name = "IntersectionNV", .value = 5314, .parameters = &[_]OperandKind{} },
-                .{ .name = "IntersectionKHR", .value = 5314, .parameters = &[_]OperandKind{} },
-                .{ .name = "AnyHitNV", .value = 5315, .parameters = &[_]OperandKind{} },
-                .{ .name = "AnyHitKHR", .value = 5315, .parameters = &[_]OperandKind{} },
-                .{ .name = "ClosestHitNV", .value = 5316, .parameters = &[_]OperandKind{} },
-                .{ .name = "ClosestHitKHR", .value = 5316, .parameters = &[_]OperandKind{} },
-                .{ .name = "MissNV", .value = 5317, .parameters = &[_]OperandKind{} },
-                .{ .name = "MissKHR", .value = 5317, .parameters = &[_]OperandKind{} },
-                .{ .name = "CallableNV", .value = 5318, .parameters = &[_]OperandKind{} },
-                .{ .name = "CallableKHR", .value = 5318, .parameters = &[_]OperandKind{} },
-                .{ .name = "TaskEXT", .value = 5364, .parameters = &[_]OperandKind{} },
-                .{ .name = "MeshEXT", .value = 5365, .parameters = &[_]OperandKind{} },
+            .sampler_addressing_mode => &.{
+                .{ .name = "None", .value = 0, .parameters = &.{} },
+                .{ .name = "ClampToEdge", .value = 1, .parameters = &.{} },
+                .{ .name = "Clamp", .value = 2, .parameters = &.{} },
+                .{ .name = "Repeat", .value = 3, .parameters = &.{} },
+                .{ .name = "RepeatMirrored", .value = 4, .parameters = &.{} },
             },
-            .AddressingModel => &[_]Enumerant{
-                .{ .name = "Logical", .value = 0, .parameters = &[_]OperandKind{} },
-                .{ .name = "Physical32", .value = 1, .parameters = &[_]OperandKind{} },
-                .{ .name = "Physical64", .value = 2, .parameters = &[_]OperandKind{} },
-                .{ .name = "PhysicalStorageBuffer64", .value = 5348, .parameters = &[_]OperandKind{} },
-                .{ .name = "PhysicalStorageBuffer64EXT", .value = 5348, .parameters = &[_]OperandKind{} },
+            .sampler_filter_mode => &.{
+                .{ .name = "Nearest", .value = 0, .parameters = &.{} },
+                .{ .name = "Linear", .value = 1, .parameters = &.{} },
             },
-            .MemoryModel => &[_]Enumerant{
-                .{ .name = "Simple", .value = 0, .parameters = &[_]OperandKind{} },
-                .{ .name = "GLSL450", .value = 1, .parameters = &[_]OperandKind{} },
-                .{ .name = "OpenCL", .value = 2, .parameters = &[_]OperandKind{} },
-                .{ .name = "Vulkan", .value = 3, .parameters = &[_]OperandKind{} },
-                .{ .name = "VulkanKHR", .value = 3, .parameters = &[_]OperandKind{} },
+            .image_format => &.{
+                .{ .name = "Unknown", .value = 0, .parameters = &.{} },
+                .{ .name = "Rgba32f", .value = 1, .parameters = &.{} },
+                .{ .name = "Rgba16f", .value = 2, .parameters = &.{} },
+                .{ .name = "R32f", .value = 3, .parameters = &.{} },
+                .{ .name = "Rgba8", .value = 4, .parameters = &.{} },
+                .{ .name = "Rgba8Snorm", .value = 5, .parameters = &.{} },
+                .{ .name = "Rg32f", .value = 6, .parameters = &.{} },
+                .{ .name = "Rg16f", .value = 7, .parameters = &.{} },
+                .{ .name = "R11fG11fB10f", .value = 8, .parameters = &.{} },
+                .{ .name = "R16f", .value = 9, .parameters = &.{} },
+                .{ .name = "Rgba16", .value = 10, .parameters = &.{} },
+                .{ .name = "Rgb10A2", .value = 11, .parameters = &.{} },
+                .{ .name = "Rg16", .value = 12, .parameters = &.{} },
+                .{ .name = "Rg8", .value = 13, .parameters = &.{} },
+                .{ .name = "R16", .value = 14, .parameters = &.{} },
+                .{ .name = "R8", .value = 15, .parameters = &.{} },
+                .{ .name = "Rgba16Snorm", .value = 16, .parameters = &.{} },
+                .{ .name = "Rg16Snorm", .value = 17, .parameters = &.{} },
+                .{ .name = "Rg8Snorm", .value = 18, .parameters = &.{} },
+                .{ .name = "R16Snorm", .value = 19, .parameters = &.{} },
+                .{ .name = "R8Snorm", .value = 20, .parameters = &.{} },
+                .{ .name = "Rgba32i", .value = 21, .parameters = &.{} },
+                .{ .name = "Rgba16i", .value = 22, .parameters = &.{} },
+                .{ .name = "Rgba8i", .value = 23, .parameters = &.{} },
+                .{ .name = "R32i", .value = 24, .parameters = &.{} },
+                .{ .name = "Rg32i", .value = 25, .parameters = &.{} },
+                .{ .name = "Rg16i", .value = 26, .parameters = &.{} },
+                .{ .name = "Rg8i", .value = 27, .parameters = &.{} },
+                .{ .name = "R16i", .value = 28, .parameters = &.{} },
+                .{ .name = "R8i", .value = 29, .parameters = &.{} },
+                .{ .name = "Rgba32ui", .value = 30, .parameters = &.{} },
+                .{ .name = "Rgba16ui", .value = 31, .parameters = &.{} },
+                .{ .name = "Rgba8ui", .value = 32, .parameters = &.{} },
+                .{ .name = "R32ui", .value = 33, .parameters = &.{} },
+                .{ .name = "Rgb10a2ui", .value = 34, .parameters = &.{} },
+                .{ .name = "Rg32ui", .value = 35, .parameters = &.{} },
+                .{ .name = "Rg16ui", .value = 36, .parameters = &.{} },
+                .{ .name = "Rg8ui", .value = 37, .parameters = &.{} },
+                .{ .name = "R16ui", .value = 38, .parameters = &.{} },
+                .{ .name = "R8ui", .value = 39, .parameters = &.{} },
+                .{ .name = "R64ui", .value = 40, .parameters = &.{} },
+                .{ .name = "R64i", .value = 41, .parameters = &.{} },
             },
-            .ExecutionMode => &[_]Enumerant{
-                .{ .name = "Invocations", .value = 0, .parameters = &[_]OperandKind{.LiteralInteger} },
-                .{ .name = "SpacingEqual", .value = 1, .parameters = &[_]OperandKind{} },
-                .{ .name = "SpacingFractionalEven", .value = 2, .parameters = &[_]OperandKind{} },
-                .{ .name = "SpacingFractionalOdd", .value = 3, .parameters = &[_]OperandKind{} },
-                .{ .name = "VertexOrderCw", .value = 4, .parameters = &[_]OperandKind{} },
-                .{ .name = "VertexOrderCcw", .value = 5, .parameters = &[_]OperandKind{} },
-                .{ .name = "PixelCenterInteger", .value = 6, .parameters = &[_]OperandKind{} },
-                .{ .name = "OriginUpperLeft", .value = 7, .parameters = &[_]OperandKind{} },
-                .{ .name = "OriginLowerLeft", .value = 8, .parameters = &[_]OperandKind{} },
-                .{ .name = "EarlyFragmentTests", .value = 9, .parameters = &[_]OperandKind{} },
-                .{ .name = "PointMode", .value = 10, .parameters = &[_]OperandKind{} },
-                .{ .name = "Xfb", .value = 11, .parameters = &[_]OperandKind{} },
-                .{ .name = "DepthReplacing", .value = 12, .parameters = &[_]OperandKind{} },
-                .{ .name = "DepthGreater", .value = 14, .parameters = &[_]OperandKind{} },
-                .{ .name = "DepthLess", .value = 15, .parameters = &[_]OperandKind{} },
-                .{ .name = "DepthUnchanged", .value = 16, .parameters = &[_]OperandKind{} },
-                .{ .name = "LocalSize", .value = 17, .parameters = &[_]OperandKind{ .LiteralInteger, .LiteralInteger, .LiteralInteger } },
-                .{ .name = "LocalSizeHint", .value = 18, .parameters = &[_]OperandKind{ .LiteralInteger, .LiteralInteger, .LiteralInteger } },
-                .{ .name = "InputPoints", .value = 19, .parameters = &[_]OperandKind{} },
-                .{ .name = "InputLines", .value = 20, .parameters = &[_]OperandKind{} },
-                .{ .name = "InputLinesAdjacency", .value = 21, .parameters = &[_]OperandKind{} },
-                .{ .name = "Triangles", .value = 22, .parameters = &[_]OperandKind{} },
-                .{ .name = "InputTrianglesAdjacency", .value = 23, .parameters = &[_]OperandKind{} },
-                .{ .name = "Quads", .value = 24, .parameters = &[_]OperandKind{} },
-                .{ .name = "Isolines", .value = 25, .parameters = &[_]OperandKind{} },
-                .{ .name = "OutputVertices", .value = 26, .parameters = &[_]OperandKind{.LiteralInteger} },
-                .{ .name = "OutputPoints", .value = 27, .parameters = &[_]OperandKind{} },
-                .{ .name = "OutputLineStrip", .value = 28, .parameters = &[_]OperandKind{} },
-                .{ .name = "OutputTriangleStrip", .value = 29, .parameters = &[_]OperandKind{} },
-                .{ .name = "VecTypeHint", .value = 30, .parameters = &[_]OperandKind{.LiteralInteger} },
-                .{ .name = "ContractionOff", .value = 31, .parameters = &[_]OperandKind{} },
-                .{ .name = "Initializer", .value = 33, .parameters = &[_]OperandKind{} },
-                .{ .name = "Finalizer", .value = 34, .parameters = &[_]OperandKind{} },
-                .{ .name = "SubgroupSize", .value = 35, .parameters = &[_]OperandKind{.LiteralInteger} },
-                .{ .name = "SubgroupsPerWorkgroup", .value = 36, .parameters = &[_]OperandKind{.LiteralInteger} },
-                .{ .name = "SubgroupsPerWorkgroupId", .value = 37, .parameters = &[_]OperandKind{.IdRef} },
-                .{ .name = "LocalSizeId", .value = 38, .parameters = &[_]OperandKind{ .IdRef, .IdRef, .IdRef } },
-                .{ .name = "LocalSizeHintId", .value = 39, .parameters = &[_]OperandKind{ .IdRef, .IdRef, .IdRef } },
-                .{ .name = "NonCoherentColorAttachmentReadEXT", .value = 4169, .parameters = &[_]OperandKind{} },
-                .{ .name = "NonCoherentDepthAttachmentReadEXT", .value = 4170, .parameters = &[_]OperandKind{} },
-                .{ .name = "NonCoherentStencilAttachmentReadEXT", .value = 4171, .parameters = &[_]OperandKind{} },
-                .{ .name = "SubgroupUniformControlFlowKHR", .value = 4421, .parameters = &[_]OperandKind{} },
-                .{ .name = "PostDepthCoverage", .value = 4446, .parameters = &[_]OperandKind{} },
-                .{ .name = "DenormPreserve", .value = 4459, .parameters = &[_]OperandKind{.LiteralInteger} },
-                .{ .name = "DenormFlushToZero", .value = 4460, .parameters = &[_]OperandKind{.LiteralInteger} },
-                .{ .name = "SignedZeroInfNanPreserve", .value = 4461, .parameters = &[_]OperandKind{.LiteralInteger} },
-                .{ .name = "RoundingModeRTE", .value = 4462, .parameters = &[_]OperandKind{.LiteralInteger} },
-                .{ .name = "RoundingModeRTZ", .value = 4463, .parameters = &[_]OperandKind{.LiteralInteger} },
-                .{ .name = "EarlyAndLateFragmentTestsAMD", .value = 5017, .parameters = &[_]OperandKind{} },
-                .{ .name = "StencilRefReplacingEXT", .value = 5027, .parameters = &[_]OperandKind{} },
-                .{ .name = "CoalescingAMDX", .value = 5069, .parameters = &[_]OperandKind{} },
-                .{ .name = "MaxNodeRecursionAMDX", .value = 5071, .parameters = &[_]OperandKind{.IdRef} },
-                .{ .name = "StaticNumWorkgroupsAMDX", .value = 5072, .parameters = &[_]OperandKind{ .IdRef, .IdRef, .IdRef } },
-                .{ .name = "ShaderIndexAMDX", .value = 5073, .parameters = &[_]OperandKind{.IdRef} },
-                .{ .name = "MaxNumWorkgroupsAMDX", .value = 5077, .parameters = &[_]OperandKind{ .IdRef, .IdRef, .IdRef } },
-                .{ .name = "StencilRefUnchangedFrontAMD", .value = 5079, .parameters = &[_]OperandKind{} },
-                .{ .name = "StencilRefGreaterFrontAMD", .value = 5080, .parameters = &[_]OperandKind{} },
-                .{ .name = "StencilRefLessFrontAMD", .value = 5081, .parameters = &[_]OperandKind{} },
-                .{ .name = "StencilRefUnchangedBackAMD", .value = 5082, .parameters = &[_]OperandKind{} },
-                .{ .name = "StencilRefGreaterBackAMD", .value = 5083, .parameters = &[_]OperandKind{} },
-                .{ .name = "StencilRefLessBackAMD", .value = 5084, .parameters = &[_]OperandKind{} },
-                .{ .name = "QuadDerivativesKHR", .value = 5088, .parameters = &[_]OperandKind{} },
-                .{ .name = "RequireFullQuadsKHR", .value = 5089, .parameters = &[_]OperandKind{} },
-                .{ .name = "OutputLinesNV", .value = 5269, .parameters = &[_]OperandKind{} },
-                .{ .name = "OutputLinesEXT", .value = 5269, .parameters = &[_]OperandKind{} },
-                .{ .name = "OutputPrimitivesNV", .value = 5270, .parameters = &[_]OperandKind{.LiteralInteger} },
-                .{ .name = "OutputPrimitivesEXT", .value = 5270, .parameters = &[_]OperandKind{.LiteralInteger} },
-                .{ .name = "DerivativeGroupQuadsNV", .value = 5289, .parameters = &[_]OperandKind{} },
-                .{ .name = "DerivativeGroupLinearNV", .value = 5290, .parameters = &[_]OperandKind{} },
-                .{ .name = "OutputTrianglesNV", .value = 5298, .parameters = &[_]OperandKind{} },
-                .{ .name = "OutputTrianglesEXT", .value = 5298, .parameters = &[_]OperandKind{} },
-                .{ .name = "PixelInterlockOrderedEXT", .value = 5366, .parameters = &[_]OperandKind{} },
-                .{ .name = "PixelInterlockUnorderedEXT", .value = 5367, .parameters = &[_]OperandKind{} },
-                .{ .name = "SampleInterlockOrderedEXT", .value = 5368, .parameters = &[_]OperandKind{} },
-                .{ .name = "SampleInterlockUnorderedEXT", .value = 5369, .parameters = &[_]OperandKind{} },
-                .{ .name = "ShadingRateInterlockOrderedEXT", .value = 5370, .parameters = &[_]OperandKind{} },
-                .{ .name = "ShadingRateInterlockUnorderedEXT", .value = 5371, .parameters = &[_]OperandKind{} },
-                .{ .name = "SharedLocalMemorySizeINTEL", .value = 5618, .parameters = &[_]OperandKind{.LiteralInteger} },
-                .{ .name = "RoundingModeRTPINTEL", .value = 5620, .parameters = &[_]OperandKind{.LiteralInteger} },
-                .{ .name = "RoundingModeRTNINTEL", .value = 5621, .parameters = &[_]OperandKind{.LiteralInteger} },
-                .{ .name = "FloatingPointModeALTINTEL", .value = 5622, .parameters = &[_]OperandKind{.LiteralInteger} },
-                .{ .name = "FloatingPointModeIEEEINTEL", .value = 5623, .parameters = &[_]OperandKind{.LiteralInteger} },
-                .{ .name = "MaxWorkgroupSizeINTEL", .value = 5893, .parameters = &[_]OperandKind{ .LiteralInteger, .LiteralInteger, .LiteralInteger } },
-                .{ .name = "MaxWorkDimINTEL", .value = 5894, .parameters = &[_]OperandKind{.LiteralInteger} },
-                .{ .name = "NoGlobalOffsetINTEL", .value = 5895, .parameters = &[_]OperandKind{} },
-                .{ .name = "NumSIMDWorkitemsINTEL", .value = 5896, .parameters = &[_]OperandKind{.LiteralInteger} },
-                .{ .name = "SchedulerTargetFmaxMhzINTEL", .value = 5903, .parameters = &[_]OperandKind{.LiteralInteger} },
-                .{ .name = "MaximallyReconvergesKHR", .value = 6023, .parameters = &[_]OperandKind{} },
-                .{ .name = "FPFastMathDefault", .value = 6028, .parameters = &[_]OperandKind{ .IdRef, .IdRef } },
-                .{ .name = "StreamingInterfaceINTEL", .value = 6154, .parameters = &[_]OperandKind{.LiteralInteger} },
-                .{ .name = "RegisterMapInterfaceINTEL", .value = 6160, .parameters = &[_]OperandKind{.LiteralInteger} },
-                .{ .name = "NamedBarrierCountINTEL", .value = 6417, .parameters = &[_]OperandKind{.LiteralInteger} },
-                .{ .name = "MaximumRegistersINTEL", .value = 6461, .parameters = &[_]OperandKind{.LiteralInteger} },
-                .{ .name = "MaximumRegistersIdINTEL", .value = 6462, .parameters = &[_]OperandKind{.IdRef} },
-                .{ .name = "NamedMaximumRegistersINTEL", .value = 6463, .parameters = &[_]OperandKind{.NamedMaximumNumberOfRegisters} },
+            .image_channel_order => &.{
+                .{ .name = "R", .value = 0, .parameters = &.{} },
+                .{ .name = "A", .value = 1, .parameters = &.{} },
+                .{ .name = "RG", .value = 2, .parameters = &.{} },
+                .{ .name = "RA", .value = 3, .parameters = &.{} },
+                .{ .name = "RGB", .value = 4, .parameters = &.{} },
+                .{ .name = "RGBA", .value = 5, .parameters = &.{} },
+                .{ .name = "BGRA", .value = 6, .parameters = &.{} },
+                .{ .name = "ARGB", .value = 7, .parameters = &.{} },
+                .{ .name = "Intensity", .value = 8, .parameters = &.{} },
+                .{ .name = "Luminance", .value = 9, .parameters = &.{} },
+                .{ .name = "Rx", .value = 10, .parameters = &.{} },
+                .{ .name = "RGx", .value = 11, .parameters = &.{} },
+                .{ .name = "RGBx", .value = 12, .parameters = &.{} },
+                .{ .name = "Depth", .value = 13, .parameters = &.{} },
+                .{ .name = "DepthStencil", .value = 14, .parameters = &.{} },
+                .{ .name = "sRGB", .value = 15, .parameters = &.{} },
+                .{ .name = "sRGBx", .value = 16, .parameters = &.{} },
+                .{ .name = "sRGBA", .value = 17, .parameters = &.{} },
+                .{ .name = "sBGRA", .value = 18, .parameters = &.{} },
+                .{ .name = "ABGR", .value = 19, .parameters = &.{} },
             },
-            .StorageClass => &[_]Enumerant{
-                .{ .name = "UniformConstant", .value = 0, .parameters = &[_]OperandKind{} },
-                .{ .name = "Input", .value = 1, .parameters = &[_]OperandKind{} },
-                .{ .name = "Uniform", .value = 2, .parameters = &[_]OperandKind{} },
-                .{ .name = "Output", .value = 3, .parameters = &[_]OperandKind{} },
-                .{ .name = "Workgroup", .value = 4, .parameters = &[_]OperandKind{} },
-                .{ .name = "CrossWorkgroup", .value = 5, .parameters = &[_]OperandKind{} },
-                .{ .name = "Private", .value = 6, .parameters = &[_]OperandKind{} },
-                .{ .name = "Function", .value = 7, .parameters = &[_]OperandKind{} },
-                .{ .name = "Generic", .value = 8, .parameters = &[_]OperandKind{} },
-                .{ .name = "PushConstant", .value = 9, .parameters = &[_]OperandKind{} },
-                .{ .name = "AtomicCounter", .value = 10, .parameters = &[_]OperandKind{} },
-                .{ .name = "Image", .value = 11, .parameters = &[_]OperandKind{} },
-                .{ .name = "StorageBuffer", .value = 12, .parameters = &[_]OperandKind{} },
-                .{ .name = "TileImageEXT", .value = 4172, .parameters = &[_]OperandKind{} },
-                .{ .name = "NodePayloadAMDX", .value = 5068, .parameters = &[_]OperandKind{} },
-                .{ .name = "NodeOutputPayloadAMDX", .value = 5076, .parameters = &[_]OperandKind{} },
-                .{ .name = "CallableDataNV", .value = 5328, .parameters = &[_]OperandKind{} },
-                .{ .name = "CallableDataKHR", .value = 5328, .parameters = &[_]OperandKind{} },
-                .{ .name = "IncomingCallableDataNV", .value = 5329, .parameters = &[_]OperandKind{} },
-                .{ .name = "IncomingCallableDataKHR", .value = 5329, .parameters = &[_]OperandKind{} },
-                .{ .name = "RayPayloadNV", .value = 5338, .parameters = &[_]OperandKind{} },
-                .{ .name = "RayPayloadKHR", .value = 5338, .parameters = &[_]OperandKind{} },
-                .{ .name = "HitAttributeNV", .value = 5339, .parameters = &[_]OperandKind{} },
-                .{ .name = "HitAttributeKHR", .value = 5339, .parameters = &[_]OperandKind{} },
-                .{ .name = "IncomingRayPayloadNV", .value = 5342, .parameters = &[_]OperandKind{} },
-                .{ .name = "IncomingRayPayloadKHR", .value = 5342, .parameters = &[_]OperandKind{} },
-                .{ .name = "ShaderRecordBufferNV", .value = 5343, .parameters = &[_]OperandKind{} },
-                .{ .name = "ShaderRecordBufferKHR", .value = 5343, .parameters = &[_]OperandKind{} },
-                .{ .name = "PhysicalStorageBuffer", .value = 5349, .parameters = &[_]OperandKind{} },
-                .{ .name = "PhysicalStorageBufferEXT", .value = 5349, .parameters = &[_]OperandKind{} },
-                .{ .name = "HitObjectAttributeNV", .value = 5385, .parameters = &[_]OperandKind{} },
-                .{ .name = "TaskPayloadWorkgroupEXT", .value = 5402, .parameters = &[_]OperandKind{} },
-                .{ .name = "CodeSectionINTEL", .value = 5605, .parameters = &[_]OperandKind{} },
-                .{ .name = "DeviceOnlyINTEL", .value = 5936, .parameters = &[_]OperandKind{} },
-                .{ .name = "HostOnlyINTEL", .value = 5937, .parameters = &[_]OperandKind{} },
+            .image_channel_data_type => &.{
+                .{ .name = "SnormInt8", .value = 0, .parameters = &.{} },
+                .{ .name = "SnormInt16", .value = 1, .parameters = &.{} },
+                .{ .name = "UnormInt8", .value = 2, .parameters = &.{} },
+                .{ .name = "UnormInt16", .value = 3, .parameters = &.{} },
+                .{ .name = "UnormShort565", .value = 4, .parameters = &.{} },
+                .{ .name = "UnormShort555", .value = 5, .parameters = &.{} },
+                .{ .name = "UnormInt101010", .value = 6, .parameters = &.{} },
+                .{ .name = "SignedInt8", .value = 7, .parameters = &.{} },
+                .{ .name = "SignedInt16", .value = 8, .parameters = &.{} },
+                .{ .name = "SignedInt32", .value = 9, .parameters = &.{} },
+                .{ .name = "UnsignedInt8", .value = 10, .parameters = &.{} },
+                .{ .name = "UnsignedInt16", .value = 11, .parameters = &.{} },
+                .{ .name = "UnsignedInt32", .value = 12, .parameters = &.{} },
+                .{ .name = "HalfFloat", .value = 13, .parameters = &.{} },
+                .{ .name = "Float", .value = 14, .parameters = &.{} },
+                .{ .name = "UnormInt24", .value = 15, .parameters = &.{} },
+                .{ .name = "UnormInt101010_2", .value = 16, .parameters = &.{} },
+                .{ .name = "UnormInt10X6EXT", .value = 17, .parameters = &.{} },
+                .{ .name = "UnsignedIntRaw10EXT", .value = 19, .parameters = &.{} },
+                .{ .name = "UnsignedIntRaw12EXT", .value = 20, .parameters = &.{} },
+                .{ .name = "UnormInt2_101010EXT", .value = 21, .parameters = &.{} },
+                .{ .name = "UnsignedInt10X6EXT", .value = 22, .parameters = &.{} },
+                .{ .name = "UnsignedInt12X4EXT", .value = 23, .parameters = &.{} },
+                .{ .name = "UnsignedInt14X2EXT", .value = 24, .parameters = &.{} },
+                .{ .name = "UnormInt12X4EXT", .value = 25, .parameters = &.{} },
+                .{ .name = "UnormInt14X2EXT", .value = 26, .parameters = &.{} },
             },
-            .Dim => &[_]Enumerant{
-                .{ .name = "1D", .value = 0, .parameters = &[_]OperandKind{} },
-                .{ .name = "2D", .value = 1, .parameters = &[_]OperandKind{} },
-                .{ .name = "3D", .value = 2, .parameters = &[_]OperandKind{} },
-                .{ .name = "Cube", .value = 3, .parameters = &[_]OperandKind{} },
-                .{ .name = "Rect", .value = 4, .parameters = &[_]OperandKind{} },
-                .{ .name = "Buffer", .value = 5, .parameters = &[_]OperandKind{} },
-                .{ .name = "SubpassData", .value = 6, .parameters = &[_]OperandKind{} },
-                .{ .name = "TileImageDataEXT", .value = 4173, .parameters = &[_]OperandKind{} },
+            .fp_rounding_mode => &.{
+                .{ .name = "RTE", .value = 0, .parameters = &.{} },
+                .{ .name = "RTZ", .value = 1, .parameters = &.{} },
+                .{ .name = "RTP", .value = 2, .parameters = &.{} },
+                .{ .name = "RTN", .value = 3, .parameters = &.{} },
             },
-            .SamplerAddressingMode => &[_]Enumerant{
-                .{ .name = "None", .value = 0, .parameters = &[_]OperandKind{} },
-                .{ .name = "ClampToEdge", .value = 1, .parameters = &[_]OperandKind{} },
-                .{ .name = "Clamp", .value = 2, .parameters = &[_]OperandKind{} },
-                .{ .name = "Repeat", .value = 3, .parameters = &[_]OperandKind{} },
-                .{ .name = "RepeatMirrored", .value = 4, .parameters = &[_]OperandKind{} },
+            .fp_denorm_mode => &.{
+                .{ .name = "Preserve", .value = 0, .parameters = &.{} },
+                .{ .name = "FlushToZero", .value = 1, .parameters = &.{} },
             },
-            .SamplerFilterMode => &[_]Enumerant{
-                .{ .name = "Nearest", .value = 0, .parameters = &[_]OperandKind{} },
-                .{ .name = "Linear", .value = 1, .parameters = &[_]OperandKind{} },
+            .quantization_modes => &.{
+                .{ .name = "TRN", .value = 0, .parameters = &.{} },
+                .{ .name = "TRN_ZERO", .value = 1, .parameters = &.{} },
+                .{ .name = "RND", .value = 2, .parameters = &.{} },
+                .{ .name = "RND_ZERO", .value = 3, .parameters = &.{} },
+                .{ .name = "RND_INF", .value = 4, .parameters = &.{} },
+                .{ .name = "RND_MIN_INF", .value = 5, .parameters = &.{} },
+                .{ .name = "RND_CONV", .value = 6, .parameters = &.{} },
+                .{ .name = "RND_CONV_ODD", .value = 7, .parameters = &.{} },
             },
-            .ImageFormat => &[_]Enumerant{
-                .{ .name = "Unknown", .value = 0, .parameters = &[_]OperandKind{} },
-                .{ .name = "Rgba32f", .value = 1, .parameters = &[_]OperandKind{} },
-                .{ .name = "Rgba16f", .value = 2, .parameters = &[_]OperandKind{} },
-                .{ .name = "R32f", .value = 3, .parameters = &[_]OperandKind{} },
-                .{ .name = "Rgba8", .value = 4, .parameters = &[_]OperandKind{} },
-                .{ .name = "Rgba8Snorm", .value = 5, .parameters = &[_]OperandKind{} },
-                .{ .name = "Rg32f", .value = 6, .parameters = &[_]OperandKind{} },
-                .{ .name = "Rg16f", .value = 7, .parameters = &[_]OperandKind{} },
-                .{ .name = "R11fG11fB10f", .value = 8, .parameters = &[_]OperandKind{} },
-                .{ .name = "R16f", .value = 9, .parameters = &[_]OperandKind{} },
-                .{ .name = "Rgba16", .value = 10, .parameters = &[_]OperandKind{} },
-                .{ .name = "Rgb10A2", .value = 11, .parameters = &[_]OperandKind{} },
-                .{ .name = "Rg16", .value = 12, .parameters = &[_]OperandKind{} },
-                .{ .name = "Rg8", .value = 13, .parameters = &[_]OperandKind{} },
-                .{ .name = "R16", .value = 14, .parameters = &[_]OperandKind{} },
-                .{ .name = "R8", .value = 15, .parameters = &[_]OperandKind{} },
-                .{ .name = "Rgba16Snorm", .value = 16, .parameters = &[_]OperandKind{} },
-                .{ .name = "Rg16Snorm", .value = 17, .parameters = &[_]OperandKind{} },
-                .{ .name = "Rg8Snorm", .value = 18, .parameters = &[_]OperandKind{} },
-                .{ .name = "R16Snorm", .value = 19, .parameters = &[_]OperandKind{} },
-                .{ .name = "R8Snorm", .value = 20, .parameters = &[_]OperandKind{} },
-                .{ .name = "Rgba32i", .value = 21, .parameters = &[_]OperandKind{} },
-                .{ .name = "Rgba16i", .value = 22, .parameters = &[_]OperandKind{} },
-                .{ .name = "Rgba8i", .value = 23, .parameters = &[_]OperandKind{} },
-                .{ .name = "R32i", .value = 24, .parameters = &[_]OperandKind{} },
-                .{ .name = "Rg32i", .value = 25, .parameters = &[_]OperandKind{} },
-                .{ .name = "Rg16i", .value = 26, .parameters = &[_]OperandKind{} },
-                .{ .name = "Rg8i", .value = 27, .parameters = &[_]OperandKind{} },
-                .{ .name = "R16i", .value = 28, .parameters = &[_]OperandKind{} },
-                .{ .name = "R8i", .value = 29, .parameters = &[_]OperandKind{} },
-                .{ .name = "Rgba32ui", .value = 30, .parameters = &[_]OperandKind{} },
-                .{ .name = "Rgba16ui", .value = 31, .parameters = &[_]OperandKind{} },
-                .{ .name = "Rgba8ui", .value = 32, .parameters = &[_]OperandKind{} },
-                .{ .name = "R32ui", .value = 33, .parameters = &[_]OperandKind{} },
-                .{ .name = "Rgb10a2ui", .value = 34, .parameters = &[_]OperandKind{} },
-                .{ .name = "Rg32ui", .value = 35, .parameters = &[_]OperandKind{} },
-                .{ .name = "Rg16ui", .value = 36, .parameters = &[_]OperandKind{} },
-                .{ .name = "Rg8ui", .value = 37, .parameters = &[_]OperandKind{} },
-                .{ .name = "R16ui", .value = 38, .parameters = &[_]OperandKind{} },
-                .{ .name = "R8ui", .value = 39, .parameters = &[_]OperandKind{} },
-                .{ .name = "R64ui", .value = 40, .parameters = &[_]OperandKind{} },
-                .{ .name = "R64i", .value = 41, .parameters = &[_]OperandKind{} },
+            .fp_operation_mode => &.{
+                .{ .name = "IEEE", .value = 0, .parameters = &.{} },
+                .{ .name = "ALT", .value = 1, .parameters = &.{} },
             },
-            .ImageChannelOrder => &[_]Enumerant{
-                .{ .name = "R", .value = 0, .parameters = &[_]OperandKind{} },
-                .{ .name = "A", .value = 1, .parameters = &[_]OperandKind{} },
-                .{ .name = "RG", .value = 2, .parameters = &[_]OperandKind{} },
-                .{ .name = "RA", .value = 3, .parameters = &[_]OperandKind{} },
-                .{ .name = "RGB", .value = 4, .parameters = &[_]OperandKind{} },
-                .{ .name = "RGBA", .value = 5, .parameters = &[_]OperandKind{} },
-                .{ .name = "BGRA", .value = 6, .parameters = &[_]OperandKind{} },
-                .{ .name = "ARGB", .value = 7, .parameters = &[_]OperandKind{} },
-                .{ .name = "Intensity", .value = 8, .parameters = &[_]OperandKind{} },
-                .{ .name = "Luminance", .value = 9, .parameters = &[_]OperandKind{} },
-                .{ .name = "Rx", .value = 10, .parameters = &[_]OperandKind{} },
-                .{ .name = "RGx", .value = 11, .parameters = &[_]OperandKind{} },
-                .{ .name = "RGBx", .value = 12, .parameters = &[_]OperandKind{} },
-                .{ .name = "Depth", .value = 13, .parameters = &[_]OperandKind{} },
-                .{ .name = "DepthStencil", .value = 14, .parameters = &[_]OperandKind{} },
-                .{ .name = "sRGB", .value = 15, .parameters = &[_]OperandKind{} },
-                .{ .name = "sRGBx", .value = 16, .parameters = &[_]OperandKind{} },
-                .{ .name = "sRGBA", .value = 17, .parameters = &[_]OperandKind{} },
-                .{ .name = "sBGRA", .value = 18, .parameters = &[_]OperandKind{} },
-                .{ .name = "ABGR", .value = 19, .parameters = &[_]OperandKind{} },
+            .overflow_modes => &.{
+                .{ .name = "WRAP", .value = 0, .parameters = &.{} },
+                .{ .name = "SAT", .value = 1, .parameters = &.{} },
+                .{ .name = "SAT_ZERO", .value = 2, .parameters = &.{} },
+                .{ .name = "SAT_SYM", .value = 3, .parameters = &.{} },
             },
-            .ImageChannelDataType => &[_]Enumerant{
-                .{ .name = "SnormInt8", .value = 0, .parameters = &[_]OperandKind{} },
-                .{ .name = "SnormInt16", .value = 1, .parameters = &[_]OperandKind{} },
-                .{ .name = "UnormInt8", .value = 2, .parameters = &[_]OperandKind{} },
-                .{ .name = "UnormInt16", .value = 3, .parameters = &[_]OperandKind{} },
-                .{ .name = "UnormShort565", .value = 4, .parameters = &[_]OperandKind{} },
-                .{ .name = "UnormShort555", .value = 5, .parameters = &[_]OperandKind{} },
-                .{ .name = "UnormInt101010", .value = 6, .parameters = &[_]OperandKind{} },
-                .{ .name = "SignedInt8", .value = 7, .parameters = &[_]OperandKind{} },
-                .{ .name = "SignedInt16", .value = 8, .parameters = &[_]OperandKind{} },
-                .{ .name = "SignedInt32", .value = 9, .parameters = &[_]OperandKind{} },
-                .{ .name = "UnsignedInt8", .value = 10, .parameters = &[_]OperandKind{} },
-                .{ .name = "UnsignedInt16", .value = 11, .parameters = &[_]OperandKind{} },
-                .{ .name = "UnsignedInt32", .value = 12, .parameters = &[_]OperandKind{} },
-                .{ .name = "HalfFloat", .value = 13, .parameters = &[_]OperandKind{} },
-                .{ .name = "Float", .value = 14, .parameters = &[_]OperandKind{} },
-                .{ .name = "UnormInt24", .value = 15, .parameters = &[_]OperandKind{} },
-                .{ .name = "UnormInt101010_2", .value = 16, .parameters = &[_]OperandKind{} },
-                .{ .name = "UnsignedIntRaw10EXT", .value = 19, .parameters = &[_]OperandKind{} },
-                .{ .name = "UnsignedIntRaw12EXT", .value = 20, .parameters = &[_]OperandKind{} },
+            .linkage_type => &.{
+                .{ .name = "Export", .value = 0, .parameters = &.{} },
+                .{ .name = "Import", .value = 1, .parameters = &.{} },
+                .{ .name = "LinkOnceODR", .value = 2, .parameters = &.{} },
             },
-            .FPRoundingMode => &[_]Enumerant{
-                .{ .name = "RTE", .value = 0, .parameters = &[_]OperandKind{} },
-                .{ .name = "RTZ", .value = 1, .parameters = &[_]OperandKind{} },
-                .{ .name = "RTP", .value = 2, .parameters = &[_]OperandKind{} },
-                .{ .name = "RTN", .value = 3, .parameters = &[_]OperandKind{} },
+            .access_qualifier => &.{
+                .{ .name = "ReadOnly", .value = 0, .parameters = &.{} },
+                .{ .name = "WriteOnly", .value = 1, .parameters = &.{} },
+                .{ .name = "ReadWrite", .value = 2, .parameters = &.{} },
             },
-            .FPDenormMode => &[_]Enumerant{
-                .{ .name = "Preserve", .value = 0, .parameters = &[_]OperandKind{} },
-                .{ .name = "FlushToZero", .value = 1, .parameters = &[_]OperandKind{} },
+            .host_access_qualifier => &.{
+                .{ .name = "NoneINTEL", .value = 0, .parameters = &.{} },
+                .{ .name = "ReadINTEL", .value = 1, .parameters = &.{} },
+                .{ .name = "WriteINTEL", .value = 2, .parameters = &.{} },
+                .{ .name = "ReadWriteINTEL", .value = 3, .parameters = &.{} },
             },
-            .QuantizationModes => &[_]Enumerant{
-                .{ .name = "TRN", .value = 0, .parameters = &[_]OperandKind{} },
-                .{ .name = "TRN_ZERO", .value = 1, .parameters = &[_]OperandKind{} },
-                .{ .name = "RND", .value = 2, .parameters = &[_]OperandKind{} },
-                .{ .name = "RND_ZERO", .value = 3, .parameters = &[_]OperandKind{} },
-                .{ .name = "RND_INF", .value = 4, .parameters = &[_]OperandKind{} },
-                .{ .name = "RND_MIN_INF", .value = 5, .parameters = &[_]OperandKind{} },
-                .{ .name = "RND_CONV", .value = 6, .parameters = &[_]OperandKind{} },
-                .{ .name = "RND_CONV_ODD", .value = 7, .parameters = &[_]OperandKind{} },
+            .function_parameter_attribute => &.{
+                .{ .name = "Zext", .value = 0, .parameters = &.{} },
+                .{ .name = "Sext", .value = 1, .parameters = &.{} },
+                .{ .name = "ByVal", .value = 2, .parameters = &.{} },
+                .{ .name = "Sret", .value = 3, .parameters = &.{} },
+                .{ .name = "NoAlias", .value = 4, .parameters = &.{} },
+                .{ .name = "NoCapture", .value = 5, .parameters = &.{} },
+                .{ .name = "NoWrite", .value = 6, .parameters = &.{} },
+                .{ .name = "NoReadWrite", .value = 7, .parameters = &.{} },
+                .{ .name = "RuntimeAlignedINTEL", .value = 5940, .parameters = &.{} },
             },
-            .FPOperationMode => &[_]Enumerant{
-                .{ .name = "IEEE", .value = 0, .parameters = &[_]OperandKind{} },
-                .{ .name = "ALT", .value = 1, .parameters = &[_]OperandKind{} },
+            .decoration => &.{
+                .{ .name = "RelaxedPrecision", .value = 0, .parameters = &.{} },
+                .{ .name = "SpecId", .value = 1, .parameters = &.{.literal_integer} },
+                .{ .name = "Block", .value = 2, .parameters = &.{} },
+                .{ .name = "BufferBlock", .value = 3, .parameters = &.{} },
+                .{ .name = "RowMajor", .value = 4, .parameters = &.{} },
+                .{ .name = "ColMajor", .value = 5, .parameters = &.{} },
+                .{ .name = "ArrayStride", .value = 6, .parameters = &.{.literal_integer} },
+                .{ .name = "MatrixStride", .value = 7, .parameters = &.{.literal_integer} },
+                .{ .name = "GLSLShared", .value = 8, .parameters = &.{} },
+                .{ .name = "GLSLPacked", .value = 9, .parameters = &.{} },
+                .{ .name = "CPacked", .value = 10, .parameters = &.{} },
+                .{ .name = "BuiltIn", .value = 11, .parameters = &.{.built_in} },
+                .{ .name = "NoPerspective", .value = 13, .parameters = &.{} },
+                .{ .name = "Flat", .value = 14, .parameters = &.{} },
+                .{ .name = "Patch", .value = 15, .parameters = &.{} },
+                .{ .name = "Centroid", .value = 16, .parameters = &.{} },
+                .{ .name = "Sample", .value = 17, .parameters = &.{} },
+                .{ .name = "Invariant", .value = 18, .parameters = &.{} },
+                .{ .name = "Restrict", .value = 19, .parameters = &.{} },
+                .{ .name = "Aliased", .value = 20, .parameters = &.{} },
+                .{ .name = "Volatile", .value = 21, .parameters = &.{} },
+                .{ .name = "Constant", .value = 22, .parameters = &.{} },
+                .{ .name = "Coherent", .value = 23, .parameters = &.{} },
+                .{ .name = "NonWritable", .value = 24, .parameters = &.{} },
+                .{ .name = "NonReadable", .value = 25, .parameters = &.{} },
+                .{ .name = "Uniform", .value = 26, .parameters = &.{} },
+                .{ .name = "UniformId", .value = 27, .parameters = &.{.id_scope} },
+                .{ .name = "SaturatedConversion", .value = 28, .parameters = &.{} },
+                .{ .name = "Stream", .value = 29, .parameters = &.{.literal_integer} },
+                .{ .name = "Location", .value = 30, .parameters = &.{.literal_integer} },
+                .{ .name = "Component", .value = 31, .parameters = &.{.literal_integer} },
+                .{ .name = "Index", .value = 32, .parameters = &.{.literal_integer} },
+                .{ .name = "Binding", .value = 33, .parameters = &.{.literal_integer} },
+                .{ .name = "DescriptorSet", .value = 34, .parameters = &.{.literal_integer} },
+                .{ .name = "Offset", .value = 35, .parameters = &.{.literal_integer} },
+                .{ .name = "XfbBuffer", .value = 36, .parameters = &.{.literal_integer} },
+                .{ .name = "XfbStride", .value = 37, .parameters = &.{.literal_integer} },
+                .{ .name = "FuncParamAttr", .value = 38, .parameters = &.{.function_parameter_attribute} },
+                .{ .name = "FPRoundingMode", .value = 39, .parameters = &.{.fp_rounding_mode} },
+                .{ .name = "FPFastMathMode", .value = 40, .parameters = &.{.fp_fast_math_mode} },
+                .{ .name = "LinkageAttributes", .value = 41, .parameters = &.{ .literal_string, .linkage_type } },
+                .{ .name = "NoContraction", .value = 42, .parameters = &.{} },
+                .{ .name = "InputAttachmentIndex", .value = 43, .parameters = &.{.literal_integer} },
+                .{ .name = "Alignment", .value = 44, .parameters = &.{.literal_integer} },
+                .{ .name = "MaxByteOffset", .value = 45, .parameters = &.{.literal_integer} },
+                .{ .name = "AlignmentId", .value = 46, .parameters = &.{.id_ref} },
+                .{ .name = "MaxByteOffsetId", .value = 47, .parameters = &.{.id_ref} },
+                .{ .name = "SaturatedToLargestFloat8NormalConversionEXT", .value = 4216, .parameters = &.{} },
+                .{ .name = "NoSignedWrap", .value = 4469, .parameters = &.{} },
+                .{ .name = "NoUnsignedWrap", .value = 4470, .parameters = &.{} },
+                .{ .name = "WeightTextureQCOM", .value = 4487, .parameters = &.{} },
+                .{ .name = "BlockMatchTextureQCOM", .value = 4488, .parameters = &.{} },
+                .{ .name = "BlockMatchSamplerQCOM", .value = 4499, .parameters = &.{} },
+                .{ .name = "ExplicitInterpAMD", .value = 4999, .parameters = &.{} },
+                .{ .name = "NodeSharesPayloadLimitsWithAMDX", .value = 5019, .parameters = &.{.id_ref} },
+                .{ .name = "NodeMaxPayloadsAMDX", .value = 5020, .parameters = &.{.id_ref} },
+                .{ .name = "TrackFinishWritingAMDX", .value = 5078, .parameters = &.{} },
+                .{ .name = "PayloadNodeNameAMDX", .value = 5091, .parameters = &.{.id_ref} },
+                .{ .name = "PayloadNodeBaseIndexAMDX", .value = 5098, .parameters = &.{.id_ref} },
+                .{ .name = "PayloadNodeSparseArrayAMDX", .value = 5099, .parameters = &.{} },
+                .{ .name = "PayloadNodeArraySizeAMDX", .value = 5100, .parameters = &.{.id_ref} },
+                .{ .name = "PayloadDispatchIndirectAMDX", .value = 5105, .parameters = &.{} },
+                .{ .name = "OverrideCoverageNV", .value = 5248, .parameters = &.{} },
+                .{ .name = "PassthroughNV", .value = 5250, .parameters = &.{} },
+                .{ .name = "ViewportRelativeNV", .value = 5252, .parameters = &.{} },
+                .{ .name = "SecondaryViewportRelativeNV", .value = 5256, .parameters = &.{.literal_integer} },
+                .{ .name = "PerPrimitiveEXT", .value = 5271, .parameters = &.{} },
+                .{ .name = "PerViewNV", .value = 5272, .parameters = &.{} },
+                .{ .name = "PerTaskNV", .value = 5273, .parameters = &.{} },
+                .{ .name = "PerVertexKHR", .value = 5285, .parameters = &.{} },
+                .{ .name = "NonUniform", .value = 5300, .parameters = &.{} },
+                .{ .name = "RestrictPointer", .value = 5355, .parameters = &.{} },
+                .{ .name = "AliasedPointer", .value = 5356, .parameters = &.{} },
+                .{ .name = "HitObjectShaderRecordBufferNV", .value = 5386, .parameters = &.{} },
+                .{ .name = "BindlessSamplerNV", .value = 5398, .parameters = &.{} },
+                .{ .name = "BindlessImageNV", .value = 5399, .parameters = &.{} },
+                .{ .name = "BoundSamplerNV", .value = 5400, .parameters = &.{} },
+                .{ .name = "BoundImageNV", .value = 5401, .parameters = &.{} },
+                .{ .name = "SIMTCallINTEL", .value = 5599, .parameters = &.{.literal_integer} },
+                .{ .name = "ReferencedIndirectlyINTEL", .value = 5602, .parameters = &.{} },
+                .{ .name = "ClobberINTEL", .value = 5607, .parameters = &.{.literal_string} },
+                .{ .name = "SideEffectsINTEL", .value = 5608, .parameters = &.{} },
+                .{ .name = "VectorComputeVariableINTEL", .value = 5624, .parameters = &.{} },
+                .{ .name = "FuncParamIOKindINTEL", .value = 5625, .parameters = &.{.literal_integer} },
+                .{ .name = "VectorComputeFunctionINTEL", .value = 5626, .parameters = &.{} },
+                .{ .name = "StackCallINTEL", .value = 5627, .parameters = &.{} },
+                .{ .name = "GlobalVariableOffsetINTEL", .value = 5628, .parameters = &.{.literal_integer} },
+                .{ .name = "CounterBuffer", .value = 5634, .parameters = &.{.id_ref} },
+                .{ .name = "UserSemantic", .value = 5635, .parameters = &.{.literal_string} },
+                .{ .name = "UserTypeGOOGLE", .value = 5636, .parameters = &.{.literal_string} },
+                .{ .name = "FunctionRoundingModeINTEL", .value = 5822, .parameters = &.{ .literal_integer, .fp_rounding_mode } },
+                .{ .name = "FunctionDenormModeINTEL", .value = 5823, .parameters = &.{ .literal_integer, .fp_denorm_mode } },
+                .{ .name = "RegisterINTEL", .value = 5825, .parameters = &.{} },
+                .{ .name = "MemoryINTEL", .value = 5826, .parameters = &.{.literal_string} },
+                .{ .name = "NumbanksINTEL", .value = 5827, .parameters = &.{.literal_integer} },
+                .{ .name = "BankwidthINTEL", .value = 5828, .parameters = &.{.literal_integer} },
+                .{ .name = "MaxPrivateCopiesINTEL", .value = 5829, .parameters = &.{.literal_integer} },
+                .{ .name = "SinglepumpINTEL", .value = 5830, .parameters = &.{} },
+                .{ .name = "DoublepumpINTEL", .value = 5831, .parameters = &.{} },
+                .{ .name = "MaxReplicatesINTEL", .value = 5832, .parameters = &.{.literal_integer} },
+                .{ .name = "SimpleDualPortINTEL", .value = 5833, .parameters = &.{} },
+                .{ .name = "MergeINTEL", .value = 5834, .parameters = &.{ .literal_string, .literal_string } },
+                .{ .name = "BankBitsINTEL", .value = 5835, .parameters = &.{.literal_integer} },
+                .{ .name = "ForcePow2DepthINTEL", .value = 5836, .parameters = &.{.literal_integer} },
+                .{ .name = "StridesizeINTEL", .value = 5883, .parameters = &.{.literal_integer} },
+                .{ .name = "WordsizeINTEL", .value = 5884, .parameters = &.{.literal_integer} },
+                .{ .name = "TrueDualPortINTEL", .value = 5885, .parameters = &.{} },
+                .{ .name = "BurstCoalesceINTEL", .value = 5899, .parameters = &.{} },
+                .{ .name = "CacheSizeINTEL", .value = 5900, .parameters = &.{.literal_integer} },
+                .{ .name = "DontStaticallyCoalesceINTEL", .value = 5901, .parameters = &.{} },
+                .{ .name = "PrefetchINTEL", .value = 5902, .parameters = &.{.literal_integer} },
+                .{ .name = "StallEnableINTEL", .value = 5905, .parameters = &.{} },
+                .{ .name = "FuseLoopsInFunctionINTEL", .value = 5907, .parameters = &.{} },
+                .{ .name = "MathOpDSPModeINTEL", .value = 5909, .parameters = &.{ .literal_integer, .literal_integer } },
+                .{ .name = "AliasScopeINTEL", .value = 5914, .parameters = &.{.id_ref} },
+                .{ .name = "NoAliasINTEL", .value = 5915, .parameters = &.{.id_ref} },
+                .{ .name = "InitiationIntervalINTEL", .value = 5917, .parameters = &.{.literal_integer} },
+                .{ .name = "MaxConcurrencyINTEL", .value = 5918, .parameters = &.{.literal_integer} },
+                .{ .name = "PipelineEnableINTEL", .value = 5919, .parameters = &.{.literal_integer} },
+                .{ .name = "BufferLocationINTEL", .value = 5921, .parameters = &.{.literal_integer} },
+                .{ .name = "IOPipeStorageINTEL", .value = 5944, .parameters = &.{.literal_integer} },
+                .{ .name = "FunctionFloatingPointModeINTEL", .value = 6080, .parameters = &.{ .literal_integer, .fp_operation_mode } },
+                .{ .name = "SingleElementVectorINTEL", .value = 6085, .parameters = &.{} },
+                .{ .name = "VectorComputeCallableFunctionINTEL", .value = 6087, .parameters = &.{} },
+                .{ .name = "MediaBlockIOINTEL", .value = 6140, .parameters = &.{} },
+                .{ .name = "StallFreeINTEL", .value = 6151, .parameters = &.{} },
+                .{ .name = "FPMaxErrorDecorationINTEL", .value = 6170, .parameters = &.{.literal_float} },
+                .{ .name = "LatencyControlLabelINTEL", .value = 6172, .parameters = &.{.literal_integer} },
+                .{ .name = "LatencyControlConstraintINTEL", .value = 6173, .parameters = &.{ .literal_integer, .literal_integer, .literal_integer } },
+                .{ .name = "ConduitKernelArgumentINTEL", .value = 6175, .parameters = &.{} },
+                .{ .name = "RegisterMapKernelArgumentINTEL", .value = 6176, .parameters = &.{} },
+                .{ .name = "MMHostInterfaceAddressWidthINTEL", .value = 6177, .parameters = &.{.literal_integer} },
+                .{ .name = "MMHostInterfaceDataWidthINTEL", .value = 6178, .parameters = &.{.literal_integer} },
+                .{ .name = "MMHostInterfaceLatencyINTEL", .value = 6179, .parameters = &.{.literal_integer} },
+                .{ .name = "MMHostInterfaceReadWriteModeINTEL", .value = 6180, .parameters = &.{.access_qualifier} },
+                .{ .name = "MMHostInterfaceMaxBurstINTEL", .value = 6181, .parameters = &.{.literal_integer} },
+                .{ .name = "MMHostInterfaceWaitRequestINTEL", .value = 6182, .parameters = &.{.literal_integer} },
+                .{ .name = "StableKernelArgumentINTEL", .value = 6183, .parameters = &.{} },
+                .{ .name = "HostAccessINTEL", .value = 6188, .parameters = &.{ .host_access_qualifier, .literal_string } },
+                .{ .name = "InitModeINTEL", .value = 6190, .parameters = &.{.initialization_mode_qualifier} },
+                .{ .name = "ImplementInRegisterMapINTEL", .value = 6191, .parameters = &.{.literal_integer} },
+                .{ .name = "CacheControlLoadINTEL", .value = 6442, .parameters = &.{ .literal_integer, .load_cache_control } },
+                .{ .name = "CacheControlStoreINTEL", .value = 6443, .parameters = &.{ .literal_integer, .store_cache_control } },
             },
-            .OverflowModes => &[_]Enumerant{
-                .{ .name = "WRAP", .value = 0, .parameters = &[_]OperandKind{} },
-                .{ .name = "SAT", .value = 1, .parameters = &[_]OperandKind{} },
-                .{ .name = "SAT_ZERO", .value = 2, .parameters = &[_]OperandKind{} },
-                .{ .name = "SAT_SYM", .value = 3, .parameters = &[_]OperandKind{} },
+            .built_in => &.{
+                .{ .name = "Position", .value = 0, .parameters = &.{} },
+                .{ .name = "PointSize", .value = 1, .parameters = &.{} },
+                .{ .name = "ClipDistance", .value = 3, .parameters = &.{} },
+                .{ .name = "CullDistance", .value = 4, .parameters = &.{} },
+                .{ .name = "VertexId", .value = 5, .parameters = &.{} },
+                .{ .name = "InstanceId", .value = 6, .parameters = &.{} },
+                .{ .name = "PrimitiveId", .value = 7, .parameters = &.{} },
+                .{ .name = "InvocationId", .value = 8, .parameters = &.{} },
+                .{ .name = "Layer", .value = 9, .parameters = &.{} },
+                .{ .name = "ViewportIndex", .value = 10, .parameters = &.{} },
+                .{ .name = "TessLevelOuter", .value = 11, .parameters = &.{} },
+                .{ .name = "TessLevelInner", .value = 12, .parameters = &.{} },
+                .{ .name = "TessCoord", .value = 13, .parameters = &.{} },
+                .{ .name = "PatchVertices", .value = 14, .parameters = &.{} },
+                .{ .name = "FragCoord", .value = 15, .parameters = &.{} },
+                .{ .name = "PointCoord", .value = 16, .parameters = &.{} },
+                .{ .name = "FrontFacing", .value = 17, .parameters = &.{} },
+                .{ .name = "SampleId", .value = 18, .parameters = &.{} },
+                .{ .name = "SamplePosition", .value = 19, .parameters = &.{} },
+                .{ .name = "SampleMask", .value = 20, .parameters = &.{} },
+                .{ .name = "FragDepth", .value = 22, .parameters = &.{} },
+                .{ .name = "HelperInvocation", .value = 23, .parameters = &.{} },
+                .{ .name = "NumWorkgroups", .value = 24, .parameters = &.{} },
+                .{ .name = "WorkgroupSize", .value = 25, .parameters = &.{} },
+                .{ .name = "WorkgroupId", .value = 26, .parameters = &.{} },
+                .{ .name = "LocalInvocationId", .value = 27, .parameters = &.{} },
+                .{ .name = "GlobalInvocationId", .value = 28, .parameters = &.{} },
+                .{ .name = "LocalInvocationIndex", .value = 29, .parameters = &.{} },
+                .{ .name = "WorkDim", .value = 30, .parameters = &.{} },
+                .{ .name = "GlobalSize", .value = 31, .parameters = &.{} },
+                .{ .name = "EnqueuedWorkgroupSize", .value = 32, .parameters = &.{} },
+                .{ .name = "GlobalOffset", .value = 33, .parameters = &.{} },
+                .{ .name = "GlobalLinearId", .value = 34, .parameters = &.{} },
+                .{ .name = "SubgroupSize", .value = 36, .parameters = &.{} },
+                .{ .name = "SubgroupMaxSize", .value = 37, .parameters = &.{} },
+                .{ .name = "NumSubgroups", .value = 38, .parameters = &.{} },
+                .{ .name = "NumEnqueuedSubgroups", .value = 39, .parameters = &.{} },
+                .{ .name = "SubgroupId", .value = 40, .parameters = &.{} },
+                .{ .name = "SubgroupLocalInvocationId", .value = 41, .parameters = &.{} },
+                .{ .name = "VertexIndex", .value = 42, .parameters = &.{} },
+                .{ .name = "InstanceIndex", .value = 43, .parameters = &.{} },
+                .{ .name = "CoreIDARM", .value = 4160, .parameters = &.{} },
+                .{ .name = "CoreCountARM", .value = 4161, .parameters = &.{} },
+                .{ .name = "CoreMaxIDARM", .value = 4162, .parameters = &.{} },
+                .{ .name = "WarpIDARM", .value = 4163, .parameters = &.{} },
+                .{ .name = "WarpMaxIDARM", .value = 4164, .parameters = &.{} },
+                .{ .name = "SubgroupEqMask", .value = 4416, .parameters = &.{} },
+                .{ .name = "SubgroupGeMask", .value = 4417, .parameters = &.{} },
+                .{ .name = "SubgroupGtMask", .value = 4418, .parameters = &.{} },
+                .{ .name = "SubgroupLeMask", .value = 4419, .parameters = &.{} },
+                .{ .name = "SubgroupLtMask", .value = 4420, .parameters = &.{} },
+                .{ .name = "BaseVertex", .value = 4424, .parameters = &.{} },
+                .{ .name = "BaseInstance", .value = 4425, .parameters = &.{} },
+                .{ .name = "DrawIndex", .value = 4426, .parameters = &.{} },
+                .{ .name = "PrimitiveShadingRateKHR", .value = 4432, .parameters = &.{} },
+                .{ .name = "DeviceIndex", .value = 4438, .parameters = &.{} },
+                .{ .name = "ViewIndex", .value = 4440, .parameters = &.{} },
+                .{ .name = "ShadingRateKHR", .value = 4444, .parameters = &.{} },
+                .{ .name = "TileOffsetQCOM", .value = 4492, .parameters = &.{} },
+                .{ .name = "TileDimensionQCOM", .value = 4493, .parameters = &.{} },
+                .{ .name = "TileApronSizeQCOM", .value = 4494, .parameters = &.{} },
+                .{ .name = "BaryCoordNoPerspAMD", .value = 4992, .parameters = &.{} },
+                .{ .name = "BaryCoordNoPerspCentroidAMD", .value = 4993, .parameters = &.{} },
+                .{ .name = "BaryCoordNoPerspSampleAMD", .value = 4994, .parameters = &.{} },
+                .{ .name = "BaryCoordSmoothAMD", .value = 4995, .parameters = &.{} },
+                .{ .name = "BaryCoordSmoothCentroidAMD", .value = 4996, .parameters = &.{} },
+                .{ .name = "BaryCoordSmoothSampleAMD", .value = 4997, .parameters = &.{} },
+                .{ .name = "BaryCoordPullModelAMD", .value = 4998, .parameters = &.{} },
+                .{ .name = "FragStencilRefEXT", .value = 5014, .parameters = &.{} },
+                .{ .name = "RemainingRecursionLevelsAMDX", .value = 5021, .parameters = &.{} },
+                .{ .name = "ShaderIndexAMDX", .value = 5073, .parameters = &.{} },
+                .{ .name = "ViewportMaskNV", .value = 5253, .parameters = &.{} },
+                .{ .name = "SecondaryPositionNV", .value = 5257, .parameters = &.{} },
+                .{ .name = "SecondaryViewportMaskNV", .value = 5258, .parameters = &.{} },
+                .{ .name = "PositionPerViewNV", .value = 5261, .parameters = &.{} },
+                .{ .name = "ViewportMaskPerViewNV", .value = 5262, .parameters = &.{} },
+                .{ .name = "FullyCoveredEXT", .value = 5264, .parameters = &.{} },
+                .{ .name = "TaskCountNV", .value = 5274, .parameters = &.{} },
+                .{ .name = "PrimitiveCountNV", .value = 5275, .parameters = &.{} },
+                .{ .name = "PrimitiveIndicesNV", .value = 5276, .parameters = &.{} },
+                .{ .name = "ClipDistancePerViewNV", .value = 5277, .parameters = &.{} },
+                .{ .name = "CullDistancePerViewNV", .value = 5278, .parameters = &.{} },
+                .{ .name = "LayerPerViewNV", .value = 5279, .parameters = &.{} },
+                .{ .name = "MeshViewCountNV", .value = 5280, .parameters = &.{} },
+                .{ .name = "MeshViewIndicesNV", .value = 5281, .parameters = &.{} },
+                .{ .name = "BaryCoordKHR", .value = 5286, .parameters = &.{} },
+                .{ .name = "BaryCoordNoPerspKHR", .value = 5287, .parameters = &.{} },
+                .{ .name = "FragSizeEXT", .value = 5292, .parameters = &.{} },
+                .{ .name = "FragInvocationCountEXT", .value = 5293, .parameters = &.{} },
+                .{ .name = "PrimitivePointIndicesEXT", .value = 5294, .parameters = &.{} },
+                .{ .name = "PrimitiveLineIndicesEXT", .value = 5295, .parameters = &.{} },
+                .{ .name = "PrimitiveTriangleIndicesEXT", .value = 5296, .parameters = &.{} },
+                .{ .name = "CullPrimitiveEXT", .value = 5299, .parameters = &.{} },
+                .{ .name = "LaunchIdKHR", .value = 5319, .parameters = &.{} },
+                .{ .name = "LaunchSizeKHR", .value = 5320, .parameters = &.{} },
+                .{ .name = "WorldRayOriginKHR", .value = 5321, .parameters = &.{} },
+                .{ .name = "WorldRayDirectionKHR", .value = 5322, .parameters = &.{} },
+                .{ .name = "ObjectRayOriginKHR", .value = 5323, .parameters = &.{} },
+                .{ .name = "ObjectRayDirectionKHR", .value = 5324, .parameters = &.{} },
+                .{ .name = "RayTminKHR", .value = 5325, .parameters = &.{} },
+                .{ .name = "RayTmaxKHR", .value = 5326, .parameters = &.{} },
+                .{ .name = "InstanceCustomIndexKHR", .value = 5327, .parameters = &.{} },
+                .{ .name = "ObjectToWorldKHR", .value = 5330, .parameters = &.{} },
+                .{ .name = "WorldToObjectKHR", .value = 5331, .parameters = &.{} },
+                .{ .name = "HitTNV", .value = 5332, .parameters = &.{} },
+                .{ .name = "HitKindKHR", .value = 5333, .parameters = &.{} },
+                .{ .name = "CurrentRayTimeNV", .value = 5334, .parameters = &.{} },
+                .{ .name = "HitTriangleVertexPositionsKHR", .value = 5335, .parameters = &.{} },
+                .{ .name = "HitMicroTriangleVertexPositionsNV", .value = 5337, .parameters = &.{} },
+                .{ .name = "HitMicroTriangleVertexBarycentricsNV", .value = 5344, .parameters = &.{} },
+                .{ .name = "IncomingRayFlagsKHR", .value = 5351, .parameters = &.{} },
+                .{ .name = "RayGeometryIndexKHR", .value = 5352, .parameters = &.{} },
+                .{ .name = "HitIsSphereNV", .value = 5359, .parameters = &.{} },
+                .{ .name = "HitIsLSSNV", .value = 5360, .parameters = &.{} },
+                .{ .name = "HitSpherePositionNV", .value = 5361, .parameters = &.{} },
+                .{ .name = "WarpsPerSMNV", .value = 5374, .parameters = &.{} },
+                .{ .name = "SMCountNV", .value = 5375, .parameters = &.{} },
+                .{ .name = "WarpIDNV", .value = 5376, .parameters = &.{} },
+                .{ .name = "SMIDNV", .value = 5377, .parameters = &.{} },
+                .{ .name = "HitLSSPositionsNV", .value = 5396, .parameters = &.{} },
+                .{ .name = "HitKindFrontFacingMicroTriangleNV", .value = 5405, .parameters = &.{} },
+                .{ .name = "HitKindBackFacingMicroTriangleNV", .value = 5406, .parameters = &.{} },
+                .{ .name = "HitSphereRadiusNV", .value = 5420, .parameters = &.{} },
+                .{ .name = "HitLSSRadiiNV", .value = 5421, .parameters = &.{} },
+                .{ .name = "ClusterIDNV", .value = 5436, .parameters = &.{} },
+                .{ .name = "CullMaskKHR", .value = 6021, .parameters = &.{} },
             },
-            .LinkageType => &[_]Enumerant{
-                .{ .name = "Export", .value = 0, .parameters = &[_]OperandKind{} },
-                .{ .name = "Import", .value = 1, .parameters = &[_]OperandKind{} },
-                .{ .name = "LinkOnceODR", .value = 2, .parameters = &[_]OperandKind{} },
+            .scope => &.{
+                .{ .name = "CrossDevice", .value = 0, .parameters = &.{} },
+                .{ .name = "Device", .value = 1, .parameters = &.{} },
+                .{ .name = "Workgroup", .value = 2, .parameters = &.{} },
+                .{ .name = "Subgroup", .value = 3, .parameters = &.{} },
+                .{ .name = "Invocation", .value = 4, .parameters = &.{} },
+                .{ .name = "QueueFamily", .value = 5, .parameters = &.{} },
+                .{ .name = "ShaderCallKHR", .value = 6, .parameters = &.{} },
             },
-            .AccessQualifier => &[_]Enumerant{
-                .{ .name = "ReadOnly", .value = 0, .parameters = &[_]OperandKind{} },
-                .{ .name = "WriteOnly", .value = 1, .parameters = &[_]OperandKind{} },
-                .{ .name = "ReadWrite", .value = 2, .parameters = &[_]OperandKind{} },
+            .group_operation => &.{
+                .{ .name = "Reduce", .value = 0, .parameters = &.{} },
+                .{ .name = "InclusiveScan", .value = 1, .parameters = &.{} },
+                .{ .name = "ExclusiveScan", .value = 2, .parameters = &.{} },
+                .{ .name = "ClusteredReduce", .value = 3, .parameters = &.{} },
+                .{ .name = "PartitionedReduceNV", .value = 6, .parameters = &.{} },
+                .{ .name = "PartitionedInclusiveScanNV", .value = 7, .parameters = &.{} },
+                .{ .name = "PartitionedExclusiveScanNV", .value = 8, .parameters = &.{} },
             },
-            .HostAccessQualifier => &[_]Enumerant{
-                .{ .name = "NoneINTEL", .value = 0, .parameters = &[_]OperandKind{} },
-                .{ .name = "ReadINTEL", .value = 1, .parameters = &[_]OperandKind{} },
-                .{ .name = "WriteINTEL", .value = 2, .parameters = &[_]OperandKind{} },
-                .{ .name = "ReadWriteINTEL", .value = 3, .parameters = &[_]OperandKind{} },
+            .kernel_enqueue_flags => &.{
+                .{ .name = "NoWait", .value = 0, .parameters = &.{} },
+                .{ .name = "WaitKernel", .value = 1, .parameters = &.{} },
+                .{ .name = "WaitWorkGroup", .value = 2, .parameters = &.{} },
             },
-            .FunctionParameterAttribute => &[_]Enumerant{
-                .{ .name = "Zext", .value = 0, .parameters = &[_]OperandKind{} },
-                .{ .name = "Sext", .value = 1, .parameters = &[_]OperandKind{} },
-                .{ .name = "ByVal", .value = 2, .parameters = &[_]OperandKind{} },
-                .{ .name = "Sret", .value = 3, .parameters = &[_]OperandKind{} },
-                .{ .name = "NoAlias", .value = 4, .parameters = &[_]OperandKind{} },
-                .{ .name = "NoCapture", .value = 5, .parameters = &[_]OperandKind{} },
-                .{ .name = "NoWrite", .value = 6, .parameters = &[_]OperandKind{} },
-                .{ .name = "NoReadWrite", .value = 7, .parameters = &[_]OperandKind{} },
-                .{ .name = "RuntimeAlignedINTEL", .value = 5940, .parameters = &[_]OperandKind{} },
+            .capability => &.{
+                .{ .name = "Matrix", .value = 0, .parameters = &.{} },
+                .{ .name = "Shader", .value = 1, .parameters = &.{} },
+                .{ .name = "Geometry", .value = 2, .parameters = &.{} },
+                .{ .name = "Tessellation", .value = 3, .parameters = &.{} },
+                .{ .name = "Addresses", .value = 4, .parameters = &.{} },
+                .{ .name = "Linkage", .value = 5, .parameters = &.{} },
+                .{ .name = "Kernel", .value = 6, .parameters = &.{} },
+                .{ .name = "Vector16", .value = 7, .parameters = &.{} },
+                .{ .name = "Float16Buffer", .value = 8, .parameters = &.{} },
+                .{ .name = "Float16", .value = 9, .parameters = &.{} },
+                .{ .name = "Float64", .value = 10, .parameters = &.{} },
+                .{ .name = "Int64", .value = 11, .parameters = &.{} },
+                .{ .name = "Int64Atomics", .value = 12, .parameters = &.{} },
+                .{ .name = "ImageBasic", .value = 13, .parameters = &.{} },
+                .{ .name = "ImageReadWrite", .value = 14, .parameters = &.{} },
+                .{ .name = "ImageMipmap", .value = 15, .parameters = &.{} },
+                .{ .name = "Pipes", .value = 17, .parameters = &.{} },
+                .{ .name = "Groups", .value = 18, .parameters = &.{} },
+                .{ .name = "DeviceEnqueue", .value = 19, .parameters = &.{} },
+                .{ .name = "LiteralSampler", .value = 20, .parameters = &.{} },
+                .{ .name = "AtomicStorage", .value = 21, .parameters = &.{} },
+                .{ .name = "Int16", .value = 22, .parameters = &.{} },
+                .{ .name = "TessellationPointSize", .value = 23, .parameters = &.{} },
+                .{ .name = "GeometryPointSize", .value = 24, .parameters = &.{} },
+                .{ .name = "ImageGatherExtended", .value = 25, .parameters = &.{} },
+                .{ .name = "StorageImageMultisample", .value = 27, .parameters = &.{} },
+                .{ .name = "UniformBufferArrayDynamicIndexing", .value = 28, .parameters = &.{} },
+                .{ .name = "SampledImageArrayDynamicIndexing", .value = 29, .parameters = &.{} },
+                .{ .name = "StorageBufferArrayDynamicIndexing", .value = 30, .parameters = &.{} },
+                .{ .name = "StorageImageArrayDynamicIndexing", .value = 31, .parameters = &.{} },
+                .{ .name = "ClipDistance", .value = 32, .parameters = &.{} },
+                .{ .name = "CullDistance", .value = 33, .parameters = &.{} },
+                .{ .name = "ImageCubeArray", .value = 34, .parameters = &.{} },
+                .{ .name = "SampleRateShading", .value = 35, .parameters = &.{} },
+                .{ .name = "ImageRect", .value = 36, .parameters = &.{} },
+                .{ .name = "SampledRect", .value = 37, .parameters = &.{} },
+                .{ .name = "GenericPointer", .value = 38, .parameters = &.{} },
+                .{ .name = "Int8", .value = 39, .parameters = &.{} },
+                .{ .name = "InputAttachment", .value = 40, .parameters = &.{} },
+                .{ .name = "SparseResidency", .value = 41, .parameters = &.{} },
+                .{ .name = "MinLod", .value = 42, .parameters = &.{} },
+                .{ .name = "Sampled1D", .value = 43, .parameters = &.{} },
+                .{ .name = "Image1D", .value = 44, .parameters = &.{} },
+                .{ .name = "SampledCubeArray", .value = 45, .parameters = &.{} },
+                .{ .name = "SampledBuffer", .value = 46, .parameters = &.{} },
+                .{ .name = "ImageBuffer", .value = 47, .parameters = &.{} },
+                .{ .name = "ImageMSArray", .value = 48, .parameters = &.{} },
+                .{ .name = "StorageImageExtendedFormats", .value = 49, .parameters = &.{} },
+                .{ .name = "ImageQuery", .value = 50, .parameters = &.{} },
+                .{ .name = "DerivativeControl", .value = 51, .parameters = &.{} },
+                .{ .name = "InterpolationFunction", .value = 52, .parameters = &.{} },
+                .{ .name = "TransformFeedback", .value = 53, .parameters = &.{} },
+                .{ .name = "GeometryStreams", .value = 54, .parameters = &.{} },
+                .{ .name = "StorageImageReadWithoutFormat", .value = 55, .parameters = &.{} },
+                .{ .name = "StorageImageWriteWithoutFormat", .value = 56, .parameters = &.{} },
+                .{ .name = "MultiViewport", .value = 57, .parameters = &.{} },
+                .{ .name = "SubgroupDispatch", .value = 58, .parameters = &.{} },
+                .{ .name = "NamedBarrier", .value = 59, .parameters = &.{} },
+                .{ .name = "PipeStorage", .value = 60, .parameters = &.{} },
+                .{ .name = "GroupNonUniform", .value = 61, .parameters = &.{} },
+                .{ .name = "GroupNonUniformVote", .value = 62, .parameters = &.{} },
+                .{ .name = "GroupNonUniformArithmetic", .value = 63, .parameters = &.{} },
+                .{ .name = "GroupNonUniformBallot", .value = 64, .parameters = &.{} },
+                .{ .name = "GroupNonUniformShuffle", .value = 65, .parameters = &.{} },
+                .{ .name = "GroupNonUniformShuffleRelative", .value = 66, .parameters = &.{} },
+                .{ .name = "GroupNonUniformClustered", .value = 67, .parameters = &.{} },
+                .{ .name = "GroupNonUniformQuad", .value = 68, .parameters = &.{} },
+                .{ .name = "ShaderLayer", .value = 69, .parameters = &.{} },
+                .{ .name = "ShaderViewportIndex", .value = 70, .parameters = &.{} },
+                .{ .name = "UniformDecoration", .value = 71, .parameters = &.{} },
+                .{ .name = "CoreBuiltinsARM", .value = 4165, .parameters = &.{} },
+                .{ .name = "TileImageColorReadAccessEXT", .value = 4166, .parameters = &.{} },
+                .{ .name = "TileImageDepthReadAccessEXT", .value = 4167, .parameters = &.{} },
+                .{ .name = "TileImageStencilReadAccessEXT", .value = 4168, .parameters = &.{} },
+                .{ .name = "TensorsARM", .value = 4174, .parameters = &.{} },
+                .{ .name = "StorageTensorArrayDynamicIndexingARM", .value = 4175, .parameters = &.{} },
+                .{ .name = "StorageTensorArrayNonUniformIndexingARM", .value = 4176, .parameters = &.{} },
+                .{ .name = "GraphARM", .value = 4191, .parameters = &.{} },
+                .{ .name = "CooperativeMatrixLayoutsARM", .value = 4201, .parameters = &.{} },
+                .{ .name = "Float8EXT", .value = 4212, .parameters = &.{} },
+                .{ .name = "Float8CooperativeMatrixEXT", .value = 4213, .parameters = &.{} },
+                .{ .name = "FragmentShadingRateKHR", .value = 4422, .parameters = &.{} },
+                .{ .name = "SubgroupBallotKHR", .value = 4423, .parameters = &.{} },
+                .{ .name = "DrawParameters", .value = 4427, .parameters = &.{} },
+                .{ .name = "WorkgroupMemoryExplicitLayoutKHR", .value = 4428, .parameters = &.{} },
+                .{ .name = "WorkgroupMemoryExplicitLayout8BitAccessKHR", .value = 4429, .parameters = &.{} },
+                .{ .name = "WorkgroupMemoryExplicitLayout16BitAccessKHR", .value = 4430, .parameters = &.{} },
+                .{ .name = "SubgroupVoteKHR", .value = 4431, .parameters = &.{} },
+                .{ .name = "StorageBuffer16BitAccess", .value = 4433, .parameters = &.{} },
+                .{ .name = "UniformAndStorageBuffer16BitAccess", .value = 4434, .parameters = &.{} },
+                .{ .name = "StoragePushConstant16", .value = 4435, .parameters = &.{} },
+                .{ .name = "StorageInputOutput16", .value = 4436, .parameters = &.{} },
+                .{ .name = "DeviceGroup", .value = 4437, .parameters = &.{} },
+                .{ .name = "MultiView", .value = 4439, .parameters = &.{} },
+                .{ .name = "VariablePointersStorageBuffer", .value = 4441, .parameters = &.{} },
+                .{ .name = "VariablePointers", .value = 4442, .parameters = &.{} },
+                .{ .name = "AtomicStorageOps", .value = 4445, .parameters = &.{} },
+                .{ .name = "SampleMaskPostDepthCoverage", .value = 4447, .parameters = &.{} },
+                .{ .name = "StorageBuffer8BitAccess", .value = 4448, .parameters = &.{} },
+                .{ .name = "UniformAndStorageBuffer8BitAccess", .value = 4449, .parameters = &.{} },
+                .{ .name = "StoragePushConstant8", .value = 4450, .parameters = &.{} },
+                .{ .name = "DenormPreserve", .value = 4464, .parameters = &.{} },
+                .{ .name = "DenormFlushToZero", .value = 4465, .parameters = &.{} },
+                .{ .name = "SignedZeroInfNanPreserve", .value = 4466, .parameters = &.{} },
+                .{ .name = "RoundingModeRTE", .value = 4467, .parameters = &.{} },
+                .{ .name = "RoundingModeRTZ", .value = 4468, .parameters = &.{} },
+                .{ .name = "RayQueryProvisionalKHR", .value = 4471, .parameters = &.{} },
+                .{ .name = "RayQueryKHR", .value = 4472, .parameters = &.{} },
+                .{ .name = "UntypedPointersKHR", .value = 4473, .parameters = &.{} },
+                .{ .name = "RayTraversalPrimitiveCullingKHR", .value = 4478, .parameters = &.{} },
+                .{ .name = "RayTracingKHR", .value = 4479, .parameters = &.{} },
+                .{ .name = "TextureSampleWeightedQCOM", .value = 4484, .parameters = &.{} },
+                .{ .name = "TextureBoxFilterQCOM", .value = 4485, .parameters = &.{} },
+                .{ .name = "TextureBlockMatchQCOM", .value = 4486, .parameters = &.{} },
+                .{ .name = "TileShadingQCOM", .value = 4495, .parameters = &.{} },
+                .{ .name = "TextureBlockMatch2QCOM", .value = 4498, .parameters = &.{} },
+                .{ .name = "Float16ImageAMD", .value = 5008, .parameters = &.{} },
+                .{ .name = "ImageGatherBiasLodAMD", .value = 5009, .parameters = &.{} },
+                .{ .name = "FragmentMaskAMD", .value = 5010, .parameters = &.{} },
+                .{ .name = "StencilExportEXT", .value = 5013, .parameters = &.{} },
+                .{ .name = "ImageReadWriteLodAMD", .value = 5015, .parameters = &.{} },
+                .{ .name = "Int64ImageEXT", .value = 5016, .parameters = &.{} },
+                .{ .name = "ShaderClockKHR", .value = 5055, .parameters = &.{} },
+                .{ .name = "ShaderEnqueueAMDX", .value = 5067, .parameters = &.{} },
+                .{ .name = "QuadControlKHR", .value = 5087, .parameters = &.{} },
+                .{ .name = "Int4TypeINTEL", .value = 5112, .parameters = &.{} },
+                .{ .name = "Int4CooperativeMatrixINTEL", .value = 5114, .parameters = &.{} },
+                .{ .name = "BFloat16TypeKHR", .value = 5116, .parameters = &.{} },
+                .{ .name = "BFloat16DotProductKHR", .value = 5117, .parameters = &.{} },
+                .{ .name = "BFloat16CooperativeMatrixKHR", .value = 5118, .parameters = &.{} },
+                .{ .name = "SampleMaskOverrideCoverageNV", .value = 5249, .parameters = &.{} },
+                .{ .name = "GeometryShaderPassthroughNV", .value = 5251, .parameters = &.{} },
+                .{ .name = "ShaderViewportIndexLayerEXT", .value = 5254, .parameters = &.{} },
+                .{ .name = "ShaderViewportMaskNV", .value = 5255, .parameters = &.{} },
+                .{ .name = "ShaderStereoViewNV", .value = 5259, .parameters = &.{} },
+                .{ .name = "PerViewAttributesNV", .value = 5260, .parameters = &.{} },
+                .{ .name = "FragmentFullyCoveredEXT", .value = 5265, .parameters = &.{} },
+                .{ .name = "MeshShadingNV", .value = 5266, .parameters = &.{} },
+                .{ .name = "ImageFootprintNV", .value = 5282, .parameters = &.{} },
+                .{ .name = "MeshShadingEXT", .value = 5283, .parameters = &.{} },
+                .{ .name = "FragmentBarycentricKHR", .value = 5284, .parameters = &.{} },
+                .{ .name = "ComputeDerivativeGroupQuadsKHR", .value = 5288, .parameters = &.{} },
+                .{ .name = "FragmentDensityEXT", .value = 5291, .parameters = &.{} },
+                .{ .name = "GroupNonUniformPartitionedNV", .value = 5297, .parameters = &.{} },
+                .{ .name = "ShaderNonUniform", .value = 5301, .parameters = &.{} },
+                .{ .name = "RuntimeDescriptorArray", .value = 5302, .parameters = &.{} },
+                .{ .name = "InputAttachmentArrayDynamicIndexing", .value = 5303, .parameters = &.{} },
+                .{ .name = "UniformTexelBufferArrayDynamicIndexing", .value = 5304, .parameters = &.{} },
+                .{ .name = "StorageTexelBufferArrayDynamicIndexing", .value = 5305, .parameters = &.{} },
+                .{ .name = "UniformBufferArrayNonUniformIndexing", .value = 5306, .parameters = &.{} },
+                .{ .name = "SampledImageArrayNonUniformIndexing", .value = 5307, .parameters = &.{} },
+                .{ .name = "StorageBufferArrayNonUniformIndexing", .value = 5308, .parameters = &.{} },
+                .{ .name = "StorageImageArrayNonUniformIndexing", .value = 5309, .parameters = &.{} },
+                .{ .name = "InputAttachmentArrayNonUniformIndexing", .value = 5310, .parameters = &.{} },
+                .{ .name = "UniformTexelBufferArrayNonUniformIndexing", .value = 5311, .parameters = &.{} },
+                .{ .name = "StorageTexelBufferArrayNonUniformIndexing", .value = 5312, .parameters = &.{} },
+                .{ .name = "RayTracingPositionFetchKHR", .value = 5336, .parameters = &.{} },
+                .{ .name = "RayTracingNV", .value = 5340, .parameters = &.{} },
+                .{ .name = "RayTracingMotionBlurNV", .value = 5341, .parameters = &.{} },
+                .{ .name = "VulkanMemoryModel", .value = 5345, .parameters = &.{} },
+                .{ .name = "VulkanMemoryModelDeviceScope", .value = 5346, .parameters = &.{} },
+                .{ .name = "PhysicalStorageBufferAddresses", .value = 5347, .parameters = &.{} },
+                .{ .name = "ComputeDerivativeGroupLinearKHR", .value = 5350, .parameters = &.{} },
+                .{ .name = "RayTracingProvisionalKHR", .value = 5353, .parameters = &.{} },
+                .{ .name = "CooperativeMatrixNV", .value = 5357, .parameters = &.{} },
+                .{ .name = "FragmentShaderSampleInterlockEXT", .value = 5363, .parameters = &.{} },
+                .{ .name = "FragmentShaderShadingRateInterlockEXT", .value = 5372, .parameters = &.{} },
+                .{ .name = "ShaderSMBuiltinsNV", .value = 5373, .parameters = &.{} },
+                .{ .name = "FragmentShaderPixelInterlockEXT", .value = 5378, .parameters = &.{} },
+                .{ .name = "DemoteToHelperInvocation", .value = 5379, .parameters = &.{} },
+                .{ .name = "DisplacementMicromapNV", .value = 5380, .parameters = &.{} },
+                .{ .name = "RayTracingOpacityMicromapEXT", .value = 5381, .parameters = &.{} },
+                .{ .name = "ShaderInvocationReorderNV", .value = 5383, .parameters = &.{} },
+                .{ .name = "BindlessTextureNV", .value = 5390, .parameters = &.{} },
+                .{ .name = "RayQueryPositionFetchKHR", .value = 5391, .parameters = &.{} },
+                .{ .name = "CooperativeVectorNV", .value = 5394, .parameters = &.{} },
+                .{ .name = "AtomicFloat16VectorNV", .value = 5404, .parameters = &.{} },
+                .{ .name = "RayTracingDisplacementMicromapNV", .value = 5409, .parameters = &.{} },
+                .{ .name = "RawAccessChainsNV", .value = 5414, .parameters = &.{} },
+                .{ .name = "RayTracingSpheresGeometryNV", .value = 5418, .parameters = &.{} },
+                .{ .name = "RayTracingLinearSweptSpheresGeometryNV", .value = 5419, .parameters = &.{} },
+                .{ .name = "CooperativeMatrixReductionsNV", .value = 5430, .parameters = &.{} },
+                .{ .name = "CooperativeMatrixConversionsNV", .value = 5431, .parameters = &.{} },
+                .{ .name = "CooperativeMatrixPerElementOperationsNV", .value = 5432, .parameters = &.{} },
+                .{ .name = "CooperativeMatrixTensorAddressingNV", .value = 5433, .parameters = &.{} },
+                .{ .name = "CooperativeMatrixBlockLoadsNV", .value = 5434, .parameters = &.{} },
+                .{ .name = "CooperativeVectorTrainingNV", .value = 5435, .parameters = &.{} },
+                .{ .name = "RayTracingClusterAccelerationStructureNV", .value = 5437, .parameters = &.{} },
+                .{ .name = "TensorAddressingNV", .value = 5439, .parameters = &.{} },
+                .{ .name = "SubgroupShuffleINTEL", .value = 5568, .parameters = &.{} },
+                .{ .name = "SubgroupBufferBlockIOINTEL", .value = 5569, .parameters = &.{} },
+                .{ .name = "SubgroupImageBlockIOINTEL", .value = 5570, .parameters = &.{} },
+                .{ .name = "SubgroupImageMediaBlockIOINTEL", .value = 5579, .parameters = &.{} },
+                .{ .name = "RoundToInfinityINTEL", .value = 5582, .parameters = &.{} },
+                .{ .name = "FloatingPointModeINTEL", .value = 5583, .parameters = &.{} },
+                .{ .name = "IntegerFunctions2INTEL", .value = 5584, .parameters = &.{} },
+                .{ .name = "FunctionPointersINTEL", .value = 5603, .parameters = &.{} },
+                .{ .name = "IndirectReferencesINTEL", .value = 5604, .parameters = &.{} },
+                .{ .name = "AsmINTEL", .value = 5606, .parameters = &.{} },
+                .{ .name = "AtomicFloat32MinMaxEXT", .value = 5612, .parameters = &.{} },
+                .{ .name = "AtomicFloat64MinMaxEXT", .value = 5613, .parameters = &.{} },
+                .{ .name = "AtomicFloat16MinMaxEXT", .value = 5616, .parameters = &.{} },
+                .{ .name = "VectorComputeINTEL", .value = 5617, .parameters = &.{} },
+                .{ .name = "VectorAnyINTEL", .value = 5619, .parameters = &.{} },
+                .{ .name = "ExpectAssumeKHR", .value = 5629, .parameters = &.{} },
+                .{ .name = "SubgroupAvcMotionEstimationINTEL", .value = 5696, .parameters = &.{} },
+                .{ .name = "SubgroupAvcMotionEstimationIntraINTEL", .value = 5697, .parameters = &.{} },
+                .{ .name = "SubgroupAvcMotionEstimationChromaINTEL", .value = 5698, .parameters = &.{} },
+                .{ .name = "VariableLengthArrayINTEL", .value = 5817, .parameters = &.{} },
+                .{ .name = "FunctionFloatControlINTEL", .value = 5821, .parameters = &.{} },
+                .{ .name = "FPGAMemoryAttributesINTEL", .value = 5824, .parameters = &.{} },
+                .{ .name = "FPFastMathModeINTEL", .value = 5837, .parameters = &.{} },
+                .{ .name = "ArbitraryPrecisionIntegersINTEL", .value = 5844, .parameters = &.{} },
+                .{ .name = "ArbitraryPrecisionFloatingPointINTEL", .value = 5845, .parameters = &.{} },
+                .{ .name = "UnstructuredLoopControlsINTEL", .value = 5886, .parameters = &.{} },
+                .{ .name = "FPGALoopControlsINTEL", .value = 5888, .parameters = &.{} },
+                .{ .name = "KernelAttributesINTEL", .value = 5892, .parameters = &.{} },
+                .{ .name = "FPGAKernelAttributesINTEL", .value = 5897, .parameters = &.{} },
+                .{ .name = "FPGAMemoryAccessesINTEL", .value = 5898, .parameters = &.{} },
+                .{ .name = "FPGAClusterAttributesINTEL", .value = 5904, .parameters = &.{} },
+                .{ .name = "LoopFuseINTEL", .value = 5906, .parameters = &.{} },
+                .{ .name = "FPGADSPControlINTEL", .value = 5908, .parameters = &.{} },
+                .{ .name = "MemoryAccessAliasingINTEL", .value = 5910, .parameters = &.{} },
+                .{ .name = "FPGAInvocationPipeliningAttributesINTEL", .value = 5916, .parameters = &.{} },
+                .{ .name = "FPGABufferLocationINTEL", .value = 5920, .parameters = &.{} },
+                .{ .name = "ArbitraryPrecisionFixedPointINTEL", .value = 5922, .parameters = &.{} },
+                .{ .name = "USMStorageClassesINTEL", .value = 5935, .parameters = &.{} },
+                .{ .name = "RuntimeAlignedAttributeINTEL", .value = 5939, .parameters = &.{} },
+                .{ .name = "IOPipesINTEL", .value = 5943, .parameters = &.{} },
+                .{ .name = "BlockingPipesINTEL", .value = 5945, .parameters = &.{} },
+                .{ .name = "FPGARegINTEL", .value = 5948, .parameters = &.{} },
+                .{ .name = "DotProductInputAll", .value = 6016, .parameters = &.{} },
+                .{ .name = "DotProductInput4x8Bit", .value = 6017, .parameters = &.{} },
+                .{ .name = "DotProductInput4x8BitPacked", .value = 6018, .parameters = &.{} },
+                .{ .name = "DotProduct", .value = 6019, .parameters = &.{} },
+                .{ .name = "RayCullMaskKHR", .value = 6020, .parameters = &.{} },
+                .{ .name = "CooperativeMatrixKHR", .value = 6022, .parameters = &.{} },
+                .{ .name = "ReplicatedCompositesEXT", .value = 6024, .parameters = &.{} },
+                .{ .name = "BitInstructions", .value = 6025, .parameters = &.{} },
+                .{ .name = "GroupNonUniformRotateKHR", .value = 6026, .parameters = &.{} },
+                .{ .name = "FloatControls2", .value = 6029, .parameters = &.{} },
+                .{ .name = "AtomicFloat32AddEXT", .value = 6033, .parameters = &.{} },
+                .{ .name = "AtomicFloat64AddEXT", .value = 6034, .parameters = &.{} },
+                .{ .name = "LongCompositesINTEL", .value = 6089, .parameters = &.{} },
+                .{ .name = "OptNoneEXT", .value = 6094, .parameters = &.{} },
+                .{ .name = "AtomicFloat16AddEXT", .value = 6095, .parameters = &.{} },
+                .{ .name = "DebugInfoModuleINTEL", .value = 6114, .parameters = &.{} },
+                .{ .name = "BFloat16ConversionINTEL", .value = 6115, .parameters = &.{} },
+                .{ .name = "SplitBarrierINTEL", .value = 6141, .parameters = &.{} },
+                .{ .name = "ArithmeticFenceEXT", .value = 6144, .parameters = &.{} },
+                .{ .name = "FPGAClusterAttributesV2INTEL", .value = 6150, .parameters = &.{} },
+                .{ .name = "FPGAKernelAttributesv2INTEL", .value = 6161, .parameters = &.{} },
+                .{ .name = "TaskSequenceINTEL", .value = 6162, .parameters = &.{} },
+                .{ .name = "FPMaxErrorINTEL", .value = 6169, .parameters = &.{} },
+                .{ .name = "FPGALatencyControlINTEL", .value = 6171, .parameters = &.{} },
+                .{ .name = "FPGAArgumentInterfacesINTEL", .value = 6174, .parameters = &.{} },
+                .{ .name = "GlobalVariableHostAccessINTEL", .value = 6187, .parameters = &.{} },
+                .{ .name = "GlobalVariableFPGADecorationsINTEL", .value = 6189, .parameters = &.{} },
+                .{ .name = "SubgroupBufferPrefetchINTEL", .value = 6220, .parameters = &.{} },
+                .{ .name = "Subgroup2DBlockIOINTEL", .value = 6228, .parameters = &.{} },
+                .{ .name = "Subgroup2DBlockTransformINTEL", .value = 6229, .parameters = &.{} },
+                .{ .name = "Subgroup2DBlockTransposeINTEL", .value = 6230, .parameters = &.{} },
+                .{ .name = "SubgroupMatrixMultiplyAccumulateINTEL", .value = 6236, .parameters = &.{} },
+                .{ .name = "TernaryBitwiseFunctionINTEL", .value = 6241, .parameters = &.{} },
+                .{ .name = "GroupUniformArithmeticKHR", .value = 6400, .parameters = &.{} },
+                .{ .name = "TensorFloat32RoundingINTEL", .value = 6425, .parameters = &.{} },
+                .{ .name = "MaskedGatherScatterINTEL", .value = 6427, .parameters = &.{} },
+                .{ .name = "CacheControlsINTEL", .value = 6441, .parameters = &.{} },
+                .{ .name = "RegisterLimitsINTEL", .value = 6460, .parameters = &.{} },
+                .{ .name = "BindlessImagesINTEL", .value = 6528, .parameters = &.{} },
             },
-            .Decoration => &[_]Enumerant{
-                .{ .name = "RelaxedPrecision", .value = 0, .parameters = &[_]OperandKind{} },
-                .{ .name = "SpecId", .value = 1, .parameters = &[_]OperandKind{.LiteralInteger} },
-                .{ .name = "Block", .value = 2, .parameters = &[_]OperandKind{} },
-                .{ .name = "BufferBlock", .value = 3, .parameters = &[_]OperandKind{} },
-                .{ .name = "RowMajor", .value = 4, .parameters = &[_]OperandKind{} },
-                .{ .name = "ColMajor", .value = 5, .parameters = &[_]OperandKind{} },
-                .{ .name = "ArrayStride", .value = 6, .parameters = &[_]OperandKind{.LiteralInteger} },
-                .{ .name = "MatrixStride", .value = 7, .parameters = &[_]OperandKind{.LiteralInteger} },
-                .{ .name = "GLSLShared", .value = 8, .parameters = &[_]OperandKind{} },
-                .{ .name = "GLSLPacked", .value = 9, .parameters = &[_]OperandKind{} },
-                .{ .name = "CPacked", .value = 10, .parameters = &[_]OperandKind{} },
-                .{ .name = "BuiltIn", .value = 11, .parameters = &[_]OperandKind{.BuiltIn} },
-                .{ .name = "NoPerspective", .value = 13, .parameters = &[_]OperandKind{} },
-                .{ .name = "Flat", .value = 14, .parameters = &[_]OperandKind{} },
-                .{ .name = "Patch", .value = 15, .parameters = &[_]OperandKind{} },
-                .{ .name = "Centroid", .value = 16, .parameters = &[_]OperandKind{} },
-                .{ .name = "Sample", .value = 17, .parameters = &[_]OperandKind{} },
-                .{ .name = "Invariant", .value = 18, .parameters = &[_]OperandKind{} },
-                .{ .name = "Restrict", .value = 19, .parameters = &[_]OperandKind{} },
-                .{ .name = "Aliased", .value = 20, .parameters = &[_]OperandKind{} },
-                .{ .name = "Volatile", .value = 21, .parameters = &[_]OperandKind{} },
-                .{ .name = "Constant", .value = 22, .parameters = &[_]OperandKind{} },
-                .{ .name = "Coherent", .value = 23, .parameters = &[_]OperandKind{} },
-                .{ .name = "NonWritable", .value = 24, .parameters = &[_]OperandKind{} },
-                .{ .name = "NonReadable", .value = 25, .parameters = &[_]OperandKind{} },
-                .{ .name = "Uniform", .value = 26, .parameters = &[_]OperandKind{} },
-                .{ .name = "UniformId", .value = 27, .parameters = &[_]OperandKind{.IdScope} },
-                .{ .name = "SaturatedConversion", .value = 28, .parameters = &[_]OperandKind{} },
-                .{ .name = "Stream", .value = 29, .parameters = &[_]OperandKind{.LiteralInteger} },
-                .{ .name = "Location", .value = 30, .parameters = &[_]OperandKind{.LiteralInteger} },
-                .{ .name = "Component", .value = 31, .parameters = &[_]OperandKind{.LiteralInteger} },
-                .{ .name = "Index", .value = 32, .parameters = &[_]OperandKind{.LiteralInteger} },
-                .{ .name = "Binding", .value = 33, .parameters = &[_]OperandKind{.LiteralInteger} },
-                .{ .name = "DescriptorSet", .value = 34, .parameters = &[_]OperandKind{.LiteralInteger} },
-                .{ .name = "Offset", .value = 35, .parameters = &[_]OperandKind{.LiteralInteger} },
-                .{ .name = "XfbBuffer", .value = 36, .parameters = &[_]OperandKind{.LiteralInteger} },
-                .{ .name = "XfbStride", .value = 37, .parameters = &[_]OperandKind{.LiteralInteger} },
-                .{ .name = "FuncParamAttr", .value = 38, .parameters = &[_]OperandKind{.FunctionParameterAttribute} },
-                .{ .name = "FPRoundingMode", .value = 39, .parameters = &[_]OperandKind{.FPRoundingMode} },
-                .{ .name = "FPFastMathMode", .value = 40, .parameters = &[_]OperandKind{.FPFastMathMode} },
-                .{ .name = "LinkageAttributes", .value = 41, .parameters = &[_]OperandKind{ .LiteralString, .LinkageType } },
-                .{ .name = "NoContraction", .value = 42, .parameters = &[_]OperandKind{} },
-                .{ .name = "InputAttachmentIndex", .value = 43, .parameters = &[_]OperandKind{.LiteralInteger} },
-                .{ .name = "Alignment", .value = 44, .parameters = &[_]OperandKind{.LiteralInteger} },
-                .{ .name = "MaxByteOffset", .value = 45, .parameters = &[_]OperandKind{.LiteralInteger} },
-                .{ .name = "AlignmentId", .value = 46, .parameters = &[_]OperandKind{.IdRef} },
-                .{ .name = "MaxByteOffsetId", .value = 47, .parameters = &[_]OperandKind{.IdRef} },
-                .{ .name = "NoSignedWrap", .value = 4469, .parameters = &[_]OperandKind{} },
-                .{ .name = "NoUnsignedWrap", .value = 4470, .parameters = &[_]OperandKind{} },
-                .{ .name = "WeightTextureQCOM", .value = 4487, .parameters = &[_]OperandKind{} },
-                .{ .name = "BlockMatchTextureQCOM", .value = 4488, .parameters = &[_]OperandKind{} },
-                .{ .name = "BlockMatchSamplerQCOM", .value = 4499, .parameters = &[_]OperandKind{} },
-                .{ .name = "ExplicitInterpAMD", .value = 4999, .parameters = &[_]OperandKind{} },
-                .{ .name = "NodeSharesPayloadLimitsWithAMDX", .value = 5019, .parameters = &[_]OperandKind{.IdRef} },
-                .{ .name = "NodeMaxPayloadsAMDX", .value = 5020, .parameters = &[_]OperandKind{.IdRef} },
-                .{ .name = "TrackFinishWritingAMDX", .value = 5078, .parameters = &[_]OperandKind{} },
-                .{ .name = "PayloadNodeNameAMDX", .value = 5091, .parameters = &[_]OperandKind{.LiteralString} },
-                .{ .name = "OverrideCoverageNV", .value = 5248, .parameters = &[_]OperandKind{} },
-                .{ .name = "PassthroughNV", .value = 5250, .parameters = &[_]OperandKind{} },
-                .{ .name = "ViewportRelativeNV", .value = 5252, .parameters = &[_]OperandKind{} },
-                .{ .name = "SecondaryViewportRelativeNV", .value = 5256, .parameters = &[_]OperandKind{.LiteralInteger} },
-                .{ .name = "PerPrimitiveNV", .value = 5271, .parameters = &[_]OperandKind{} },
-                .{ .name = "PerPrimitiveEXT", .value = 5271, .parameters = &[_]OperandKind{} },
-                .{ .name = "PerViewNV", .value = 5272, .parameters = &[_]OperandKind{} },
-                .{ .name = "PerTaskNV", .value = 5273, .parameters = &[_]OperandKind{} },
-                .{ .name = "PerVertexKHR", .value = 5285, .parameters = &[_]OperandKind{} },
-                .{ .name = "PerVertexNV", .value = 5285, .parameters = &[_]OperandKind{} },
-                .{ .name = "NonUniform", .value = 5300, .parameters = &[_]OperandKind{} },
-                .{ .name = "NonUniformEXT", .value = 5300, .parameters = &[_]OperandKind{} },
-                .{ .name = "RestrictPointer", .value = 5355, .parameters = &[_]OperandKind{} },
-                .{ .name = "RestrictPointerEXT", .value = 5355, .parameters = &[_]OperandKind{} },
-                .{ .name = "AliasedPointer", .value = 5356, .parameters = &[_]OperandKind{} },
-                .{ .name = "AliasedPointerEXT", .value = 5356, .parameters = &[_]OperandKind{} },
-                .{ .name = "HitObjectShaderRecordBufferNV", .value = 5386, .parameters = &[_]OperandKind{} },
-                .{ .name = "BindlessSamplerNV", .value = 5398, .parameters = &[_]OperandKind{} },
-                .{ .name = "BindlessImageNV", .value = 5399, .parameters = &[_]OperandKind{} },
-                .{ .name = "BoundSamplerNV", .value = 5400, .parameters = &[_]OperandKind{} },
-                .{ .name = "BoundImageNV", .value = 5401, .parameters = &[_]OperandKind{} },
-                .{ .name = "SIMTCallINTEL", .value = 5599, .parameters = &[_]OperandKind{.LiteralInteger} },
-                .{ .name = "ReferencedIndirectlyINTEL", .value = 5602, .parameters = &[_]OperandKind{} },
-                .{ .name = "ClobberINTEL", .value = 5607, .parameters = &[_]OperandKind{.LiteralString} },
-                .{ .name = "SideEffectsINTEL", .value = 5608, .parameters = &[_]OperandKind{} },
-                .{ .name = "VectorComputeVariableINTEL", .value = 5624, .parameters = &[_]OperandKind{} },
-                .{ .name = "FuncParamIOKindINTEL", .value = 5625, .parameters = &[_]OperandKind{.LiteralInteger} },
-                .{ .name = "VectorComputeFunctionINTEL", .value = 5626, .parameters = &[_]OperandKind{} },
-                .{ .name = "StackCallINTEL", .value = 5627, .parameters = &[_]OperandKind{} },
-                .{ .name = "GlobalVariableOffsetINTEL", .value = 5628, .parameters = &[_]OperandKind{.LiteralInteger} },
-                .{ .name = "CounterBuffer", .value = 5634, .parameters = &[_]OperandKind{.IdRef} },
-                .{ .name = "HlslCounterBufferGOOGLE", .value = 5634, .parameters = &[_]OperandKind{.IdRef} },
-                .{ .name = "UserSemantic", .value = 5635, .parameters = &[_]OperandKind{.LiteralString} },
-                .{ .name = "HlslSemanticGOOGLE", .value = 5635, .parameters = &[_]OperandKind{.LiteralString} },
-                .{ .name = "UserTypeGOOGLE", .value = 5636, .parameters = &[_]OperandKind{.LiteralString} },
-                .{ .name = "FunctionRoundingModeINTEL", .value = 5822, .parameters = &[_]OperandKind{ .LiteralInteger, .FPRoundingMode } },
-                .{ .name = "FunctionDenormModeINTEL", .value = 5823, .parameters = &[_]OperandKind{ .LiteralInteger, .FPDenormMode } },
-                .{ .name = "RegisterINTEL", .value = 5825, .parameters = &[_]OperandKind{} },
-                .{ .name = "MemoryINTEL", .value = 5826, .parameters = &[_]OperandKind{.LiteralString} },
-                .{ .name = "NumbanksINTEL", .value = 5827, .parameters = &[_]OperandKind{.LiteralInteger} },
-                .{ .name = "BankwidthINTEL", .value = 5828, .parameters = &[_]OperandKind{.LiteralInteger} },
-                .{ .name = "MaxPrivateCopiesINTEL", .value = 5829, .parameters = &[_]OperandKind{.LiteralInteger} },
-                .{ .name = "SinglepumpINTEL", .value = 5830, .parameters = &[_]OperandKind{} },
-                .{ .name = "DoublepumpINTEL", .value = 5831, .parameters = &[_]OperandKind{} },
-                .{ .name = "MaxReplicatesINTEL", .value = 5832, .parameters = &[_]OperandKind{.LiteralInteger} },
-                .{ .name = "SimpleDualPortINTEL", .value = 5833, .parameters = &[_]OperandKind{} },
-                .{ .name = "MergeINTEL", .value = 5834, .parameters = &[_]OperandKind{ .LiteralString, .LiteralString } },
-                .{ .name = "BankBitsINTEL", .value = 5835, .parameters = &[_]OperandKind{.LiteralInteger} },
-                .{ .name = "ForcePow2DepthINTEL", .value = 5836, .parameters = &[_]OperandKind{.LiteralInteger} },
-                .{ .name = "StridesizeINTEL", .value = 5883, .parameters = &[_]OperandKind{.LiteralInteger} },
-                .{ .name = "WordsizeINTEL", .value = 5884, .parameters = &[_]OperandKind{.LiteralInteger} },
-                .{ .name = "TrueDualPortINTEL", .value = 5885, .parameters = &[_]OperandKind{} },
-                .{ .name = "BurstCoalesceINTEL", .value = 5899, .parameters = &[_]OperandKind{} },
-                .{ .name = "CacheSizeINTEL", .value = 5900, .parameters = &[_]OperandKind{.LiteralInteger} },
-                .{ .name = "DontStaticallyCoalesceINTEL", .value = 5901, .parameters = &[_]OperandKind{} },
-                .{ .name = "PrefetchINTEL", .value = 5902, .parameters = &[_]OperandKind{.LiteralInteger} },
-                .{ .name = "StallEnableINTEL", .value = 5905, .parameters = &[_]OperandKind{} },
-                .{ .name = "FuseLoopsInFunctionINTEL", .value = 5907, .parameters = &[_]OperandKind{} },
-                .{ .name = "MathOpDSPModeINTEL", .value = 5909, .parameters = &[_]OperandKind{ .LiteralInteger, .LiteralInteger } },
-                .{ .name = "AliasScopeINTEL", .value = 5914, .parameters = &[_]OperandKind{.IdRef} },
-                .{ .name = "NoAliasINTEL", .value = 5915, .parameters = &[_]OperandKind{.IdRef} },
-                .{ .name = "InitiationIntervalINTEL", .value = 5917, .parameters = &[_]OperandKind{.LiteralInteger} },
-                .{ .name = "MaxConcurrencyINTEL", .value = 5918, .parameters = &[_]OperandKind{.LiteralInteger} },
-                .{ .name = "PipelineEnableINTEL", .value = 5919, .parameters = &[_]OperandKind{.LiteralInteger} },
-                .{ .name = "BufferLocationINTEL", .value = 5921, .parameters = &[_]OperandKind{.LiteralInteger} },
-                .{ .name = "IOPipeStorageINTEL", .value = 5944, .parameters = &[_]OperandKind{.LiteralInteger} },
-                .{ .name = "FunctionFloatingPointModeINTEL", .value = 6080, .parameters = &[_]OperandKind{ .LiteralInteger, .FPOperationMode } },
-                .{ .name = "SingleElementVectorINTEL", .value = 6085, .parameters = &[_]OperandKind{} },
-                .{ .name = "VectorComputeCallableFunctionINTEL", .value = 6087, .parameters = &[_]OperandKind{} },
-                .{ .name = "MediaBlockIOINTEL", .value = 6140, .parameters = &[_]OperandKind{} },
-                .{ .name = "StallFreeINTEL", .value = 6151, .parameters = &[_]OperandKind{} },
-                .{ .name = "FPMaxErrorDecorationINTEL", .value = 6170, .parameters = &[_]OperandKind{.LiteralFloat} },
-                .{ .name = "LatencyControlLabelINTEL", .value = 6172, .parameters = &[_]OperandKind{.LiteralInteger} },
-                .{ .name = "LatencyControlConstraintINTEL", .value = 6173, .parameters = &[_]OperandKind{ .LiteralInteger, .LiteralInteger, .LiteralInteger } },
-                .{ .name = "ConduitKernelArgumentINTEL", .value = 6175, .parameters = &[_]OperandKind{} },
-                .{ .name = "RegisterMapKernelArgumentINTEL", .value = 6176, .parameters = &[_]OperandKind{} },
-                .{ .name = "MMHostInterfaceAddressWidthINTEL", .value = 6177, .parameters = &[_]OperandKind{.LiteralInteger} },
-                .{ .name = "MMHostInterfaceDataWidthINTEL", .value = 6178, .parameters = &[_]OperandKind{.LiteralInteger} },
-                .{ .name = "MMHostInterfaceLatencyINTEL", .value = 6179, .parameters = &[_]OperandKind{.LiteralInteger} },
-                .{ .name = "MMHostInterfaceReadWriteModeINTEL", .value = 6180, .parameters = &[_]OperandKind{.AccessQualifier} },
-                .{ .name = "MMHostInterfaceMaxBurstINTEL", .value = 6181, .parameters = &[_]OperandKind{.LiteralInteger} },
-                .{ .name = "MMHostInterfaceWaitRequestINTEL", .value = 6182, .parameters = &[_]OperandKind{.LiteralInteger} },
-                .{ .name = "StableKernelArgumentINTEL", .value = 6183, .parameters = &[_]OperandKind{} },
-                .{ .name = "HostAccessINTEL", .value = 6188, .parameters = &[_]OperandKind{ .HostAccessQualifier, .LiteralString } },
-                .{ .name = "InitModeINTEL", .value = 6190, .parameters = &[_]OperandKind{.InitializationModeQualifier} },
-                .{ .name = "ImplementInRegisterMapINTEL", .value = 6191, .parameters = &[_]OperandKind{.LiteralInteger} },
-                .{ .name = "CacheControlLoadINTEL", .value = 6442, .parameters = &[_]OperandKind{ .LiteralInteger, .LoadCacheControl } },
-                .{ .name = "CacheControlStoreINTEL", .value = 6443, .parameters = &[_]OperandKind{ .LiteralInteger, .StoreCacheControl } },
+            .ray_query_intersection => &.{
+                .{ .name = "RayQueryCandidateIntersectionKHR", .value = 0, .parameters = &.{} },
+                .{ .name = "RayQueryCommittedIntersectionKHR", .value = 1, .parameters = &.{} },
             },
-            .BuiltIn => &[_]Enumerant{
-                .{ .name = "Position", .value = 0, .parameters = &[_]OperandKind{} },
-                .{ .name = "PointSize", .value = 1, .parameters = &[_]OperandKind{} },
-                .{ .name = "ClipDistance", .value = 3, .parameters = &[_]OperandKind{} },
-                .{ .name = "CullDistance", .value = 4, .parameters = &[_]OperandKind{} },
-                .{ .name = "VertexId", .value = 5, .parameters = &[_]OperandKind{} },
-                .{ .name = "InstanceId", .value = 6, .parameters = &[_]OperandKind{} },
-                .{ .name = "PrimitiveId", .value = 7, .parameters = &[_]OperandKind{} },
-                .{ .name = "InvocationId", .value = 8, .parameters = &[_]OperandKind{} },
-                .{ .name = "Layer", .value = 9, .parameters = &[_]OperandKind{} },
-                .{ .name = "ViewportIndex", .value = 10, .parameters = &[_]OperandKind{} },
-                .{ .name = "TessLevelOuter", .value = 11, .parameters = &[_]OperandKind{} },
-                .{ .name = "TessLevelInner", .value = 12, .parameters = &[_]OperandKind{} },
-                .{ .name = "TessCoord", .value = 13, .parameters = &[_]OperandKind{} },
-                .{ .name = "PatchVertices", .value = 14, .parameters = &[_]OperandKind{} },
-                .{ .name = "FragCoord", .value = 15, .parameters = &[_]OperandKind{} },
-                .{ .name = "PointCoord", .value = 16, .parameters = &[_]OperandKind{} },
-                .{ .name = "FrontFacing", .value = 17, .parameters = &[_]OperandKind{} },
-                .{ .name = "SampleId", .value = 18, .parameters = &[_]OperandKind{} },
-                .{ .name = "SamplePosition", .value = 19, .parameters = &[_]OperandKind{} },
-                .{ .name = "SampleMask", .value = 20, .parameters = &[_]OperandKind{} },
-                .{ .name = "FragDepth", .value = 22, .parameters = &[_]OperandKind{} },
-                .{ .name = "HelperInvocation", .value = 23, .parameters = &[_]OperandKind{} },
-                .{ .name = "NumWorkgroups", .value = 24, .parameters = &[_]OperandKind{} },
-                .{ .name = "WorkgroupSize", .value = 25, .parameters = &[_]OperandKind{} },
-                .{ .name = "WorkgroupId", .value = 26, .parameters = &[_]OperandKind{} },
-                .{ .name = "LocalInvocationId", .value = 27, .parameters = &[_]OperandKind{} },
-                .{ .name = "GlobalInvocationId", .value = 28, .parameters = &[_]OperandKind{} },
-                .{ .name = "LocalInvocationIndex", .value = 29, .parameters = &[_]OperandKind{} },
-                .{ .name = "WorkDim", .value = 30, .parameters = &[_]OperandKind{} },
-                .{ .name = "GlobalSize", .value = 31, .parameters = &[_]OperandKind{} },
-                .{ .name = "EnqueuedWorkgroupSize", .value = 32, .parameters = &[_]OperandKind{} },
-                .{ .name = "GlobalOffset", .value = 33, .parameters = &[_]OperandKind{} },
-                .{ .name = "GlobalLinearId", .value = 34, .parameters = &[_]OperandKind{} },
-                .{ .name = "SubgroupSize", .value = 36, .parameters = &[_]OperandKind{} },
-                .{ .name = "SubgroupMaxSize", .value = 37, .parameters = &[_]OperandKind{} },
-                .{ .name = "NumSubgroups", .value = 38, .parameters = &[_]OperandKind{} },
-                .{ .name = "NumEnqueuedSubgroups", .value = 39, .parameters = &[_]OperandKind{} },
-                .{ .name = "SubgroupId", .value = 40, .parameters = &[_]OperandKind{} },
-                .{ .name = "SubgroupLocalInvocationId", .value = 41, .parameters = &[_]OperandKind{} },
-                .{ .name = "VertexIndex", .value = 42, .parameters = &[_]OperandKind{} },
-                .{ .name = "InstanceIndex", .value = 43, .parameters = &[_]OperandKind{} },
-                .{ .name = "CoreIDARM", .value = 4160, .parameters = &[_]OperandKind{} },
-                .{ .name = "CoreCountARM", .value = 4161, .parameters = &[_]OperandKind{} },
-                .{ .name = "CoreMaxIDARM", .value = 4162, .parameters = &[_]OperandKind{} },
-                .{ .name = "WarpIDARM", .value = 4163, .parameters = &[_]OperandKind{} },
-                .{ .name = "WarpMaxIDARM", .value = 4164, .parameters = &[_]OperandKind{} },
-                .{ .name = "SubgroupEqMask", .value = 4416, .parameters = &[_]OperandKind{} },
-                .{ .name = "SubgroupEqMaskKHR", .value = 4416, .parameters = &[_]OperandKind{} },
-                .{ .name = "SubgroupGeMask", .value = 4417, .parameters = &[_]OperandKind{} },
-                .{ .name = "SubgroupGeMaskKHR", .value = 4417, .parameters = &[_]OperandKind{} },
-                .{ .name = "SubgroupGtMask", .value = 4418, .parameters = &[_]OperandKind{} },
-                .{ .name = "SubgroupGtMaskKHR", .value = 4418, .parameters = &[_]OperandKind{} },
-                .{ .name = "SubgroupLeMask", .value = 4419, .parameters = &[_]OperandKind{} },
-                .{ .name = "SubgroupLeMaskKHR", .value = 4419, .parameters = &[_]OperandKind{} },
-                .{ .name = "SubgroupLtMask", .value = 4420, .parameters = &[_]OperandKind{} },
-                .{ .name = "SubgroupLtMaskKHR", .value = 4420, .parameters = &[_]OperandKind{} },
-                .{ .name = "BaseVertex", .value = 4424, .parameters = &[_]OperandKind{} },
-                .{ .name = "BaseInstance", .value = 4425, .parameters = &[_]OperandKind{} },
-                .{ .name = "DrawIndex", .value = 4426, .parameters = &[_]OperandKind{} },
-                .{ .name = "PrimitiveShadingRateKHR", .value = 4432, .parameters = &[_]OperandKind{} },
-                .{ .name = "DeviceIndex", .value = 4438, .parameters = &[_]OperandKind{} },
-                .{ .name = "ViewIndex", .value = 4440, .parameters = &[_]OperandKind{} },
-                .{ .name = "ShadingRateKHR", .value = 4444, .parameters = &[_]OperandKind{} },
-                .{ .name = "BaryCoordNoPerspAMD", .value = 4992, .parameters = &[_]OperandKind{} },
-                .{ .name = "BaryCoordNoPerspCentroidAMD", .value = 4993, .parameters = &[_]OperandKind{} },
-                .{ .name = "BaryCoordNoPerspSampleAMD", .value = 4994, .parameters = &[_]OperandKind{} },
-                .{ .name = "BaryCoordSmoothAMD", .value = 4995, .parameters = &[_]OperandKind{} },
-                .{ .name = "BaryCoordSmoothCentroidAMD", .value = 4996, .parameters = &[_]OperandKind{} },
-                .{ .name = "BaryCoordSmoothSampleAMD", .value = 4997, .parameters = &[_]OperandKind{} },
-                .{ .name = "BaryCoordPullModelAMD", .value = 4998, .parameters = &[_]OperandKind{} },
-                .{ .name = "FragStencilRefEXT", .value = 5014, .parameters = &[_]OperandKind{} },
-                .{ .name = "CoalescedInputCountAMDX", .value = 5021, .parameters = &[_]OperandKind{} },
-                .{ .name = "ShaderIndexAMDX", .value = 5073, .parameters = &[_]OperandKind{} },
-                .{ .name = "ViewportMaskNV", .value = 5253, .parameters = &[_]OperandKind{} },
-                .{ .name = "SecondaryPositionNV", .value = 5257, .parameters = &[_]OperandKind{} },
-                .{ .name = "SecondaryViewportMaskNV", .value = 5258, .parameters = &[_]OperandKind{} },
-                .{ .name = "PositionPerViewNV", .value = 5261, .parameters = &[_]OperandKind{} },
-                .{ .name = "ViewportMaskPerViewNV", .value = 5262, .parameters = &[_]OperandKind{} },
-                .{ .name = "FullyCoveredEXT", .value = 5264, .parameters = &[_]OperandKind{} },
-                .{ .name = "TaskCountNV", .value = 5274, .parameters = &[_]OperandKind{} },
-                .{ .name = "PrimitiveCountNV", .value = 5275, .parameters = &[_]OperandKind{} },
-                .{ .name = "PrimitiveIndicesNV", .value = 5276, .parameters = &[_]OperandKind{} },
-                .{ .name = "ClipDistancePerViewNV", .value = 5277, .parameters = &[_]OperandKind{} },
-                .{ .name = "CullDistancePerViewNV", .value = 5278, .parameters = &[_]OperandKind{} },
-                .{ .name = "LayerPerViewNV", .value = 5279, .parameters = &[_]OperandKind{} },
-                .{ .name = "MeshViewCountNV", .value = 5280, .parameters = &[_]OperandKind{} },
-                .{ .name = "MeshViewIndicesNV", .value = 5281, .parameters = &[_]OperandKind{} },
-                .{ .name = "BaryCoordKHR", .value = 5286, .parameters = &[_]OperandKind{} },
-                .{ .name = "BaryCoordNV", .value = 5286, .parameters = &[_]OperandKind{} },
-                .{ .name = "BaryCoordNoPerspKHR", .value = 5287, .parameters = &[_]OperandKind{} },
-                .{ .name = "BaryCoordNoPerspNV", .value = 5287, .parameters = &[_]OperandKind{} },
-                .{ .name = "FragSizeEXT", .value = 5292, .parameters = &[_]OperandKind{} },
-                .{ .name = "FragmentSizeNV", .value = 5292, .parameters = &[_]OperandKind{} },
-                .{ .name = "FragInvocationCountEXT", .value = 5293, .parameters = &[_]OperandKind{} },
-                .{ .name = "InvocationsPerPixelNV", .value = 5293, .parameters = &[_]OperandKind{} },
-                .{ .name = "PrimitivePointIndicesEXT", .value = 5294, .parameters = &[_]OperandKind{} },
-                .{ .name = "PrimitiveLineIndicesEXT", .value = 5295, .parameters = &[_]OperandKind{} },
-                .{ .name = "PrimitiveTriangleIndicesEXT", .value = 5296, .parameters = &[_]OperandKind{} },
-                .{ .name = "CullPrimitiveEXT", .value = 5299, .parameters = &[_]OperandKind{} },
-                .{ .name = "LaunchIdNV", .value = 5319, .parameters = &[_]OperandKind{} },
-                .{ .name = "LaunchIdKHR", .value = 5319, .parameters = &[_]OperandKind{} },
-                .{ .name = "LaunchSizeNV", .value = 5320, .parameters = &[_]OperandKind{} },
-                .{ .name = "LaunchSizeKHR", .value = 5320, .parameters = &[_]OperandKind{} },
-                .{ .name = "WorldRayOriginNV", .value = 5321, .parameters = &[_]OperandKind{} },
-                .{ .name = "WorldRayOriginKHR", .value = 5321, .parameters = &[_]OperandKind{} },
-                .{ .name = "WorldRayDirectionNV", .value = 5322, .parameters = &[_]OperandKind{} },
-                .{ .name = "WorldRayDirectionKHR", .value = 5322, .parameters = &[_]OperandKind{} },
-                .{ .name = "ObjectRayOriginNV", .value = 5323, .parameters = &[_]OperandKind{} },
-                .{ .name = "ObjectRayOriginKHR", .value = 5323, .parameters = &[_]OperandKind{} },
-                .{ .name = "ObjectRayDirectionNV", .value = 5324, .parameters = &[_]OperandKind{} },
-                .{ .name = "ObjectRayDirectionKHR", .value = 5324, .parameters = &[_]OperandKind{} },
-                .{ .name = "RayTminNV", .value = 5325, .parameters = &[_]OperandKind{} },
-                .{ .name = "RayTminKHR", .value = 5325, .parameters = &[_]OperandKind{} },
-                .{ .name = "RayTmaxNV", .value = 5326, .parameters = &[_]OperandKind{} },
-                .{ .name = "RayTmaxKHR", .value = 5326, .parameters = &[_]OperandKind{} },
-                .{ .name = "InstanceCustomIndexNV", .value = 5327, .parameters = &[_]OperandKind{} },
-                .{ .name = "InstanceCustomIndexKHR", .value = 5327, .parameters = &[_]OperandKind{} },
-                .{ .name = "ObjectToWorldNV", .value = 5330, .parameters = &[_]OperandKind{} },
-                .{ .name = "ObjectToWorldKHR", .value = 5330, .parameters = &[_]OperandKind{} },
-                .{ .name = "WorldToObjectNV", .value = 5331, .parameters = &[_]OperandKind{} },
-                .{ .name = "WorldToObjectKHR", .value = 5331, .parameters = &[_]OperandKind{} },
-                .{ .name = "HitTNV", .value = 5332, .parameters = &[_]OperandKind{} },
-                .{ .name = "HitKindNV", .value = 5333, .parameters = &[_]OperandKind{} },
-                .{ .name = "HitKindKHR", .value = 5333, .parameters = &[_]OperandKind{} },
-                .{ .name = "CurrentRayTimeNV", .value = 5334, .parameters = &[_]OperandKind{} },
-                .{ .name = "HitTriangleVertexPositionsKHR", .value = 5335, .parameters = &[_]OperandKind{} },
-                .{ .name = "HitMicroTriangleVertexPositionsNV", .value = 5337, .parameters = &[_]OperandKind{} },
-                .{ .name = "HitMicroTriangleVertexBarycentricsNV", .value = 5344, .parameters = &[_]OperandKind{} },
-                .{ .name = "IncomingRayFlagsNV", .value = 5351, .parameters = &[_]OperandKind{} },
-                .{ .name = "IncomingRayFlagsKHR", .value = 5351, .parameters = &[_]OperandKind{} },
-                .{ .name = "RayGeometryIndexKHR", .value = 5352, .parameters = &[_]OperandKind{} },
-                .{ .name = "WarpsPerSMNV", .value = 5374, .parameters = &[_]OperandKind{} },
-                .{ .name = "SMCountNV", .value = 5375, .parameters = &[_]OperandKind{} },
-                .{ .name = "WarpIDNV", .value = 5376, .parameters = &[_]OperandKind{} },
-                .{ .name = "SMIDNV", .value = 5377, .parameters = &[_]OperandKind{} },
-                .{ .name = "HitKindFrontFacingMicroTriangleNV", .value = 5405, .parameters = &[_]OperandKind{} },
-                .{ .name = "HitKindBackFacingMicroTriangleNV", .value = 5406, .parameters = &[_]OperandKind{} },
-                .{ .name = "CullMaskKHR", .value = 6021, .parameters = &[_]OperandKind{} },
+            .ray_query_committed_intersection_type => &.{
+                .{ .name = "RayQueryCommittedIntersectionNoneKHR", .value = 0, .parameters = &.{} },
+                .{ .name = "RayQueryCommittedIntersectionTriangleKHR", .value = 1, .parameters = &.{} },
+                .{ .name = "RayQueryCommittedIntersectionGeneratedKHR", .value = 2, .parameters = &.{} },
             },
-            .Scope => &[_]Enumerant{
-                .{ .name = "CrossDevice", .value = 0, .parameters = &[_]OperandKind{} },
-                .{ .name = "Device", .value = 1, .parameters = &[_]OperandKind{} },
-                .{ .name = "Workgroup", .value = 2, .parameters = &[_]OperandKind{} },
-                .{ .name = "Subgroup", .value = 3, .parameters = &[_]OperandKind{} },
-                .{ .name = "Invocation", .value = 4, .parameters = &[_]OperandKind{} },
-                .{ .name = "QueueFamily", .value = 5, .parameters = &[_]OperandKind{} },
-                .{ .name = "QueueFamilyKHR", .value = 5, .parameters = &[_]OperandKind{} },
-                .{ .name = "ShaderCallKHR", .value = 6, .parameters = &[_]OperandKind{} },
+            .ray_query_candidate_intersection_type => &.{
+                .{ .name = "RayQueryCandidateIntersectionTriangleKHR", .value = 0, .parameters = &.{} },
+                .{ .name = "RayQueryCandidateIntersectionAABBKHR", .value = 1, .parameters = &.{} },
             },
-            .GroupOperation => &[_]Enumerant{
-                .{ .name = "Reduce", .value = 0, .parameters = &[_]OperandKind{} },
-                .{ .name = "InclusiveScan", .value = 1, .parameters = &[_]OperandKind{} },
-                .{ .name = "ExclusiveScan", .value = 2, .parameters = &[_]OperandKind{} },
-                .{ .name = "ClusteredReduce", .value = 3, .parameters = &[_]OperandKind{} },
-                .{ .name = "PartitionedReduceNV", .value = 6, .parameters = &[_]OperandKind{} },
-                .{ .name = "PartitionedInclusiveScanNV", .value = 7, .parameters = &[_]OperandKind{} },
-                .{ .name = "PartitionedExclusiveScanNV", .value = 8, .parameters = &[_]OperandKind{} },
+            .packed_vector_format => &.{
+                .{ .name = "PackedVectorFormat4x8Bit", .value = 0, .parameters = &.{} },
             },
-            .KernelEnqueueFlags => &[_]Enumerant{
-                .{ .name = "NoWait", .value = 0, .parameters = &[_]OperandKind{} },
-                .{ .name = "WaitKernel", .value = 1, .parameters = &[_]OperandKind{} },
-                .{ .name = "WaitWorkGroup", .value = 2, .parameters = &[_]OperandKind{} },
+            .cooperative_matrix_operands => &.{
+                .{ .name = "NoneKHR", .value = 0x0000, .parameters = &.{} },
+                .{ .name = "MatrixASignedComponentsKHR", .value = 0x0001, .parameters = &.{} },
+                .{ .name = "MatrixBSignedComponentsKHR", .value = 0x0002, .parameters = &.{} },
+                .{ .name = "MatrixCSignedComponentsKHR", .value = 0x0004, .parameters = &.{} },
+                .{ .name = "MatrixResultSignedComponentsKHR", .value = 0x0008, .parameters = &.{} },
+                .{ .name = "SaturatingAccumulationKHR", .value = 0x0010, .parameters = &.{} },
             },
-            .Capability => &[_]Enumerant{
-                .{ .name = "Matrix", .value = 0, .parameters = &[_]OperandKind{} },
-                .{ .name = "Shader", .value = 1, .parameters = &[_]OperandKind{} },
-                .{ .name = "Geometry", .value = 2, .parameters = &[_]OperandKind{} },
-                .{ .name = "Tessellation", .value = 3, .parameters = &[_]OperandKind{} },
-                .{ .name = "Addresses", .value = 4, .parameters = &[_]OperandKind{} },
-                .{ .name = "Linkage", .value = 5, .parameters = &[_]OperandKind{} },
-                .{ .name = "Kernel", .value = 6, .parameters = &[_]OperandKind{} },
-                .{ .name = "Vector16", .value = 7, .parameters = &[_]OperandKind{} },
-                .{ .name = "Float16Buffer", .value = 8, .parameters = &[_]OperandKind{} },
-                .{ .name = "Float16", .value = 9, .parameters = &[_]OperandKind{} },
-                .{ .name = "Float64", .value = 10, .parameters = &[_]OperandKind{} },
-                .{ .name = "Int64", .value = 11, .parameters = &[_]OperandKind{} },
-                .{ .name = "Int64Atomics", .value = 12, .parameters = &[_]OperandKind{} },
-                .{ .name = "ImageBasic", .value = 13, .parameters = &[_]OperandKind{} },
-                .{ .name = "ImageReadWrite", .value = 14, .parameters = &[_]OperandKind{} },
-                .{ .name = "ImageMipmap", .value = 15, .parameters = &[_]OperandKind{} },
-                .{ .name = "Pipes", .value = 17, .parameters = &[_]OperandKind{} },
-                .{ .name = "Groups", .value = 18, .parameters = &[_]OperandKind{} },
-                .{ .name = "DeviceEnqueue", .value = 19, .parameters = &[_]OperandKind{} },
-                .{ .name = "LiteralSampler", .value = 20, .parameters = &[_]OperandKind{} },
-                .{ .name = "AtomicStorage", .value = 21, .parameters = &[_]OperandKind{} },
-                .{ .name = "Int16", .value = 22, .parameters = &[_]OperandKind{} },
-                .{ .name = "TessellationPointSize", .value = 23, .parameters = &[_]OperandKind{} },
-                .{ .name = "GeometryPointSize", .value = 24, .parameters = &[_]OperandKind{} },
-                .{ .name = "ImageGatherExtended", .value = 25, .parameters = &[_]OperandKind{} },
-                .{ .name = "StorageImageMultisample", .value = 27, .parameters = &[_]OperandKind{} },
-                .{ .name = "UniformBufferArrayDynamicIndexing", .value = 28, .parameters = &[_]OperandKind{} },
-                .{ .name = "SampledImageArrayDynamicIndexing", .value = 29, .parameters = &[_]OperandKind{} },
-                .{ .name = "StorageBufferArrayDynamicIndexing", .value = 30, .parameters = &[_]OperandKind{} },
-                .{ .name = "StorageImageArrayDynamicIndexing", .value = 31, .parameters = &[_]OperandKind{} },
-                .{ .name = "ClipDistance", .value = 32, .parameters = &[_]OperandKind{} },
-                .{ .name = "CullDistance", .value = 33, .parameters = &[_]OperandKind{} },
-                .{ .name = "ImageCubeArray", .value = 34, .parameters = &[_]OperandKind{} },
-                .{ .name = "SampleRateShading", .value = 35, .parameters = &[_]OperandKind{} },
-                .{ .name = "ImageRect", .value = 36, .parameters = &[_]OperandKind{} },
-                .{ .name = "SampledRect", .value = 37, .parameters = &[_]OperandKind{} },
-                .{ .name = "GenericPointer", .value = 38, .parameters = &[_]OperandKind{} },
-                .{ .name = "Int8", .value = 39, .parameters = &[_]OperandKind{} },
-                .{ .name = "InputAttachment", .value = 40, .parameters = &[_]OperandKind{} },
-                .{ .name = "SparseResidency", .value = 41, .parameters = &[_]OperandKind{} },
-                .{ .name = "MinLod", .value = 42, .parameters = &[_]OperandKind{} },
-                .{ .name = "Sampled1D", .value = 43, .parameters = &[_]OperandKind{} },
-                .{ .name = "Image1D", .value = 44, .parameters = &[_]OperandKind{} },
-                .{ .name = "SampledCubeArray", .value = 45, .parameters = &[_]OperandKind{} },
-                .{ .name = "SampledBuffer", .value = 46, .parameters = &[_]OperandKind{} },
-                .{ .name = "ImageBuffer", .value = 47, .parameters = &[_]OperandKind{} },
-                .{ .name = "ImageMSArray", .value = 48, .parameters = &[_]OperandKind{} },
-                .{ .name = "StorageImageExtendedFormats", .value = 49, .parameters = &[_]OperandKind{} },
-                .{ .name = "ImageQuery", .value = 50, .parameters = &[_]OperandKind{} },
-                .{ .name = "DerivativeControl", .value = 51, .parameters = &[_]OperandKind{} },
-                .{ .name = "InterpolationFunction", .value = 52, .parameters = &[_]OperandKind{} },
-                .{ .name = "TransformFeedback", .value = 53, .parameters = &[_]OperandKind{} },
-                .{ .name = "GeometryStreams", .value = 54, .parameters = &[_]OperandKind{} },
-                .{ .name = "StorageImageReadWithoutFormat", .value = 55, .parameters = &[_]OperandKind{} },
-                .{ .name = "StorageImageWriteWithoutFormat", .value = 56, .parameters = &[_]OperandKind{} },
-                .{ .name = "MultiViewport", .value = 57, .parameters = &[_]OperandKind{} },
-                .{ .name = "SubgroupDispatch", .value = 58, .parameters = &[_]OperandKind{} },
-                .{ .name = "NamedBarrier", .value = 59, .parameters = &[_]OperandKind{} },
-                .{ .name = "PipeStorage", .value = 60, .parameters = &[_]OperandKind{} },
-                .{ .name = "GroupNonUniform", .value = 61, .parameters = &[_]OperandKind{} },
-                .{ .name = "GroupNonUniformVote", .value = 62, .parameters = &[_]OperandKind{} },
-                .{ .name = "GroupNonUniformArithmetic", .value = 63, .parameters = &[_]OperandKind{} },
-                .{ .name = "GroupNonUniformBallot", .value = 64, .parameters = &[_]OperandKind{} },
-                .{ .name = "GroupNonUniformShuffle", .value = 65, .parameters = &[_]OperandKind{} },
-                .{ .name = "GroupNonUniformShuffleRelative", .value = 66, .parameters = &[_]OperandKind{} },
-                .{ .name = "GroupNonUniformClustered", .value = 67, .parameters = &[_]OperandKind{} },
-                .{ .name = "GroupNonUniformQuad", .value = 68, .parameters = &[_]OperandKind{} },
-                .{ .name = "ShaderLayer", .value = 69, .parameters = &[_]OperandKind{} },
-                .{ .name = "ShaderViewportIndex", .value = 70, .parameters = &[_]OperandKind{} },
-                .{ .name = "UniformDecoration", .value = 71, .parameters = &[_]OperandKind{} },
-                .{ .name = "CoreBuiltinsARM", .value = 4165, .parameters = &[_]OperandKind{} },
-                .{ .name = "TileImageColorReadAccessEXT", .value = 4166, .parameters = &[_]OperandKind{} },
-                .{ .name = "TileImageDepthReadAccessEXT", .value = 4167, .parameters = &[_]OperandKind{} },
-                .{ .name = "TileImageStencilReadAccessEXT", .value = 4168, .parameters = &[_]OperandKind{} },
-                .{ .name = "FragmentShadingRateKHR", .value = 4422, .parameters = &[_]OperandKind{} },
-                .{ .name = "SubgroupBallotKHR", .value = 4423, .parameters = &[_]OperandKind{} },
-                .{ .name = "DrawParameters", .value = 4427, .parameters = &[_]OperandKind{} },
-                .{ .name = "WorkgroupMemoryExplicitLayoutKHR", .value = 4428, .parameters = &[_]OperandKind{} },
-                .{ .name = "WorkgroupMemoryExplicitLayout8BitAccessKHR", .value = 4429, .parameters = &[_]OperandKind{} },
-                .{ .name = "WorkgroupMemoryExplicitLayout16BitAccessKHR", .value = 4430, .parameters = &[_]OperandKind{} },
-                .{ .name = "SubgroupVoteKHR", .value = 4431, .parameters = &[_]OperandKind{} },
-                .{ .name = "StorageBuffer16BitAccess", .value = 4433, .parameters = &[_]OperandKind{} },
-                .{ .name = "StorageUniformBufferBlock16", .value = 4433, .parameters = &[_]OperandKind{} },
-                .{ .name = "UniformAndStorageBuffer16BitAccess", .value = 4434, .parameters = &[_]OperandKind{} },
-                .{ .name = "StorageUniform16", .value = 4434, .parameters = &[_]OperandKind{} },
-                .{ .name = "StoragePushConstant16", .value = 4435, .parameters = &[_]OperandKind{} },
-                .{ .name = "StorageInputOutput16", .value = 4436, .parameters = &[_]OperandKind{} },
-                .{ .name = "DeviceGroup", .value = 4437, .parameters = &[_]OperandKind{} },
-                .{ .name = "MultiView", .value = 4439, .parameters = &[_]OperandKind{} },
-                .{ .name = "VariablePointersStorageBuffer", .value = 4441, .parameters = &[_]OperandKind{} },
-                .{ .name = "VariablePointers", .value = 4442, .parameters = &[_]OperandKind{} },
-                .{ .name = "AtomicStorageOps", .value = 4445, .parameters = &[_]OperandKind{} },
-                .{ .name = "SampleMaskPostDepthCoverage", .value = 4447, .parameters = &[_]OperandKind{} },
-                .{ .name = "StorageBuffer8BitAccess", .value = 4448, .parameters = &[_]OperandKind{} },
-                .{ .name = "UniformAndStorageBuffer8BitAccess", .value = 4449, .parameters = &[_]OperandKind{} },
-                .{ .name = "StoragePushConstant8", .value = 4450, .parameters = &[_]OperandKind{} },
-                .{ .name = "DenormPreserve", .value = 4464, .parameters = &[_]OperandKind{} },
-                .{ .name = "DenormFlushToZero", .value = 4465, .parameters = &[_]OperandKind{} },
-                .{ .name = "SignedZeroInfNanPreserve", .value = 4466, .parameters = &[_]OperandKind{} },
-                .{ .name = "RoundingModeRTE", .value = 4467, .parameters = &[_]OperandKind{} },
-                .{ .name = "RoundingModeRTZ", .value = 4468, .parameters = &[_]OperandKind{} },
-                .{ .name = "RayQueryProvisionalKHR", .value = 4471, .parameters = &[_]OperandKind{} },
-                .{ .name = "RayQueryKHR", .value = 4472, .parameters = &[_]OperandKind{} },
-                .{ .name = "RayTraversalPrimitiveCullingKHR", .value = 4478, .parameters = &[_]OperandKind{} },
-                .{ .name = "RayTracingKHR", .value = 4479, .parameters = &[_]OperandKind{} },
-                .{ .name = "TextureSampleWeightedQCOM", .value = 4484, .parameters = &[_]OperandKind{} },
-                .{ .name = "TextureBoxFilterQCOM", .value = 4485, .parameters = &[_]OperandKind{} },
-                .{ .name = "TextureBlockMatchQCOM", .value = 4486, .parameters = &[_]OperandKind{} },
-                .{ .name = "TextureBlockMatch2QCOM", .value = 4498, .parameters = &[_]OperandKind{} },
-                .{ .name = "Float16ImageAMD", .value = 5008, .parameters = &[_]OperandKind{} },
-                .{ .name = "ImageGatherBiasLodAMD", .value = 5009, .parameters = &[_]OperandKind{} },
-                .{ .name = "FragmentMaskAMD", .value = 5010, .parameters = &[_]OperandKind{} },
-                .{ .name = "StencilExportEXT", .value = 5013, .parameters = &[_]OperandKind{} },
-                .{ .name = "ImageReadWriteLodAMD", .value = 5015, .parameters = &[_]OperandKind{} },
-                .{ .name = "Int64ImageEXT", .value = 5016, .parameters = &[_]OperandKind{} },
-                .{ .name = "ShaderClockKHR", .value = 5055, .parameters = &[_]OperandKind{} },
-                .{ .name = "ShaderEnqueueAMDX", .value = 5067, .parameters = &[_]OperandKind{} },
-                .{ .name = "QuadControlKHR", .value = 5087, .parameters = &[_]OperandKind{} },
-                .{ .name = "SampleMaskOverrideCoverageNV", .value = 5249, .parameters = &[_]OperandKind{} },
-                .{ .name = "GeometryShaderPassthroughNV", .value = 5251, .parameters = &[_]OperandKind{} },
-                .{ .name = "ShaderViewportIndexLayerEXT", .value = 5254, .parameters = &[_]OperandKind{} },
-                .{ .name = "ShaderViewportIndexLayerNV", .value = 5254, .parameters = &[_]OperandKind{} },
-                .{ .name = "ShaderViewportMaskNV", .value = 5255, .parameters = &[_]OperandKind{} },
-                .{ .name = "ShaderStereoViewNV", .value = 5259, .parameters = &[_]OperandKind{} },
-                .{ .name = "PerViewAttributesNV", .value = 5260, .parameters = &[_]OperandKind{} },
-                .{ .name = "FragmentFullyCoveredEXT", .value = 5265, .parameters = &[_]OperandKind{} },
-                .{ .name = "MeshShadingNV", .value = 5266, .parameters = &[_]OperandKind{} },
-                .{ .name = "ImageFootprintNV", .value = 5282, .parameters = &[_]OperandKind{} },
-                .{ .name = "MeshShadingEXT", .value = 5283, .parameters = &[_]OperandKind{} },
-                .{ .name = "FragmentBarycentricKHR", .value = 5284, .parameters = &[_]OperandKind{} },
-                .{ .name = "FragmentBarycentricNV", .value = 5284, .parameters = &[_]OperandKind{} },
-                .{ .name = "ComputeDerivativeGroupQuadsNV", .value = 5288, .parameters = &[_]OperandKind{} },
-                .{ .name = "FragmentDensityEXT", .value = 5291, .parameters = &[_]OperandKind{} },
-                .{ .name = "ShadingRateNV", .value = 5291, .parameters = &[_]OperandKind{} },
-                .{ .name = "GroupNonUniformPartitionedNV", .value = 5297, .parameters = &[_]OperandKind{} },
-                .{ .name = "ShaderNonUniform", .value = 5301, .parameters = &[_]OperandKind{} },
-                .{ .name = "ShaderNonUniformEXT", .value = 5301, .parameters = &[_]OperandKind{} },
-                .{ .name = "RuntimeDescriptorArray", .value = 5302, .parameters = &[_]OperandKind{} },
-                .{ .name = "RuntimeDescriptorArrayEXT", .value = 5302, .parameters = &[_]OperandKind{} },
-                .{ .name = "InputAttachmentArrayDynamicIndexing", .value = 5303, .parameters = &[_]OperandKind{} },
-                .{ .name = "InputAttachmentArrayDynamicIndexingEXT", .value = 5303, .parameters = &[_]OperandKind{} },
-                .{ .name = "UniformTexelBufferArrayDynamicIndexing", .value = 5304, .parameters = &[_]OperandKind{} },
-                .{ .name = "UniformTexelBufferArrayDynamicIndexingEXT", .value = 5304, .parameters = &[_]OperandKind{} },
-                .{ .name = "StorageTexelBufferArrayDynamicIndexing", .value = 5305, .parameters = &[_]OperandKind{} },
-                .{ .name = "StorageTexelBufferArrayDynamicIndexingEXT", .value = 5305, .parameters = &[_]OperandKind{} },
-                .{ .name = "UniformBufferArrayNonUniformIndexing", .value = 5306, .parameters = &[_]OperandKind{} },
-                .{ .name = "UniformBufferArrayNonUniformIndexingEXT", .value = 5306, .parameters = &[_]OperandKind{} },
-                .{ .name = "SampledImageArrayNonUniformIndexing", .value = 5307, .parameters = &[_]OperandKind{} },
-                .{ .name = "SampledImageArrayNonUniformIndexingEXT", .value = 5307, .parameters = &[_]OperandKind{} },
-                .{ .name = "StorageBufferArrayNonUniformIndexing", .value = 5308, .parameters = &[_]OperandKind{} },
-                .{ .name = "StorageBufferArrayNonUniformIndexingEXT", .value = 5308, .parameters = &[_]OperandKind{} },
-                .{ .name = "StorageImageArrayNonUniformIndexing", .value = 5309, .parameters = &[_]OperandKind{} },
-                .{ .name = "StorageImageArrayNonUniformIndexingEXT", .value = 5309, .parameters = &[_]OperandKind{} },
-                .{ .name = "InputAttachmentArrayNonUniformIndexing", .value = 5310, .parameters = &[_]OperandKind{} },
-                .{ .name = "InputAttachmentArrayNonUniformIndexingEXT", .value = 5310, .parameters = &[_]OperandKind{} },
-                .{ .name = "UniformTexelBufferArrayNonUniformIndexing", .value = 5311, .parameters = &[_]OperandKind{} },
-                .{ .name = "UniformTexelBufferArrayNonUniformIndexingEXT", .value = 5311, .parameters = &[_]OperandKind{} },
-                .{ .name = "StorageTexelBufferArrayNonUniformIndexing", .value = 5312, .parameters = &[_]OperandKind{} },
-                .{ .name = "StorageTexelBufferArrayNonUniformIndexingEXT", .value = 5312, .parameters = &[_]OperandKind{} },
-                .{ .name = "RayTracingPositionFetchKHR", .value = 5336, .parameters = &[_]OperandKind{} },
-                .{ .name = "RayTracingNV", .value = 5340, .parameters = &[_]OperandKind{} },
-                .{ .name = "RayTracingMotionBlurNV", .value = 5341, .parameters = &[_]OperandKind{} },
-                .{ .name = "VulkanMemoryModel", .value = 5345, .parameters = &[_]OperandKind{} },
-                .{ .name = "VulkanMemoryModelKHR", .value = 5345, .parameters = &[_]OperandKind{} },
-                .{ .name = "VulkanMemoryModelDeviceScope", .value = 5346, .parameters = &[_]OperandKind{} },
-                .{ .name = "VulkanMemoryModelDeviceScopeKHR", .value = 5346, .parameters = &[_]OperandKind{} },
-                .{ .name = "PhysicalStorageBufferAddresses", .value = 5347, .parameters = &[_]OperandKind{} },
-                .{ .name = "PhysicalStorageBufferAddressesEXT", .value = 5347, .parameters = &[_]OperandKind{} },
-                .{ .name = "ComputeDerivativeGroupLinearNV", .value = 5350, .parameters = &[_]OperandKind{} },
-                .{ .name = "RayTracingProvisionalKHR", .value = 5353, .parameters = &[_]OperandKind{} },
-                .{ .name = "CooperativeMatrixNV", .value = 5357, .parameters = &[_]OperandKind{} },
-                .{ .name = "FragmentShaderSampleInterlockEXT", .value = 5363, .parameters = &[_]OperandKind{} },
-                .{ .name = "FragmentShaderShadingRateInterlockEXT", .value = 5372, .parameters = &[_]OperandKind{} },
-                .{ .name = "ShaderSMBuiltinsNV", .value = 5373, .parameters = &[_]OperandKind{} },
-                .{ .name = "FragmentShaderPixelInterlockEXT", .value = 5378, .parameters = &[_]OperandKind{} },
-                .{ .name = "DemoteToHelperInvocation", .value = 5379, .parameters = &[_]OperandKind{} },
-                .{ .name = "DemoteToHelperInvocationEXT", .value = 5379, .parameters = &[_]OperandKind{} },
-                .{ .name = "DisplacementMicromapNV", .value = 5380, .parameters = &[_]OperandKind{} },
-                .{ .name = "RayTracingOpacityMicromapEXT", .value = 5381, .parameters = &[_]OperandKind{} },
-                .{ .name = "ShaderInvocationReorderNV", .value = 5383, .parameters = &[_]OperandKind{} },
-                .{ .name = "BindlessTextureNV", .value = 5390, .parameters = &[_]OperandKind{} },
-                .{ .name = "RayQueryPositionFetchKHR", .value = 5391, .parameters = &[_]OperandKind{} },
-                .{ .name = "AtomicFloat16VectorNV", .value = 5404, .parameters = &[_]OperandKind{} },
-                .{ .name = "RayTracingDisplacementMicromapNV", .value = 5409, .parameters = &[_]OperandKind{} },
-                .{ .name = "RawAccessChainsNV", .value = 5414, .parameters = &[_]OperandKind{} },
-                .{ .name = "SubgroupShuffleINTEL", .value = 5568, .parameters = &[_]OperandKind{} },
-                .{ .name = "SubgroupBufferBlockIOINTEL", .value = 5569, .parameters = &[_]OperandKind{} },
-                .{ .name = "SubgroupImageBlockIOINTEL", .value = 5570, .parameters = &[_]OperandKind{} },
-                .{ .name = "SubgroupImageMediaBlockIOINTEL", .value = 5579, .parameters = &[_]OperandKind{} },
-                .{ .name = "RoundToInfinityINTEL", .value = 5582, .parameters = &[_]OperandKind{} },
-                .{ .name = "FloatingPointModeINTEL", .value = 5583, .parameters = &[_]OperandKind{} },
-                .{ .name = "IntegerFunctions2INTEL", .value = 5584, .parameters = &[_]OperandKind{} },
-                .{ .name = "FunctionPointersINTEL", .value = 5603, .parameters = &[_]OperandKind{} },
-                .{ .name = "IndirectReferencesINTEL", .value = 5604, .parameters = &[_]OperandKind{} },
-                .{ .name = "AsmINTEL", .value = 5606, .parameters = &[_]OperandKind{} },
-                .{ .name = "AtomicFloat32MinMaxEXT", .value = 5612, .parameters = &[_]OperandKind{} },
-                .{ .name = "AtomicFloat64MinMaxEXT", .value = 5613, .parameters = &[_]OperandKind{} },
-                .{ .name = "AtomicFloat16MinMaxEXT", .value = 5616, .parameters = &[_]OperandKind{} },
-                .{ .name = "VectorComputeINTEL", .value = 5617, .parameters = &[_]OperandKind{} },
-                .{ .name = "VectorAnyINTEL", .value = 5619, .parameters = &[_]OperandKind{} },
-                .{ .name = "ExpectAssumeKHR", .value = 5629, .parameters = &[_]OperandKind{} },
-                .{ .name = "SubgroupAvcMotionEstimationINTEL", .value = 5696, .parameters = &[_]OperandKind{} },
-                .{ .name = "SubgroupAvcMotionEstimationIntraINTEL", .value = 5697, .parameters = &[_]OperandKind{} },
-                .{ .name = "SubgroupAvcMotionEstimationChromaINTEL", .value = 5698, .parameters = &[_]OperandKind{} },
-                .{ .name = "VariableLengthArrayINTEL", .value = 5817, .parameters = &[_]OperandKind{} },
-                .{ .name = "FunctionFloatControlINTEL", .value = 5821, .parameters = &[_]OperandKind{} },
-                .{ .name = "FPGAMemoryAttributesINTEL", .value = 5824, .parameters = &[_]OperandKind{} },
-                .{ .name = "FPFastMathModeINTEL", .value = 5837, .parameters = &[_]OperandKind{} },
-                .{ .name = "ArbitraryPrecisionIntegersINTEL", .value = 5844, .parameters = &[_]OperandKind{} },
-                .{ .name = "ArbitraryPrecisionFloatingPointINTEL", .value = 5845, .parameters = &[_]OperandKind{} },
-                .{ .name = "UnstructuredLoopControlsINTEL", .value = 5886, .parameters = &[_]OperandKind{} },
-                .{ .name = "FPGALoopControlsINTEL", .value = 5888, .parameters = &[_]OperandKind{} },
-                .{ .name = "KernelAttributesINTEL", .value = 5892, .parameters = &[_]OperandKind{} },
-                .{ .name = "FPGAKernelAttributesINTEL", .value = 5897, .parameters = &[_]OperandKind{} },
-                .{ .name = "FPGAMemoryAccessesINTEL", .value = 5898, .parameters = &[_]OperandKind{} },
-                .{ .name = "FPGAClusterAttributesINTEL", .value = 5904, .parameters = &[_]OperandKind{} },
-                .{ .name = "LoopFuseINTEL", .value = 5906, .parameters = &[_]OperandKind{} },
-                .{ .name = "FPGADSPControlINTEL", .value = 5908, .parameters = &[_]OperandKind{} },
-                .{ .name = "MemoryAccessAliasingINTEL", .value = 5910, .parameters = &[_]OperandKind{} },
-                .{ .name = "FPGAInvocationPipeliningAttributesINTEL", .value = 5916, .parameters = &[_]OperandKind{} },
-                .{ .name = "FPGABufferLocationINTEL", .value = 5920, .parameters = &[_]OperandKind{} },
-                .{ .name = "ArbitraryPrecisionFixedPointINTEL", .value = 5922, .parameters = &[_]OperandKind{} },
-                .{ .name = "USMStorageClassesINTEL", .value = 5935, .parameters = &[_]OperandKind{} },
-                .{ .name = "RuntimeAlignedAttributeINTEL", .value = 5939, .parameters = &[_]OperandKind{} },
-                .{ .name = "IOPipesINTEL", .value = 5943, .parameters = &[_]OperandKind{} },
-                .{ .name = "BlockingPipesINTEL", .value = 5945, .parameters = &[_]OperandKind{} },
-                .{ .name = "FPGARegINTEL", .value = 5948, .parameters = &[_]OperandKind{} },
-                .{ .name = "DotProductInputAll", .value = 6016, .parameters = &[_]OperandKind{} },
-                .{ .name = "DotProductInputAllKHR", .value = 6016, .parameters = &[_]OperandKind{} },
-                .{ .name = "DotProductInput4x8Bit", .value = 6017, .parameters = &[_]OperandKind{} },
-                .{ .name = "DotProductInput4x8BitKHR", .value = 6017, .parameters = &[_]OperandKind{} },
-                .{ .name = "DotProductInput4x8BitPacked", .value = 6018, .parameters = &[_]OperandKind{} },
-                .{ .name = "DotProductInput4x8BitPackedKHR", .value = 6018, .parameters = &[_]OperandKind{} },
-                .{ .name = "DotProduct", .value = 6019, .parameters = &[_]OperandKind{} },
-                .{ .name = "DotProductKHR", .value = 6019, .parameters = &[_]OperandKind{} },
-                .{ .name = "RayCullMaskKHR", .value = 6020, .parameters = &[_]OperandKind{} },
-                .{ .name = "CooperativeMatrixKHR", .value = 6022, .parameters = &[_]OperandKind{} },
-                .{ .name = "BitInstructions", .value = 6025, .parameters = &[_]OperandKind{} },
-                .{ .name = "GroupNonUniformRotateKHR", .value = 6026, .parameters = &[_]OperandKind{} },
-                .{ .name = "FloatControls2", .value = 6029, .parameters = &[_]OperandKind{} },
-                .{ .name = "AtomicFloat32AddEXT", .value = 6033, .parameters = &[_]OperandKind{} },
-                .{ .name = "AtomicFloat64AddEXT", .value = 6034, .parameters = &[_]OperandKind{} },
-                .{ .name = "LongCompositesINTEL", .value = 6089, .parameters = &[_]OperandKind{} },
-                .{ .name = "OptNoneINTEL", .value = 6094, .parameters = &[_]OperandKind{} },
-                .{ .name = "AtomicFloat16AddEXT", .value = 6095, .parameters = &[_]OperandKind{} },
-                .{ .name = "DebugInfoModuleINTEL", .value = 6114, .parameters = &[_]OperandKind{} },
-                .{ .name = "BFloat16ConversionINTEL", .value = 6115, .parameters = &[_]OperandKind{} },
-                .{ .name = "SplitBarrierINTEL", .value = 6141, .parameters = &[_]OperandKind{} },
-                .{ .name = "FPGAClusterAttributesV2INTEL", .value = 6150, .parameters = &[_]OperandKind{} },
-                .{ .name = "FPGAKernelAttributesv2INTEL", .value = 6161, .parameters = &[_]OperandKind{} },
-                .{ .name = "FPMaxErrorINTEL", .value = 6169, .parameters = &[_]OperandKind{} },
-                .{ .name = "FPGALatencyControlINTEL", .value = 6171, .parameters = &[_]OperandKind{} },
-                .{ .name = "FPGAArgumentInterfacesINTEL", .value = 6174, .parameters = &[_]OperandKind{} },
-                .{ .name = "GlobalVariableHostAccessINTEL", .value = 6187, .parameters = &[_]OperandKind{} },
-                .{ .name = "GlobalVariableFPGADecorationsINTEL", .value = 6189, .parameters = &[_]OperandKind{} },
-                .{ .name = "GroupUniformArithmeticKHR", .value = 6400, .parameters = &[_]OperandKind{} },
-                .{ .name = "MaskedGatherScatterINTEL", .value = 6427, .parameters = &[_]OperandKind{} },
-                .{ .name = "CacheControlsINTEL", .value = 6441, .parameters = &[_]OperandKind{} },
-                .{ .name = "RegisterLimitsINTEL", .value = 6460, .parameters = &[_]OperandKind{} },
+            .cooperative_matrix_layout => &.{
+                .{ .name = "RowMajorKHR", .value = 0, .parameters = &.{} },
+                .{ .name = "ColumnMajorKHR", .value = 1, .parameters = &.{} },
+                .{ .name = "RowBlockedInterleavedARM", .value = 4202, .parameters = &.{} },
+                .{ .name = "ColumnBlockedInterleavedARM", .value = 4203, .parameters = &.{} },
             },
-            .RayQueryIntersection => &[_]Enumerant{
-                .{ .name = "RayQueryCandidateIntersectionKHR", .value = 0, .parameters = &[_]OperandKind{} },
-                .{ .name = "RayQueryCommittedIntersectionKHR", .value = 1, .parameters = &[_]OperandKind{} },
+            .cooperative_matrix_use => &.{
+                .{ .name = "MatrixAKHR", .value = 0, .parameters = &.{} },
+                .{ .name = "MatrixBKHR", .value = 1, .parameters = &.{} },
+                .{ .name = "MatrixAccumulatorKHR", .value = 2, .parameters = &.{} },
             },
-            .RayQueryCommittedIntersectionType => &[_]Enumerant{
-                .{ .name = "RayQueryCommittedIntersectionNoneKHR", .value = 0, .parameters = &[_]OperandKind{} },
-                .{ .name = "RayQueryCommittedIntersectionTriangleKHR", .value = 1, .parameters = &[_]OperandKind{} },
-                .{ .name = "RayQueryCommittedIntersectionGeneratedKHR", .value = 2, .parameters = &[_]OperandKind{} },
+            .cooperative_matrix_reduce => &.{
+                .{ .name = "Row", .value = 0x0001, .parameters = &.{} },
+                .{ .name = "Column", .value = 0x0002, .parameters = &.{} },
+                .{ .name = "2x2", .value = 0x0004, .parameters = &.{} },
             },
-            .RayQueryCandidateIntersectionType => &[_]Enumerant{
-                .{ .name = "RayQueryCandidateIntersectionTriangleKHR", .value = 0, .parameters = &[_]OperandKind{} },
-                .{ .name = "RayQueryCandidateIntersectionAABBKHR", .value = 1, .parameters = &[_]OperandKind{} },
+            .tensor_clamp_mode => &.{
+                .{ .name = "Undefined", .value = 0, .parameters = &.{} },
+                .{ .name = "Constant", .value = 1, .parameters = &.{} },
+                .{ .name = "ClampToEdge", .value = 2, .parameters = &.{} },
+                .{ .name = "Repeat", .value = 3, .parameters = &.{} },
+                .{ .name = "RepeatMirrored", .value = 4, .parameters = &.{} },
             },
-            .PackedVectorFormat => &[_]Enumerant{
-                .{ .name = "PackedVectorFormat4x8Bit", .value = 0, .parameters = &[_]OperandKind{} },
-                .{ .name = "PackedVectorFormat4x8BitKHR", .value = 0, .parameters = &[_]OperandKind{} },
+            .tensor_addressing_operands => &.{
+                .{ .name = "TensorView", .value = 0x0001, .parameters = &.{.id_ref} },
+                .{ .name = "DecodeFunc", .value = 0x0002, .parameters = &.{.id_ref} },
             },
-            .CooperativeMatrixOperands => &[_]Enumerant{
-                .{ .name = "NoneKHR", .value = 0x0000, .parameters = &[_]OperandKind{} },
-                .{ .name = "MatrixASignedComponentsKHR", .value = 0x0001, .parameters = &[_]OperandKind{} },
-                .{ .name = "MatrixBSignedComponentsKHR", .value = 0x0002, .parameters = &[_]OperandKind{} },
-                .{ .name = "MatrixCSignedComponentsKHR", .value = 0x0004, .parameters = &[_]OperandKind{} },
-                .{ .name = "MatrixResultSignedComponentsKHR", .value = 0x0008, .parameters = &[_]OperandKind{} },
-                .{ .name = "SaturatingAccumulationKHR", .value = 0x0010, .parameters = &[_]OperandKind{} },
+            .initialization_mode_qualifier => &.{
+                .{ .name = "InitOnDeviceReprogramINTEL", .value = 0, .parameters = &.{} },
+                .{ .name = "InitOnDeviceResetINTEL", .value = 1, .parameters = &.{} },
             },
-            .CooperativeMatrixLayout => &[_]Enumerant{
-                .{ .name = "RowMajorKHR", .value = 0, .parameters = &[_]OperandKind{} },
-                .{ .name = "ColumnMajorKHR", .value = 1, .parameters = &[_]OperandKind{} },
+            .load_cache_control => &.{
+                .{ .name = "UncachedINTEL", .value = 0, .parameters = &.{} },
+                .{ .name = "CachedINTEL", .value = 1, .parameters = &.{} },
+                .{ .name = "StreamingINTEL", .value = 2, .parameters = &.{} },
+                .{ .name = "InvalidateAfterReadINTEL", .value = 3, .parameters = &.{} },
+                .{ .name = "ConstCachedINTEL", .value = 4, .parameters = &.{} },
             },
-            .CooperativeMatrixUse => &[_]Enumerant{
-                .{ .name = "MatrixAKHR", .value = 0, .parameters = &[_]OperandKind{} },
-                .{ .name = "MatrixBKHR", .value = 1, .parameters = &[_]OperandKind{} },
-                .{ .name = "MatrixAccumulatorKHR", .value = 2, .parameters = &[_]OperandKind{} },
+            .store_cache_control => &.{
+                .{ .name = "UncachedINTEL", .value = 0, .parameters = &.{} },
+                .{ .name = "WriteThroughINTEL", .value = 1, .parameters = &.{} },
+                .{ .name = "WriteBackINTEL", .value = 2, .parameters = &.{} },
+                .{ .name = "StreamingINTEL", .value = 3, .parameters = &.{} },
             },
-            .InitializationModeQualifier => &[_]Enumerant{
-                .{ .name = "InitOnDeviceReprogramINTEL", .value = 0, .parameters = &[_]OperandKind{} },
-                .{ .name = "InitOnDeviceResetINTEL", .value = 1, .parameters = &[_]OperandKind{} },
+            .named_maximum_number_of_registers => &.{
+                .{ .name = "AutoINTEL", .value = 0, .parameters = &.{} },
             },
-            .LoadCacheControl => &[_]Enumerant{
-                .{ .name = "UncachedINTEL", .value = 0, .parameters = &[_]OperandKind{} },
-                .{ .name = "CachedINTEL", .value = 1, .parameters = &[_]OperandKind{} },
-                .{ .name = "StreamingINTEL", .value = 2, .parameters = &[_]OperandKind{} },
-                .{ .name = "InvalidateAfterReadINTEL", .value = 3, .parameters = &[_]OperandKind{} },
-                .{ .name = "ConstCachedINTEL", .value = 4, .parameters = &[_]OperandKind{} },
+            .matrix_multiply_accumulate_operands => &.{
+                .{ .name = "MatrixASignedComponentsINTEL", .value = 0x1, .parameters = &.{} },
+                .{ .name = "MatrixBSignedComponentsINTEL", .value = 0x2, .parameters = &.{} },
+                .{ .name = "MatrixCBFloat16INTEL", .value = 0x4, .parameters = &.{} },
+                .{ .name = "MatrixResultBFloat16INTEL", .value = 0x8, .parameters = &.{} },
+                .{ .name = "MatrixAPackedInt8INTEL", .value = 0x10, .parameters = &.{} },
+                .{ .name = "MatrixBPackedInt8INTEL", .value = 0x20, .parameters = &.{} },
+                .{ .name = "MatrixAPackedInt4INTEL", .value = 0x40, .parameters = &.{} },
+                .{ .name = "MatrixBPackedInt4INTEL", .value = 0x80, .parameters = &.{} },
+                .{ .name = "MatrixATF32INTEL", .value = 0x100, .parameters = &.{} },
+                .{ .name = "MatrixBTF32INTEL", .value = 0x200, .parameters = &.{} },
+                .{ .name = "MatrixAPackedFloat16INTEL", .value = 0x400, .parameters = &.{} },
+                .{ .name = "MatrixBPackedFloat16INTEL", .value = 0x800, .parameters = &.{} },
+                .{ .name = "MatrixAPackedBFloat16INTEL", .value = 0x1000, .parameters = &.{} },
+                .{ .name = "MatrixBPackedBFloat16INTEL", .value = 0x2000, .parameters = &.{} },
             },
-            .StoreCacheControl => &[_]Enumerant{
-                .{ .name = "UncachedINTEL", .value = 0, .parameters = &[_]OperandKind{} },
-                .{ .name = "WriteThroughINTEL", .value = 1, .parameters = &[_]OperandKind{} },
-                .{ .name = "WriteBackINTEL", .value = 2, .parameters = &[_]OperandKind{} },
-                .{ .name = "StreamingINTEL", .value = 3, .parameters = &[_]OperandKind{} },
+            .fp_encoding => &.{
+                .{ .name = "BFloat16KHR", .value = 0, .parameters = &.{} },
+                .{ .name = "Float8E4M3EXT", .value = 4214, .parameters = &.{} },
+                .{ .name = "Float8E5M2EXT", .value = 4215, .parameters = &.{} },
             },
-            .NamedMaximumNumberOfRegisters => &[_]Enumerant{
-                .{ .name = "AutoINTEL", .value = 0, .parameters = &[_]OperandKind{} },
+            .cooperative_vector_matrix_layout => &.{
+                .{ .name = "RowMajorNV", .value = 0, .parameters = &.{} },
+                .{ .name = "ColumnMajorNV", .value = 1, .parameters = &.{} },
+                .{ .name = "InferencingOptimalNV", .value = 2, .parameters = &.{} },
+                .{ .name = "TrainingOptimalNV", .value = 3, .parameters = &.{} },
             },
-            .IdResultType => unreachable,
-            .IdResult => unreachable,
-            .IdMemorySemantics => unreachable,
-            .IdScope => unreachable,
-            .IdRef => unreachable,
-            .LiteralInteger => unreachable,
-            .LiteralString => unreachable,
-            .LiteralFloat => unreachable,
-            .LiteralContextDependentNumber => unreachable,
-            .LiteralExtInstInteger => unreachable,
-            .LiteralSpecConstantOpInteger => unreachable,
-            .PairLiteralIntegerIdRef => unreachable,
-            .PairIdRefLiteralInteger => unreachable,
-            .PairIdRefIdRef => unreachable,
-            .@"OpenCL.DebugInfo.100.DebugInfoFlags" => &[_]Enumerant{
-                .{ .name = "FlagIsProtected", .value = 0x01, .parameters = &[_]OperandKind{} },
-                .{ .name = "FlagIsPrivate", .value = 0x02, .parameters = &[_]OperandKind{} },
-                .{ .name = "FlagIsPublic", .value = 0x03, .parameters = &[_]OperandKind{} },
-                .{ .name = "FlagIsLocal", .value = 0x04, .parameters = &[_]OperandKind{} },
-                .{ .name = "FlagIsDefinition", .value = 0x08, .parameters = &[_]OperandKind{} },
-                .{ .name = "FlagFwdDecl", .value = 0x10, .parameters = &[_]OperandKind{} },
-                .{ .name = "FlagArtificial", .value = 0x20, .parameters = &[_]OperandKind{} },
-                .{ .name = "FlagExplicit", .value = 0x40, .parameters = &[_]OperandKind{} },
-                .{ .name = "FlagPrototyped", .value = 0x80, .parameters = &[_]OperandKind{} },
-                .{ .name = "FlagObjectPointer", .value = 0x100, .parameters = &[_]OperandKind{} },
-                .{ .name = "FlagStaticMember", .value = 0x200, .parameters = &[_]OperandKind{} },
-                .{ .name = "FlagIndirectVariable", .value = 0x400, .parameters = &[_]OperandKind{} },
-                .{ .name = "FlagLValueReference", .value = 0x800, .parameters = &[_]OperandKind{} },
-                .{ .name = "FlagRValueReference", .value = 0x1000, .parameters = &[_]OperandKind{} },
-                .{ .name = "FlagIsOptimized", .value = 0x2000, .parameters = &[_]OperandKind{} },
-                .{ .name = "FlagIsEnumClass", .value = 0x4000, .parameters = &[_]OperandKind{} },
-                .{ .name = "FlagTypePassByValue", .value = 0x8000, .parameters = &[_]OperandKind{} },
-                .{ .name = "FlagTypePassByReference", .value = 0x10000, .parameters = &[_]OperandKind{} },
+            .component_type => &.{
+                .{ .name = "Float16NV", .value = 0, .parameters = &.{} },
+                .{ .name = "Float32NV", .value = 1, .parameters = &.{} },
+                .{ .name = "Float64NV", .value = 2, .parameters = &.{} },
+                .{ .name = "SignedInt8NV", .value = 3, .parameters = &.{} },
+                .{ .name = "SignedInt16NV", .value = 4, .parameters = &.{} },
+                .{ .name = "SignedInt32NV", .value = 5, .parameters = &.{} },
+                .{ .name = "SignedInt64NV", .value = 6, .parameters = &.{} },
+                .{ .name = "UnsignedInt8NV", .value = 7, .parameters = &.{} },
+                .{ .name = "UnsignedInt16NV", .value = 8, .parameters = &.{} },
+                .{ .name = "UnsignedInt32NV", .value = 9, .parameters = &.{} },
+                .{ .name = "UnsignedInt64NV", .value = 10, .parameters = &.{} },
+                .{ .name = "SignedInt8PackedNV", .value = 1000491000, .parameters = &.{} },
+                .{ .name = "UnsignedInt8PackedNV", .value = 1000491001, .parameters = &.{} },
+                .{ .name = "FloatE4M3NV", .value = 1000491002, .parameters = &.{} },
+                .{ .name = "FloatE5M2NV", .value = 1000491003, .parameters = &.{} },
             },
-            .@"OpenCL.DebugInfo.100.DebugBaseTypeAttributeEncoding" => &[_]Enumerant{
-                .{ .name = "Unspecified", .value = 0, .parameters = &[_]OperandKind{} },
-                .{ .name = "Address", .value = 1, .parameters = &[_]OperandKind{} },
-                .{ .name = "Boolean", .value = 2, .parameters = &[_]OperandKind{} },
-                .{ .name = "Float", .value = 3, .parameters = &[_]OperandKind{} },
-                .{ .name = "Signed", .value = 4, .parameters = &[_]OperandKind{} },
-                .{ .name = "SignedChar", .value = 5, .parameters = &[_]OperandKind{} },
-                .{ .name = "Unsigned", .value = 6, .parameters = &[_]OperandKind{} },
-                .{ .name = "UnsignedChar", .value = 7, .parameters = &[_]OperandKind{} },
+            .id_result_type => unreachable,
+            .id_result => unreachable,
+            .id_memory_semantics => unreachable,
+            .id_scope => unreachable,
+            .id_ref => unreachable,
+            .literal_integer => unreachable,
+            .literal_string => unreachable,
+            .literal_float => unreachable,
+            .literal_context_dependent_number => unreachable,
+            .literal_ext_inst_integer => unreachable,
+            .literal_spec_constant_op_integer => unreachable,
+            .pair_literal_integer_id_ref => unreachable,
+            .pair_id_ref_literal_integer => unreachable,
+            .pair_id_ref_id_ref => unreachable,
+            .tensor_operands => &.{
+                .{ .name = "NoneARM", .value = 0x0000, .parameters = &.{} },
+                .{ .name = "NontemporalARM", .value = 0x0001, .parameters = &.{} },
+                .{ .name = "OutOfBoundsValueARM", .value = 0x0002, .parameters = &.{.id_ref} },
+                .{ .name = "MakeElementAvailableARM", .value = 0x0004, .parameters = &.{.id_ref} },
+                .{ .name = "MakeElementVisibleARM", .value = 0x0008, .parameters = &.{.id_ref} },
+                .{ .name = "NonPrivateElementARM", .value = 0x0010, .parameters = &.{} },
             },
-            .@"OpenCL.DebugInfo.100.DebugCompositeType" => &[_]Enumerant{
-                .{ .name = "Class", .value = 0, .parameters = &[_]OperandKind{} },
-                .{ .name = "Structure", .value = 1, .parameters = &[_]OperandKind{} },
-                .{ .name = "Union", .value = 2, .parameters = &[_]OperandKind{} },
+            .debug_info_debug_info_flags => &.{
+                .{ .name = "FlagIsProtected", .value = 0x01, .parameters = &.{} },
+                .{ .name = "FlagIsPrivate", .value = 0x02, .parameters = &.{} },
+                .{ .name = "FlagIsPublic", .value = 0x03, .parameters = &.{} },
+                .{ .name = "FlagIsLocal", .value = 0x04, .parameters = &.{} },
+                .{ .name = "FlagIsDefinition", .value = 0x08, .parameters = &.{} },
+                .{ .name = "FlagFwdDecl", .value = 0x10, .parameters = &.{} },
+                .{ .name = "FlagArtificial", .value = 0x20, .parameters = &.{} },
+                .{ .name = "FlagExplicit", .value = 0x40, .parameters = &.{} },
+                .{ .name = "FlagPrototyped", .value = 0x80, .parameters = &.{} },
+                .{ .name = "FlagObjectPointer", .value = 0x100, .parameters = &.{} },
+                .{ .name = "FlagStaticMember", .value = 0x200, .parameters = &.{} },
+                .{ .name = "FlagIndirectVariable", .value = 0x400, .parameters = &.{} },
+                .{ .name = "FlagLValueReference", .value = 0x800, .parameters = &.{} },
+                .{ .name = "FlagRValueReference", .value = 0x1000, .parameters = &.{} },
+                .{ .name = "FlagIsOptimized", .value = 0x2000, .parameters = &.{} },
             },
-            .@"OpenCL.DebugInfo.100.DebugTypeQualifier" => &[_]Enumerant{
-                .{ .name = "ConstType", .value = 0, .parameters = &[_]OperandKind{} },
-                .{ .name = "VolatileType", .value = 1, .parameters = &[_]OperandKind{} },
-                .{ .name = "RestrictType", .value = 2, .parameters = &[_]OperandKind{} },
-                .{ .name = "AtomicType", .value = 3, .parameters = &[_]OperandKind{} },
+            .debug_info_debug_base_type_attribute_encoding => &.{
+                .{ .name = "Unspecified", .value = 0, .parameters = &.{} },
+                .{ .name = "Address", .value = 1, .parameters = &.{} },
+                .{ .name = "Boolean", .value = 2, .parameters = &.{} },
+                .{ .name = "Float", .value = 4, .parameters = &.{} },
+                .{ .name = "Signed", .value = 5, .parameters = &.{} },
+                .{ .name = "SignedChar", .value = 6, .parameters = &.{} },
+                .{ .name = "Unsigned", .value = 7, .parameters = &.{} },
+                .{ .name = "UnsignedChar", .value = 8, .parameters = &.{} },
             },
-            .@"OpenCL.DebugInfo.100.DebugOperation" => &[_]Enumerant{
-                .{ .name = "Deref", .value = 0, .parameters = &[_]OperandKind{} },
-                .{ .name = "Plus", .value = 1, .parameters = &[_]OperandKind{} },
-                .{ .name = "Minus", .value = 2, .parameters = &[_]OperandKind{} },
-                .{ .name = "PlusUconst", .value = 3, .parameters = &[_]OperandKind{.LiteralInteger} },
-                .{ .name = "BitPiece", .value = 4, .parameters = &[_]OperandKind{ .LiteralInteger, .LiteralInteger } },
-                .{ .name = "Swap", .value = 5, .parameters = &[_]OperandKind{} },
-                .{ .name = "Xderef", .value = 6, .parameters = &[_]OperandKind{} },
-                .{ .name = "StackValue", .value = 7, .parameters = &[_]OperandKind{} },
-                .{ .name = "Constu", .value = 8, .parameters = &[_]OperandKind{.LiteralInteger} },
-                .{ .name = "Fragment", .value = 9, .parameters = &[_]OperandKind{ .LiteralInteger, .LiteralInteger } },
+            .debug_info_debug_composite_type => &.{
+                .{ .name = "Class", .value = 0, .parameters = &.{} },
+                .{ .name = "Structure", .value = 1, .parameters = &.{} },
+                .{ .name = "Union", .value = 2, .parameters = &.{} },
             },
-            .@"OpenCL.DebugInfo.100.DebugImportedEntity" => &[_]Enumerant{
-                .{ .name = "ImportedModule", .value = 0, .parameters = &[_]OperandKind{} },
-                .{ .name = "ImportedDeclaration", .value = 1, .parameters = &[_]OperandKind{} },
+            .debug_info_debug_type_qualifier => &.{
+                .{ .name = "ConstType", .value = 0, .parameters = &.{} },
+                .{ .name = "VolatileType", .value = 1, .parameters = &.{} },
+                .{ .name = "RestrictType", .value = 2, .parameters = &.{} },
             },
-            .@"NonSemantic.Shader.DebugInfo.100.DebugInfoFlags" => &[_]Enumerant{
-                .{ .name = "FlagIsProtected", .value = 0x01, .parameters = &[_]OperandKind{} },
-                .{ .name = "FlagIsPrivate", .value = 0x02, .parameters = &[_]OperandKind{} },
-                .{ .name = "FlagIsPublic", .value = 0x03, .parameters = &[_]OperandKind{} },
-                .{ .name = "FlagIsLocal", .value = 0x04, .parameters = &[_]OperandKind{} },
-                .{ .name = "FlagIsDefinition", .value = 0x08, .parameters = &[_]OperandKind{} },
-                .{ .name = "FlagFwdDecl", .value = 0x10, .parameters = &[_]OperandKind{} },
-                .{ .name = "FlagArtificial", .value = 0x20, .parameters = &[_]OperandKind{} },
-                .{ .name = "FlagExplicit", .value = 0x40, .parameters = &[_]OperandKind{} },
-                .{ .name = "FlagPrototyped", .value = 0x80, .parameters = &[_]OperandKind{} },
-                .{ .name = "FlagObjectPointer", .value = 0x100, .parameters = &[_]OperandKind{} },
-                .{ .name = "FlagStaticMember", .value = 0x200, .parameters = &[_]OperandKind{} },
-                .{ .name = "FlagIndirectVariable", .value = 0x400, .parameters = &[_]OperandKind{} },
-                .{ .name = "FlagLValueReference", .value = 0x800, .parameters = &[_]OperandKind{} },
-                .{ .name = "FlagRValueReference", .value = 0x1000, .parameters = &[_]OperandKind{} },
-                .{ .name = "FlagIsOptimized", .value = 0x2000, .parameters = &[_]OperandKind{} },
-                .{ .name = "FlagIsEnumClass", .value = 0x4000, .parameters = &[_]OperandKind{} },
-                .{ .name = "FlagTypePassByValue", .value = 0x8000, .parameters = &[_]OperandKind{} },
-                .{ .name = "FlagTypePassByReference", .value = 0x10000, .parameters = &[_]OperandKind{} },
-                .{ .name = "FlagUnknownPhysicalLayout", .value = 0x20000, .parameters = &[_]OperandKind{} },
+            .debug_info_debug_operation => &.{
+                .{ .name = "Deref", .value = 0, .parameters = &.{} },
+                .{ .name = "Plus", .value = 1, .parameters = &.{} },
+                .{ .name = "Minus", .value = 2, .parameters = &.{} },
+                .{ .name = "PlusUconst", .value = 3, .parameters = &.{.literal_integer} },
+                .{ .name = "BitPiece", .value = 4, .parameters = &.{ .literal_integer, .literal_integer } },
+                .{ .name = "Swap", .value = 5, .parameters = &.{} },
+                .{ .name = "Xderef", .value = 6, .parameters = &.{} },
+                .{ .name = "StackValue", .value = 7, .parameters = &.{} },
+                .{ .name = "Constu", .value = 8, .parameters = &.{.literal_integer} },
             },
-            .@"NonSemantic.Shader.DebugInfo.100.BuildIdentifierFlags" => &[_]Enumerant{
-                .{ .name = "IdentifierPossibleDuplicates", .value = 0x01, .parameters = &[_]OperandKind{} },
+            .open_cl_debug_info_100_debug_info_flags => &.{
+                .{ .name = "FlagIsProtected", .value = 0x01, .parameters = &.{} },
+                .{ .name = "FlagIsPrivate", .value = 0x02, .parameters = &.{} },
+                .{ .name = "FlagIsPublic", .value = 0x03, .parameters = &.{} },
+                .{ .name = "FlagIsLocal", .value = 0x04, .parameters = &.{} },
+                .{ .name = "FlagIsDefinition", .value = 0x08, .parameters = &.{} },
+                .{ .name = "FlagFwdDecl", .value = 0x10, .parameters = &.{} },
+                .{ .name = "FlagArtificial", .value = 0x20, .parameters = &.{} },
+                .{ .name = "FlagExplicit", .value = 0x40, .parameters = &.{} },
+                .{ .name = "FlagPrototyped", .value = 0x80, .parameters = &.{} },
+                .{ .name = "FlagObjectPointer", .value = 0x100, .parameters = &.{} },
+                .{ .name = "FlagStaticMember", .value = 0x200, .parameters = &.{} },
+                .{ .name = "FlagIndirectVariable", .value = 0x400, .parameters = &.{} },
+                .{ .name = "FlagLValueReference", .value = 0x800, .parameters = &.{} },
+                .{ .name = "FlagRValueReference", .value = 0x1000, .parameters = &.{} },
+                .{ .name = "FlagIsOptimized", .value = 0x2000, .parameters = &.{} },
+                .{ .name = "FlagIsEnumClass", .value = 0x4000, .parameters = &.{} },
+                .{ .name = "FlagTypePassByValue", .value = 0x8000, .parameters = &.{} },
+                .{ .name = "FlagTypePassByReference", .value = 0x10000, .parameters = &.{} },
             },
-            .@"NonSemantic.Shader.DebugInfo.100.DebugBaseTypeAttributeEncoding" => &[_]Enumerant{
-                .{ .name = "Unspecified", .value = 0, .parameters = &[_]OperandKind{} },
-                .{ .name = "Address", .value = 1, .parameters = &[_]OperandKind{} },
-                .{ .name = "Boolean", .value = 2, .parameters = &[_]OperandKind{} },
-                .{ .name = "Float", .value = 3, .parameters = &[_]OperandKind{} },
-                .{ .name = "Signed", .value = 4, .parameters = &[_]OperandKind{} },
-                .{ .name = "SignedChar", .value = 5, .parameters = &[_]OperandKind{} },
-                .{ .name = "Unsigned", .value = 6, .parameters = &[_]OperandKind{} },
-                .{ .name = "UnsignedChar", .value = 7, .parameters = &[_]OperandKind{} },
+            .open_cl_debug_info_100_debug_base_type_attribute_encoding => &.{
+                .{ .name = "Unspecified", .value = 0, .parameters = &.{} },
+                .{ .name = "Address", .value = 1, .parameters = &.{} },
+                .{ .name = "Boolean", .value = 2, .parameters = &.{} },
+                .{ .name = "Float", .value = 3, .parameters = &.{} },
+                .{ .name = "Signed", .value = 4, .parameters = &.{} },
+                .{ .name = "SignedChar", .value = 5, .parameters = &.{} },
+                .{ .name = "Unsigned", .value = 6, .parameters = &.{} },
+                .{ .name = "UnsignedChar", .value = 7, .parameters = &.{} },
             },
-            .@"NonSemantic.Shader.DebugInfo.100.DebugCompositeType" => &[_]Enumerant{
-                .{ .name = "Class", .value = 0, .parameters = &[_]OperandKind{} },
-                .{ .name = "Structure", .value = 1, .parameters = &[_]OperandKind{} },
-                .{ .name = "Union", .value = 2, .parameters = &[_]OperandKind{} },
+            .open_cl_debug_info_100_debug_composite_type => &.{
+                .{ .name = "Class", .value = 0, .parameters = &.{} },
+                .{ .name = "Structure", .value = 1, .parameters = &.{} },
+                .{ .name = "Union", .value = 2, .parameters = &.{} },
             },
-            .@"NonSemantic.Shader.DebugInfo.100.DebugTypeQualifier" => &[_]Enumerant{
-                .{ .name = "ConstType", .value = 0, .parameters = &[_]OperandKind{} },
-                .{ .name = "VolatileType", .value = 1, .parameters = &[_]OperandKind{} },
-                .{ .name = "RestrictType", .value = 2, .parameters = &[_]OperandKind{} },
-                .{ .name = "AtomicType", .value = 3, .parameters = &[_]OperandKind{} },
+            .open_cl_debug_info_100_debug_type_qualifier => &.{
+                .{ .name = "ConstType", .value = 0, .parameters = &.{} },
+                .{ .name = "VolatileType", .value = 1, .parameters = &.{} },
+                .{ .name = "RestrictType", .value = 2, .parameters = &.{} },
+                .{ .name = "AtomicType", .value = 3, .parameters = &.{} },
             },
-            .@"NonSemantic.Shader.DebugInfo.100.DebugOperation" => &[_]Enumerant{
-                .{ .name = "Deref", .value = 0, .parameters = &[_]OperandKind{} },
-                .{ .name = "Plus", .value = 1, .parameters = &[_]OperandKind{} },
-                .{ .name = "Minus", .value = 2, .parameters = &[_]OperandKind{} },
-                .{ .name = "PlusUconst", .value = 3, .parameters = &[_]OperandKind{.IdRef} },
-                .{ .name = "BitPiece", .value = 4, .parameters = &[_]OperandKind{ .IdRef, .IdRef } },
-                .{ .name = "Swap", .value = 5, .parameters = &[_]OperandKind{} },
-                .{ .name = "Xderef", .value = 6, .parameters = &[_]OperandKind{} },
-                .{ .name = "StackValue", .value = 7, .parameters = &[_]OperandKind{} },
-                .{ .name = "Constu", .value = 8, .parameters = &[_]OperandKind{.IdRef} },
-                .{ .name = "Fragment", .value = 9, .parameters = &[_]OperandKind{ .IdRef, .IdRef } },
+            .open_cl_debug_info_100_debug_operation => &.{
+                .{ .name = "Deref", .value = 0, .parameters = &.{} },
+                .{ .name = "Plus", .value = 1, .parameters = &.{} },
+                .{ .name = "Minus", .value = 2, .parameters = &.{} },
+                .{ .name = "PlusUconst", .value = 3, .parameters = &.{.literal_integer} },
+                .{ .name = "BitPiece", .value = 4, .parameters = &.{ .literal_integer, .literal_integer } },
+                .{ .name = "Swap", .value = 5, .parameters = &.{} },
+                .{ .name = "Xderef", .value = 6, .parameters = &.{} },
+                .{ .name = "StackValue", .value = 7, .parameters = &.{} },
+                .{ .name = "Constu", .value = 8, .parameters = &.{.literal_integer} },
+                .{ .name = "Fragment", .value = 9, .parameters = &.{ .literal_integer, .literal_integer } },
             },
-            .@"NonSemantic.Shader.DebugInfo.100.DebugImportedEntity" => &[_]Enumerant{
-                .{ .name = "ImportedModule", .value = 0, .parameters = &[_]OperandKind{} },
-                .{ .name = "ImportedDeclaration", .value = 1, .parameters = &[_]OperandKind{} },
+            .open_cl_debug_info_100_debug_imported_entity => &.{
+                .{ .name = "ImportedModule", .value = 0, .parameters = &.{} },
+                .{ .name = "ImportedDeclaration", .value = 1, .parameters = &.{} },
             },
-            .@"NonSemantic.ClspvReflection.6.KernelPropertyFlags" => &[_]Enumerant{
-                .{ .name = "MayUsePrintf", .value = 0x1, .parameters = &[_]OperandKind{} },
+            .non_semantic_clspv_reflection_6_kernel_property_flags => &.{
+                .{ .name = "MayUsePrintf", .value = 0x1, .parameters = &.{} },
             },
-            .@"DebugInfo.DebugInfoFlags" => &[_]Enumerant{
-                .{ .name = "FlagIsProtected", .value = 0x01, .parameters = &[_]OperandKind{} },
-                .{ .name = "FlagIsPrivate", .value = 0x02, .parameters = &[_]OperandKind{} },
-                .{ .name = "FlagIsPublic", .value = 0x03, .parameters = &[_]OperandKind{} },
-                .{ .name = "FlagIsLocal", .value = 0x04, .parameters = &[_]OperandKind{} },
-                .{ .name = "FlagIsDefinition", .value = 0x08, .parameters = &[_]OperandKind{} },
-                .{ .name = "FlagFwdDecl", .value = 0x10, .parameters = &[_]OperandKind{} },
-                .{ .name = "FlagArtificial", .value = 0x20, .parameters = &[_]OperandKind{} },
-                .{ .name = "FlagExplicit", .value = 0x40, .parameters = &[_]OperandKind{} },
-                .{ .name = "FlagPrototyped", .value = 0x80, .parameters = &[_]OperandKind{} },
-                .{ .name = "FlagObjectPointer", .value = 0x100, .parameters = &[_]OperandKind{} },
-                .{ .name = "FlagStaticMember", .value = 0x200, .parameters = &[_]OperandKind{} },
-                .{ .name = "FlagIndirectVariable", .value = 0x400, .parameters = &[_]OperandKind{} },
-                .{ .name = "FlagLValueReference", .value = 0x800, .parameters = &[_]OperandKind{} },
-                .{ .name = "FlagRValueReference", .value = 0x1000, .parameters = &[_]OperandKind{} },
-                .{ .name = "FlagIsOptimized", .value = 0x2000, .parameters = &[_]OperandKind{} },
+            .non_semantic_shader_debug_info_100_debug_info_flags => &.{
+                .{ .name = "FlagIsProtected", .value = 0x01, .parameters = &.{} },
+                .{ .name = "FlagIsPrivate", .value = 0x02, .parameters = &.{} },
+                .{ .name = "FlagIsPublic", .value = 0x03, .parameters = &.{} },
+                .{ .name = "FlagIsLocal", .value = 0x04, .parameters = &.{} },
+                .{ .name = "FlagIsDefinition", .value = 0x08, .parameters = &.{} },
+                .{ .name = "FlagFwdDecl", .value = 0x10, .parameters = &.{} },
+                .{ .name = "FlagArtificial", .value = 0x20, .parameters = &.{} },
+                .{ .name = "FlagExplicit", .value = 0x40, .parameters = &.{} },
+                .{ .name = "FlagPrototyped", .value = 0x80, .parameters = &.{} },
+                .{ .name = "FlagObjectPointer", .value = 0x100, .parameters = &.{} },
+                .{ .name = "FlagStaticMember", .value = 0x200, .parameters = &.{} },
+                .{ .name = "FlagIndirectVariable", .value = 0x400, .parameters = &.{} },
+                .{ .name = "FlagLValueReference", .value = 0x800, .parameters = &.{} },
+                .{ .name = "FlagRValueReference", .value = 0x1000, .parameters = &.{} },
+                .{ .name = "FlagIsOptimized", .value = 0x2000, .parameters = &.{} },
+                .{ .name = "FlagIsEnumClass", .value = 0x4000, .parameters = &.{} },
+                .{ .name = "FlagTypePassByValue", .value = 0x8000, .parameters = &.{} },
+                .{ .name = "FlagTypePassByReference", .value = 0x10000, .parameters = &.{} },
+                .{ .name = "FlagUnknownPhysicalLayout", .value = 0x20000, .parameters = &.{} },
             },
-            .@"DebugInfo.DebugBaseTypeAttributeEncoding" => &[_]Enumerant{
-                .{ .name = "Unspecified", .value = 0, .parameters = &[_]OperandKind{} },
-                .{ .name = "Address", .value = 1, .parameters = &[_]OperandKind{} },
-                .{ .name = "Boolean", .value = 2, .parameters = &[_]OperandKind{} },
-                .{ .name = "Float", .value = 4, .parameters = &[_]OperandKind{} },
-                .{ .name = "Signed", .value = 5, .parameters = &[_]OperandKind{} },
-                .{ .name = "SignedChar", .value = 6, .parameters = &[_]OperandKind{} },
-                .{ .name = "Unsigned", .value = 7, .parameters = &[_]OperandKind{} },
-                .{ .name = "UnsignedChar", .value = 8, .parameters = &[_]OperandKind{} },
+            .non_semantic_shader_debug_info_100_build_identifier_flags => &.{
+                .{ .name = "IdentifierPossibleDuplicates", .value = 0x01, .parameters = &.{} },
             },
-            .@"DebugInfo.DebugCompositeType" => &[_]Enumerant{
-                .{ .name = "Class", .value = 0, .parameters = &[_]OperandKind{} },
-                .{ .name = "Structure", .value = 1, .parameters = &[_]OperandKind{} },
-                .{ .name = "Union", .value = 2, .parameters = &[_]OperandKind{} },
+            .non_semantic_shader_debug_info_100_debug_base_type_attribute_encoding => &.{
+                .{ .name = "Unspecified", .value = 0, .parameters = &.{} },
+                .{ .name = "Address", .value = 1, .parameters = &.{} },
+                .{ .name = "Boolean", .value = 2, .parameters = &.{} },
+                .{ .name = "Float", .value = 3, .parameters = &.{} },
+                .{ .name = "Signed", .value = 4, .parameters = &.{} },
+                .{ .name = "SignedChar", .value = 5, .parameters = &.{} },
+                .{ .name = "Unsigned", .value = 6, .parameters = &.{} },
+                .{ .name = "UnsignedChar", .value = 7, .parameters = &.{} },
             },
-            .@"DebugInfo.DebugTypeQualifier" => &[_]Enumerant{
-                .{ .name = "ConstType", .value = 0, .parameters = &[_]OperandKind{} },
-                .{ .name = "VolatileType", .value = 1, .parameters = &[_]OperandKind{} },
-                .{ .name = "RestrictType", .value = 2, .parameters = &[_]OperandKind{} },
+            .non_semantic_shader_debug_info_100_debug_composite_type => &.{
+                .{ .name = "Class", .value = 0, .parameters = &.{} },
+                .{ .name = "Structure", .value = 1, .parameters = &.{} },
+                .{ .name = "Union", .value = 2, .parameters = &.{} },
             },
-            .@"DebugInfo.DebugOperation" => &[_]Enumerant{
-                .{ .name = "Deref", .value = 0, .parameters = &[_]OperandKind{} },
-                .{ .name = "Plus", .value = 1, .parameters = &[_]OperandKind{} },
-                .{ .name = "Minus", .value = 2, .parameters = &[_]OperandKind{} },
-                .{ .name = "PlusUconst", .value = 3, .parameters = &[_]OperandKind{.LiteralInteger} },
-                .{ .name = "BitPiece", .value = 4, .parameters = &[_]OperandKind{ .LiteralInteger, .LiteralInteger } },
-                .{ .name = "Swap", .value = 5, .parameters = &[_]OperandKind{} },
-                .{ .name = "Xderef", .value = 6, .parameters = &[_]OperandKind{} },
-                .{ .name = "StackValue", .value = 7, .parameters = &[_]OperandKind{} },
-                .{ .name = "Constu", .value = 8, .parameters = &[_]OperandKind{.LiteralInteger} },
+            .non_semantic_shader_debug_info_100_debug_type_qualifier => &.{
+                .{ .name = "ConstType", .value = 0, .parameters = &.{} },
+                .{ .name = "VolatileType", .value = 1, .parameters = &.{} },
+                .{ .name = "RestrictType", .value = 2, .parameters = &.{} },
+                .{ .name = "AtomicType", .value = 3, .parameters = &.{} },
+            },
+            .non_semantic_shader_debug_info_100_debug_operation => &.{
+                .{ .name = "Deref", .value = 0, .parameters = &.{} },
+                .{ .name = "Plus", .value = 1, .parameters = &.{} },
+                .{ .name = "Minus", .value = 2, .parameters = &.{} },
+                .{ .name = "PlusUconst", .value = 3, .parameters = &.{.id_ref} },
+                .{ .name = "BitPiece", .value = 4, .parameters = &.{ .id_ref, .id_ref } },
+                .{ .name = "Swap", .value = 5, .parameters = &.{} },
+                .{ .name = "Xderef", .value = 6, .parameters = &.{} },
+                .{ .name = "StackValue", .value = 7, .parameters = &.{} },
+                .{ .name = "Constu", .value = 8, .parameters = &.{.id_ref} },
+                .{ .name = "Fragment", .value = 9, .parameters = &.{ .id_ref, .id_ref } },
+            },
+            .non_semantic_shader_debug_info_100_debug_imported_entity => &.{
+                .{ .name = "ImportedModule", .value = 0, .parameters = &.{} },
+                .{ .name = "ImportedDeclaration", .value = 1, .parameters = &.{} },
             },
         };
     }
@@ -1926,14 +1985,34 @@ pub const Opcode = enum(u16) {
     OpColorAttachmentReadEXT = 4160,
     OpDepthAttachmentReadEXT = 4161,
     OpStencilAttachmentReadEXT = 4162,
+    OpTypeTensorARM = 4163,
+    OpTensorReadARM = 4164,
+    OpTensorWriteARM = 4165,
+    OpTensorQuerySizeARM = 4166,
+    OpGraphConstantARM = 4181,
+    OpGraphEntryPointARM = 4182,
+    OpGraphARM = 4183,
+    OpGraphInputARM = 4184,
+    OpGraphSetOutputARM = 4185,
+    OpGraphEndARM = 4186,
+    OpTypeGraphARM = 4190,
     OpTerminateInvocation = 4416,
+    OpTypeUntypedPointerKHR = 4417,
+    OpUntypedVariableKHR = 4418,
+    OpUntypedAccessChainKHR = 4419,
+    OpUntypedInBoundsAccessChainKHR = 4420,
     OpSubgroupBallotKHR = 4421,
     OpSubgroupFirstInvocationKHR = 4422,
+    OpUntypedPtrAccessChainKHR = 4423,
+    OpUntypedInBoundsPtrAccessChainKHR = 4424,
+    OpUntypedArrayLengthKHR = 4425,
+    OpUntypedPrefetchKHR = 4426,
     OpSubgroupAllKHR = 4428,
     OpSubgroupAnyKHR = 4429,
     OpSubgroupAllEqualKHR = 4430,
     OpGroupNonUniformRotateKHR = 4431,
     OpSubgroupReadInvocationKHR = 4432,
+    OpExtInstWithForwardRefsKHR = 4433,
     OpTraceRayKHR = 4445,
     OpExecuteCallableKHR = 4446,
     OpConvertUToAccelerationStructureKHR = 4447,
@@ -1950,6 +2029,9 @@ pub const Opcode = enum(u16) {
     OpCooperativeMatrixStoreKHR = 4458,
     OpCooperativeMatrixMulAddKHR = 4459,
     OpCooperativeMatrixLengthKHR = 4460,
+    OpConstantCompositeReplicateEXT = 4461,
+    OpSpecConstantCompositeReplicateEXT = 4462,
+    OpCompositeConstructReplicateEXT = 4463,
     OpTypeRayQueryKHR = 4472,
     OpRayQueryInitializeKHR = 4473,
     OpRayQueryTerminateKHR = 4474,
@@ -1976,9 +2058,14 @@ pub const Opcode = enum(u16) {
     OpFragmentMaskFetchAMD = 5011,
     OpFragmentFetchAMD = 5012,
     OpReadClockKHR = 5056,
-    OpFinalizeNodePayloadsAMDX = 5075,
+    OpAllocateNodePayloadsAMDX = 5074,
+    OpEnqueueNodePayloadsAMDX = 5075,
+    OpTypeNodePayloadArrayAMDX = 5076,
     OpFinishWritingNodePayloadAMDX = 5078,
-    OpInitializeNodePayloadsAMDX = 5090,
+    OpNodePayloadArrayLengthAMDX = 5090,
+    OpIsNodePayloadValidAMDX = 5101,
+    OpConstantStringAMDX = 5103,
+    OpSpecConstantStringAMDX = 5104,
     OpGroupNonUniformQuadAllKHR = 5110,
     OpGroupNonUniformQuadAnyKHR = 5111,
     OpHitObjectRecordHitMotionNV = 5249,
@@ -2015,12 +2102,20 @@ pub const Opcode = enum(u16) {
     OpReorderThreadWithHintNV = 5280,
     OpTypeHitObjectNV = 5281,
     OpImageSampleFootprintNV = 5283,
+    OpTypeCooperativeVectorNV = 5288,
+    OpCooperativeVectorMatrixMulNV = 5289,
+    OpCooperativeVectorOuterProductAccumulateNV = 5290,
+    OpCooperativeVectorReduceSumAccumulateNV = 5291,
+    OpCooperativeVectorMatrixMulAddNV = 5292,
+    OpCooperativeMatrixConvertNV = 5293,
     OpEmitMeshTasksEXT = 5294,
     OpSetMeshOutputsEXT = 5295,
     OpGroupNonUniformPartitionNV = 5296,
     OpWritePackedPrimitiveIndices4x8NV = 5299,
     OpFetchMicroTriangleVertexPositionNV = 5300,
     OpFetchMicroTriangleVertexBarycentricNV = 5301,
+    OpCooperativeVectorLoadNV = 5302,
+    OpCooperativeVectorStoreNV = 5303,
     OpReportIntersectionKHR = 5334,
     OpIgnoreIntersectionNV = 5335,
     OpTerminateRayNV = 5336,
@@ -2030,6 +2125,8 @@ pub const Opcode = enum(u16) {
     OpRayQueryGetIntersectionTriangleVertexPositionsKHR = 5340,
     OpTypeAccelerationStructureKHR = 5341,
     OpExecuteCallableNV = 5344,
+    OpRayQueryGetClusterIdNV = 5345,
+    OpHitObjectGetClusterIdNV = 5346,
     OpTypeCooperativeMatrixNV = 5358,
     OpCooperativeMatrixLoadNV = 5359,
     OpCooperativeMatrixStoreNV = 5360,
@@ -2037,8 +2134,25 @@ pub const Opcode = enum(u16) {
     OpCooperativeMatrixLengthNV = 5362,
     OpBeginInvocationInterlockEXT = 5364,
     OpEndInvocationInterlockEXT = 5365,
+    OpCooperativeMatrixReduceNV = 5366,
+    OpCooperativeMatrixLoadTensorNV = 5367,
+    OpCooperativeMatrixStoreTensorNV = 5368,
+    OpCooperativeMatrixPerElementOpNV = 5369,
+    OpTypeTensorLayoutNV = 5370,
+    OpTypeTensorViewNV = 5371,
+    OpCreateTensorLayoutNV = 5372,
+    OpTensorLayoutSetDimensionNV = 5373,
+    OpTensorLayoutSetStrideNV = 5374,
+    OpTensorLayoutSliceNV = 5375,
+    OpTensorLayoutSetClampValueNV = 5376,
+    OpCreateTensorViewNV = 5377,
+    OpTensorViewSetDimensionNV = 5378,
+    OpTensorViewSetStrideNV = 5379,
     OpDemoteToHelperInvocation = 5380,
     OpIsHelperInvocationEXT = 5381,
+    OpTensorViewSetClipNV = 5382,
+    OpTensorLayoutSetBlockSizeNV = 5384,
+    OpCooperativeMatrixTransposeNV = 5390,
     OpConvertUToImageNV = 5391,
     OpConvertUToSamplerNV = 5392,
     OpConvertImageToUNV = 5393,
@@ -2047,6 +2161,19 @@ pub const Opcode = enum(u16) {
     OpConvertSampledImageToUNV = 5396,
     OpSamplerImageAddressingModeNV = 5397,
     OpRawAccessChainNV = 5398,
+    OpRayQueryGetIntersectionSpherePositionNV = 5427,
+    OpRayQueryGetIntersectionSphereRadiusNV = 5428,
+    OpRayQueryGetIntersectionLSSPositionsNV = 5429,
+    OpRayQueryGetIntersectionLSSRadiiNV = 5430,
+    OpRayQueryGetIntersectionLSSHitValueNV = 5431,
+    OpHitObjectGetSpherePositionNV = 5432,
+    OpHitObjectGetSphereRadiusNV = 5433,
+    OpHitObjectGetLSSPositionsNV = 5434,
+    OpHitObjectGetLSSRadiiNV = 5435,
+    OpHitObjectIsSphereHitNV = 5436,
+    OpHitObjectIsLSSHitNV = 5437,
+    OpRayQueryIsSphereHitNV = 5438,
+    OpRayQueryIsLSSHitNV = 5439,
     OpSubgroupShuffleINTEL = 5571,
     OpSubgroupShuffleDownINTEL = 5572,
     OpSubgroupShuffleUpINTEL = 5573,
@@ -2108,6 +2235,20 @@ pub const Opcode = enum(u16) {
     OpConvertBF16ToFINTEL = 6117,
     OpControlBarrierArriveINTEL = 6142,
     OpControlBarrierWaitINTEL = 6143,
+    OpArithmeticFenceEXT = 6145,
+    OpTaskSequenceCreateINTEL = 6163,
+    OpTaskSequenceAsyncINTEL = 6164,
+    OpTaskSequenceGetINTEL = 6165,
+    OpTaskSequenceReleaseINTEL = 6166,
+    OpTypeTaskSequenceINTEL = 6199,
+    OpSubgroupBlockPrefetchINTEL = 6221,
+    OpSubgroup2DBlockLoadINTEL = 6231,
+    OpSubgroup2DBlockLoadTransformINTEL = 6232,
+    OpSubgroup2DBlockLoadTransposeINTEL = 6233,
+    OpSubgroup2DBlockPrefetchINTEL = 6234,
+    OpSubgroup2DBlockStoreINTEL = 6235,
+    OpSubgroupMatrixMultiplyAccumulateINTEL = 6237,
+    OpBitwiseFunctionINTEL = 6242,
     OpGroupIMulKHR = 6401,
     OpGroupFMulKHR = 6402,
     OpGroupBitwiseAndKHR = 6403,
@@ -2116,1125 +2257,1290 @@ pub const Opcode = enum(u16) {
     OpGroupLogicalAndKHR = 6406,
     OpGroupLogicalOrKHR = 6407,
     OpGroupLogicalXorKHR = 6408,
+    OpRoundFToTF32INTEL = 6426,
     OpMaskedGatherINTEL = 6428,
     OpMaskedScatterINTEL = 6429,
-    pub const OpSDotKHR = Opcode.OpSDot;
-    pub const OpUDotKHR = Opcode.OpUDot;
-    pub const OpSUDotKHR = Opcode.OpSUDot;
-    pub const OpSDotAccSatKHR = Opcode.OpSDotAccSat;
-    pub const OpUDotAccSatKHR = Opcode.OpUDotAccSat;
-    pub const OpSUDotAccSatKHR = Opcode.OpSUDotAccSat;
-    pub const OpReportIntersectionNV = Opcode.OpReportIntersectionKHR;
-    pub const OpTypeAccelerationStructureNV = Opcode.OpTypeAccelerationStructureKHR;
-    pub const OpDemoteToHelperInvocationEXT = Opcode.OpDemoteToHelperInvocation;
-    pub const OpDecorateStringGOOGLE = Opcode.OpDecorateString;
-    pub const OpMemberDecorateStringGOOGLE = Opcode.OpMemberDecorateString;
+    OpConvertHandleToImageINTEL = 6529,
+    OpConvertHandleToSamplerINTEL = 6530,
+    OpConvertHandleToSampledImageINTEL = 6531,
 
     pub fn Operands(comptime self: Opcode) type {
         return switch (self) {
             .OpNop => void,
-            .OpUndef => struct { id_result_type: IdResultType, id_result: IdResult },
+            .OpUndef => struct { id_result_type: Id, id_result: Id },
             .OpSourceContinued => struct { continued_source: LiteralString },
-            .OpSource => struct { source_language: SourceLanguage, version: LiteralInteger, file: ?IdRef = null, source: ?LiteralString = null },
+            .OpSource => struct { source_language: SourceLanguage, version: LiteralInteger, file: ?Id = null, source: ?LiteralString = null },
             .OpSourceExtension => struct { extension: LiteralString },
-            .OpName => struct { target: IdRef, name: LiteralString },
-            .OpMemberName => struct { type: IdRef, member: LiteralInteger, name: LiteralString },
-            .OpString => struct { id_result: IdResult, string: LiteralString },
-            .OpLine => struct { file: IdRef, line: LiteralInteger, column: LiteralInteger },
+            .OpName => struct { target: Id, name: LiteralString },
+            .OpMemberName => struct { type: Id, member: LiteralInteger, name: LiteralString },
+            .OpString => struct { id_result: Id, string: LiteralString },
+            .OpLine => struct { file: Id, line: LiteralInteger, column: LiteralInteger },
             .OpExtension => struct { name: LiteralString },
-            .OpExtInstImport => struct { id_result: IdResult, name: LiteralString },
-            .OpExtInst => struct { id_result_type: IdResultType, id_result: IdResult, set: IdRef, instruction: LiteralExtInstInteger, id_ref_4: []const IdRef = &.{} },
+            .OpExtInstImport => struct { id_result: Id, name: LiteralString },
+            .OpExtInst => struct { id_result_type: Id, id_result: Id, set: Id, instruction: LiteralExtInstInteger, id_ref_4: []const Id = &.{} },
             .OpMemoryModel => struct { addressing_model: AddressingModel, memory_model: MemoryModel },
-            .OpEntryPoint => struct { execution_model: ExecutionModel, entry_point: IdRef, name: LiteralString, interface: []const IdRef = &.{} },
-            .OpExecutionMode => struct { entry_point: IdRef, mode: ExecutionMode.Extended },
+            .OpEntryPoint => struct { execution_model: ExecutionModel, entry_point: Id, name: LiteralString, interface: []const Id = &.{} },
+            .OpExecutionMode => struct { entry_point: Id, mode: ExecutionMode.Extended },
             .OpCapability => struct { capability: Capability },
-            .OpTypeVoid => struct { id_result: IdResult },
-            .OpTypeBool => struct { id_result: IdResult },
-            .OpTypeInt => struct { id_result: IdResult, width: LiteralInteger, signedness: LiteralInteger },
-            .OpTypeFloat => struct { id_result: IdResult, width: LiteralInteger },
-            .OpTypeVector => struct { id_result: IdResult, component_type: IdRef, component_count: LiteralInteger },
-            .OpTypeMatrix => struct { id_result: IdResult, column_type: IdRef, column_count: LiteralInteger },
-            .OpTypeImage => struct { id_result: IdResult, sampled_type: IdRef, dim: Dim, depth: LiteralInteger, arrayed: LiteralInteger, ms: LiteralInteger, sampled: LiteralInteger, image_format: ImageFormat, access_qualifier: ?AccessQualifier = null },
-            .OpTypeSampler => struct { id_result: IdResult },
-            .OpTypeSampledImage => struct { id_result: IdResult, image_type: IdRef },
-            .OpTypeArray => struct { id_result: IdResult, element_type: IdRef, length: IdRef },
-            .OpTypeRuntimeArray => struct { id_result: IdResult, element_type: IdRef },
-            .OpTypeStruct => struct { id_result: IdResult, id_ref: []const IdRef = &.{} },
-            .OpTypeOpaque => struct { id_result: IdResult, literal_string: LiteralString },
-            .OpTypePointer => struct { id_result: IdResult, storage_class: StorageClass, type: IdRef },
-            .OpTypeFunction => struct { id_result: IdResult, return_type: IdRef, id_ref_2: []const IdRef = &.{} },
-            .OpTypeEvent => struct { id_result: IdResult },
-            .OpTypeDeviceEvent => struct { id_result: IdResult },
-            .OpTypeReserveId => struct { id_result: IdResult },
-            .OpTypeQueue => struct { id_result: IdResult },
-            .OpTypePipe => struct { id_result: IdResult, qualifier: AccessQualifier },
-            .OpTypeForwardPointer => struct { pointer_type: IdRef, storage_class: StorageClass },
-            .OpConstantTrue => struct { id_result_type: IdResultType, id_result: IdResult },
-            .OpConstantFalse => struct { id_result_type: IdResultType, id_result: IdResult },
-            .OpConstant => struct { id_result_type: IdResultType, id_result: IdResult, value: LiteralContextDependentNumber },
-            .OpConstantComposite => struct { id_result_type: IdResultType, id_result: IdResult, constituents: []const IdRef = &.{} },
-            .OpConstantSampler => struct { id_result_type: IdResultType, id_result: IdResult, sampler_addressing_mode: SamplerAddressingMode, param: LiteralInteger, sampler_filter_mode: SamplerFilterMode },
-            .OpConstantNull => struct { id_result_type: IdResultType, id_result: IdResult },
-            .OpSpecConstantTrue => struct { id_result_type: IdResultType, id_result: IdResult },
-            .OpSpecConstantFalse => struct { id_result_type: IdResultType, id_result: IdResult },
-            .OpSpecConstant => struct { id_result_type: IdResultType, id_result: IdResult, value: LiteralContextDependentNumber },
-            .OpSpecConstantComposite => struct { id_result_type: IdResultType, id_result: IdResult, constituents: []const IdRef = &.{} },
-            .OpSpecConstantOp => struct { id_result_type: IdResultType, id_result: IdResult, opcode: LiteralSpecConstantOpInteger },
-            .OpFunction => struct { id_result_type: IdResultType, id_result: IdResult, function_control: FunctionControl, function_type: IdRef },
-            .OpFunctionParameter => struct { id_result_type: IdResultType, id_result: IdResult },
+            .OpTypeVoid => struct { id_result: Id },
+            .OpTypeBool => struct { id_result: Id },
+            .OpTypeInt => struct { id_result: Id, width: LiteralInteger, signedness: LiteralInteger },
+            .OpTypeFloat => struct { id_result: Id, width: LiteralInteger, floating_point_encoding: ?FPEncoding = null },
+            .OpTypeVector => struct { id_result: Id, component_type: Id, component_count: LiteralInteger },
+            .OpTypeMatrix => struct { id_result: Id, column_type: Id, column_count: LiteralInteger },
+            .OpTypeImage => struct { id_result: Id, sampled_type: Id, dim: Dim, depth: LiteralInteger, arrayed: LiteralInteger, ms: LiteralInteger, sampled: LiteralInteger, image_format: ImageFormat, access_qualifier: ?AccessQualifier = null },
+            .OpTypeSampler => struct { id_result: Id },
+            .OpTypeSampledImage => struct { id_result: Id, image_type: Id },
+            .OpTypeArray => struct { id_result: Id, element_type: Id, length: Id },
+            .OpTypeRuntimeArray => struct { id_result: Id, element_type: Id },
+            .OpTypeStruct => struct { id_result: Id, id_ref: []const Id = &.{} },
+            .OpTypeOpaque => struct { id_result: Id, literal_string: LiteralString },
+            .OpTypePointer => struct { id_result: Id, storage_class: StorageClass, type: Id },
+            .OpTypeFunction => struct { id_result: Id, return_type: Id, id_ref_2: []const Id = &.{} },
+            .OpTypeEvent => struct { id_result: Id },
+            .OpTypeDeviceEvent => struct { id_result: Id },
+            .OpTypeReserveId => struct { id_result: Id },
+            .OpTypeQueue => struct { id_result: Id },
+            .OpTypePipe => struct { id_result: Id, qualifier: AccessQualifier },
+            .OpTypeForwardPointer => struct { pointer_type: Id, storage_class: StorageClass },
+            .OpConstantTrue => struct { id_result_type: Id, id_result: Id },
+            .OpConstantFalse => struct { id_result_type: Id, id_result: Id },
+            .OpConstant => struct { id_result_type: Id, id_result: Id, value: LiteralContextDependentNumber },
+            .OpConstantComposite => struct { id_result_type: Id, id_result: Id, constituents: []const Id = &.{} },
+            .OpConstantSampler => struct { id_result_type: Id, id_result: Id, sampler_addressing_mode: SamplerAddressingMode, param: LiteralInteger, sampler_filter_mode: SamplerFilterMode },
+            .OpConstantNull => struct { id_result_type: Id, id_result: Id },
+            .OpSpecConstantTrue => struct { id_result_type: Id, id_result: Id },
+            .OpSpecConstantFalse => struct { id_result_type: Id, id_result: Id },
+            .OpSpecConstant => struct { id_result_type: Id, id_result: Id, value: LiteralContextDependentNumber },
+            .OpSpecConstantComposite => struct { id_result_type: Id, id_result: Id, constituents: []const Id = &.{} },
+            .OpSpecConstantOp => struct { id_result_type: Id, id_result: Id, opcode: LiteralSpecConstantOpInteger },
+            .OpFunction => struct { id_result_type: Id, id_result: Id, function_control: FunctionControl, function_type: Id },
+            .OpFunctionParameter => struct { id_result_type: Id, id_result: Id },
             .OpFunctionEnd => void,
-            .OpFunctionCall => struct { id_result_type: IdResultType, id_result: IdResult, function: IdRef, id_ref_3: []const IdRef = &.{} },
-            .OpVariable => struct { id_result_type: IdResultType, id_result: IdResult, storage_class: StorageClass, initializer: ?IdRef = null },
-            .OpImageTexelPointer => struct { id_result_type: IdResultType, id_result: IdResult, image: IdRef, coordinate: IdRef, sample: IdRef },
-            .OpLoad => struct { id_result_type: IdResultType, id_result: IdResult, pointer: IdRef, memory_access: ?MemoryAccess.Extended = null },
-            .OpStore => struct { pointer: IdRef, object: IdRef, memory_access: ?MemoryAccess.Extended = null },
-            .OpCopyMemory => struct { target: IdRef, source: IdRef, memory_access_2: ?MemoryAccess.Extended = null, memory_access_3: ?MemoryAccess.Extended = null },
-            .OpCopyMemorySized => struct { target: IdRef, source: IdRef, size: IdRef, memory_access_3: ?MemoryAccess.Extended = null, memory_access_4: ?MemoryAccess.Extended = null },
-            .OpAccessChain => struct { id_result_type: IdResultType, id_result: IdResult, base: IdRef, indexes: []const IdRef = &.{} },
-            .OpInBoundsAccessChain => struct { id_result_type: IdResultType, id_result: IdResult, base: IdRef, indexes: []const IdRef = &.{} },
-            .OpPtrAccessChain => struct { id_result_type: IdResultType, id_result: IdResult, base: IdRef, element: IdRef, indexes: []const IdRef = &.{} },
-            .OpArrayLength => struct { id_result_type: IdResultType, id_result: IdResult, structure: IdRef, array_member: LiteralInteger },
-            .OpGenericPtrMemSemantics => struct { id_result_type: IdResultType, id_result: IdResult, pointer: IdRef },
-            .OpInBoundsPtrAccessChain => struct { id_result_type: IdResultType, id_result: IdResult, base: IdRef, element: IdRef, indexes: []const IdRef = &.{} },
-            .OpDecorate => struct { target: IdRef, decoration: Decoration.Extended },
-            .OpMemberDecorate => struct { structure_type: IdRef, member: LiteralInteger, decoration: Decoration.Extended },
-            .OpDecorationGroup => struct { id_result: IdResult },
-            .OpGroupDecorate => struct { decoration_group: IdRef, targets: []const IdRef = &.{} },
-            .OpGroupMemberDecorate => struct { decoration_group: IdRef, targets: []const PairIdRefLiteralInteger = &.{} },
-            .OpVectorExtractDynamic => struct { id_result_type: IdResultType, id_result: IdResult, vector: IdRef, index: IdRef },
-            .OpVectorInsertDynamic => struct { id_result_type: IdResultType, id_result: IdResult, vector: IdRef, component: IdRef, index: IdRef },
-            .OpVectorShuffle => struct { id_result_type: IdResultType, id_result: IdResult, vector_1: IdRef, vector_2: IdRef, components: []const LiteralInteger = &.{} },
-            .OpCompositeConstruct => struct { id_result_type: IdResultType, id_result: IdResult, constituents: []const IdRef = &.{} },
-            .OpCompositeExtract => struct { id_result_type: IdResultType, id_result: IdResult, composite: IdRef, indexes: []const LiteralInteger = &.{} },
-            .OpCompositeInsert => struct { id_result_type: IdResultType, id_result: IdResult, object: IdRef, composite: IdRef, indexes: []const LiteralInteger = &.{} },
-            .OpCopyObject => struct { id_result_type: IdResultType, id_result: IdResult, operand: IdRef },
-            .OpTranspose => struct { id_result_type: IdResultType, id_result: IdResult, matrix: IdRef },
-            .OpSampledImage => struct { id_result_type: IdResultType, id_result: IdResult, image: IdRef, sampler: IdRef },
-            .OpImageSampleImplicitLod => struct { id_result_type: IdResultType, id_result: IdResult, sampled_image: IdRef, coordinate: IdRef, image_operands: ?ImageOperands.Extended = null },
-            .OpImageSampleExplicitLod => struct { id_result_type: IdResultType, id_result: IdResult, sampled_image: IdRef, coordinate: IdRef, image_operands: ImageOperands.Extended },
-            .OpImageSampleDrefImplicitLod => struct { id_result_type: IdResultType, id_result: IdResult, sampled_image: IdRef, coordinate: IdRef, d_ref: IdRef, image_operands: ?ImageOperands.Extended = null },
-            .OpImageSampleDrefExplicitLod => struct { id_result_type: IdResultType, id_result: IdResult, sampled_image: IdRef, coordinate: IdRef, d_ref: IdRef, image_operands: ImageOperands.Extended },
-            .OpImageSampleProjImplicitLod => struct { id_result_type: IdResultType, id_result: IdResult, sampled_image: IdRef, coordinate: IdRef, image_operands: ?ImageOperands.Extended = null },
-            .OpImageSampleProjExplicitLod => struct { id_result_type: IdResultType, id_result: IdResult, sampled_image: IdRef, coordinate: IdRef, image_operands: ImageOperands.Extended },
-            .OpImageSampleProjDrefImplicitLod => struct { id_result_type: IdResultType, id_result: IdResult, sampled_image: IdRef, coordinate: IdRef, d_ref: IdRef, image_operands: ?ImageOperands.Extended = null },
-            .OpImageSampleProjDrefExplicitLod => struct { id_result_type: IdResultType, id_result: IdResult, sampled_image: IdRef, coordinate: IdRef, d_ref: IdRef, image_operands: ImageOperands.Extended },
-            .OpImageFetch => struct { id_result_type: IdResultType, id_result: IdResult, image: IdRef, coordinate: IdRef, image_operands: ?ImageOperands.Extended = null },
-            .OpImageGather => struct { id_result_type: IdResultType, id_result: IdResult, sampled_image: IdRef, coordinate: IdRef, component: IdRef, image_operands: ?ImageOperands.Extended = null },
-            .OpImageDrefGather => struct { id_result_type: IdResultType, id_result: IdResult, sampled_image: IdRef, coordinate: IdRef, d_ref: IdRef, image_operands: ?ImageOperands.Extended = null },
-            .OpImageRead => struct { id_result_type: IdResultType, id_result: IdResult, image: IdRef, coordinate: IdRef, image_operands: ?ImageOperands.Extended = null },
-            .OpImageWrite => struct { image: IdRef, coordinate: IdRef, texel: IdRef, image_operands: ?ImageOperands.Extended = null },
-            .OpImage => struct { id_result_type: IdResultType, id_result: IdResult, sampled_image: IdRef },
-            .OpImageQueryFormat => struct { id_result_type: IdResultType, id_result: IdResult, image: IdRef },
-            .OpImageQueryOrder => struct { id_result_type: IdResultType, id_result: IdResult, image: IdRef },
-            .OpImageQuerySizeLod => struct { id_result_type: IdResultType, id_result: IdResult, image: IdRef, level_of_detail: IdRef },
-            .OpImageQuerySize => struct { id_result_type: IdResultType, id_result: IdResult, image: IdRef },
-            .OpImageQueryLod => struct { id_result_type: IdResultType, id_result: IdResult, sampled_image: IdRef, coordinate: IdRef },
-            .OpImageQueryLevels => struct { id_result_type: IdResultType, id_result: IdResult, image: IdRef },
-            .OpImageQuerySamples => struct { id_result_type: IdResultType, id_result: IdResult, image: IdRef },
-            .OpConvertFToU => struct { id_result_type: IdResultType, id_result: IdResult, float_value: IdRef },
-            .OpConvertFToS => struct { id_result_type: IdResultType, id_result: IdResult, float_value: IdRef },
-            .OpConvertSToF => struct { id_result_type: IdResultType, id_result: IdResult, signed_value: IdRef },
-            .OpConvertUToF => struct { id_result_type: IdResultType, id_result: IdResult, unsigned_value: IdRef },
-            .OpUConvert => struct { id_result_type: IdResultType, id_result: IdResult, unsigned_value: IdRef },
-            .OpSConvert => struct { id_result_type: IdResultType, id_result: IdResult, signed_value: IdRef },
-            .OpFConvert => struct { id_result_type: IdResultType, id_result: IdResult, float_value: IdRef },
-            .OpQuantizeToF16 => struct { id_result_type: IdResultType, id_result: IdResult, value: IdRef },
-            .OpConvertPtrToU => struct { id_result_type: IdResultType, id_result: IdResult, pointer: IdRef },
-            .OpSatConvertSToU => struct { id_result_type: IdResultType, id_result: IdResult, signed_value: IdRef },
-            .OpSatConvertUToS => struct { id_result_type: IdResultType, id_result: IdResult, unsigned_value: IdRef },
-            .OpConvertUToPtr => struct { id_result_type: IdResultType, id_result: IdResult, integer_value: IdRef },
-            .OpPtrCastToGeneric => struct { id_result_type: IdResultType, id_result: IdResult, pointer: IdRef },
-            .OpGenericCastToPtr => struct { id_result_type: IdResultType, id_result: IdResult, pointer: IdRef },
-            .OpGenericCastToPtrExplicit => struct { id_result_type: IdResultType, id_result: IdResult, pointer: IdRef, storage: StorageClass },
-            .OpBitcast => struct { id_result_type: IdResultType, id_result: IdResult, operand: IdRef },
-            .OpSNegate => struct { id_result_type: IdResultType, id_result: IdResult, operand: IdRef },
-            .OpFNegate => struct { id_result_type: IdResultType, id_result: IdResult, operand: IdRef },
-            .OpIAdd => struct { id_result_type: IdResultType, id_result: IdResult, operand_1: IdRef, operand_2: IdRef },
-            .OpFAdd => struct { id_result_type: IdResultType, id_result: IdResult, operand_1: IdRef, operand_2: IdRef },
-            .OpISub => struct { id_result_type: IdResultType, id_result: IdResult, operand_1: IdRef, operand_2: IdRef },
-            .OpFSub => struct { id_result_type: IdResultType, id_result: IdResult, operand_1: IdRef, operand_2: IdRef },
-            .OpIMul => struct { id_result_type: IdResultType, id_result: IdResult, operand_1: IdRef, operand_2: IdRef },
-            .OpFMul => struct { id_result_type: IdResultType, id_result: IdResult, operand_1: IdRef, operand_2: IdRef },
-            .OpUDiv => struct { id_result_type: IdResultType, id_result: IdResult, operand_1: IdRef, operand_2: IdRef },
-            .OpSDiv => struct { id_result_type: IdResultType, id_result: IdResult, operand_1: IdRef, operand_2: IdRef },
-            .OpFDiv => struct { id_result_type: IdResultType, id_result: IdResult, operand_1: IdRef, operand_2: IdRef },
-            .OpUMod => struct { id_result_type: IdResultType, id_result: IdResult, operand_1: IdRef, operand_2: IdRef },
-            .OpSRem => struct { id_result_type: IdResultType, id_result: IdResult, operand_1: IdRef, operand_2: IdRef },
-            .OpSMod => struct { id_result_type: IdResultType, id_result: IdResult, operand_1: IdRef, operand_2: IdRef },
-            .OpFRem => struct { id_result_type: IdResultType, id_result: IdResult, operand_1: IdRef, operand_2: IdRef },
-            .OpFMod => struct { id_result_type: IdResultType, id_result: IdResult, operand_1: IdRef, operand_2: IdRef },
-            .OpVectorTimesScalar => struct { id_result_type: IdResultType, id_result: IdResult, vector: IdRef, scalar: IdRef },
-            .OpMatrixTimesScalar => struct { id_result_type: IdResultType, id_result: IdResult, matrix: IdRef, scalar: IdRef },
-            .OpVectorTimesMatrix => struct { id_result_type: IdResultType, id_result: IdResult, vector: IdRef, matrix: IdRef },
-            .OpMatrixTimesVector => struct { id_result_type: IdResultType, id_result: IdResult, matrix: IdRef, vector: IdRef },
-            .OpMatrixTimesMatrix => struct { id_result_type: IdResultType, id_result: IdResult, leftmatrix: IdRef, rightmatrix: IdRef },
-            .OpOuterProduct => struct { id_result_type: IdResultType, id_result: IdResult, vector_1: IdRef, vector_2: IdRef },
-            .OpDot => struct { id_result_type: IdResultType, id_result: IdResult, vector_1: IdRef, vector_2: IdRef },
-            .OpIAddCarry => struct { id_result_type: IdResultType, id_result: IdResult, operand_1: IdRef, operand_2: IdRef },
-            .OpISubBorrow => struct { id_result_type: IdResultType, id_result: IdResult, operand_1: IdRef, operand_2: IdRef },
-            .OpUMulExtended => struct { id_result_type: IdResultType, id_result: IdResult, operand_1: IdRef, operand_2: IdRef },
-            .OpSMulExtended => struct { id_result_type: IdResultType, id_result: IdResult, operand_1: IdRef, operand_2: IdRef },
-            .OpAny => struct { id_result_type: IdResultType, id_result: IdResult, vector: IdRef },
-            .OpAll => struct { id_result_type: IdResultType, id_result: IdResult, vector: IdRef },
-            .OpIsNan => struct { id_result_type: IdResultType, id_result: IdResult, x: IdRef },
-            .OpIsInf => struct { id_result_type: IdResultType, id_result: IdResult, x: IdRef },
-            .OpIsFinite => struct { id_result_type: IdResultType, id_result: IdResult, x: IdRef },
-            .OpIsNormal => struct { id_result_type: IdResultType, id_result: IdResult, x: IdRef },
-            .OpSignBitSet => struct { id_result_type: IdResultType, id_result: IdResult, x: IdRef },
-            .OpLessOrGreater => struct { id_result_type: IdResultType, id_result: IdResult, x: IdRef, y: IdRef },
-            .OpOrdered => struct { id_result_type: IdResultType, id_result: IdResult, x: IdRef, y: IdRef },
-            .OpUnordered => struct { id_result_type: IdResultType, id_result: IdResult, x: IdRef, y: IdRef },
-            .OpLogicalEqual => struct { id_result_type: IdResultType, id_result: IdResult, operand_1: IdRef, operand_2: IdRef },
-            .OpLogicalNotEqual => struct { id_result_type: IdResultType, id_result: IdResult, operand_1: IdRef, operand_2: IdRef },
-            .OpLogicalOr => struct { id_result_type: IdResultType, id_result: IdResult, operand_1: IdRef, operand_2: IdRef },
-            .OpLogicalAnd => struct { id_result_type: IdResultType, id_result: IdResult, operand_1: IdRef, operand_2: IdRef },
-            .OpLogicalNot => struct { id_result_type: IdResultType, id_result: IdResult, operand: IdRef },
-            .OpSelect => struct { id_result_type: IdResultType, id_result: IdResult, condition: IdRef, object_1: IdRef, object_2: IdRef },
-            .OpIEqual => struct { id_result_type: IdResultType, id_result: IdResult, operand_1: IdRef, operand_2: IdRef },
-            .OpINotEqual => struct { id_result_type: IdResultType, id_result: IdResult, operand_1: IdRef, operand_2: IdRef },
-            .OpUGreaterThan => struct { id_result_type: IdResultType, id_result: IdResult, operand_1: IdRef, operand_2: IdRef },
-            .OpSGreaterThan => struct { id_result_type: IdResultType, id_result: IdResult, operand_1: IdRef, operand_2: IdRef },
-            .OpUGreaterThanEqual => struct { id_result_type: IdResultType, id_result: IdResult, operand_1: IdRef, operand_2: IdRef },
-            .OpSGreaterThanEqual => struct { id_result_type: IdResultType, id_result: IdResult, operand_1: IdRef, operand_2: IdRef },
-            .OpULessThan => struct { id_result_type: IdResultType, id_result: IdResult, operand_1: IdRef, operand_2: IdRef },
-            .OpSLessThan => struct { id_result_type: IdResultType, id_result: IdResult, operand_1: IdRef, operand_2: IdRef },
-            .OpULessThanEqual => struct { id_result_type: IdResultType, id_result: IdResult, operand_1: IdRef, operand_2: IdRef },
-            .OpSLessThanEqual => struct { id_result_type: IdResultType, id_result: IdResult, operand_1: IdRef, operand_2: IdRef },
-            .OpFOrdEqual => struct { id_result_type: IdResultType, id_result: IdResult, operand_1: IdRef, operand_2: IdRef },
-            .OpFUnordEqual => struct { id_result_type: IdResultType, id_result: IdResult, operand_1: IdRef, operand_2: IdRef },
-            .OpFOrdNotEqual => struct { id_result_type: IdResultType, id_result: IdResult, operand_1: IdRef, operand_2: IdRef },
-            .OpFUnordNotEqual => struct { id_result_type: IdResultType, id_result: IdResult, operand_1: IdRef, operand_2: IdRef },
-            .OpFOrdLessThan => struct { id_result_type: IdResultType, id_result: IdResult, operand_1: IdRef, operand_2: IdRef },
-            .OpFUnordLessThan => struct { id_result_type: IdResultType, id_result: IdResult, operand_1: IdRef, operand_2: IdRef },
-            .OpFOrdGreaterThan => struct { id_result_type: IdResultType, id_result: IdResult, operand_1: IdRef, operand_2: IdRef },
-            .OpFUnordGreaterThan => struct { id_result_type: IdResultType, id_result: IdResult, operand_1: IdRef, operand_2: IdRef },
-            .OpFOrdLessThanEqual => struct { id_result_type: IdResultType, id_result: IdResult, operand_1: IdRef, operand_2: IdRef },
-            .OpFUnordLessThanEqual => struct { id_result_type: IdResultType, id_result: IdResult, operand_1: IdRef, operand_2: IdRef },
-            .OpFOrdGreaterThanEqual => struct { id_result_type: IdResultType, id_result: IdResult, operand_1: IdRef, operand_2: IdRef },
-            .OpFUnordGreaterThanEqual => struct { id_result_type: IdResultType, id_result: IdResult, operand_1: IdRef, operand_2: IdRef },
-            .OpShiftRightLogical => struct { id_result_type: IdResultType, id_result: IdResult, base: IdRef, shift: IdRef },
-            .OpShiftRightArithmetic => struct { id_result_type: IdResultType, id_result: IdResult, base: IdRef, shift: IdRef },
-            .OpShiftLeftLogical => struct { id_result_type: IdResultType, id_result: IdResult, base: IdRef, shift: IdRef },
-            .OpBitwiseOr => struct { id_result_type: IdResultType, id_result: IdResult, operand_1: IdRef, operand_2: IdRef },
-            .OpBitwiseXor => struct { id_result_type: IdResultType, id_result: IdResult, operand_1: IdRef, operand_2: IdRef },
-            .OpBitwiseAnd => struct { id_result_type: IdResultType, id_result: IdResult, operand_1: IdRef, operand_2: IdRef },
-            .OpNot => struct { id_result_type: IdResultType, id_result: IdResult, operand: IdRef },
-            .OpBitFieldInsert => struct { id_result_type: IdResultType, id_result: IdResult, base: IdRef, insert: IdRef, offset: IdRef, count: IdRef },
-            .OpBitFieldSExtract => struct { id_result_type: IdResultType, id_result: IdResult, base: IdRef, offset: IdRef, count: IdRef },
-            .OpBitFieldUExtract => struct { id_result_type: IdResultType, id_result: IdResult, base: IdRef, offset: IdRef, count: IdRef },
-            .OpBitReverse => struct { id_result_type: IdResultType, id_result: IdResult, base: IdRef },
-            .OpBitCount => struct { id_result_type: IdResultType, id_result: IdResult, base: IdRef },
-            .OpDPdx => struct { id_result_type: IdResultType, id_result: IdResult, p: IdRef },
-            .OpDPdy => struct { id_result_type: IdResultType, id_result: IdResult, p: IdRef },
-            .OpFwidth => struct { id_result_type: IdResultType, id_result: IdResult, p: IdRef },
-            .OpDPdxFine => struct { id_result_type: IdResultType, id_result: IdResult, p: IdRef },
-            .OpDPdyFine => struct { id_result_type: IdResultType, id_result: IdResult, p: IdRef },
-            .OpFwidthFine => struct { id_result_type: IdResultType, id_result: IdResult, p: IdRef },
-            .OpDPdxCoarse => struct { id_result_type: IdResultType, id_result: IdResult, p: IdRef },
-            .OpDPdyCoarse => struct { id_result_type: IdResultType, id_result: IdResult, p: IdRef },
-            .OpFwidthCoarse => struct { id_result_type: IdResultType, id_result: IdResult, p: IdRef },
+            .OpFunctionCall => struct { id_result_type: Id, id_result: Id, function: Id, id_ref_3: []const Id = &.{} },
+            .OpVariable => struct { id_result_type: Id, id_result: Id, storage_class: StorageClass, initializer: ?Id = null },
+            .OpImageTexelPointer => struct { id_result_type: Id, id_result: Id, image: Id, coordinate: Id, sample: Id },
+            .OpLoad => struct { id_result_type: Id, id_result: Id, pointer: Id, memory_access: ?MemoryAccess.Extended = null },
+            .OpStore => struct { pointer: Id, object: Id, memory_access: ?MemoryAccess.Extended = null },
+            .OpCopyMemory => struct { target: Id, source: Id, memory_access_2: ?MemoryAccess.Extended = null, memory_access_3: ?MemoryAccess.Extended = null },
+            .OpCopyMemorySized => struct { target: Id, source: Id, size: Id, memory_access_3: ?MemoryAccess.Extended = null, memory_access_4: ?MemoryAccess.Extended = null },
+            .OpAccessChain => struct { id_result_type: Id, id_result: Id, base: Id, indexes: []const Id = &.{} },
+            .OpInBoundsAccessChain => struct { id_result_type: Id, id_result: Id, base: Id, indexes: []const Id = &.{} },
+            .OpPtrAccessChain => struct { id_result_type: Id, id_result: Id, base: Id, element: Id, indexes: []const Id = &.{} },
+            .OpArrayLength => struct { id_result_type: Id, id_result: Id, structure: Id, array_member: LiteralInteger },
+            .OpGenericPtrMemSemantics => struct { id_result_type: Id, id_result: Id, pointer: Id },
+            .OpInBoundsPtrAccessChain => struct { id_result_type: Id, id_result: Id, base: Id, element: Id, indexes: []const Id = &.{} },
+            .OpDecorate => struct { target: Id, decoration: Decoration.Extended },
+            .OpMemberDecorate => struct { structure_type: Id, member: LiteralInteger, decoration: Decoration.Extended },
+            .OpDecorationGroup => struct { id_result: Id },
+            .OpGroupDecorate => struct { decoration_group: Id, targets: []const Id = &.{} },
+            .OpGroupMemberDecorate => struct { decoration_group: Id, targets: []const PairIdRefLiteralInteger = &.{} },
+            .OpVectorExtractDynamic => struct { id_result_type: Id, id_result: Id, vector: Id, index: Id },
+            .OpVectorInsertDynamic => struct { id_result_type: Id, id_result: Id, vector: Id, component: Id, index: Id },
+            .OpVectorShuffle => struct { id_result_type: Id, id_result: Id, vector_1: Id, vector_2: Id, components: []const LiteralInteger = &.{} },
+            .OpCompositeConstruct => struct { id_result_type: Id, id_result: Id, constituents: []const Id = &.{} },
+            .OpCompositeExtract => struct { id_result_type: Id, id_result: Id, composite: Id, indexes: []const LiteralInteger = &.{} },
+            .OpCompositeInsert => struct { id_result_type: Id, id_result: Id, object: Id, composite: Id, indexes: []const LiteralInteger = &.{} },
+            .OpCopyObject => struct { id_result_type: Id, id_result: Id, operand: Id },
+            .OpTranspose => struct { id_result_type: Id, id_result: Id, matrix: Id },
+            .OpSampledImage => struct { id_result_type: Id, id_result: Id, image: Id, sampler: Id },
+            .OpImageSampleImplicitLod => struct { id_result_type: Id, id_result: Id, sampled_image: Id, coordinate: Id, image_operands: ?ImageOperands.Extended = null },
+            .OpImageSampleExplicitLod => struct { id_result_type: Id, id_result: Id, sampled_image: Id, coordinate: Id, image_operands: ImageOperands.Extended },
+            .OpImageSampleDrefImplicitLod => struct { id_result_type: Id, id_result: Id, sampled_image: Id, coordinate: Id, d_ref: Id, image_operands: ?ImageOperands.Extended = null },
+            .OpImageSampleDrefExplicitLod => struct { id_result_type: Id, id_result: Id, sampled_image: Id, coordinate: Id, d_ref: Id, image_operands: ImageOperands.Extended },
+            .OpImageSampleProjImplicitLod => struct { id_result_type: Id, id_result: Id, sampled_image: Id, coordinate: Id, image_operands: ?ImageOperands.Extended = null },
+            .OpImageSampleProjExplicitLod => struct { id_result_type: Id, id_result: Id, sampled_image: Id, coordinate: Id, image_operands: ImageOperands.Extended },
+            .OpImageSampleProjDrefImplicitLod => struct { id_result_type: Id, id_result: Id, sampled_image: Id, coordinate: Id, d_ref: Id, image_operands: ?ImageOperands.Extended = null },
+            .OpImageSampleProjDrefExplicitLod => struct { id_result_type: Id, id_result: Id, sampled_image: Id, coordinate: Id, d_ref: Id, image_operands: ImageOperands.Extended },
+            .OpImageFetch => struct { id_result_type: Id, id_result: Id, image: Id, coordinate: Id, image_operands: ?ImageOperands.Extended = null },
+            .OpImageGather => struct { id_result_type: Id, id_result: Id, sampled_image: Id, coordinate: Id, component: Id, image_operands: ?ImageOperands.Extended = null },
+            .OpImageDrefGather => struct { id_result_type: Id, id_result: Id, sampled_image: Id, coordinate: Id, d_ref: Id, image_operands: ?ImageOperands.Extended = null },
+            .OpImageRead => struct { id_result_type: Id, id_result: Id, image: Id, coordinate: Id, image_operands: ?ImageOperands.Extended = null },
+            .OpImageWrite => struct { image: Id, coordinate: Id, texel: Id, image_operands: ?ImageOperands.Extended = null },
+            .OpImage => struct { id_result_type: Id, id_result: Id, sampled_image: Id },
+            .OpImageQueryFormat => struct { id_result_type: Id, id_result: Id, image: Id },
+            .OpImageQueryOrder => struct { id_result_type: Id, id_result: Id, image: Id },
+            .OpImageQuerySizeLod => struct { id_result_type: Id, id_result: Id, image: Id, level_of_detail: Id },
+            .OpImageQuerySize => struct { id_result_type: Id, id_result: Id, image: Id },
+            .OpImageQueryLod => struct { id_result_type: Id, id_result: Id, sampled_image: Id, coordinate: Id },
+            .OpImageQueryLevels => struct { id_result_type: Id, id_result: Id, image: Id },
+            .OpImageQuerySamples => struct { id_result_type: Id, id_result: Id, image: Id },
+            .OpConvertFToU => struct { id_result_type: Id, id_result: Id, float_value: Id },
+            .OpConvertFToS => struct { id_result_type: Id, id_result: Id, float_value: Id },
+            .OpConvertSToF => struct { id_result_type: Id, id_result: Id, signed_value: Id },
+            .OpConvertUToF => struct { id_result_type: Id, id_result: Id, unsigned_value: Id },
+            .OpUConvert => struct { id_result_type: Id, id_result: Id, unsigned_value: Id },
+            .OpSConvert => struct { id_result_type: Id, id_result: Id, signed_value: Id },
+            .OpFConvert => struct { id_result_type: Id, id_result: Id, float_value: Id },
+            .OpQuantizeToF16 => struct { id_result_type: Id, id_result: Id, value: Id },
+            .OpConvertPtrToU => struct { id_result_type: Id, id_result: Id, pointer: Id },
+            .OpSatConvertSToU => struct { id_result_type: Id, id_result: Id, signed_value: Id },
+            .OpSatConvertUToS => struct { id_result_type: Id, id_result: Id, unsigned_value: Id },
+            .OpConvertUToPtr => struct { id_result_type: Id, id_result: Id, integer_value: Id },
+            .OpPtrCastToGeneric => struct { id_result_type: Id, id_result: Id, pointer: Id },
+            .OpGenericCastToPtr => struct { id_result_type: Id, id_result: Id, pointer: Id },
+            .OpGenericCastToPtrExplicit => struct { id_result_type: Id, id_result: Id, pointer: Id, storage: StorageClass },
+            .OpBitcast => struct { id_result_type: Id, id_result: Id, operand: Id },
+            .OpSNegate => struct { id_result_type: Id, id_result: Id, operand: Id },
+            .OpFNegate => struct { id_result_type: Id, id_result: Id, operand: Id },
+            .OpIAdd => struct { id_result_type: Id, id_result: Id, operand_1: Id, operand_2: Id },
+            .OpFAdd => struct { id_result_type: Id, id_result: Id, operand_1: Id, operand_2: Id },
+            .OpISub => struct { id_result_type: Id, id_result: Id, operand_1: Id, operand_2: Id },
+            .OpFSub => struct { id_result_type: Id, id_result: Id, operand_1: Id, operand_2: Id },
+            .OpIMul => struct { id_result_type: Id, id_result: Id, operand_1: Id, operand_2: Id },
+            .OpFMul => struct { id_result_type: Id, id_result: Id, operand_1: Id, operand_2: Id },
+            .OpUDiv => struct { id_result_type: Id, id_result: Id, operand_1: Id, operand_2: Id },
+            .OpSDiv => struct { id_result_type: Id, id_result: Id, operand_1: Id, operand_2: Id },
+            .OpFDiv => struct { id_result_type: Id, id_result: Id, operand_1: Id, operand_2: Id },
+            .OpUMod => struct { id_result_type: Id, id_result: Id, operand_1: Id, operand_2: Id },
+            .OpSRem => struct { id_result_type: Id, id_result: Id, operand_1: Id, operand_2: Id },
+            .OpSMod => struct { id_result_type: Id, id_result: Id, operand_1: Id, operand_2: Id },
+            .OpFRem => struct { id_result_type: Id, id_result: Id, operand_1: Id, operand_2: Id },
+            .OpFMod => struct { id_result_type: Id, id_result: Id, operand_1: Id, operand_2: Id },
+            .OpVectorTimesScalar => struct { id_result_type: Id, id_result: Id, vector: Id, scalar: Id },
+            .OpMatrixTimesScalar => struct { id_result_type: Id, id_result: Id, matrix: Id, scalar: Id },
+            .OpVectorTimesMatrix => struct { id_result_type: Id, id_result: Id, vector: Id, matrix: Id },
+            .OpMatrixTimesVector => struct { id_result_type: Id, id_result: Id, matrix: Id, vector: Id },
+            .OpMatrixTimesMatrix => struct { id_result_type: Id, id_result: Id, left_matrix: Id, right_matrix: Id },
+            .OpOuterProduct => struct { id_result_type: Id, id_result: Id, vector_1: Id, vector_2: Id },
+            .OpDot => struct { id_result_type: Id, id_result: Id, vector_1: Id, vector_2: Id },
+            .OpIAddCarry => struct { id_result_type: Id, id_result: Id, operand_1: Id, operand_2: Id },
+            .OpISubBorrow => struct { id_result_type: Id, id_result: Id, operand_1: Id, operand_2: Id },
+            .OpUMulExtended => struct { id_result_type: Id, id_result: Id, operand_1: Id, operand_2: Id },
+            .OpSMulExtended => struct { id_result_type: Id, id_result: Id, operand_1: Id, operand_2: Id },
+            .OpAny => struct { id_result_type: Id, id_result: Id, vector: Id },
+            .OpAll => struct { id_result_type: Id, id_result: Id, vector: Id },
+            .OpIsNan => struct { id_result_type: Id, id_result: Id, x: Id },
+            .OpIsInf => struct { id_result_type: Id, id_result: Id, x: Id },
+            .OpIsFinite => struct { id_result_type: Id, id_result: Id, x: Id },
+            .OpIsNormal => struct { id_result_type: Id, id_result: Id, x: Id },
+            .OpSignBitSet => struct { id_result_type: Id, id_result: Id, x: Id },
+            .OpLessOrGreater => struct { id_result_type: Id, id_result: Id, x: Id, y: Id },
+            .OpOrdered => struct { id_result_type: Id, id_result: Id, x: Id, y: Id },
+            .OpUnordered => struct { id_result_type: Id, id_result: Id, x: Id, y: Id },
+            .OpLogicalEqual => struct { id_result_type: Id, id_result: Id, operand_1: Id, operand_2: Id },
+            .OpLogicalNotEqual => struct { id_result_type: Id, id_result: Id, operand_1: Id, operand_2: Id },
+            .OpLogicalOr => struct { id_result_type: Id, id_result: Id, operand_1: Id, operand_2: Id },
+            .OpLogicalAnd => struct { id_result_type: Id, id_result: Id, operand_1: Id, operand_2: Id },
+            .OpLogicalNot => struct { id_result_type: Id, id_result: Id, operand: Id },
+            .OpSelect => struct { id_result_type: Id, id_result: Id, condition: Id, object_1: Id, object_2: Id },
+            .OpIEqual => struct { id_result_type: Id, id_result: Id, operand_1: Id, operand_2: Id },
+            .OpINotEqual => struct { id_result_type: Id, id_result: Id, operand_1: Id, operand_2: Id },
+            .OpUGreaterThan => struct { id_result_type: Id, id_result: Id, operand_1: Id, operand_2: Id },
+            .OpSGreaterThan => struct { id_result_type: Id, id_result: Id, operand_1: Id, operand_2: Id },
+            .OpUGreaterThanEqual => struct { id_result_type: Id, id_result: Id, operand_1: Id, operand_2: Id },
+            .OpSGreaterThanEqual => struct { id_result_type: Id, id_result: Id, operand_1: Id, operand_2: Id },
+            .OpULessThan => struct { id_result_type: Id, id_result: Id, operand_1: Id, operand_2: Id },
+            .OpSLessThan => struct { id_result_type: Id, id_result: Id, operand_1: Id, operand_2: Id },
+            .OpULessThanEqual => struct { id_result_type: Id, id_result: Id, operand_1: Id, operand_2: Id },
+            .OpSLessThanEqual => struct { id_result_type: Id, id_result: Id, operand_1: Id, operand_2: Id },
+            .OpFOrdEqual => struct { id_result_type: Id, id_result: Id, operand_1: Id, operand_2: Id },
+            .OpFUnordEqual => struct { id_result_type: Id, id_result: Id, operand_1: Id, operand_2: Id },
+            .OpFOrdNotEqual => struct { id_result_type: Id, id_result: Id, operand_1: Id, operand_2: Id },
+            .OpFUnordNotEqual => struct { id_result_type: Id, id_result: Id, operand_1: Id, operand_2: Id },
+            .OpFOrdLessThan => struct { id_result_type: Id, id_result: Id, operand_1: Id, operand_2: Id },
+            .OpFUnordLessThan => struct { id_result_type: Id, id_result: Id, operand_1: Id, operand_2: Id },
+            .OpFOrdGreaterThan => struct { id_result_type: Id, id_result: Id, operand_1: Id, operand_2: Id },
+            .OpFUnordGreaterThan => struct { id_result_type: Id, id_result: Id, operand_1: Id, operand_2: Id },
+            .OpFOrdLessThanEqual => struct { id_result_type: Id, id_result: Id, operand_1: Id, operand_2: Id },
+            .OpFUnordLessThanEqual => struct { id_result_type: Id, id_result: Id, operand_1: Id, operand_2: Id },
+            .OpFOrdGreaterThanEqual => struct { id_result_type: Id, id_result: Id, operand_1: Id, operand_2: Id },
+            .OpFUnordGreaterThanEqual => struct { id_result_type: Id, id_result: Id, operand_1: Id, operand_2: Id },
+            .OpShiftRightLogical => struct { id_result_type: Id, id_result: Id, base: Id, shift: Id },
+            .OpShiftRightArithmetic => struct { id_result_type: Id, id_result: Id, base: Id, shift: Id },
+            .OpShiftLeftLogical => struct { id_result_type: Id, id_result: Id, base: Id, shift: Id },
+            .OpBitwiseOr => struct { id_result_type: Id, id_result: Id, operand_1: Id, operand_2: Id },
+            .OpBitwiseXor => struct { id_result_type: Id, id_result: Id, operand_1: Id, operand_2: Id },
+            .OpBitwiseAnd => struct { id_result_type: Id, id_result: Id, operand_1: Id, operand_2: Id },
+            .OpNot => struct { id_result_type: Id, id_result: Id, operand: Id },
+            .OpBitFieldInsert => struct { id_result_type: Id, id_result: Id, base: Id, insert: Id, offset: Id, count: Id },
+            .OpBitFieldSExtract => struct { id_result_type: Id, id_result: Id, base: Id, offset: Id, count: Id },
+            .OpBitFieldUExtract => struct { id_result_type: Id, id_result: Id, base: Id, offset: Id, count: Id },
+            .OpBitReverse => struct { id_result_type: Id, id_result: Id, base: Id },
+            .OpBitCount => struct { id_result_type: Id, id_result: Id, base: Id },
+            .OpDPdx => struct { id_result_type: Id, id_result: Id, p: Id },
+            .OpDPdy => struct { id_result_type: Id, id_result: Id, p: Id },
+            .OpFwidth => struct { id_result_type: Id, id_result: Id, p: Id },
+            .OpDPdxFine => struct { id_result_type: Id, id_result: Id, p: Id },
+            .OpDPdyFine => struct { id_result_type: Id, id_result: Id, p: Id },
+            .OpFwidthFine => struct { id_result_type: Id, id_result: Id, p: Id },
+            .OpDPdxCoarse => struct { id_result_type: Id, id_result: Id, p: Id },
+            .OpDPdyCoarse => struct { id_result_type: Id, id_result: Id, p: Id },
+            .OpFwidthCoarse => struct { id_result_type: Id, id_result: Id, p: Id },
             .OpEmitVertex => void,
             .OpEndPrimitive => void,
-            .OpEmitStreamVertex => struct { stream: IdRef },
-            .OpEndStreamPrimitive => struct { stream: IdRef },
-            .OpControlBarrier => struct { execution: IdScope, memory: IdScope, semantics: IdMemorySemantics },
-            .OpMemoryBarrier => struct { memory: IdScope, semantics: IdMemorySemantics },
-            .OpAtomicLoad => struct { id_result_type: IdResultType, id_result: IdResult, pointer: IdRef, memory: IdScope, semantics: IdMemorySemantics },
-            .OpAtomicStore => struct { pointer: IdRef, memory: IdScope, semantics: IdMemorySemantics, value: IdRef },
-            .OpAtomicExchange => struct { id_result_type: IdResultType, id_result: IdResult, pointer: IdRef, memory: IdScope, semantics: IdMemorySemantics, value: IdRef },
-            .OpAtomicCompareExchange => struct { id_result_type: IdResultType, id_result: IdResult, pointer: IdRef, memory: IdScope, equal: IdMemorySemantics, unequal: IdMemorySemantics, value: IdRef, comparator: IdRef },
-            .OpAtomicCompareExchangeWeak => struct { id_result_type: IdResultType, id_result: IdResult, pointer: IdRef, memory: IdScope, equal: IdMemorySemantics, unequal: IdMemorySemantics, value: IdRef, comparator: IdRef },
-            .OpAtomicIIncrement => struct { id_result_type: IdResultType, id_result: IdResult, pointer: IdRef, memory: IdScope, semantics: IdMemorySemantics },
-            .OpAtomicIDecrement => struct { id_result_type: IdResultType, id_result: IdResult, pointer: IdRef, memory: IdScope, semantics: IdMemorySemantics },
-            .OpAtomicIAdd => struct { id_result_type: IdResultType, id_result: IdResult, pointer: IdRef, memory: IdScope, semantics: IdMemorySemantics, value: IdRef },
-            .OpAtomicISub => struct { id_result_type: IdResultType, id_result: IdResult, pointer: IdRef, memory: IdScope, semantics: IdMemorySemantics, value: IdRef },
-            .OpAtomicSMin => struct { id_result_type: IdResultType, id_result: IdResult, pointer: IdRef, memory: IdScope, semantics: IdMemorySemantics, value: IdRef },
-            .OpAtomicUMin => struct { id_result_type: IdResultType, id_result: IdResult, pointer: IdRef, memory: IdScope, semantics: IdMemorySemantics, value: IdRef },
-            .OpAtomicSMax => struct { id_result_type: IdResultType, id_result: IdResult, pointer: IdRef, memory: IdScope, semantics: IdMemorySemantics, value: IdRef },
-            .OpAtomicUMax => struct { id_result_type: IdResultType, id_result: IdResult, pointer: IdRef, memory: IdScope, semantics: IdMemorySemantics, value: IdRef },
-            .OpAtomicAnd => struct { id_result_type: IdResultType, id_result: IdResult, pointer: IdRef, memory: IdScope, semantics: IdMemorySemantics, value: IdRef },
-            .OpAtomicOr => struct { id_result_type: IdResultType, id_result: IdResult, pointer: IdRef, memory: IdScope, semantics: IdMemorySemantics, value: IdRef },
-            .OpAtomicXor => struct { id_result_type: IdResultType, id_result: IdResult, pointer: IdRef, memory: IdScope, semantics: IdMemorySemantics, value: IdRef },
-            .OpPhi => struct { id_result_type: IdResultType, id_result: IdResult, pair_id_ref_id_ref: []const PairIdRefIdRef = &.{} },
-            .OpLoopMerge => struct { merge_block: IdRef, continue_target: IdRef, loop_control: LoopControl.Extended },
-            .OpSelectionMerge => struct { merge_block: IdRef, selection_control: SelectionControl },
-            .OpLabel => struct { id_result: IdResult },
-            .OpBranch => struct { target_label: IdRef },
-            .OpBranchConditional => struct { condition: IdRef, true_label: IdRef, false_label: IdRef, branch_weights: []const LiteralInteger = &.{} },
-            .OpSwitch => struct { selector: IdRef, default: IdRef, target: []const PairLiteralIntegerIdRef = &.{} },
+            .OpEmitStreamVertex => struct { stream: Id },
+            .OpEndStreamPrimitive => struct { stream: Id },
+            .OpControlBarrier => struct { execution: Id, memory: Id, semantics: Id },
+            .OpMemoryBarrier => struct { memory: Id, semantics: Id },
+            .OpAtomicLoad => struct { id_result_type: Id, id_result: Id, pointer: Id, memory: Id, semantics: Id },
+            .OpAtomicStore => struct { pointer: Id, memory: Id, semantics: Id, value: Id },
+            .OpAtomicExchange => struct { id_result_type: Id, id_result: Id, pointer: Id, memory: Id, semantics: Id, value: Id },
+            .OpAtomicCompareExchange => struct { id_result_type: Id, id_result: Id, pointer: Id, memory: Id, equal: Id, unequal: Id, value: Id, comparator: Id },
+            .OpAtomicCompareExchangeWeak => struct { id_result_type: Id, id_result: Id, pointer: Id, memory: Id, equal: Id, unequal: Id, value: Id, comparator: Id },
+            .OpAtomicIIncrement => struct { id_result_type: Id, id_result: Id, pointer: Id, memory: Id, semantics: Id },
+            .OpAtomicIDecrement => struct { id_result_type: Id, id_result: Id, pointer: Id, memory: Id, semantics: Id },
+            .OpAtomicIAdd => struct { id_result_type: Id, id_result: Id, pointer: Id, memory: Id, semantics: Id, value: Id },
+            .OpAtomicISub => struct { id_result_type: Id, id_result: Id, pointer: Id, memory: Id, semantics: Id, value: Id },
+            .OpAtomicSMin => struct { id_result_type: Id, id_result: Id, pointer: Id, memory: Id, semantics: Id, value: Id },
+            .OpAtomicUMin => struct { id_result_type: Id, id_result: Id, pointer: Id, memory: Id, semantics: Id, value: Id },
+            .OpAtomicSMax => struct { id_result_type: Id, id_result: Id, pointer: Id, memory: Id, semantics: Id, value: Id },
+            .OpAtomicUMax => struct { id_result_type: Id, id_result: Id, pointer: Id, memory: Id, semantics: Id, value: Id },
+            .OpAtomicAnd => struct { id_result_type: Id, id_result: Id, pointer: Id, memory: Id, semantics: Id, value: Id },
+            .OpAtomicOr => struct { id_result_type: Id, id_result: Id, pointer: Id, memory: Id, semantics: Id, value: Id },
+            .OpAtomicXor => struct { id_result_type: Id, id_result: Id, pointer: Id, memory: Id, semantics: Id, value: Id },
+            .OpPhi => struct { id_result_type: Id, id_result: Id, pair_id_ref_id_ref: []const PairIdRefIdRef = &.{} },
+            .OpLoopMerge => struct { merge_block: Id, continue_target: Id, loop_control: LoopControl.Extended },
+            .OpSelectionMerge => struct { merge_block: Id, selection_control: SelectionControl },
+            .OpLabel => struct { id_result: Id },
+            .OpBranch => struct { target_label: Id },
+            .OpBranchConditional => struct { condition: Id, true_label: Id, false_label: Id, branch_weights: []const LiteralInteger = &.{} },
+            .OpSwitch => struct { selector: Id, default: Id, target: []const PairLiteralIntegerIdRef = &.{} },
             .OpKill => void,
             .OpReturn => void,
-            .OpReturnValue => struct { value: IdRef },
+            .OpReturnValue => struct { value: Id },
             .OpUnreachable => void,
-            .OpLifetimeStart => struct { pointer: IdRef, size: LiteralInteger },
-            .OpLifetimeStop => struct { pointer: IdRef, size: LiteralInteger },
-            .OpGroupAsyncCopy => struct { id_result_type: IdResultType, id_result: IdResult, execution: IdScope, destination: IdRef, source: IdRef, num_elements: IdRef, stride: IdRef, event: IdRef },
-            .OpGroupWaitEvents => struct { execution: IdScope, num_events: IdRef, events_list: IdRef },
-            .OpGroupAll => struct { id_result_type: IdResultType, id_result: IdResult, execution: IdScope, predicate: IdRef },
-            .OpGroupAny => struct { id_result_type: IdResultType, id_result: IdResult, execution: IdScope, predicate: IdRef },
-            .OpGroupBroadcast => struct { id_result_type: IdResultType, id_result: IdResult, execution: IdScope, value: IdRef, localid: IdRef },
-            .OpGroupIAdd => struct { id_result_type: IdResultType, id_result: IdResult, execution: IdScope, operation: GroupOperation, x: IdRef },
-            .OpGroupFAdd => struct { id_result_type: IdResultType, id_result: IdResult, execution: IdScope, operation: GroupOperation, x: IdRef },
-            .OpGroupFMin => struct { id_result_type: IdResultType, id_result: IdResult, execution: IdScope, operation: GroupOperation, x: IdRef },
-            .OpGroupUMin => struct { id_result_type: IdResultType, id_result: IdResult, execution: IdScope, operation: GroupOperation, x: IdRef },
-            .OpGroupSMin => struct { id_result_type: IdResultType, id_result: IdResult, execution: IdScope, operation: GroupOperation, x: IdRef },
-            .OpGroupFMax => struct { id_result_type: IdResultType, id_result: IdResult, execution: IdScope, operation: GroupOperation, x: IdRef },
-            .OpGroupUMax => struct { id_result_type: IdResultType, id_result: IdResult, execution: IdScope, operation: GroupOperation, x: IdRef },
-            .OpGroupSMax => struct { id_result_type: IdResultType, id_result: IdResult, execution: IdScope, operation: GroupOperation, x: IdRef },
-            .OpReadPipe => struct { id_result_type: IdResultType, id_result: IdResult, pipe: IdRef, pointer: IdRef, packet_size: IdRef, packet_alignment: IdRef },
-            .OpWritePipe => struct { id_result_type: IdResultType, id_result: IdResult, pipe: IdRef, pointer: IdRef, packet_size: IdRef, packet_alignment: IdRef },
-            .OpReservedReadPipe => struct { id_result_type: IdResultType, id_result: IdResult, pipe: IdRef, reserve_id: IdRef, index: IdRef, pointer: IdRef, packet_size: IdRef, packet_alignment: IdRef },
-            .OpReservedWritePipe => struct { id_result_type: IdResultType, id_result: IdResult, pipe: IdRef, reserve_id: IdRef, index: IdRef, pointer: IdRef, packet_size: IdRef, packet_alignment: IdRef },
-            .OpReserveReadPipePackets => struct { id_result_type: IdResultType, id_result: IdResult, pipe: IdRef, num_packets: IdRef, packet_size: IdRef, packet_alignment: IdRef },
-            .OpReserveWritePipePackets => struct { id_result_type: IdResultType, id_result: IdResult, pipe: IdRef, num_packets: IdRef, packet_size: IdRef, packet_alignment: IdRef },
-            .OpCommitReadPipe => struct { pipe: IdRef, reserve_id: IdRef, packet_size: IdRef, packet_alignment: IdRef },
-            .OpCommitWritePipe => struct { pipe: IdRef, reserve_id: IdRef, packet_size: IdRef, packet_alignment: IdRef },
-            .OpIsValidReserveId => struct { id_result_type: IdResultType, id_result: IdResult, reserve_id: IdRef },
-            .OpGetNumPipePackets => struct { id_result_type: IdResultType, id_result: IdResult, pipe: IdRef, packet_size: IdRef, packet_alignment: IdRef },
-            .OpGetMaxPipePackets => struct { id_result_type: IdResultType, id_result: IdResult, pipe: IdRef, packet_size: IdRef, packet_alignment: IdRef },
-            .OpGroupReserveReadPipePackets => struct { id_result_type: IdResultType, id_result: IdResult, execution: IdScope, pipe: IdRef, num_packets: IdRef, packet_size: IdRef, packet_alignment: IdRef },
-            .OpGroupReserveWritePipePackets => struct { id_result_type: IdResultType, id_result: IdResult, execution: IdScope, pipe: IdRef, num_packets: IdRef, packet_size: IdRef, packet_alignment: IdRef },
-            .OpGroupCommitReadPipe => struct { execution: IdScope, pipe: IdRef, reserve_id: IdRef, packet_size: IdRef, packet_alignment: IdRef },
-            .OpGroupCommitWritePipe => struct { execution: IdScope, pipe: IdRef, reserve_id: IdRef, packet_size: IdRef, packet_alignment: IdRef },
-            .OpEnqueueMarker => struct { id_result_type: IdResultType, id_result: IdResult, queue: IdRef, num_events: IdRef, wait_events: IdRef, ret_event: IdRef },
-            .OpEnqueueKernel => struct { id_result_type: IdResultType, id_result: IdResult, queue: IdRef, flags: IdRef, nd_range: IdRef, num_events: IdRef, wait_events: IdRef, ret_event: IdRef, invoke: IdRef, param: IdRef, param_size: IdRef, param_align: IdRef, local_size: []const IdRef = &.{} },
-            .OpGetKernelNDrangeSubGroupCount => struct { id_result_type: IdResultType, id_result: IdResult, nd_range: IdRef, invoke: IdRef, param: IdRef, param_size: IdRef, param_align: IdRef },
-            .OpGetKernelNDrangeMaxSubGroupSize => struct { id_result_type: IdResultType, id_result: IdResult, nd_range: IdRef, invoke: IdRef, param: IdRef, param_size: IdRef, param_align: IdRef },
-            .OpGetKernelWorkGroupSize => struct { id_result_type: IdResultType, id_result: IdResult, invoke: IdRef, param: IdRef, param_size: IdRef, param_align: IdRef },
-            .OpGetKernelPreferredWorkGroupSizeMultiple => struct { id_result_type: IdResultType, id_result: IdResult, invoke: IdRef, param: IdRef, param_size: IdRef, param_align: IdRef },
-            .OpRetainEvent => struct { event: IdRef },
-            .OpReleaseEvent => struct { event: IdRef },
-            .OpCreateUserEvent => struct { id_result_type: IdResultType, id_result: IdResult },
-            .OpIsValidEvent => struct { id_result_type: IdResultType, id_result: IdResult, event: IdRef },
-            .OpSetUserEventStatus => struct { event: IdRef, status: IdRef },
-            .OpCaptureEventProfilingInfo => struct { event: IdRef, profiling_info: IdRef, value: IdRef },
-            .OpGetDefaultQueue => struct { id_result_type: IdResultType, id_result: IdResult },
-            .OpBuildNDRange => struct { id_result_type: IdResultType, id_result: IdResult, globalworksize: IdRef, localworksize: IdRef, globalworkoffset: IdRef },
-            .OpImageSparseSampleImplicitLod => struct { id_result_type: IdResultType, id_result: IdResult, sampled_image: IdRef, coordinate: IdRef, image_operands: ?ImageOperands.Extended = null },
-            .OpImageSparseSampleExplicitLod => struct { id_result_type: IdResultType, id_result: IdResult, sampled_image: IdRef, coordinate: IdRef, image_operands: ImageOperands.Extended },
-            .OpImageSparseSampleDrefImplicitLod => struct { id_result_type: IdResultType, id_result: IdResult, sampled_image: IdRef, coordinate: IdRef, d_ref: IdRef, image_operands: ?ImageOperands.Extended = null },
-            .OpImageSparseSampleDrefExplicitLod => struct { id_result_type: IdResultType, id_result: IdResult, sampled_image: IdRef, coordinate: IdRef, d_ref: IdRef, image_operands: ImageOperands.Extended },
-            .OpImageSparseSampleProjImplicitLod => struct { id_result_type: IdResultType, id_result: IdResult, sampled_image: IdRef, coordinate: IdRef, image_operands: ?ImageOperands.Extended = null },
-            .OpImageSparseSampleProjExplicitLod => struct { id_result_type: IdResultType, id_result: IdResult, sampled_image: IdRef, coordinate: IdRef, image_operands: ImageOperands.Extended },
-            .OpImageSparseSampleProjDrefImplicitLod => struct { id_result_type: IdResultType, id_result: IdResult, sampled_image: IdRef, coordinate: IdRef, d_ref: IdRef, image_operands: ?ImageOperands.Extended = null },
-            .OpImageSparseSampleProjDrefExplicitLod => struct { id_result_type: IdResultType, id_result: IdResult, sampled_image: IdRef, coordinate: IdRef, d_ref: IdRef, image_operands: ImageOperands.Extended },
-            .OpImageSparseFetch => struct { id_result_type: IdResultType, id_result: IdResult, image: IdRef, coordinate: IdRef, image_operands: ?ImageOperands.Extended = null },
-            .OpImageSparseGather => struct { id_result_type: IdResultType, id_result: IdResult, sampled_image: IdRef, coordinate: IdRef, component: IdRef, image_operands: ?ImageOperands.Extended = null },
-            .OpImageSparseDrefGather => struct { id_result_type: IdResultType, id_result: IdResult, sampled_image: IdRef, coordinate: IdRef, d_ref: IdRef, image_operands: ?ImageOperands.Extended = null },
-            .OpImageSparseTexelsResident => struct { id_result_type: IdResultType, id_result: IdResult, resident_code: IdRef },
+            .OpLifetimeStart => struct { pointer: Id, size: LiteralInteger },
+            .OpLifetimeStop => struct { pointer: Id, size: LiteralInteger },
+            .OpGroupAsyncCopy => struct { id_result_type: Id, id_result: Id, execution: Id, destination: Id, source: Id, num_elements: Id, stride: Id, event: Id },
+            .OpGroupWaitEvents => struct { execution: Id, num_events: Id, events_list: Id },
+            .OpGroupAll => struct { id_result_type: Id, id_result: Id, execution: Id, predicate: Id },
+            .OpGroupAny => struct { id_result_type: Id, id_result: Id, execution: Id, predicate: Id },
+            .OpGroupBroadcast => struct { id_result_type: Id, id_result: Id, execution: Id, value: Id, local_id: Id },
+            .OpGroupIAdd => struct { id_result_type: Id, id_result: Id, execution: Id, operation: GroupOperation, x: Id },
+            .OpGroupFAdd => struct { id_result_type: Id, id_result: Id, execution: Id, operation: GroupOperation, x: Id },
+            .OpGroupFMin => struct { id_result_type: Id, id_result: Id, execution: Id, operation: GroupOperation, x: Id },
+            .OpGroupUMin => struct { id_result_type: Id, id_result: Id, execution: Id, operation: GroupOperation, x: Id },
+            .OpGroupSMin => struct { id_result_type: Id, id_result: Id, execution: Id, operation: GroupOperation, x: Id },
+            .OpGroupFMax => struct { id_result_type: Id, id_result: Id, execution: Id, operation: GroupOperation, x: Id },
+            .OpGroupUMax => struct { id_result_type: Id, id_result: Id, execution: Id, operation: GroupOperation, x: Id },
+            .OpGroupSMax => struct { id_result_type: Id, id_result: Id, execution: Id, operation: GroupOperation, x: Id },
+            .OpReadPipe => struct { id_result_type: Id, id_result: Id, pipe: Id, pointer: Id, packet_size: Id, packet_alignment: Id },
+            .OpWritePipe => struct { id_result_type: Id, id_result: Id, pipe: Id, pointer: Id, packet_size: Id, packet_alignment: Id },
+            .OpReservedReadPipe => struct { id_result_type: Id, id_result: Id, pipe: Id, reserve_id: Id, index: Id, pointer: Id, packet_size: Id, packet_alignment: Id },
+            .OpReservedWritePipe => struct { id_result_type: Id, id_result: Id, pipe: Id, reserve_id: Id, index: Id, pointer: Id, packet_size: Id, packet_alignment: Id },
+            .OpReserveReadPipePackets => struct { id_result_type: Id, id_result: Id, pipe: Id, num_packets: Id, packet_size: Id, packet_alignment: Id },
+            .OpReserveWritePipePackets => struct { id_result_type: Id, id_result: Id, pipe: Id, num_packets: Id, packet_size: Id, packet_alignment: Id },
+            .OpCommitReadPipe => struct { pipe: Id, reserve_id: Id, packet_size: Id, packet_alignment: Id },
+            .OpCommitWritePipe => struct { pipe: Id, reserve_id: Id, packet_size: Id, packet_alignment: Id },
+            .OpIsValidReserveId => struct { id_result_type: Id, id_result: Id, reserve_id: Id },
+            .OpGetNumPipePackets => struct { id_result_type: Id, id_result: Id, pipe: Id, packet_size: Id, packet_alignment: Id },
+            .OpGetMaxPipePackets => struct { id_result_type: Id, id_result: Id, pipe: Id, packet_size: Id, packet_alignment: Id },
+            .OpGroupReserveReadPipePackets => struct { id_result_type: Id, id_result: Id, execution: Id, pipe: Id, num_packets: Id, packet_size: Id, packet_alignment: Id },
+            .OpGroupReserveWritePipePackets => struct { id_result_type: Id, id_result: Id, execution: Id, pipe: Id, num_packets: Id, packet_size: Id, packet_alignment: Id },
+            .OpGroupCommitReadPipe => struct { execution: Id, pipe: Id, reserve_id: Id, packet_size: Id, packet_alignment: Id },
+            .OpGroupCommitWritePipe => struct { execution: Id, pipe: Id, reserve_id: Id, packet_size: Id, packet_alignment: Id },
+            .OpEnqueueMarker => struct { id_result_type: Id, id_result: Id, queue: Id, num_events: Id, wait_events: Id, ret_event: Id },
+            .OpEnqueueKernel => struct { id_result_type: Id, id_result: Id, queue: Id, flags: Id, nd_range: Id, num_events: Id, wait_events: Id, ret_event: Id, invoke: Id, param: Id, param_size: Id, param_align: Id, local_size: []const Id = &.{} },
+            .OpGetKernelNDrangeSubGroupCount => struct { id_result_type: Id, id_result: Id, nd_range: Id, invoke: Id, param: Id, param_size: Id, param_align: Id },
+            .OpGetKernelNDrangeMaxSubGroupSize => struct { id_result_type: Id, id_result: Id, nd_range: Id, invoke: Id, param: Id, param_size: Id, param_align: Id },
+            .OpGetKernelWorkGroupSize => struct { id_result_type: Id, id_result: Id, invoke: Id, param: Id, param_size: Id, param_align: Id },
+            .OpGetKernelPreferredWorkGroupSizeMultiple => struct { id_result_type: Id, id_result: Id, invoke: Id, param: Id, param_size: Id, param_align: Id },
+            .OpRetainEvent => struct { event: Id },
+            .OpReleaseEvent => struct { event: Id },
+            .OpCreateUserEvent => struct { id_result_type: Id, id_result: Id },
+            .OpIsValidEvent => struct { id_result_type: Id, id_result: Id, event: Id },
+            .OpSetUserEventStatus => struct { event: Id, status: Id },
+            .OpCaptureEventProfilingInfo => struct { event: Id, profiling_info: Id, value: Id },
+            .OpGetDefaultQueue => struct { id_result_type: Id, id_result: Id },
+            .OpBuildNDRange => struct { id_result_type: Id, id_result: Id, global_work_size: Id, local_work_size: Id, global_work_offset: Id },
+            .OpImageSparseSampleImplicitLod => struct { id_result_type: Id, id_result: Id, sampled_image: Id, coordinate: Id, image_operands: ?ImageOperands.Extended = null },
+            .OpImageSparseSampleExplicitLod => struct { id_result_type: Id, id_result: Id, sampled_image: Id, coordinate: Id, image_operands: ImageOperands.Extended },
+            .OpImageSparseSampleDrefImplicitLod => struct { id_result_type: Id, id_result: Id, sampled_image: Id, coordinate: Id, d_ref: Id, image_operands: ?ImageOperands.Extended = null },
+            .OpImageSparseSampleDrefExplicitLod => struct { id_result_type: Id, id_result: Id, sampled_image: Id, coordinate: Id, d_ref: Id, image_operands: ImageOperands.Extended },
+            .OpImageSparseSampleProjImplicitLod => struct { id_result_type: Id, id_result: Id, sampled_image: Id, coordinate: Id, image_operands: ?ImageOperands.Extended = null },
+            .OpImageSparseSampleProjExplicitLod => struct { id_result_type: Id, id_result: Id, sampled_image: Id, coordinate: Id, image_operands: ImageOperands.Extended },
+            .OpImageSparseSampleProjDrefImplicitLod => struct { id_result_type: Id, id_result: Id, sampled_image: Id, coordinate: Id, d_ref: Id, image_operands: ?ImageOperands.Extended = null },
+            .OpImageSparseSampleProjDrefExplicitLod => struct { id_result_type: Id, id_result: Id, sampled_image: Id, coordinate: Id, d_ref: Id, image_operands: ImageOperands.Extended },
+            .OpImageSparseFetch => struct { id_result_type: Id, id_result: Id, image: Id, coordinate: Id, image_operands: ?ImageOperands.Extended = null },
+            .OpImageSparseGather => struct { id_result_type: Id, id_result: Id, sampled_image: Id, coordinate: Id, component: Id, image_operands: ?ImageOperands.Extended = null },
+            .OpImageSparseDrefGather => struct { id_result_type: Id, id_result: Id, sampled_image: Id, coordinate: Id, d_ref: Id, image_operands: ?ImageOperands.Extended = null },
+            .OpImageSparseTexelsResident => struct { id_result_type: Id, id_result: Id, resident_code: Id },
             .OpNoLine => void,
-            .OpAtomicFlagTestAndSet => struct { id_result_type: IdResultType, id_result: IdResult, pointer: IdRef, memory: IdScope, semantics: IdMemorySemantics },
-            .OpAtomicFlagClear => struct { pointer: IdRef, memory: IdScope, semantics: IdMemorySemantics },
-            .OpImageSparseRead => struct { id_result_type: IdResultType, id_result: IdResult, image: IdRef, coordinate: IdRef, image_operands: ?ImageOperands.Extended = null },
-            .OpSizeOf => struct { id_result_type: IdResultType, id_result: IdResult, pointer: IdRef },
-            .OpTypePipeStorage => struct { id_result: IdResult },
-            .OpConstantPipeStorage => struct { id_result_type: IdResultType, id_result: IdResult, packet_size: LiteralInteger, packet_alignment: LiteralInteger, capacity: LiteralInteger },
-            .OpCreatePipeFromPipeStorage => struct { id_result_type: IdResultType, id_result: IdResult, pipe_storage: IdRef },
-            .OpGetKernelLocalSizeForSubgroupCount => struct { id_result_type: IdResultType, id_result: IdResult, subgroup_count: IdRef, invoke: IdRef, param: IdRef, param_size: IdRef, param_align: IdRef },
-            .OpGetKernelMaxNumSubgroups => struct { id_result_type: IdResultType, id_result: IdResult, invoke: IdRef, param: IdRef, param_size: IdRef, param_align: IdRef },
-            .OpTypeNamedBarrier => struct { id_result: IdResult },
-            .OpNamedBarrierInitialize => struct { id_result_type: IdResultType, id_result: IdResult, subgroup_count: IdRef },
-            .OpMemoryNamedBarrier => struct { named_barrier: IdRef, memory: IdScope, semantics: IdMemorySemantics },
+            .OpAtomicFlagTestAndSet => struct { id_result_type: Id, id_result: Id, pointer: Id, memory: Id, semantics: Id },
+            .OpAtomicFlagClear => struct { pointer: Id, memory: Id, semantics: Id },
+            .OpImageSparseRead => struct { id_result_type: Id, id_result: Id, image: Id, coordinate: Id, image_operands: ?ImageOperands.Extended = null },
+            .OpSizeOf => struct { id_result_type: Id, id_result: Id, pointer: Id },
+            .OpTypePipeStorage => struct { id_result: Id },
+            .OpConstantPipeStorage => struct { id_result_type: Id, id_result: Id, packet_size: LiteralInteger, packet_alignment: LiteralInteger, capacity: LiteralInteger },
+            .OpCreatePipeFromPipeStorage => struct { id_result_type: Id, id_result: Id, pipe_storage: Id },
+            .OpGetKernelLocalSizeForSubgroupCount => struct { id_result_type: Id, id_result: Id, subgroup_count: Id, invoke: Id, param: Id, param_size: Id, param_align: Id },
+            .OpGetKernelMaxNumSubgroups => struct { id_result_type: Id, id_result: Id, invoke: Id, param: Id, param_size: Id, param_align: Id },
+            .OpTypeNamedBarrier => struct { id_result: Id },
+            .OpNamedBarrierInitialize => struct { id_result_type: Id, id_result: Id, subgroup_count: Id },
+            .OpMemoryNamedBarrier => struct { named_barrier: Id, memory: Id, semantics: Id },
             .OpModuleProcessed => struct { process: LiteralString },
-            .OpExecutionModeId => struct { entry_point: IdRef, mode: ExecutionMode.Extended },
-            .OpDecorateId => struct { target: IdRef, decoration: Decoration.Extended },
-            .OpGroupNonUniformElect => struct { id_result_type: IdResultType, id_result: IdResult, execution: IdScope },
-            .OpGroupNonUniformAll => struct { id_result_type: IdResultType, id_result: IdResult, execution: IdScope, predicate: IdRef },
-            .OpGroupNonUniformAny => struct { id_result_type: IdResultType, id_result: IdResult, execution: IdScope, predicate: IdRef },
-            .OpGroupNonUniformAllEqual => struct { id_result_type: IdResultType, id_result: IdResult, execution: IdScope, value: IdRef },
-            .OpGroupNonUniformBroadcast => struct { id_result_type: IdResultType, id_result: IdResult, execution: IdScope, value: IdRef, id: IdRef },
-            .OpGroupNonUniformBroadcastFirst => struct { id_result_type: IdResultType, id_result: IdResult, execution: IdScope, value: IdRef },
-            .OpGroupNonUniformBallot => struct { id_result_type: IdResultType, id_result: IdResult, execution: IdScope, predicate: IdRef },
-            .OpGroupNonUniformInverseBallot => struct { id_result_type: IdResultType, id_result: IdResult, execution: IdScope, value: IdRef },
-            .OpGroupNonUniformBallotBitExtract => struct { id_result_type: IdResultType, id_result: IdResult, execution: IdScope, value: IdRef, index: IdRef },
-            .OpGroupNonUniformBallotBitCount => struct { id_result_type: IdResultType, id_result: IdResult, execution: IdScope, operation: GroupOperation, value: IdRef },
-            .OpGroupNonUniformBallotFindLSB => struct { id_result_type: IdResultType, id_result: IdResult, execution: IdScope, value: IdRef },
-            .OpGroupNonUniformBallotFindMSB => struct { id_result_type: IdResultType, id_result: IdResult, execution: IdScope, value: IdRef },
-            .OpGroupNonUniformShuffle => struct { id_result_type: IdResultType, id_result: IdResult, execution: IdScope, value: IdRef, id: IdRef },
-            .OpGroupNonUniformShuffleXor => struct { id_result_type: IdResultType, id_result: IdResult, execution: IdScope, value: IdRef, mask: IdRef },
-            .OpGroupNonUniformShuffleUp => struct { id_result_type: IdResultType, id_result: IdResult, execution: IdScope, value: IdRef, delta: IdRef },
-            .OpGroupNonUniformShuffleDown => struct { id_result_type: IdResultType, id_result: IdResult, execution: IdScope, value: IdRef, delta: IdRef },
-            .OpGroupNonUniformIAdd => struct { id_result_type: IdResultType, id_result: IdResult, execution: IdScope, operation: GroupOperation, value: IdRef, clustersize: ?IdRef = null },
-            .OpGroupNonUniformFAdd => struct { id_result_type: IdResultType, id_result: IdResult, execution: IdScope, operation: GroupOperation, value: IdRef, clustersize: ?IdRef = null },
-            .OpGroupNonUniformIMul => struct { id_result_type: IdResultType, id_result: IdResult, execution: IdScope, operation: GroupOperation, value: IdRef, clustersize: ?IdRef = null },
-            .OpGroupNonUniformFMul => struct { id_result_type: IdResultType, id_result: IdResult, execution: IdScope, operation: GroupOperation, value: IdRef, clustersize: ?IdRef = null },
-            .OpGroupNonUniformSMin => struct { id_result_type: IdResultType, id_result: IdResult, execution: IdScope, operation: GroupOperation, value: IdRef, clustersize: ?IdRef = null },
-            .OpGroupNonUniformUMin => struct { id_result_type: IdResultType, id_result: IdResult, execution: IdScope, operation: GroupOperation, value: IdRef, clustersize: ?IdRef = null },
-            .OpGroupNonUniformFMin => struct { id_result_type: IdResultType, id_result: IdResult, execution: IdScope, operation: GroupOperation, value: IdRef, clustersize: ?IdRef = null },
-            .OpGroupNonUniformSMax => struct { id_result_type: IdResultType, id_result: IdResult, execution: IdScope, operation: GroupOperation, value: IdRef, clustersize: ?IdRef = null },
-            .OpGroupNonUniformUMax => struct { id_result_type: IdResultType, id_result: IdResult, execution: IdScope, operation: GroupOperation, value: IdRef, clustersize: ?IdRef = null },
-            .OpGroupNonUniformFMax => struct { id_result_type: IdResultType, id_result: IdResult, execution: IdScope, operation: GroupOperation, value: IdRef, clustersize: ?IdRef = null },
-            .OpGroupNonUniformBitwiseAnd => struct { id_result_type: IdResultType, id_result: IdResult, execution: IdScope, operation: GroupOperation, value: IdRef, clustersize: ?IdRef = null },
-            .OpGroupNonUniformBitwiseOr => struct { id_result_type: IdResultType, id_result: IdResult, execution: IdScope, operation: GroupOperation, value: IdRef, clustersize: ?IdRef = null },
-            .OpGroupNonUniformBitwiseXor => struct { id_result_type: IdResultType, id_result: IdResult, execution: IdScope, operation: GroupOperation, value: IdRef, clustersize: ?IdRef = null },
-            .OpGroupNonUniformLogicalAnd => struct { id_result_type: IdResultType, id_result: IdResult, execution: IdScope, operation: GroupOperation, value: IdRef, clustersize: ?IdRef = null },
-            .OpGroupNonUniformLogicalOr => struct { id_result_type: IdResultType, id_result: IdResult, execution: IdScope, operation: GroupOperation, value: IdRef, clustersize: ?IdRef = null },
-            .OpGroupNonUniformLogicalXor => struct { id_result_type: IdResultType, id_result: IdResult, execution: IdScope, operation: GroupOperation, value: IdRef, clustersize: ?IdRef = null },
-            .OpGroupNonUniformQuadBroadcast => struct { id_result_type: IdResultType, id_result: IdResult, execution: IdScope, value: IdRef, index: IdRef },
-            .OpGroupNonUniformQuadSwap => struct { id_result_type: IdResultType, id_result: IdResult, execution: IdScope, value: IdRef, direction: IdRef },
-            .OpCopyLogical => struct { id_result_type: IdResultType, id_result: IdResult, operand: IdRef },
-            .OpPtrEqual => struct { id_result_type: IdResultType, id_result: IdResult, operand_1: IdRef, operand_2: IdRef },
-            .OpPtrNotEqual => struct { id_result_type: IdResultType, id_result: IdResult, operand_1: IdRef, operand_2: IdRef },
-            .OpPtrDiff => struct { id_result_type: IdResultType, id_result: IdResult, operand_1: IdRef, operand_2: IdRef },
-            .OpColorAttachmentReadEXT => struct { id_result_type: IdResultType, id_result: IdResult, attachment: IdRef, sample: ?IdRef = null },
-            .OpDepthAttachmentReadEXT => struct { id_result_type: IdResultType, id_result: IdResult, sample: ?IdRef = null },
-            .OpStencilAttachmentReadEXT => struct { id_result_type: IdResultType, id_result: IdResult, sample: ?IdRef = null },
+            .OpExecutionModeId => struct { entry_point: Id, mode: ExecutionMode.Extended },
+            .OpDecorateId => struct { target: Id, decoration: Decoration.Extended },
+            .OpGroupNonUniformElect => struct { id_result_type: Id, id_result: Id, execution: Id },
+            .OpGroupNonUniformAll => struct { id_result_type: Id, id_result: Id, execution: Id, predicate: Id },
+            .OpGroupNonUniformAny => struct { id_result_type: Id, id_result: Id, execution: Id, predicate: Id },
+            .OpGroupNonUniformAllEqual => struct { id_result_type: Id, id_result: Id, execution: Id, value: Id },
+            .OpGroupNonUniformBroadcast => struct { id_result_type: Id, id_result: Id, execution: Id, value: Id, id: Id },
+            .OpGroupNonUniformBroadcastFirst => struct { id_result_type: Id, id_result: Id, execution: Id, value: Id },
+            .OpGroupNonUniformBallot => struct { id_result_type: Id, id_result: Id, execution: Id, predicate: Id },
+            .OpGroupNonUniformInverseBallot => struct { id_result_type: Id, id_result: Id, execution: Id, value: Id },
+            .OpGroupNonUniformBallotBitExtract => struct { id_result_type: Id, id_result: Id, execution: Id, value: Id, index: Id },
+            .OpGroupNonUniformBallotBitCount => struct { id_result_type: Id, id_result: Id, execution: Id, operation: GroupOperation, value: Id },
+            .OpGroupNonUniformBallotFindLSB => struct { id_result_type: Id, id_result: Id, execution: Id, value: Id },
+            .OpGroupNonUniformBallotFindMSB => struct { id_result_type: Id, id_result: Id, execution: Id, value: Id },
+            .OpGroupNonUniformShuffle => struct { id_result_type: Id, id_result: Id, execution: Id, value: Id, id: Id },
+            .OpGroupNonUniformShuffleXor => struct { id_result_type: Id, id_result: Id, execution: Id, value: Id, mask: Id },
+            .OpGroupNonUniformShuffleUp => struct { id_result_type: Id, id_result: Id, execution: Id, value: Id, delta: Id },
+            .OpGroupNonUniformShuffleDown => struct { id_result_type: Id, id_result: Id, execution: Id, value: Id, delta: Id },
+            .OpGroupNonUniformIAdd => struct { id_result_type: Id, id_result: Id, execution: Id, operation: GroupOperation, value: Id, cluster_size: ?Id = null },
+            .OpGroupNonUniformFAdd => struct { id_result_type: Id, id_result: Id, execution: Id, operation: GroupOperation, value: Id, cluster_size: ?Id = null },
+            .OpGroupNonUniformIMul => struct { id_result_type: Id, id_result: Id, execution: Id, operation: GroupOperation, value: Id, cluster_size: ?Id = null },
+            .OpGroupNonUniformFMul => struct { id_result_type: Id, id_result: Id, execution: Id, operation: GroupOperation, value: Id, cluster_size: ?Id = null },
+            .OpGroupNonUniformSMin => struct { id_result_type: Id, id_result: Id, execution: Id, operation: GroupOperation, value: Id, cluster_size: ?Id = null },
+            .OpGroupNonUniformUMin => struct { id_result_type: Id, id_result: Id, execution: Id, operation: GroupOperation, value: Id, cluster_size: ?Id = null },
+            .OpGroupNonUniformFMin => struct { id_result_type: Id, id_result: Id, execution: Id, operation: GroupOperation, value: Id, cluster_size: ?Id = null },
+            .OpGroupNonUniformSMax => struct { id_result_type: Id, id_result: Id, execution: Id, operation: GroupOperation, value: Id, cluster_size: ?Id = null },
+            .OpGroupNonUniformUMax => struct { id_result_type: Id, id_result: Id, execution: Id, operation: GroupOperation, value: Id, cluster_size: ?Id = null },
+            .OpGroupNonUniformFMax => struct { id_result_type: Id, id_result: Id, execution: Id, operation: GroupOperation, value: Id, cluster_size: ?Id = null },
+            .OpGroupNonUniformBitwiseAnd => struct { id_result_type: Id, id_result: Id, execution: Id, operation: GroupOperation, value: Id, cluster_size: ?Id = null },
+            .OpGroupNonUniformBitwiseOr => struct { id_result_type: Id, id_result: Id, execution: Id, operation: GroupOperation, value: Id, cluster_size: ?Id = null },
+            .OpGroupNonUniformBitwiseXor => struct { id_result_type: Id, id_result: Id, execution: Id, operation: GroupOperation, value: Id, cluster_size: ?Id = null },
+            .OpGroupNonUniformLogicalAnd => struct { id_result_type: Id, id_result: Id, execution: Id, operation: GroupOperation, value: Id, cluster_size: ?Id = null },
+            .OpGroupNonUniformLogicalOr => struct { id_result_type: Id, id_result: Id, execution: Id, operation: GroupOperation, value: Id, cluster_size: ?Id = null },
+            .OpGroupNonUniformLogicalXor => struct { id_result_type: Id, id_result: Id, execution: Id, operation: GroupOperation, value: Id, cluster_size: ?Id = null },
+            .OpGroupNonUniformQuadBroadcast => struct { id_result_type: Id, id_result: Id, execution: Id, value: Id, index: Id },
+            .OpGroupNonUniformQuadSwap => struct { id_result_type: Id, id_result: Id, execution: Id, value: Id, direction: Id },
+            .OpCopyLogical => struct { id_result_type: Id, id_result: Id, operand: Id },
+            .OpPtrEqual => struct { id_result_type: Id, id_result: Id, operand_1: Id, operand_2: Id },
+            .OpPtrNotEqual => struct { id_result_type: Id, id_result: Id, operand_1: Id, operand_2: Id },
+            .OpPtrDiff => struct { id_result_type: Id, id_result: Id, operand_1: Id, operand_2: Id },
+            .OpColorAttachmentReadEXT => struct { id_result_type: Id, id_result: Id, attachment: Id, sample: ?Id = null },
+            .OpDepthAttachmentReadEXT => struct { id_result_type: Id, id_result: Id, sample: ?Id = null },
+            .OpStencilAttachmentReadEXT => struct { id_result_type: Id, id_result: Id, sample: ?Id = null },
+            .OpTypeTensorARM => struct { id_result: Id, element_type: Id, rank: ?Id = null, shape: ?Id = null },
+            .OpTensorReadARM => struct { id_result_type: Id, id_result: Id, tensor: Id, coordinates: Id, tensor_operands: ?TensorOperands.Extended = null },
+            .OpTensorWriteARM => struct { tensor: Id, coordinates: Id, object: Id, tensor_operands: ?TensorOperands.Extended = null },
+            .OpTensorQuerySizeARM => struct { id_result_type: Id, id_result: Id, tensor: Id, dimension: Id },
+            .OpGraphConstantARM => struct { id_result_type: Id, id_result: Id, graph_constant_id: LiteralInteger },
+            .OpGraphEntryPointARM => struct { graph: Id, name: LiteralString, interface: []const Id = &.{} },
+            .OpGraphARM => struct { id_result_type: Id, id_result: Id },
+            .OpGraphInputARM => struct { id_result_type: Id, id_result: Id, input_index: Id, element_index: []const Id = &.{} },
+            .OpGraphSetOutputARM => struct { value: Id, output_index: Id, element_index: []const Id = &.{} },
+            .OpGraphEndARM => void,
+            .OpTypeGraphARM => struct { id_result: Id, num_inputs: LiteralInteger, in_out_types: []const Id = &.{} },
             .OpTerminateInvocation => void,
-            .OpSubgroupBallotKHR => struct { id_result_type: IdResultType, id_result: IdResult, predicate: IdRef },
-            .OpSubgroupFirstInvocationKHR => struct { id_result_type: IdResultType, id_result: IdResult, value: IdRef },
-            .OpSubgroupAllKHR => struct { id_result_type: IdResultType, id_result: IdResult, predicate: IdRef },
-            .OpSubgroupAnyKHR => struct { id_result_type: IdResultType, id_result: IdResult, predicate: IdRef },
-            .OpSubgroupAllEqualKHR => struct { id_result_type: IdResultType, id_result: IdResult, predicate: IdRef },
-            .OpGroupNonUniformRotateKHR => struct { id_result_type: IdResultType, id_result: IdResult, execution: IdScope, value: IdRef, delta: IdRef, clustersize: ?IdRef = null },
-            .OpSubgroupReadInvocationKHR => struct { id_result_type: IdResultType, id_result: IdResult, value: IdRef, index: IdRef },
-            .OpTraceRayKHR => struct { accel: IdRef, ray_flags: IdRef, cull_mask: IdRef, sbt_offset: IdRef, sbt_stride: IdRef, miss_index: IdRef, ray_origin: IdRef, ray_tmin: IdRef, ray_direction: IdRef, ray_tmax: IdRef, payload: IdRef },
-            .OpExecuteCallableKHR => struct { sbt_index: IdRef, callable_data: IdRef },
-            .OpConvertUToAccelerationStructureKHR => struct { id_result_type: IdResultType, id_result: IdResult, accel: IdRef },
+            .OpTypeUntypedPointerKHR => struct { id_result: Id, storage_class: StorageClass },
+            .OpUntypedVariableKHR => struct { id_result_type: Id, id_result: Id, storage_class: StorageClass, data_type: ?Id = null, initializer: ?Id = null },
+            .OpUntypedAccessChainKHR => struct { id_result_type: Id, id_result: Id, base_type: Id, base: Id, indexes: []const Id = &.{} },
+            .OpUntypedInBoundsAccessChainKHR => struct { id_result_type: Id, id_result: Id, base_type: Id, base: Id, indexes: []const Id = &.{} },
+            .OpSubgroupBallotKHR => struct { id_result_type: Id, id_result: Id, predicate: Id },
+            .OpSubgroupFirstInvocationKHR => struct { id_result_type: Id, id_result: Id, value: Id },
+            .OpUntypedPtrAccessChainKHR => struct { id_result_type: Id, id_result: Id, base_type: Id, base: Id, element: Id, indexes: []const Id = &.{} },
+            .OpUntypedInBoundsPtrAccessChainKHR => struct { id_result_type: Id, id_result: Id, base_type: Id, base: Id, element: Id, indexes: []const Id = &.{} },
+            .OpUntypedArrayLengthKHR => struct { id_result_type: Id, id_result: Id, structure: Id, pointer: Id, array_member: LiteralInteger },
+            .OpUntypedPrefetchKHR => struct { pointer_type: Id, num_bytes: Id, rw: ?Id = null, locality: ?Id = null, cache_type: ?Id = null },
+            .OpSubgroupAllKHR => struct { id_result_type: Id, id_result: Id, predicate: Id },
+            .OpSubgroupAnyKHR => struct { id_result_type: Id, id_result: Id, predicate: Id },
+            .OpSubgroupAllEqualKHR => struct { id_result_type: Id, id_result: Id, predicate: Id },
+            .OpGroupNonUniformRotateKHR => struct { id_result_type: Id, id_result: Id, execution: Id, value: Id, delta: Id, cluster_size: ?Id = null },
+            .OpSubgroupReadInvocationKHR => struct { id_result_type: Id, id_result: Id, value: Id, index: Id },
+            .OpExtInstWithForwardRefsKHR => struct { id_result_type: Id, id_result: Id, set: Id, instruction: LiteralExtInstInteger, id_ref_4: []const Id = &.{} },
+            .OpTraceRayKHR => struct { accel: Id, ray_flags: Id, cull_mask: Id, sbt_offset: Id, sbt_stride: Id, miss_index: Id, ray_origin: Id, ray_tmin: Id, ray_direction: Id, ray_tmax: Id, payload: Id },
+            .OpExecuteCallableKHR => struct { sbt_index: Id, callable_data: Id },
+            .OpConvertUToAccelerationStructureKHR => struct { id_result_type: Id, id_result: Id, accel: Id },
             .OpIgnoreIntersectionKHR => void,
             .OpTerminateRayKHR => void,
-            .OpSDot => struct { id_result_type: IdResultType, id_result: IdResult, vector_1: IdRef, vector_2: IdRef, packed_vector_format: ?PackedVectorFormat = null },
-            .OpUDot => struct { id_result_type: IdResultType, id_result: IdResult, vector_1: IdRef, vector_2: IdRef, packed_vector_format: ?PackedVectorFormat = null },
-            .OpSUDot => struct { id_result_type: IdResultType, id_result: IdResult, vector_1: IdRef, vector_2: IdRef, packed_vector_format: ?PackedVectorFormat = null },
-            .OpSDotAccSat => struct { id_result_type: IdResultType, id_result: IdResult, vector_1: IdRef, vector_2: IdRef, accumulator: IdRef, packed_vector_format: ?PackedVectorFormat = null },
-            .OpUDotAccSat => struct { id_result_type: IdResultType, id_result: IdResult, vector_1: IdRef, vector_2: IdRef, accumulator: IdRef, packed_vector_format: ?PackedVectorFormat = null },
-            .OpSUDotAccSat => struct { id_result_type: IdResultType, id_result: IdResult, vector_1: IdRef, vector_2: IdRef, accumulator: IdRef, packed_vector_format: ?PackedVectorFormat = null },
-            .OpTypeCooperativeMatrixKHR => struct { id_result: IdResult, component_type: IdRef, scope: IdScope, rows: IdRef, columns: IdRef, use: IdRef },
-            .OpCooperativeMatrixLoadKHR => struct { id_result_type: IdResultType, id_result: IdResult, pointer: IdRef, memorylayout: IdRef, stride: ?IdRef = null, memory_operand: ?MemoryAccess.Extended = null },
-            .OpCooperativeMatrixStoreKHR => struct { pointer: IdRef, object: IdRef, memorylayout: IdRef, stride: ?IdRef = null, memory_operand: ?MemoryAccess.Extended = null },
-            .OpCooperativeMatrixMulAddKHR => struct { id_result_type: IdResultType, id_result: IdResult, a: IdRef, b: IdRef, c: IdRef, cooperative_matrix_operands: ?CooperativeMatrixOperands = null },
-            .OpCooperativeMatrixLengthKHR => struct { id_result_type: IdResultType, id_result: IdResult, type: IdRef },
-            .OpTypeRayQueryKHR => struct { id_result: IdResult },
-            .OpRayQueryInitializeKHR => struct { rayquery: IdRef, accel: IdRef, rayflags: IdRef, cullmask: IdRef, rayorigin: IdRef, raytmin: IdRef, raydirection: IdRef, raytmax: IdRef },
-            .OpRayQueryTerminateKHR => struct { rayquery: IdRef },
-            .OpRayQueryGenerateIntersectionKHR => struct { rayquery: IdRef, hitt: IdRef },
-            .OpRayQueryConfirmIntersectionKHR => struct { rayquery: IdRef },
-            .OpRayQueryProceedKHR => struct { id_result_type: IdResultType, id_result: IdResult, rayquery: IdRef },
-            .OpRayQueryGetIntersectionTypeKHR => struct { id_result_type: IdResultType, id_result: IdResult, rayquery: IdRef, intersection: IdRef },
-            .OpImageSampleWeightedQCOM => struct { id_result_type: IdResultType, id_result: IdResult, texture: IdRef, coordinates: IdRef, weights: IdRef },
-            .OpImageBoxFilterQCOM => struct { id_result_type: IdResultType, id_result: IdResult, texture: IdRef, coordinates: IdRef, box_size: IdRef },
-            .OpImageBlockMatchSSDQCOM => struct { id_result_type: IdResultType, id_result: IdResult, target: IdRef, target_coordinates: IdRef, reference: IdRef, reference_coordinates: IdRef, block_size: IdRef },
-            .OpImageBlockMatchSADQCOM => struct { id_result_type: IdResultType, id_result: IdResult, target: IdRef, target_coordinates: IdRef, reference: IdRef, reference_coordinates: IdRef, block_size: IdRef },
-            .OpImageBlockMatchWindowSSDQCOM => struct { id_result_type: IdResultType, id_result: IdResult, target_sampled_image: IdRef, target_coordinates: IdRef, reference_sampled_image: IdRef, reference_coordinates: IdRef, block_size: IdRef },
-            .OpImageBlockMatchWindowSADQCOM => struct { id_result_type: IdResultType, id_result: IdResult, target_sampled_image: IdRef, target_coordinates: IdRef, reference_sampled_image: IdRef, reference_coordinates: IdRef, block_size: IdRef },
-            .OpImageBlockMatchGatherSSDQCOM => struct { id_result_type: IdResultType, id_result: IdResult, target_sampled_image: IdRef, target_coordinates: IdRef, reference_sampled_image: IdRef, reference_coordinates: IdRef, block_size: IdRef },
-            .OpImageBlockMatchGatherSADQCOM => struct { id_result_type: IdResultType, id_result: IdResult, target_sampled_image: IdRef, target_coordinates: IdRef, reference_sampled_image: IdRef, reference_coordinates: IdRef, block_size: IdRef },
-            .OpGroupIAddNonUniformAMD => struct { id_result_type: IdResultType, id_result: IdResult, execution: IdScope, operation: GroupOperation, x: IdRef },
-            .OpGroupFAddNonUniformAMD => struct { id_result_type: IdResultType, id_result: IdResult, execution: IdScope, operation: GroupOperation, x: IdRef },
-            .OpGroupFMinNonUniformAMD => struct { id_result_type: IdResultType, id_result: IdResult, execution: IdScope, operation: GroupOperation, x: IdRef },
-            .OpGroupUMinNonUniformAMD => struct { id_result_type: IdResultType, id_result: IdResult, execution: IdScope, operation: GroupOperation, x: IdRef },
-            .OpGroupSMinNonUniformAMD => struct { id_result_type: IdResultType, id_result: IdResult, execution: IdScope, operation: GroupOperation, x: IdRef },
-            .OpGroupFMaxNonUniformAMD => struct { id_result_type: IdResultType, id_result: IdResult, execution: IdScope, operation: GroupOperation, x: IdRef },
-            .OpGroupUMaxNonUniformAMD => struct { id_result_type: IdResultType, id_result: IdResult, execution: IdScope, operation: GroupOperation, x: IdRef },
-            .OpGroupSMaxNonUniformAMD => struct { id_result_type: IdResultType, id_result: IdResult, execution: IdScope, operation: GroupOperation, x: IdRef },
-            .OpFragmentMaskFetchAMD => struct { id_result_type: IdResultType, id_result: IdResult, image: IdRef, coordinate: IdRef },
-            .OpFragmentFetchAMD => struct { id_result_type: IdResultType, id_result: IdResult, image: IdRef, coordinate: IdRef, fragment_index: IdRef },
-            .OpReadClockKHR => struct { id_result_type: IdResultType, id_result: IdResult, scope: IdScope },
-            .OpFinalizeNodePayloadsAMDX => struct { payload_array: IdRef },
-            .OpFinishWritingNodePayloadAMDX => struct { id_result_type: IdResultType, id_result: IdResult, payload: IdRef },
-            .OpInitializeNodePayloadsAMDX => struct { payload_array: IdRef, visibility: IdScope, payload_count: IdRef, node_index: IdRef },
-            .OpGroupNonUniformQuadAllKHR => struct { id_result_type: IdResultType, id_result: IdResult, predicate: IdRef },
-            .OpGroupNonUniformQuadAnyKHR => struct { id_result_type: IdResultType, id_result: IdResult, predicate: IdRef },
-            .OpHitObjectRecordHitMotionNV => struct { hit_object: IdRef, acceleration_structure: IdRef, instanceid: IdRef, primitiveid: IdRef, geometryindex: IdRef, hit_kind: IdRef, sbt_record_offset: IdRef, sbt_record_stride: IdRef, origin: IdRef, tmin: IdRef, direction: IdRef, tmax: IdRef, current_time: IdRef, hitobject_attributes: IdRef },
-            .OpHitObjectRecordHitWithIndexMotionNV => struct { hit_object: IdRef, acceleration_structure: IdRef, instanceid: IdRef, primitiveid: IdRef, geometryindex: IdRef, hit_kind: IdRef, sbt_record_index: IdRef, origin: IdRef, tmin: IdRef, direction: IdRef, tmax: IdRef, current_time: IdRef, hitobject_attributes: IdRef },
-            .OpHitObjectRecordMissMotionNV => struct { hit_object: IdRef, sbt_index: IdRef, origin: IdRef, tmin: IdRef, direction: IdRef, tmax: IdRef, current_time: IdRef },
-            .OpHitObjectGetWorldToObjectNV => struct { id_result_type: IdResultType, id_result: IdResult, hit_object: IdRef },
-            .OpHitObjectGetObjectToWorldNV => struct { id_result_type: IdResultType, id_result: IdResult, hit_object: IdRef },
-            .OpHitObjectGetObjectRayDirectionNV => struct { id_result_type: IdResultType, id_result: IdResult, hit_object: IdRef },
-            .OpHitObjectGetObjectRayOriginNV => struct { id_result_type: IdResultType, id_result: IdResult, hit_object: IdRef },
-            .OpHitObjectTraceRayMotionNV => struct { hit_object: IdRef, acceleration_structure: IdRef, rayflags: IdRef, cullmask: IdRef, sbt_record_offset: IdRef, sbt_record_stride: IdRef, miss_index: IdRef, origin: IdRef, tmin: IdRef, direction: IdRef, tmax: IdRef, time: IdRef, payload: IdRef },
-            .OpHitObjectGetShaderRecordBufferHandleNV => struct { id_result_type: IdResultType, id_result: IdResult, hit_object: IdRef },
-            .OpHitObjectGetShaderBindingTableRecordIndexNV => struct { id_result_type: IdResultType, id_result: IdResult, hit_object: IdRef },
-            .OpHitObjectRecordEmptyNV => struct { hit_object: IdRef },
-            .OpHitObjectTraceRayNV => struct { hit_object: IdRef, acceleration_structure: IdRef, rayflags: IdRef, cullmask: IdRef, sbt_record_offset: IdRef, sbt_record_stride: IdRef, miss_index: IdRef, origin: IdRef, tmin: IdRef, direction: IdRef, tmax: IdRef, payload: IdRef },
-            .OpHitObjectRecordHitNV => struct { hit_object: IdRef, acceleration_structure: IdRef, instanceid: IdRef, primitiveid: IdRef, geometryindex: IdRef, hit_kind: IdRef, sbt_record_offset: IdRef, sbt_record_stride: IdRef, origin: IdRef, tmin: IdRef, direction: IdRef, tmax: IdRef, hitobject_attributes: IdRef },
-            .OpHitObjectRecordHitWithIndexNV => struct { hit_object: IdRef, acceleration_structure: IdRef, instanceid: IdRef, primitiveid: IdRef, geometryindex: IdRef, hit_kind: IdRef, sbt_record_index: IdRef, origin: IdRef, tmin: IdRef, direction: IdRef, tmax: IdRef, hitobject_attributes: IdRef },
-            .OpHitObjectRecordMissNV => struct { hit_object: IdRef, sbt_index: IdRef, origin: IdRef, tmin: IdRef, direction: IdRef, tmax: IdRef },
-            .OpHitObjectExecuteShaderNV => struct { hit_object: IdRef, payload: IdRef },
-            .OpHitObjectGetCurrentTimeNV => struct { id_result_type: IdResultType, id_result: IdResult, hit_object: IdRef },
-            .OpHitObjectGetAttributesNV => struct { hit_object: IdRef, hit_object_attribute: IdRef },
-            .OpHitObjectGetHitKindNV => struct { id_result_type: IdResultType, id_result: IdResult, hit_object: IdRef },
-            .OpHitObjectGetPrimitiveIndexNV => struct { id_result_type: IdResultType, id_result: IdResult, hit_object: IdRef },
-            .OpHitObjectGetGeometryIndexNV => struct { id_result_type: IdResultType, id_result: IdResult, hit_object: IdRef },
-            .OpHitObjectGetInstanceIdNV => struct { id_result_type: IdResultType, id_result: IdResult, hit_object: IdRef },
-            .OpHitObjectGetInstanceCustomIndexNV => struct { id_result_type: IdResultType, id_result: IdResult, hit_object: IdRef },
-            .OpHitObjectGetWorldRayDirectionNV => struct { id_result_type: IdResultType, id_result: IdResult, hit_object: IdRef },
-            .OpHitObjectGetWorldRayOriginNV => struct { id_result_type: IdResultType, id_result: IdResult, hit_object: IdRef },
-            .OpHitObjectGetRayTMaxNV => struct { id_result_type: IdResultType, id_result: IdResult, hit_object: IdRef },
-            .OpHitObjectGetRayTMinNV => struct { id_result_type: IdResultType, id_result: IdResult, hit_object: IdRef },
-            .OpHitObjectIsEmptyNV => struct { id_result_type: IdResultType, id_result: IdResult, hit_object: IdRef },
-            .OpHitObjectIsHitNV => struct { id_result_type: IdResultType, id_result: IdResult, hit_object: IdRef },
-            .OpHitObjectIsMissNV => struct { id_result_type: IdResultType, id_result: IdResult, hit_object: IdRef },
-            .OpReorderThreadWithHitObjectNV => struct { hit_object: IdRef, hint: ?IdRef = null, bits: ?IdRef = null },
-            .OpReorderThreadWithHintNV => struct { hint: IdRef, bits: IdRef },
-            .OpTypeHitObjectNV => struct { id_result: IdResult },
-            .OpImageSampleFootprintNV => struct { id_result_type: IdResultType, id_result: IdResult, sampled_image: IdRef, coordinate: IdRef, granularity: IdRef, coarse: IdRef, image_operands: ?ImageOperands.Extended = null },
-            .OpEmitMeshTasksEXT => struct { group_count_x: IdRef, group_count_y: IdRef, group_count_z: IdRef, payload: ?IdRef = null },
-            .OpSetMeshOutputsEXT => struct { vertex_count: IdRef, primitive_count: IdRef },
-            .OpGroupNonUniformPartitionNV => struct { id_result_type: IdResultType, id_result: IdResult, value: IdRef },
-            .OpWritePackedPrimitiveIndices4x8NV => struct { index_offset: IdRef, packed_indices: IdRef },
-            .OpFetchMicroTriangleVertexPositionNV => struct { id_result_type: IdResultType, id_result: IdResult, accel: IdRef, instance_id: IdRef, geometry_index: IdRef, primitive_index: IdRef, barycentric: IdRef },
-            .OpFetchMicroTriangleVertexBarycentricNV => struct { id_result_type: IdResultType, id_result: IdResult, accel: IdRef, instance_id: IdRef, geometry_index: IdRef, primitive_index: IdRef, barycentric: IdRef },
-            .OpReportIntersectionKHR => struct { id_result_type: IdResultType, id_result: IdResult, hit: IdRef, hitkind: IdRef },
+            .OpSDot => struct { id_result_type: Id, id_result: Id, vector_1: Id, vector_2: Id, packed_vector_format: ?PackedVectorFormat = null },
+            .OpUDot => struct { id_result_type: Id, id_result: Id, vector_1: Id, vector_2: Id, packed_vector_format: ?PackedVectorFormat = null },
+            .OpSUDot => struct { id_result_type: Id, id_result: Id, vector_1: Id, vector_2: Id, packed_vector_format: ?PackedVectorFormat = null },
+            .OpSDotAccSat => struct { id_result_type: Id, id_result: Id, vector_1: Id, vector_2: Id, accumulator: Id, packed_vector_format: ?PackedVectorFormat = null },
+            .OpUDotAccSat => struct { id_result_type: Id, id_result: Id, vector_1: Id, vector_2: Id, accumulator: Id, packed_vector_format: ?PackedVectorFormat = null },
+            .OpSUDotAccSat => struct { id_result_type: Id, id_result: Id, vector_1: Id, vector_2: Id, accumulator: Id, packed_vector_format: ?PackedVectorFormat = null },
+            .OpTypeCooperativeMatrixKHR => struct { id_result: Id, component_type: Id, scope: Id, rows: Id, columns: Id, use: Id },
+            .OpCooperativeMatrixLoadKHR => struct { id_result_type: Id, id_result: Id, pointer: Id, memory_layout: Id, stride: ?Id = null, memory_operand: ?MemoryAccess.Extended = null },
+            .OpCooperativeMatrixStoreKHR => struct { pointer: Id, object: Id, memory_layout: Id, stride: ?Id = null, memory_operand: ?MemoryAccess.Extended = null },
+            .OpCooperativeMatrixMulAddKHR => struct { id_result_type: Id, id_result: Id, a: Id, b: Id, c: Id, cooperative_matrix_operands: ?CooperativeMatrixOperands = null },
+            .OpCooperativeMatrixLengthKHR => struct { id_result_type: Id, id_result: Id, type: Id },
+            .OpConstantCompositeReplicateEXT => struct { id_result_type: Id, id_result: Id, value: Id },
+            .OpSpecConstantCompositeReplicateEXT => struct { id_result_type: Id, id_result: Id, value: Id },
+            .OpCompositeConstructReplicateEXT => struct { id_result_type: Id, id_result: Id, value: Id },
+            .OpTypeRayQueryKHR => struct { id_result: Id },
+            .OpRayQueryInitializeKHR => struct { ray_query: Id, accel: Id, ray_flags: Id, cull_mask: Id, ray_origin: Id, ray_t_min: Id, ray_direction: Id, ray_t_max: Id },
+            .OpRayQueryTerminateKHR => struct { ray_query: Id },
+            .OpRayQueryGenerateIntersectionKHR => struct { ray_query: Id, hit_t: Id },
+            .OpRayQueryConfirmIntersectionKHR => struct { ray_query: Id },
+            .OpRayQueryProceedKHR => struct { id_result_type: Id, id_result: Id, ray_query: Id },
+            .OpRayQueryGetIntersectionTypeKHR => struct { id_result_type: Id, id_result: Id, ray_query: Id, intersection: Id },
+            .OpImageSampleWeightedQCOM => struct { id_result_type: Id, id_result: Id, texture: Id, coordinates: Id, weights: Id },
+            .OpImageBoxFilterQCOM => struct { id_result_type: Id, id_result: Id, texture: Id, coordinates: Id, box_size: Id },
+            .OpImageBlockMatchSSDQCOM => struct { id_result_type: Id, id_result: Id, target: Id, target_coordinates: Id, reference: Id, reference_coordinates: Id, block_size: Id },
+            .OpImageBlockMatchSADQCOM => struct { id_result_type: Id, id_result: Id, target: Id, target_coordinates: Id, reference: Id, reference_coordinates: Id, block_size: Id },
+            .OpImageBlockMatchWindowSSDQCOM => struct { id_result_type: Id, id_result: Id, target_sampled_image: Id, target_coordinates: Id, reference_sampled_image: Id, reference_coordinates: Id, block_size: Id },
+            .OpImageBlockMatchWindowSADQCOM => struct { id_result_type: Id, id_result: Id, target_sampled_image: Id, target_coordinates: Id, reference_sampled_image: Id, reference_coordinates: Id, block_size: Id },
+            .OpImageBlockMatchGatherSSDQCOM => struct { id_result_type: Id, id_result: Id, target_sampled_image: Id, target_coordinates: Id, reference_sampled_image: Id, reference_coordinates: Id, block_size: Id },
+            .OpImageBlockMatchGatherSADQCOM => struct { id_result_type: Id, id_result: Id, target_sampled_image: Id, target_coordinates: Id, reference_sampled_image: Id, reference_coordinates: Id, block_size: Id },
+            .OpGroupIAddNonUniformAMD => struct { id_result_type: Id, id_result: Id, execution: Id, operation: GroupOperation, x: Id },
+            .OpGroupFAddNonUniformAMD => struct { id_result_type: Id, id_result: Id, execution: Id, operation: GroupOperation, x: Id },
+            .OpGroupFMinNonUniformAMD => struct { id_result_type: Id, id_result: Id, execution: Id, operation: GroupOperation, x: Id },
+            .OpGroupUMinNonUniformAMD => struct { id_result_type: Id, id_result: Id, execution: Id, operation: GroupOperation, x: Id },
+            .OpGroupSMinNonUniformAMD => struct { id_result_type: Id, id_result: Id, execution: Id, operation: GroupOperation, x: Id },
+            .OpGroupFMaxNonUniformAMD => struct { id_result_type: Id, id_result: Id, execution: Id, operation: GroupOperation, x: Id },
+            .OpGroupUMaxNonUniformAMD => struct { id_result_type: Id, id_result: Id, execution: Id, operation: GroupOperation, x: Id },
+            .OpGroupSMaxNonUniformAMD => struct { id_result_type: Id, id_result: Id, execution: Id, operation: GroupOperation, x: Id },
+            .OpFragmentMaskFetchAMD => struct { id_result_type: Id, id_result: Id, image: Id, coordinate: Id },
+            .OpFragmentFetchAMD => struct { id_result_type: Id, id_result: Id, image: Id, coordinate: Id, fragment_index: Id },
+            .OpReadClockKHR => struct { id_result_type: Id, id_result: Id, scope: Id },
+            .OpAllocateNodePayloadsAMDX => struct { id_result_type: Id, id_result: Id, visibility: Id, payload_count: Id, node_index: Id },
+            .OpEnqueueNodePayloadsAMDX => struct { payload_array: Id },
+            .OpTypeNodePayloadArrayAMDX => struct { id_result: Id, payload_type: Id },
+            .OpFinishWritingNodePayloadAMDX => struct { id_result_type: Id, id_result: Id, payload: Id },
+            .OpNodePayloadArrayLengthAMDX => struct { id_result_type: Id, id_result: Id, payload_array: Id },
+            .OpIsNodePayloadValidAMDX => struct { id_result_type: Id, id_result: Id, payload_type: Id, node_index: Id },
+            .OpConstantStringAMDX => struct { id_result: Id, literal_string: LiteralString },
+            .OpSpecConstantStringAMDX => struct { id_result: Id, literal_string: LiteralString },
+            .OpGroupNonUniformQuadAllKHR => struct { id_result_type: Id, id_result: Id, predicate: Id },
+            .OpGroupNonUniformQuadAnyKHR => struct { id_result_type: Id, id_result: Id, predicate: Id },
+            .OpHitObjectRecordHitMotionNV => struct { hit_object: Id, acceleration_structure: Id, instance_id: Id, primitive_id: Id, geometry_index: Id, hit_kind: Id, sbt_record_offset: Id, sbt_record_stride: Id, origin: Id, t_min: Id, direction: Id, t_max: Id, current_time: Id, hit_object_attributes: Id },
+            .OpHitObjectRecordHitWithIndexMotionNV => struct { hit_object: Id, acceleration_structure: Id, instance_id: Id, primitive_id: Id, geometry_index: Id, hit_kind: Id, sbt_record_index: Id, origin: Id, t_min: Id, direction: Id, t_max: Id, current_time: Id, hit_object_attributes: Id },
+            .OpHitObjectRecordMissMotionNV => struct { hit_object: Id, sbt_index: Id, origin: Id, t_min: Id, direction: Id, t_max: Id, current_time: Id },
+            .OpHitObjectGetWorldToObjectNV => struct { id_result_type: Id, id_result: Id, hit_object: Id },
+            .OpHitObjectGetObjectToWorldNV => struct { id_result_type: Id, id_result: Id, hit_object: Id },
+            .OpHitObjectGetObjectRayDirectionNV => struct { id_result_type: Id, id_result: Id, hit_object: Id },
+            .OpHitObjectGetObjectRayOriginNV => struct { id_result_type: Id, id_result: Id, hit_object: Id },
+            .OpHitObjectTraceRayMotionNV => struct { hit_object: Id, acceleration_structure: Id, ray_flags: Id, cullmask: Id, sbt_record_offset: Id, sbt_record_stride: Id, miss_index: Id, origin: Id, t_min: Id, direction: Id, t_max: Id, time: Id, payload: Id },
+            .OpHitObjectGetShaderRecordBufferHandleNV => struct { id_result_type: Id, id_result: Id, hit_object: Id },
+            .OpHitObjectGetShaderBindingTableRecordIndexNV => struct { id_result_type: Id, id_result: Id, hit_object: Id },
+            .OpHitObjectRecordEmptyNV => struct { hit_object: Id },
+            .OpHitObjectTraceRayNV => struct { hit_object: Id, acceleration_structure: Id, ray_flags: Id, cullmask: Id, sbt_record_offset: Id, sbt_record_stride: Id, miss_index: Id, origin: Id, t_min: Id, direction: Id, t_max: Id, payload: Id },
+            .OpHitObjectRecordHitNV => struct { hit_object: Id, acceleration_structure: Id, instance_id: Id, primitive_id: Id, geometry_index: Id, hit_kind: Id, sbt_record_offset: Id, sbt_record_stride: Id, origin: Id, t_min: Id, direction: Id, t_max: Id, hit_object_attributes: Id },
+            .OpHitObjectRecordHitWithIndexNV => struct { hit_object: Id, acceleration_structure: Id, instance_id: Id, primitive_id: Id, geometry_index: Id, hit_kind: Id, sbt_record_index: Id, origin: Id, t_min: Id, direction: Id, t_max: Id, hit_object_attributes: Id },
+            .OpHitObjectRecordMissNV => struct { hit_object: Id, sbt_index: Id, origin: Id, t_min: Id, direction: Id, t_max: Id },
+            .OpHitObjectExecuteShaderNV => struct { hit_object: Id, payload: Id },
+            .OpHitObjectGetCurrentTimeNV => struct { id_result_type: Id, id_result: Id, hit_object: Id },
+            .OpHitObjectGetAttributesNV => struct { hit_object: Id, hit_object_attribute: Id },
+            .OpHitObjectGetHitKindNV => struct { id_result_type: Id, id_result: Id, hit_object: Id },
+            .OpHitObjectGetPrimitiveIndexNV => struct { id_result_type: Id, id_result: Id, hit_object: Id },
+            .OpHitObjectGetGeometryIndexNV => struct { id_result_type: Id, id_result: Id, hit_object: Id },
+            .OpHitObjectGetInstanceIdNV => struct { id_result_type: Id, id_result: Id, hit_object: Id },
+            .OpHitObjectGetInstanceCustomIndexNV => struct { id_result_type: Id, id_result: Id, hit_object: Id },
+            .OpHitObjectGetWorldRayDirectionNV => struct { id_result_type: Id, id_result: Id, hit_object: Id },
+            .OpHitObjectGetWorldRayOriginNV => struct { id_result_type: Id, id_result: Id, hit_object: Id },
+            .OpHitObjectGetRayTMaxNV => struct { id_result_type: Id, id_result: Id, hit_object: Id },
+            .OpHitObjectGetRayTMinNV => struct { id_result_type: Id, id_result: Id, hit_object: Id },
+            .OpHitObjectIsEmptyNV => struct { id_result_type: Id, id_result: Id, hit_object: Id },
+            .OpHitObjectIsHitNV => struct { id_result_type: Id, id_result: Id, hit_object: Id },
+            .OpHitObjectIsMissNV => struct { id_result_type: Id, id_result: Id, hit_object: Id },
+            .OpReorderThreadWithHitObjectNV => struct { hit_object: Id, hint: ?Id = null, bits: ?Id = null },
+            .OpReorderThreadWithHintNV => struct { hint: Id, bits: Id },
+            .OpTypeHitObjectNV => struct { id_result: Id },
+            .OpImageSampleFootprintNV => struct { id_result_type: Id, id_result: Id, sampled_image: Id, coordinate: Id, granularity: Id, coarse: Id, image_operands: ?ImageOperands.Extended = null },
+            .OpTypeCooperativeVectorNV => struct { id_result: Id, component_type: Id, component_count: Id },
+            .OpCooperativeVectorMatrixMulNV => struct { id_result_type: Id, id_result: Id, input: Id, input_interpretation: Id, matrix: Id, matrix_offset: Id, matrix_interpretation: Id, m: Id, k: Id, memory_layout: Id, transpose: Id, matrix_stride: ?Id = null, cooperative_matrix_operands: ?CooperativeMatrixOperands = null },
+            .OpCooperativeVectorOuterProductAccumulateNV => struct { pointer: Id, offset: Id, a: Id, b: Id, memory_layout: Id, matrix_interpretation: Id, matrix_stride: ?Id = null },
+            .OpCooperativeVectorReduceSumAccumulateNV => struct { pointer: Id, offset: Id, v: Id },
+            .OpCooperativeVectorMatrixMulAddNV => struct { id_result_type: Id, id_result: Id, input: Id, input_interpretation: Id, matrix: Id, matrix_offset: Id, matrix_interpretation: Id, bias: Id, bias_offset: Id, bias_interpretation: Id, m: Id, k: Id, memory_layout: Id, transpose: Id, matrix_stride: ?Id = null, cooperative_matrix_operands: ?CooperativeMatrixOperands = null },
+            .OpCooperativeMatrixConvertNV => struct { id_result_type: Id, id_result: Id, matrix: Id },
+            .OpEmitMeshTasksEXT => struct { group_count_x: Id, group_count_y: Id, group_count_z: Id, payload: ?Id = null },
+            .OpSetMeshOutputsEXT => struct { vertex_count: Id, primitive_count: Id },
+            .OpGroupNonUniformPartitionNV => struct { id_result_type: Id, id_result: Id, value: Id },
+            .OpWritePackedPrimitiveIndices4x8NV => struct { index_offset: Id, packed_indices: Id },
+            .OpFetchMicroTriangleVertexPositionNV => struct { id_result_type: Id, id_result: Id, accel: Id, instance_id: Id, geometry_index: Id, primitive_index: Id, barycentric: Id },
+            .OpFetchMicroTriangleVertexBarycentricNV => struct { id_result_type: Id, id_result: Id, accel: Id, instance_id: Id, geometry_index: Id, primitive_index: Id, barycentric: Id },
+            .OpCooperativeVectorLoadNV => struct { id_result_type: Id, id_result: Id, pointer: Id, offset: Id, memory_access: ?MemoryAccess.Extended = null },
+            .OpCooperativeVectorStoreNV => struct { pointer: Id, offset: Id, object: Id, memory_access: ?MemoryAccess.Extended = null },
+            .OpReportIntersectionKHR => struct { id_result_type: Id, id_result: Id, hit: Id, hit_kind: Id },
             .OpIgnoreIntersectionNV => void,
             .OpTerminateRayNV => void,
-            .OpTraceNV => struct { accel: IdRef, ray_flags: IdRef, cull_mask: IdRef, sbt_offset: IdRef, sbt_stride: IdRef, miss_index: IdRef, ray_origin: IdRef, ray_tmin: IdRef, ray_direction: IdRef, ray_tmax: IdRef, payloadid: IdRef },
-            .OpTraceMotionNV => struct { accel: IdRef, ray_flags: IdRef, cull_mask: IdRef, sbt_offset: IdRef, sbt_stride: IdRef, miss_index: IdRef, ray_origin: IdRef, ray_tmin: IdRef, ray_direction: IdRef, ray_tmax: IdRef, time: IdRef, payloadid: IdRef },
-            .OpTraceRayMotionNV => struct { accel: IdRef, ray_flags: IdRef, cull_mask: IdRef, sbt_offset: IdRef, sbt_stride: IdRef, miss_index: IdRef, ray_origin: IdRef, ray_tmin: IdRef, ray_direction: IdRef, ray_tmax: IdRef, time: IdRef, payload: IdRef },
-            .OpRayQueryGetIntersectionTriangleVertexPositionsKHR => struct { id_result_type: IdResultType, id_result: IdResult, rayquery: IdRef, intersection: IdRef },
-            .OpTypeAccelerationStructureKHR => struct { id_result: IdResult },
-            .OpExecuteCallableNV => struct { sbt_index: IdRef, callable_dataid: IdRef },
-            .OpTypeCooperativeMatrixNV => struct { id_result: IdResult, component_type: IdRef, execution: IdScope, rows: IdRef, columns: IdRef },
-            .OpCooperativeMatrixLoadNV => struct { id_result_type: IdResultType, id_result: IdResult, pointer: IdRef, stride: IdRef, column_major: IdRef, memory_access: ?MemoryAccess.Extended = null },
-            .OpCooperativeMatrixStoreNV => struct { pointer: IdRef, object: IdRef, stride: IdRef, column_major: IdRef, memory_access: ?MemoryAccess.Extended = null },
-            .OpCooperativeMatrixMulAddNV => struct { id_result_type: IdResultType, id_result: IdResult, a: IdRef, b: IdRef, c: IdRef },
-            .OpCooperativeMatrixLengthNV => struct { id_result_type: IdResultType, id_result: IdResult, type: IdRef },
+            .OpTraceNV => struct { accel: Id, ray_flags: Id, cull_mask: Id, sbt_offset: Id, sbt_stride: Id, miss_index: Id, ray_origin: Id, ray_tmin: Id, ray_direction: Id, ray_tmax: Id, payload_id: Id },
+            .OpTraceMotionNV => struct { accel: Id, ray_flags: Id, cull_mask: Id, sbt_offset: Id, sbt_stride: Id, miss_index: Id, ray_origin: Id, ray_tmin: Id, ray_direction: Id, ray_tmax: Id, time: Id, payload_id: Id },
+            .OpTraceRayMotionNV => struct { accel: Id, ray_flags: Id, cull_mask: Id, sbt_offset: Id, sbt_stride: Id, miss_index: Id, ray_origin: Id, ray_tmin: Id, ray_direction: Id, ray_tmax: Id, time: Id, payload: Id },
+            .OpRayQueryGetIntersectionTriangleVertexPositionsKHR => struct { id_result_type: Id, id_result: Id, ray_query: Id, intersection: Id },
+            .OpTypeAccelerationStructureKHR => struct { id_result: Id },
+            .OpExecuteCallableNV => struct { sbt_index: Id, callable_data_id: Id },
+            .OpRayQueryGetClusterIdNV => struct { id_result_type: Id, id_result: Id, ray_query: Id, intersection: Id },
+            .OpHitObjectGetClusterIdNV => struct { id_result_type: Id, id_result: Id, hit_object: Id },
+            .OpTypeCooperativeMatrixNV => struct { id_result: Id, component_type: Id, execution: Id, rows: Id, columns: Id },
+            .OpCooperativeMatrixLoadNV => struct { id_result_type: Id, id_result: Id, pointer: Id, stride: Id, column_major: Id, memory_access: ?MemoryAccess.Extended = null },
+            .OpCooperativeMatrixStoreNV => struct { pointer: Id, object: Id, stride: Id, column_major: Id, memory_access: ?MemoryAccess.Extended = null },
+            .OpCooperativeMatrixMulAddNV => struct { id_result_type: Id, id_result: Id, a: Id, b: Id, c: Id },
+            .OpCooperativeMatrixLengthNV => struct { id_result_type: Id, id_result: Id, type: Id },
             .OpBeginInvocationInterlockEXT => void,
             .OpEndInvocationInterlockEXT => void,
+            .OpCooperativeMatrixReduceNV => struct { id_result_type: Id, id_result: Id, matrix: Id, reduce: CooperativeMatrixReduce, combine_func: Id },
+            .OpCooperativeMatrixLoadTensorNV => struct { id_result_type: Id, id_result: Id, pointer: Id, object: Id, tensor_layout: Id, memory_operand: MemoryAccess.Extended, tensor_addressing_operands: TensorAddressingOperands.Extended },
+            .OpCooperativeMatrixStoreTensorNV => struct { pointer: Id, object: Id, tensor_layout: Id, memory_operand: MemoryAccess.Extended, tensor_addressing_operands: TensorAddressingOperands.Extended },
+            .OpCooperativeMatrixPerElementOpNV => struct { id_result_type: Id, id_result: Id, matrix: Id, func: Id, operands: []const Id = &.{} },
+            .OpTypeTensorLayoutNV => struct { id_result: Id, dim: Id, clamp_mode: Id },
+            .OpTypeTensorViewNV => struct { id_result: Id, dim: Id, has_dimensions: Id, p: []const Id = &.{} },
+            .OpCreateTensorLayoutNV => struct { id_result_type: Id, id_result: Id },
+            .OpTensorLayoutSetDimensionNV => struct { id_result_type: Id, id_result: Id, tensor_layout: Id, dim: []const Id = &.{} },
+            .OpTensorLayoutSetStrideNV => struct { id_result_type: Id, id_result: Id, tensor_layout: Id, stride: []const Id = &.{} },
+            .OpTensorLayoutSliceNV => struct { id_result_type: Id, id_result: Id, tensor_layout: Id, operands: []const Id = &.{} },
+            .OpTensorLayoutSetClampValueNV => struct { id_result_type: Id, id_result: Id, tensor_layout: Id, value: Id },
+            .OpCreateTensorViewNV => struct { id_result_type: Id, id_result: Id },
+            .OpTensorViewSetDimensionNV => struct { id_result_type: Id, id_result: Id, tensor_view: Id, dim: []const Id = &.{} },
+            .OpTensorViewSetStrideNV => struct { id_result_type: Id, id_result: Id, tensor_view: Id, stride: []const Id = &.{} },
             .OpDemoteToHelperInvocation => void,
-            .OpIsHelperInvocationEXT => struct { id_result_type: IdResultType, id_result: IdResult },
-            .OpConvertUToImageNV => struct { id_result_type: IdResultType, id_result: IdResult, operand: IdRef },
-            .OpConvertUToSamplerNV => struct { id_result_type: IdResultType, id_result: IdResult, operand: IdRef },
-            .OpConvertImageToUNV => struct { id_result_type: IdResultType, id_result: IdResult, operand: IdRef },
-            .OpConvertSamplerToUNV => struct { id_result_type: IdResultType, id_result: IdResult, operand: IdRef },
-            .OpConvertUToSampledImageNV => struct { id_result_type: IdResultType, id_result: IdResult, operand: IdRef },
-            .OpConvertSampledImageToUNV => struct { id_result_type: IdResultType, id_result: IdResult, operand: IdRef },
+            .OpIsHelperInvocationEXT => struct { id_result_type: Id, id_result: Id },
+            .OpTensorViewSetClipNV => struct { id_result_type: Id, id_result: Id, tensor_view: Id, clip_row_offset: Id, clip_row_span: Id, clip_col_offset: Id, clip_col_span: Id },
+            .OpTensorLayoutSetBlockSizeNV => struct { id_result_type: Id, id_result: Id, tensor_layout: Id, block_size: []const Id = &.{} },
+            .OpCooperativeMatrixTransposeNV => struct { id_result_type: Id, id_result: Id, matrix: Id },
+            .OpConvertUToImageNV => struct { id_result_type: Id, id_result: Id, operand: Id },
+            .OpConvertUToSamplerNV => struct { id_result_type: Id, id_result: Id, operand: Id },
+            .OpConvertImageToUNV => struct { id_result_type: Id, id_result: Id, operand: Id },
+            .OpConvertSamplerToUNV => struct { id_result_type: Id, id_result: Id, operand: Id },
+            .OpConvertUToSampledImageNV => struct { id_result_type: Id, id_result: Id, operand: Id },
+            .OpConvertSampledImageToUNV => struct { id_result_type: Id, id_result: Id, operand: Id },
             .OpSamplerImageAddressingModeNV => struct { bit_width: LiteralInteger },
-            .OpRawAccessChainNV => struct { id_result_type: IdResultType, id_result: IdResult, base: IdRef, byte_stride: IdRef, element_index: IdRef, byte_offset: IdRef, raw_access_chain_operands: ?RawAccessChainOperands = null },
-            .OpSubgroupShuffleINTEL => struct { id_result_type: IdResultType, id_result: IdResult, data: IdRef, invocationid: IdRef },
-            .OpSubgroupShuffleDownINTEL => struct { id_result_type: IdResultType, id_result: IdResult, current: IdRef, next: IdRef, delta: IdRef },
-            .OpSubgroupShuffleUpINTEL => struct { id_result_type: IdResultType, id_result: IdResult, previous: IdRef, current: IdRef, delta: IdRef },
-            .OpSubgroupShuffleXorINTEL => struct { id_result_type: IdResultType, id_result: IdResult, data: IdRef, value: IdRef },
-            .OpSubgroupBlockReadINTEL => struct { id_result_type: IdResultType, id_result: IdResult, ptr: IdRef },
-            .OpSubgroupBlockWriteINTEL => struct { ptr: IdRef, data: IdRef },
-            .OpSubgroupImageBlockReadINTEL => struct { id_result_type: IdResultType, id_result: IdResult, image: IdRef, coordinate: IdRef },
-            .OpSubgroupImageBlockWriteINTEL => struct { image: IdRef, coordinate: IdRef, data: IdRef },
-            .OpSubgroupImageMediaBlockReadINTEL => struct { id_result_type: IdResultType, id_result: IdResult, image: IdRef, coordinate: IdRef, width: IdRef, height: IdRef },
-            .OpSubgroupImageMediaBlockWriteINTEL => struct { image: IdRef, coordinate: IdRef, width: IdRef, height: IdRef, data: IdRef },
-            .OpUCountLeadingZerosINTEL => struct { id_result_type: IdResultType, id_result: IdResult, operand: IdRef },
-            .OpUCountTrailingZerosINTEL => struct { id_result_type: IdResultType, id_result: IdResult, operand: IdRef },
-            .OpAbsISubINTEL => struct { id_result_type: IdResultType, id_result: IdResult, operand_1: IdRef, operand_2: IdRef },
-            .OpAbsUSubINTEL => struct { id_result_type: IdResultType, id_result: IdResult, operand_1: IdRef, operand_2: IdRef },
-            .OpIAddSatINTEL => struct { id_result_type: IdResultType, id_result: IdResult, operand_1: IdRef, operand_2: IdRef },
-            .OpUAddSatINTEL => struct { id_result_type: IdResultType, id_result: IdResult, operand_1: IdRef, operand_2: IdRef },
-            .OpIAverageINTEL => struct { id_result_type: IdResultType, id_result: IdResult, operand_1: IdRef, operand_2: IdRef },
-            .OpUAverageINTEL => struct { id_result_type: IdResultType, id_result: IdResult, operand_1: IdRef, operand_2: IdRef },
-            .OpIAverageRoundedINTEL => struct { id_result_type: IdResultType, id_result: IdResult, operand_1: IdRef, operand_2: IdRef },
-            .OpUAverageRoundedINTEL => struct { id_result_type: IdResultType, id_result: IdResult, operand_1: IdRef, operand_2: IdRef },
-            .OpISubSatINTEL => struct { id_result_type: IdResultType, id_result: IdResult, operand_1: IdRef, operand_2: IdRef },
-            .OpUSubSatINTEL => struct { id_result_type: IdResultType, id_result: IdResult, operand_1: IdRef, operand_2: IdRef },
-            .OpIMul32x16INTEL => struct { id_result_type: IdResultType, id_result: IdResult, operand_1: IdRef, operand_2: IdRef },
-            .OpUMul32x16INTEL => struct { id_result_type: IdResultType, id_result: IdResult, operand_1: IdRef, operand_2: IdRef },
-            .OpAtomicFMinEXT => struct { id_result_type: IdResultType, id_result: IdResult, pointer: IdRef, memory: IdScope, semantics: IdMemorySemantics, value: IdRef },
-            .OpAtomicFMaxEXT => struct { id_result_type: IdResultType, id_result: IdResult, pointer: IdRef, memory: IdScope, semantics: IdMemorySemantics, value: IdRef },
-            .OpAssumeTrueKHR => struct { condition: IdRef },
-            .OpExpectKHR => struct { id_result_type: IdResultType, id_result: IdResult, value: IdRef, expectedvalue: IdRef },
-            .OpDecorateString => struct { target: IdRef, decoration: Decoration.Extended },
-            .OpMemberDecorateString => struct { struct_type: IdRef, member: LiteralInteger, decoration: Decoration.Extended },
+            .OpRawAccessChainNV => struct { id_result_type: Id, id_result: Id, base: Id, byte_stride: Id, element_index: Id, byte_offset: Id, raw_access_chain_operands: ?RawAccessChainOperands = null },
+            .OpRayQueryGetIntersectionSpherePositionNV => struct { id_result_type: Id, id_result: Id, ray_query: Id, intersection: Id },
+            .OpRayQueryGetIntersectionSphereRadiusNV => struct { id_result_type: Id, id_result: Id, ray_query: Id, intersection: Id },
+            .OpRayQueryGetIntersectionLSSPositionsNV => struct { id_result_type: Id, id_result: Id, ray_query: Id, intersection: Id },
+            .OpRayQueryGetIntersectionLSSRadiiNV => struct { id_result_type: Id, id_result: Id, ray_query: Id, intersection: Id },
+            .OpRayQueryGetIntersectionLSSHitValueNV => struct { id_result_type: Id, id_result: Id, ray_query: Id, intersection: Id },
+            .OpHitObjectGetSpherePositionNV => struct { id_result_type: Id, id_result: Id, hit_object: Id },
+            .OpHitObjectGetSphereRadiusNV => struct { id_result_type: Id, id_result: Id, hit_object: Id },
+            .OpHitObjectGetLSSPositionsNV => struct { id_result_type: Id, id_result: Id, hit_object: Id },
+            .OpHitObjectGetLSSRadiiNV => struct { id_result_type: Id, id_result: Id, hit_object: Id },
+            .OpHitObjectIsSphereHitNV => struct { id_result_type: Id, id_result: Id, hit_object: Id },
+            .OpHitObjectIsLSSHitNV => struct { id_result_type: Id, id_result: Id, hit_object: Id },
+            .OpRayQueryIsSphereHitNV => struct { id_result_type: Id, id_result: Id, ray_query: Id, intersection: Id },
+            .OpRayQueryIsLSSHitNV => struct { id_result_type: Id, id_result: Id, ray_query: Id, intersection: Id },
+            .OpSubgroupShuffleINTEL => struct { id_result_type: Id, id_result: Id, data: Id, invocation_id: Id },
+            .OpSubgroupShuffleDownINTEL => struct { id_result_type: Id, id_result: Id, current: Id, next: Id, delta: Id },
+            .OpSubgroupShuffleUpINTEL => struct { id_result_type: Id, id_result: Id, previous: Id, current: Id, delta: Id },
+            .OpSubgroupShuffleXorINTEL => struct { id_result_type: Id, id_result: Id, data: Id, value: Id },
+            .OpSubgroupBlockReadINTEL => struct { id_result_type: Id, id_result: Id, ptr: Id },
+            .OpSubgroupBlockWriteINTEL => struct { ptr: Id, data: Id },
+            .OpSubgroupImageBlockReadINTEL => struct { id_result_type: Id, id_result: Id, image: Id, coordinate: Id },
+            .OpSubgroupImageBlockWriteINTEL => struct { image: Id, coordinate: Id, data: Id },
+            .OpSubgroupImageMediaBlockReadINTEL => struct { id_result_type: Id, id_result: Id, image: Id, coordinate: Id, width: Id, height: Id },
+            .OpSubgroupImageMediaBlockWriteINTEL => struct { image: Id, coordinate: Id, width: Id, height: Id, data: Id },
+            .OpUCountLeadingZerosINTEL => struct { id_result_type: Id, id_result: Id, operand: Id },
+            .OpUCountTrailingZerosINTEL => struct { id_result_type: Id, id_result: Id, operand: Id },
+            .OpAbsISubINTEL => struct { id_result_type: Id, id_result: Id, operand_1: Id, operand_2: Id },
+            .OpAbsUSubINTEL => struct { id_result_type: Id, id_result: Id, operand_1: Id, operand_2: Id },
+            .OpIAddSatINTEL => struct { id_result_type: Id, id_result: Id, operand_1: Id, operand_2: Id },
+            .OpUAddSatINTEL => struct { id_result_type: Id, id_result: Id, operand_1: Id, operand_2: Id },
+            .OpIAverageINTEL => struct { id_result_type: Id, id_result: Id, operand_1: Id, operand_2: Id },
+            .OpUAverageINTEL => struct { id_result_type: Id, id_result: Id, operand_1: Id, operand_2: Id },
+            .OpIAverageRoundedINTEL => struct { id_result_type: Id, id_result: Id, operand_1: Id, operand_2: Id },
+            .OpUAverageRoundedINTEL => struct { id_result_type: Id, id_result: Id, operand_1: Id, operand_2: Id },
+            .OpISubSatINTEL => struct { id_result_type: Id, id_result: Id, operand_1: Id, operand_2: Id },
+            .OpUSubSatINTEL => struct { id_result_type: Id, id_result: Id, operand_1: Id, operand_2: Id },
+            .OpIMul32x16INTEL => struct { id_result_type: Id, id_result: Id, operand_1: Id, operand_2: Id },
+            .OpUMul32x16INTEL => struct { id_result_type: Id, id_result: Id, operand_1: Id, operand_2: Id },
+            .OpAtomicFMinEXT => struct { id_result_type: Id, id_result: Id, pointer: Id, memory: Id, semantics: Id, value: Id },
+            .OpAtomicFMaxEXT => struct { id_result_type: Id, id_result: Id, pointer: Id, memory: Id, semantics: Id, value: Id },
+            .OpAssumeTrueKHR => struct { condition: Id },
+            .OpExpectKHR => struct { id_result_type: Id, id_result: Id, value: Id, expected_value: Id },
+            .OpDecorateString => struct { target: Id, decoration: Decoration.Extended },
+            .OpMemberDecorateString => struct { struct_type: Id, member: LiteralInteger, decoration: Decoration.Extended },
             .OpLoopControlINTEL => struct { loop_control_parameters: []const LiteralInteger = &.{} },
-            .OpReadPipeBlockingINTEL => struct { id_result_type: IdResultType, id_result: IdResult, packet_size: IdRef, packet_alignment: IdRef },
-            .OpWritePipeBlockingINTEL => struct { id_result_type: IdResultType, id_result: IdResult, packet_size: IdRef, packet_alignment: IdRef },
-            .OpFPGARegINTEL => struct { id_result_type: IdResultType, id_result: IdResult, result: IdRef, input: IdRef },
-            .OpRayQueryGetRayTMinKHR => struct { id_result_type: IdResultType, id_result: IdResult, rayquery: IdRef },
-            .OpRayQueryGetRayFlagsKHR => struct { id_result_type: IdResultType, id_result: IdResult, rayquery: IdRef },
-            .OpRayQueryGetIntersectionTKHR => struct { id_result_type: IdResultType, id_result: IdResult, rayquery: IdRef, intersection: IdRef },
-            .OpRayQueryGetIntersectionInstanceCustomIndexKHR => struct { id_result_type: IdResultType, id_result: IdResult, rayquery: IdRef, intersection: IdRef },
-            .OpRayQueryGetIntersectionInstanceIdKHR => struct { id_result_type: IdResultType, id_result: IdResult, rayquery: IdRef, intersection: IdRef },
-            .OpRayQueryGetIntersectionInstanceShaderBindingTableRecordOffsetKHR => struct { id_result_type: IdResultType, id_result: IdResult, rayquery: IdRef, intersection: IdRef },
-            .OpRayQueryGetIntersectionGeometryIndexKHR => struct { id_result_type: IdResultType, id_result: IdResult, rayquery: IdRef, intersection: IdRef },
-            .OpRayQueryGetIntersectionPrimitiveIndexKHR => struct { id_result_type: IdResultType, id_result: IdResult, rayquery: IdRef, intersection: IdRef },
-            .OpRayQueryGetIntersectionBarycentricsKHR => struct { id_result_type: IdResultType, id_result: IdResult, rayquery: IdRef, intersection: IdRef },
-            .OpRayQueryGetIntersectionFrontFaceKHR => struct { id_result_type: IdResultType, id_result: IdResult, rayquery: IdRef, intersection: IdRef },
-            .OpRayQueryGetIntersectionCandidateAABBOpaqueKHR => struct { id_result_type: IdResultType, id_result: IdResult, rayquery: IdRef },
-            .OpRayQueryGetIntersectionObjectRayDirectionKHR => struct { id_result_type: IdResultType, id_result: IdResult, rayquery: IdRef, intersection: IdRef },
-            .OpRayQueryGetIntersectionObjectRayOriginKHR => struct { id_result_type: IdResultType, id_result: IdResult, rayquery: IdRef, intersection: IdRef },
-            .OpRayQueryGetWorldRayDirectionKHR => struct { id_result_type: IdResultType, id_result: IdResult, rayquery: IdRef },
-            .OpRayQueryGetWorldRayOriginKHR => struct { id_result_type: IdResultType, id_result: IdResult, rayquery: IdRef },
-            .OpRayQueryGetIntersectionObjectToWorldKHR => struct { id_result_type: IdResultType, id_result: IdResult, rayquery: IdRef, intersection: IdRef },
-            .OpRayQueryGetIntersectionWorldToObjectKHR => struct { id_result_type: IdResultType, id_result: IdResult, rayquery: IdRef, intersection: IdRef },
-            .OpAtomicFAddEXT => struct { id_result_type: IdResultType, id_result: IdResult, pointer: IdRef, memory: IdScope, semantics: IdMemorySemantics, value: IdRef },
-            .OpTypeBufferSurfaceINTEL => struct { id_result: IdResult, accessqualifier: AccessQualifier },
-            .OpTypeStructContinuedINTEL => struct { id_ref: []const IdRef = &.{} },
-            .OpConstantCompositeContinuedINTEL => struct { constituents: []const IdRef = &.{} },
-            .OpSpecConstantCompositeContinuedINTEL => struct { constituents: []const IdRef = &.{} },
-            .OpCompositeConstructContinuedINTEL => struct { id_result_type: IdResultType, id_result: IdResult, constituents: []const IdRef = &.{} },
-            .OpConvertFToBF16INTEL => struct { id_result_type: IdResultType, id_result: IdResult, float_value: IdRef },
-            .OpConvertBF16ToFINTEL => struct { id_result_type: IdResultType, id_result: IdResult, bfloat16_value: IdRef },
-            .OpControlBarrierArriveINTEL => struct { execution: IdScope, memory: IdScope, semantics: IdMemorySemantics },
-            .OpControlBarrierWaitINTEL => struct { execution: IdScope, memory: IdScope, semantics: IdMemorySemantics },
-            .OpGroupIMulKHR => struct { id_result_type: IdResultType, id_result: IdResult, execution: IdScope, operation: GroupOperation, x: IdRef },
-            .OpGroupFMulKHR => struct { id_result_type: IdResultType, id_result: IdResult, execution: IdScope, operation: GroupOperation, x: IdRef },
-            .OpGroupBitwiseAndKHR => struct { id_result_type: IdResultType, id_result: IdResult, execution: IdScope, operation: GroupOperation, x: IdRef },
-            .OpGroupBitwiseOrKHR => struct { id_result_type: IdResultType, id_result: IdResult, execution: IdScope, operation: GroupOperation, x: IdRef },
-            .OpGroupBitwiseXorKHR => struct { id_result_type: IdResultType, id_result: IdResult, execution: IdScope, operation: GroupOperation, x: IdRef },
-            .OpGroupLogicalAndKHR => struct { id_result_type: IdResultType, id_result: IdResult, execution: IdScope, operation: GroupOperation, x: IdRef },
-            .OpGroupLogicalOrKHR => struct { id_result_type: IdResultType, id_result: IdResult, execution: IdScope, operation: GroupOperation, x: IdRef },
-            .OpGroupLogicalXorKHR => struct { id_result_type: IdResultType, id_result: IdResult, execution: IdScope, operation: GroupOperation, x: IdRef },
-            .OpMaskedGatherINTEL => struct { id_result_type: IdResultType, id_result: IdResult, ptrvector: IdRef, alignment: LiteralInteger, mask: IdRef, fillempty: IdRef },
-            .OpMaskedScatterINTEL => struct { inputvector: IdRef, ptrvector: IdRef, alignment: LiteralInteger, mask: IdRef },
+            .OpReadPipeBlockingINTEL => struct { id_result_type: Id, id_result: Id, packet_size: Id, packet_alignment: Id },
+            .OpWritePipeBlockingINTEL => struct { id_result_type: Id, id_result: Id, packet_size: Id, packet_alignment: Id },
+            .OpFPGARegINTEL => struct { id_result_type: Id, id_result: Id, input: Id },
+            .OpRayQueryGetRayTMinKHR => struct { id_result_type: Id, id_result: Id, ray_query: Id },
+            .OpRayQueryGetRayFlagsKHR => struct { id_result_type: Id, id_result: Id, ray_query: Id },
+            .OpRayQueryGetIntersectionTKHR => struct { id_result_type: Id, id_result: Id, ray_query: Id, intersection: Id },
+            .OpRayQueryGetIntersectionInstanceCustomIndexKHR => struct { id_result_type: Id, id_result: Id, ray_query: Id, intersection: Id },
+            .OpRayQueryGetIntersectionInstanceIdKHR => struct { id_result_type: Id, id_result: Id, ray_query: Id, intersection: Id },
+            .OpRayQueryGetIntersectionInstanceShaderBindingTableRecordOffsetKHR => struct { id_result_type: Id, id_result: Id, ray_query: Id, intersection: Id },
+            .OpRayQueryGetIntersectionGeometryIndexKHR => struct { id_result_type: Id, id_result: Id, ray_query: Id, intersection: Id },
+            .OpRayQueryGetIntersectionPrimitiveIndexKHR => struct { id_result_type: Id, id_result: Id, ray_query: Id, intersection: Id },
+            .OpRayQueryGetIntersectionBarycentricsKHR => struct { id_result_type: Id, id_result: Id, ray_query: Id, intersection: Id },
+            .OpRayQueryGetIntersectionFrontFaceKHR => struct { id_result_type: Id, id_result: Id, ray_query: Id, intersection: Id },
+            .OpRayQueryGetIntersectionCandidateAABBOpaqueKHR => struct { id_result_type: Id, id_result: Id, ray_query: Id },
+            .OpRayQueryGetIntersectionObjectRayDirectionKHR => struct { id_result_type: Id, id_result: Id, ray_query: Id, intersection: Id },
+            .OpRayQueryGetIntersectionObjectRayOriginKHR => struct { id_result_type: Id, id_result: Id, ray_query: Id, intersection: Id },
+            .OpRayQueryGetWorldRayDirectionKHR => struct { id_result_type: Id, id_result: Id, ray_query: Id },
+            .OpRayQueryGetWorldRayOriginKHR => struct { id_result_type: Id, id_result: Id, ray_query: Id },
+            .OpRayQueryGetIntersectionObjectToWorldKHR => struct { id_result_type: Id, id_result: Id, ray_query: Id, intersection: Id },
+            .OpRayQueryGetIntersectionWorldToObjectKHR => struct { id_result_type: Id, id_result: Id, ray_query: Id, intersection: Id },
+            .OpAtomicFAddEXT => struct { id_result_type: Id, id_result: Id, pointer: Id, memory: Id, semantics: Id, value: Id },
+            .OpTypeBufferSurfaceINTEL => struct { id_result: Id, access_qualifier: AccessQualifier },
+            .OpTypeStructContinuedINTEL => struct { id_ref: []const Id = &.{} },
+            .OpConstantCompositeContinuedINTEL => struct { constituents: []const Id = &.{} },
+            .OpSpecConstantCompositeContinuedINTEL => struct { constituents: []const Id = &.{} },
+            .OpCompositeConstructContinuedINTEL => struct { id_result_type: Id, id_result: Id, constituents: []const Id = &.{} },
+            .OpConvertFToBF16INTEL => struct { id_result_type: Id, id_result: Id, float_value: Id },
+            .OpConvertBF16ToFINTEL => struct { id_result_type: Id, id_result: Id, b_float16_value: Id },
+            .OpControlBarrierArriveINTEL => struct { execution: Id, memory: Id, semantics: Id },
+            .OpControlBarrierWaitINTEL => struct { execution: Id, memory: Id, semantics: Id },
+            .OpArithmeticFenceEXT => struct { id_result_type: Id, id_result: Id, target: Id },
+            .OpTaskSequenceCreateINTEL => struct { id_result_type: Id, id_result: Id, function: Id, pipelined: LiteralInteger, use_stall_enable_clusters: LiteralInteger, get_capacity: LiteralInteger, async_capacity: LiteralInteger },
+            .OpTaskSequenceAsyncINTEL => struct { sequence: Id, arguments: []const Id = &.{} },
+            .OpTaskSequenceGetINTEL => struct { id_result_type: Id, id_result: Id, sequence: Id },
+            .OpTaskSequenceReleaseINTEL => struct { sequence: Id },
+            .OpTypeTaskSequenceINTEL => struct { id_result: Id },
+            .OpSubgroupBlockPrefetchINTEL => struct { ptr: Id, num_bytes: Id, memory_access: ?MemoryAccess.Extended = null },
+            .OpSubgroup2DBlockLoadINTEL => struct { element_size: Id, block_width: Id, block_height: Id, block_count: Id, src_base_pointer: Id, memory_width: Id, memory_height: Id, memory_pitch: Id, coordinate: Id, dst_pointer: Id },
+            .OpSubgroup2DBlockLoadTransformINTEL => struct { element_size: Id, block_width: Id, block_height: Id, block_count: Id, src_base_pointer: Id, memory_width: Id, memory_height: Id, memory_pitch: Id, coordinate: Id, dst_pointer: Id },
+            .OpSubgroup2DBlockLoadTransposeINTEL => struct { element_size: Id, block_width: Id, block_height: Id, block_count: Id, src_base_pointer: Id, memory_width: Id, memory_height: Id, memory_pitch: Id, coordinate: Id, dst_pointer: Id },
+            .OpSubgroup2DBlockPrefetchINTEL => struct { element_size: Id, block_width: Id, block_height: Id, block_count: Id, src_base_pointer: Id, memory_width: Id, memory_height: Id, memory_pitch: Id, coordinate: Id },
+            .OpSubgroup2DBlockStoreINTEL => struct { element_size: Id, block_width: Id, block_height: Id, block_count: Id, src_pointer: Id, dst_base_pointer: Id, memory_width: Id, memory_height: Id, memory_pitch: Id, coordinate: Id },
+            .OpSubgroupMatrixMultiplyAccumulateINTEL => struct { id_result_type: Id, id_result: Id, k_dim: Id, matrix_a: Id, matrix_b: Id, matrix_c: Id, matrix_multiply_accumulate_operands: ?MatrixMultiplyAccumulateOperands = null },
+            .OpBitwiseFunctionINTEL => struct { id_result_type: Id, id_result: Id, a: Id, b: Id, c: Id, lut_index: Id },
+            .OpGroupIMulKHR => struct { id_result_type: Id, id_result: Id, execution: Id, operation: GroupOperation, x: Id },
+            .OpGroupFMulKHR => struct { id_result_type: Id, id_result: Id, execution: Id, operation: GroupOperation, x: Id },
+            .OpGroupBitwiseAndKHR => struct { id_result_type: Id, id_result: Id, execution: Id, operation: GroupOperation, x: Id },
+            .OpGroupBitwiseOrKHR => struct { id_result_type: Id, id_result: Id, execution: Id, operation: GroupOperation, x: Id },
+            .OpGroupBitwiseXorKHR => struct { id_result_type: Id, id_result: Id, execution: Id, operation: GroupOperation, x: Id },
+            .OpGroupLogicalAndKHR => struct { id_result_type: Id, id_result: Id, execution: Id, operation: GroupOperation, x: Id },
+            .OpGroupLogicalOrKHR => struct { id_result_type: Id, id_result: Id, execution: Id, operation: GroupOperation, x: Id },
+            .OpGroupLogicalXorKHR => struct { id_result_type: Id, id_result: Id, execution: Id, operation: GroupOperation, x: Id },
+            .OpRoundFToTF32INTEL => struct { id_result_type: Id, id_result: Id, float_value: Id },
+            .OpMaskedGatherINTEL => struct { id_result_type: Id, id_result: Id, ptr_vector: Id, alignment: LiteralInteger, mask: Id, fill_empty: Id },
+            .OpMaskedScatterINTEL => struct { input_vector: Id, ptr_vector: Id, alignment: LiteralInteger, mask: Id },
+            .OpConvertHandleToImageINTEL => struct { id_result_type: Id, id_result: Id, operand: Id },
+            .OpConvertHandleToSamplerINTEL => struct { id_result_type: Id, id_result: Id, operand: Id },
+            .OpConvertHandleToSampledImageINTEL => struct { id_result_type: Id, id_result: Id, operand: Id },
         };
     }
     pub fn class(self: Opcode) Class {
         return switch (self) {
-            .OpNop => .Miscellaneous,
-            .OpUndef => .Miscellaneous,
-            .OpSourceContinued => .Debug,
-            .OpSource => .Debug,
-            .OpSourceExtension => .Debug,
-            .OpName => .Debug,
-            .OpMemberName => .Debug,
-            .OpString => .Debug,
-            .OpLine => .Debug,
-            .OpExtension => .Extension,
-            .OpExtInstImport => .Extension,
-            .OpExtInst => .Extension,
-            .OpMemoryModel => .ModeSetting,
-            .OpEntryPoint => .ModeSetting,
-            .OpExecutionMode => .ModeSetting,
-            .OpCapability => .ModeSetting,
-            .OpTypeVoid => .TypeDeclaration,
-            .OpTypeBool => .TypeDeclaration,
-            .OpTypeInt => .TypeDeclaration,
-            .OpTypeFloat => .TypeDeclaration,
-            .OpTypeVector => .TypeDeclaration,
-            .OpTypeMatrix => .TypeDeclaration,
-            .OpTypeImage => .TypeDeclaration,
-            .OpTypeSampler => .TypeDeclaration,
-            .OpTypeSampledImage => .TypeDeclaration,
-            .OpTypeArray => .TypeDeclaration,
-            .OpTypeRuntimeArray => .TypeDeclaration,
-            .OpTypeStruct => .TypeDeclaration,
-            .OpTypeOpaque => .TypeDeclaration,
-            .OpTypePointer => .TypeDeclaration,
-            .OpTypeFunction => .TypeDeclaration,
-            .OpTypeEvent => .TypeDeclaration,
-            .OpTypeDeviceEvent => .TypeDeclaration,
-            .OpTypeReserveId => .TypeDeclaration,
-            .OpTypeQueue => .TypeDeclaration,
-            .OpTypePipe => .TypeDeclaration,
-            .OpTypeForwardPointer => .TypeDeclaration,
-            .OpConstantTrue => .ConstantCreation,
-            .OpConstantFalse => .ConstantCreation,
-            .OpConstant => .ConstantCreation,
-            .OpConstantComposite => .ConstantCreation,
-            .OpConstantSampler => .ConstantCreation,
-            .OpConstantNull => .ConstantCreation,
-            .OpSpecConstantTrue => .ConstantCreation,
-            .OpSpecConstantFalse => .ConstantCreation,
-            .OpSpecConstant => .ConstantCreation,
-            .OpSpecConstantComposite => .ConstantCreation,
-            .OpSpecConstantOp => .ConstantCreation,
-            .OpFunction => .Function,
-            .OpFunctionParameter => .Function,
-            .OpFunctionEnd => .Function,
-            .OpFunctionCall => .Function,
-            .OpVariable => .Memory,
-            .OpImageTexelPointer => .Memory,
-            .OpLoad => .Memory,
-            .OpStore => .Memory,
-            .OpCopyMemory => .Memory,
-            .OpCopyMemorySized => .Memory,
-            .OpAccessChain => .Memory,
-            .OpInBoundsAccessChain => .Memory,
-            .OpPtrAccessChain => .Memory,
-            .OpArrayLength => .Memory,
-            .OpGenericPtrMemSemantics => .Memory,
-            .OpInBoundsPtrAccessChain => .Memory,
-            .OpDecorate => .Annotation,
-            .OpMemberDecorate => .Annotation,
-            .OpDecorationGroup => .Annotation,
-            .OpGroupDecorate => .Annotation,
-            .OpGroupMemberDecorate => .Annotation,
-            .OpVectorExtractDynamic => .Composite,
-            .OpVectorInsertDynamic => .Composite,
-            .OpVectorShuffle => .Composite,
-            .OpCompositeConstruct => .Composite,
-            .OpCompositeExtract => .Composite,
-            .OpCompositeInsert => .Composite,
-            .OpCopyObject => .Composite,
-            .OpTranspose => .Composite,
-            .OpSampledImage => .Image,
-            .OpImageSampleImplicitLod => .Image,
-            .OpImageSampleExplicitLod => .Image,
-            .OpImageSampleDrefImplicitLod => .Image,
-            .OpImageSampleDrefExplicitLod => .Image,
-            .OpImageSampleProjImplicitLod => .Image,
-            .OpImageSampleProjExplicitLod => .Image,
-            .OpImageSampleProjDrefImplicitLod => .Image,
-            .OpImageSampleProjDrefExplicitLod => .Image,
-            .OpImageFetch => .Image,
-            .OpImageGather => .Image,
-            .OpImageDrefGather => .Image,
-            .OpImageRead => .Image,
-            .OpImageWrite => .Image,
-            .OpImage => .Image,
-            .OpImageQueryFormat => .Image,
-            .OpImageQueryOrder => .Image,
-            .OpImageQuerySizeLod => .Image,
-            .OpImageQuerySize => .Image,
-            .OpImageQueryLod => .Image,
-            .OpImageQueryLevels => .Image,
-            .OpImageQuerySamples => .Image,
-            .OpConvertFToU => .Conversion,
-            .OpConvertFToS => .Conversion,
-            .OpConvertSToF => .Conversion,
-            .OpConvertUToF => .Conversion,
-            .OpUConvert => .Conversion,
-            .OpSConvert => .Conversion,
-            .OpFConvert => .Conversion,
-            .OpQuantizeToF16 => .Conversion,
-            .OpConvertPtrToU => .Conversion,
-            .OpSatConvertSToU => .Conversion,
-            .OpSatConvertUToS => .Conversion,
-            .OpConvertUToPtr => .Conversion,
-            .OpPtrCastToGeneric => .Conversion,
-            .OpGenericCastToPtr => .Conversion,
-            .OpGenericCastToPtrExplicit => .Conversion,
-            .OpBitcast => .Conversion,
-            .OpSNegate => .Arithmetic,
-            .OpFNegate => .Arithmetic,
-            .OpIAdd => .Arithmetic,
-            .OpFAdd => .Arithmetic,
-            .OpISub => .Arithmetic,
-            .OpFSub => .Arithmetic,
-            .OpIMul => .Arithmetic,
-            .OpFMul => .Arithmetic,
-            .OpUDiv => .Arithmetic,
-            .OpSDiv => .Arithmetic,
-            .OpFDiv => .Arithmetic,
-            .OpUMod => .Arithmetic,
-            .OpSRem => .Arithmetic,
-            .OpSMod => .Arithmetic,
-            .OpFRem => .Arithmetic,
-            .OpFMod => .Arithmetic,
-            .OpVectorTimesScalar => .Arithmetic,
-            .OpMatrixTimesScalar => .Arithmetic,
-            .OpVectorTimesMatrix => .Arithmetic,
-            .OpMatrixTimesVector => .Arithmetic,
-            .OpMatrixTimesMatrix => .Arithmetic,
-            .OpOuterProduct => .Arithmetic,
-            .OpDot => .Arithmetic,
-            .OpIAddCarry => .Arithmetic,
-            .OpISubBorrow => .Arithmetic,
-            .OpUMulExtended => .Arithmetic,
-            .OpSMulExtended => .Arithmetic,
-            .OpAny => .RelationalAndLogical,
-            .OpAll => .RelationalAndLogical,
-            .OpIsNan => .RelationalAndLogical,
-            .OpIsInf => .RelationalAndLogical,
-            .OpIsFinite => .RelationalAndLogical,
-            .OpIsNormal => .RelationalAndLogical,
-            .OpSignBitSet => .RelationalAndLogical,
-            .OpLessOrGreater => .RelationalAndLogical,
-            .OpOrdered => .RelationalAndLogical,
-            .OpUnordered => .RelationalAndLogical,
-            .OpLogicalEqual => .RelationalAndLogical,
-            .OpLogicalNotEqual => .RelationalAndLogical,
-            .OpLogicalOr => .RelationalAndLogical,
-            .OpLogicalAnd => .RelationalAndLogical,
-            .OpLogicalNot => .RelationalAndLogical,
-            .OpSelect => .RelationalAndLogical,
-            .OpIEqual => .RelationalAndLogical,
-            .OpINotEqual => .RelationalAndLogical,
-            .OpUGreaterThan => .RelationalAndLogical,
-            .OpSGreaterThan => .RelationalAndLogical,
-            .OpUGreaterThanEqual => .RelationalAndLogical,
-            .OpSGreaterThanEqual => .RelationalAndLogical,
-            .OpULessThan => .RelationalAndLogical,
-            .OpSLessThan => .RelationalAndLogical,
-            .OpULessThanEqual => .RelationalAndLogical,
-            .OpSLessThanEqual => .RelationalAndLogical,
-            .OpFOrdEqual => .RelationalAndLogical,
-            .OpFUnordEqual => .RelationalAndLogical,
-            .OpFOrdNotEqual => .RelationalAndLogical,
-            .OpFUnordNotEqual => .RelationalAndLogical,
-            .OpFOrdLessThan => .RelationalAndLogical,
-            .OpFUnordLessThan => .RelationalAndLogical,
-            .OpFOrdGreaterThan => .RelationalAndLogical,
-            .OpFUnordGreaterThan => .RelationalAndLogical,
-            .OpFOrdLessThanEqual => .RelationalAndLogical,
-            .OpFUnordLessThanEqual => .RelationalAndLogical,
-            .OpFOrdGreaterThanEqual => .RelationalAndLogical,
-            .OpFUnordGreaterThanEqual => .RelationalAndLogical,
-            .OpShiftRightLogical => .Bit,
-            .OpShiftRightArithmetic => .Bit,
-            .OpShiftLeftLogical => .Bit,
-            .OpBitwiseOr => .Bit,
-            .OpBitwiseXor => .Bit,
-            .OpBitwiseAnd => .Bit,
-            .OpNot => .Bit,
-            .OpBitFieldInsert => .Bit,
-            .OpBitFieldSExtract => .Bit,
-            .OpBitFieldUExtract => .Bit,
-            .OpBitReverse => .Bit,
-            .OpBitCount => .Bit,
-            .OpDPdx => .Derivative,
-            .OpDPdy => .Derivative,
-            .OpFwidth => .Derivative,
-            .OpDPdxFine => .Derivative,
-            .OpDPdyFine => .Derivative,
-            .OpFwidthFine => .Derivative,
-            .OpDPdxCoarse => .Derivative,
-            .OpDPdyCoarse => .Derivative,
-            .OpFwidthCoarse => .Derivative,
-            .OpEmitVertex => .Primitive,
-            .OpEndPrimitive => .Primitive,
-            .OpEmitStreamVertex => .Primitive,
-            .OpEndStreamPrimitive => .Primitive,
-            .OpControlBarrier => .Barrier,
-            .OpMemoryBarrier => .Barrier,
-            .OpAtomicLoad => .Atomic,
-            .OpAtomicStore => .Atomic,
-            .OpAtomicExchange => .Atomic,
-            .OpAtomicCompareExchange => .Atomic,
-            .OpAtomicCompareExchangeWeak => .Atomic,
-            .OpAtomicIIncrement => .Atomic,
-            .OpAtomicIDecrement => .Atomic,
-            .OpAtomicIAdd => .Atomic,
-            .OpAtomicISub => .Atomic,
-            .OpAtomicSMin => .Atomic,
-            .OpAtomicUMin => .Atomic,
-            .OpAtomicSMax => .Atomic,
-            .OpAtomicUMax => .Atomic,
-            .OpAtomicAnd => .Atomic,
-            .OpAtomicOr => .Atomic,
-            .OpAtomicXor => .Atomic,
-            .OpPhi => .ControlFlow,
-            .OpLoopMerge => .ControlFlow,
-            .OpSelectionMerge => .ControlFlow,
-            .OpLabel => .ControlFlow,
-            .OpBranch => .ControlFlow,
-            .OpBranchConditional => .ControlFlow,
-            .OpSwitch => .ControlFlow,
-            .OpKill => .ControlFlow,
-            .OpReturn => .ControlFlow,
-            .OpReturnValue => .ControlFlow,
-            .OpUnreachable => .ControlFlow,
-            .OpLifetimeStart => .ControlFlow,
-            .OpLifetimeStop => .ControlFlow,
-            .OpGroupAsyncCopy => .Group,
-            .OpGroupWaitEvents => .Group,
-            .OpGroupAll => .Group,
-            .OpGroupAny => .Group,
-            .OpGroupBroadcast => .Group,
-            .OpGroupIAdd => .Group,
-            .OpGroupFAdd => .Group,
-            .OpGroupFMin => .Group,
-            .OpGroupUMin => .Group,
-            .OpGroupSMin => .Group,
-            .OpGroupFMax => .Group,
-            .OpGroupUMax => .Group,
-            .OpGroupSMax => .Group,
-            .OpReadPipe => .Pipe,
-            .OpWritePipe => .Pipe,
-            .OpReservedReadPipe => .Pipe,
-            .OpReservedWritePipe => .Pipe,
-            .OpReserveReadPipePackets => .Pipe,
-            .OpReserveWritePipePackets => .Pipe,
-            .OpCommitReadPipe => .Pipe,
-            .OpCommitWritePipe => .Pipe,
-            .OpIsValidReserveId => .Pipe,
-            .OpGetNumPipePackets => .Pipe,
-            .OpGetMaxPipePackets => .Pipe,
-            .OpGroupReserveReadPipePackets => .Pipe,
-            .OpGroupReserveWritePipePackets => .Pipe,
-            .OpGroupCommitReadPipe => .Pipe,
-            .OpGroupCommitWritePipe => .Pipe,
-            .OpEnqueueMarker => .DeviceSideEnqueue,
-            .OpEnqueueKernel => .DeviceSideEnqueue,
-            .OpGetKernelNDrangeSubGroupCount => .DeviceSideEnqueue,
-            .OpGetKernelNDrangeMaxSubGroupSize => .DeviceSideEnqueue,
-            .OpGetKernelWorkGroupSize => .DeviceSideEnqueue,
-            .OpGetKernelPreferredWorkGroupSizeMultiple => .DeviceSideEnqueue,
-            .OpRetainEvent => .DeviceSideEnqueue,
-            .OpReleaseEvent => .DeviceSideEnqueue,
-            .OpCreateUserEvent => .DeviceSideEnqueue,
-            .OpIsValidEvent => .DeviceSideEnqueue,
-            .OpSetUserEventStatus => .DeviceSideEnqueue,
-            .OpCaptureEventProfilingInfo => .DeviceSideEnqueue,
-            .OpGetDefaultQueue => .DeviceSideEnqueue,
-            .OpBuildNDRange => .DeviceSideEnqueue,
-            .OpImageSparseSampleImplicitLod => .Image,
-            .OpImageSparseSampleExplicitLod => .Image,
-            .OpImageSparseSampleDrefImplicitLod => .Image,
-            .OpImageSparseSampleDrefExplicitLod => .Image,
-            .OpImageSparseSampleProjImplicitLod => .Image,
-            .OpImageSparseSampleProjExplicitLod => .Image,
-            .OpImageSparseSampleProjDrefImplicitLod => .Image,
-            .OpImageSparseSampleProjDrefExplicitLod => .Image,
-            .OpImageSparseFetch => .Image,
-            .OpImageSparseGather => .Image,
-            .OpImageSparseDrefGather => .Image,
-            .OpImageSparseTexelsResident => .Image,
-            .OpNoLine => .Debug,
-            .OpAtomicFlagTestAndSet => .Atomic,
-            .OpAtomicFlagClear => .Atomic,
-            .OpImageSparseRead => .Image,
-            .OpSizeOf => .Miscellaneous,
-            .OpTypePipeStorage => .TypeDeclaration,
-            .OpConstantPipeStorage => .Pipe,
-            .OpCreatePipeFromPipeStorage => .Pipe,
-            .OpGetKernelLocalSizeForSubgroupCount => .DeviceSideEnqueue,
-            .OpGetKernelMaxNumSubgroups => .DeviceSideEnqueue,
-            .OpTypeNamedBarrier => .TypeDeclaration,
-            .OpNamedBarrierInitialize => .Barrier,
-            .OpMemoryNamedBarrier => .Barrier,
-            .OpModuleProcessed => .Debug,
-            .OpExecutionModeId => .ModeSetting,
-            .OpDecorateId => .Annotation,
-            .OpGroupNonUniformElect => .NonUniform,
-            .OpGroupNonUniformAll => .NonUniform,
-            .OpGroupNonUniformAny => .NonUniform,
-            .OpGroupNonUniformAllEqual => .NonUniform,
-            .OpGroupNonUniformBroadcast => .NonUniform,
-            .OpGroupNonUniformBroadcastFirst => .NonUniform,
-            .OpGroupNonUniformBallot => .NonUniform,
-            .OpGroupNonUniformInverseBallot => .NonUniform,
-            .OpGroupNonUniformBallotBitExtract => .NonUniform,
-            .OpGroupNonUniformBallotBitCount => .NonUniform,
-            .OpGroupNonUniformBallotFindLSB => .NonUniform,
-            .OpGroupNonUniformBallotFindMSB => .NonUniform,
-            .OpGroupNonUniformShuffle => .NonUniform,
-            .OpGroupNonUniformShuffleXor => .NonUniform,
-            .OpGroupNonUniformShuffleUp => .NonUniform,
-            .OpGroupNonUniformShuffleDown => .NonUniform,
-            .OpGroupNonUniformIAdd => .NonUniform,
-            .OpGroupNonUniformFAdd => .NonUniform,
-            .OpGroupNonUniformIMul => .NonUniform,
-            .OpGroupNonUniformFMul => .NonUniform,
-            .OpGroupNonUniformSMin => .NonUniform,
-            .OpGroupNonUniformUMin => .NonUniform,
-            .OpGroupNonUniformFMin => .NonUniform,
-            .OpGroupNonUniformSMax => .NonUniform,
-            .OpGroupNonUniformUMax => .NonUniform,
-            .OpGroupNonUniformFMax => .NonUniform,
-            .OpGroupNonUniformBitwiseAnd => .NonUniform,
-            .OpGroupNonUniformBitwiseOr => .NonUniform,
-            .OpGroupNonUniformBitwiseXor => .NonUniform,
-            .OpGroupNonUniformLogicalAnd => .NonUniform,
-            .OpGroupNonUniformLogicalOr => .NonUniform,
-            .OpGroupNonUniformLogicalXor => .NonUniform,
-            .OpGroupNonUniformQuadBroadcast => .NonUniform,
-            .OpGroupNonUniformQuadSwap => .NonUniform,
-            .OpCopyLogical => .Composite,
-            .OpPtrEqual => .Memory,
-            .OpPtrNotEqual => .Memory,
-            .OpPtrDiff => .Memory,
-            .OpColorAttachmentReadEXT => .Image,
-            .OpDepthAttachmentReadEXT => .Image,
-            .OpStencilAttachmentReadEXT => .Image,
-            .OpTerminateInvocation => .ControlFlow,
-            .OpSubgroupBallotKHR => .Group,
-            .OpSubgroupFirstInvocationKHR => .Group,
-            .OpSubgroupAllKHR => .Group,
-            .OpSubgroupAnyKHR => .Group,
-            .OpSubgroupAllEqualKHR => .Group,
-            .OpGroupNonUniformRotateKHR => .Group,
-            .OpSubgroupReadInvocationKHR => .Group,
-            .OpTraceRayKHR => .Reserved,
-            .OpExecuteCallableKHR => .Reserved,
-            .OpConvertUToAccelerationStructureKHR => .Reserved,
-            .OpIgnoreIntersectionKHR => .Reserved,
-            .OpTerminateRayKHR => .Reserved,
-            .OpSDot => .Arithmetic,
-            .OpUDot => .Arithmetic,
-            .OpSUDot => .Arithmetic,
-            .OpSDotAccSat => .Arithmetic,
-            .OpUDotAccSat => .Arithmetic,
-            .OpSUDotAccSat => .Arithmetic,
-            .OpTypeCooperativeMatrixKHR => .TypeDeclaration,
-            .OpCooperativeMatrixLoadKHR => .Memory,
-            .OpCooperativeMatrixStoreKHR => .Memory,
-            .OpCooperativeMatrixMulAddKHR => .Arithmetic,
-            .OpCooperativeMatrixLengthKHR => .Miscellaneous,
-            .OpTypeRayQueryKHR => .TypeDeclaration,
-            .OpRayQueryInitializeKHR => .Reserved,
-            .OpRayQueryTerminateKHR => .Reserved,
-            .OpRayQueryGenerateIntersectionKHR => .Reserved,
-            .OpRayQueryConfirmIntersectionKHR => .Reserved,
-            .OpRayQueryProceedKHR => .Reserved,
-            .OpRayQueryGetIntersectionTypeKHR => .Reserved,
-            .OpImageSampleWeightedQCOM => .Image,
-            .OpImageBoxFilterQCOM => .Image,
-            .OpImageBlockMatchSSDQCOM => .Image,
-            .OpImageBlockMatchSADQCOM => .Image,
-            .OpImageBlockMatchWindowSSDQCOM => .Image,
-            .OpImageBlockMatchWindowSADQCOM => .Image,
-            .OpImageBlockMatchGatherSSDQCOM => .Image,
-            .OpImageBlockMatchGatherSADQCOM => .Image,
-            .OpGroupIAddNonUniformAMD => .Group,
-            .OpGroupFAddNonUniformAMD => .Group,
-            .OpGroupFMinNonUniformAMD => .Group,
-            .OpGroupUMinNonUniformAMD => .Group,
-            .OpGroupSMinNonUniformAMD => .Group,
-            .OpGroupFMaxNonUniformAMD => .Group,
-            .OpGroupUMaxNonUniformAMD => .Group,
-            .OpGroupSMaxNonUniformAMD => .Group,
-            .OpFragmentMaskFetchAMD => .Reserved,
-            .OpFragmentFetchAMD => .Reserved,
-            .OpReadClockKHR => .Reserved,
-            .OpFinalizeNodePayloadsAMDX => .Reserved,
-            .OpFinishWritingNodePayloadAMDX => .Reserved,
-            .OpInitializeNodePayloadsAMDX => .Reserved,
-            .OpGroupNonUniformQuadAllKHR => .NonUniform,
-            .OpGroupNonUniformQuadAnyKHR => .NonUniform,
-            .OpHitObjectRecordHitMotionNV => .Reserved,
-            .OpHitObjectRecordHitWithIndexMotionNV => .Reserved,
-            .OpHitObjectRecordMissMotionNV => .Reserved,
-            .OpHitObjectGetWorldToObjectNV => .Reserved,
-            .OpHitObjectGetObjectToWorldNV => .Reserved,
-            .OpHitObjectGetObjectRayDirectionNV => .Reserved,
-            .OpHitObjectGetObjectRayOriginNV => .Reserved,
-            .OpHitObjectTraceRayMotionNV => .Reserved,
-            .OpHitObjectGetShaderRecordBufferHandleNV => .Reserved,
-            .OpHitObjectGetShaderBindingTableRecordIndexNV => .Reserved,
-            .OpHitObjectRecordEmptyNV => .Reserved,
-            .OpHitObjectTraceRayNV => .Reserved,
-            .OpHitObjectRecordHitNV => .Reserved,
-            .OpHitObjectRecordHitWithIndexNV => .Reserved,
-            .OpHitObjectRecordMissNV => .Reserved,
-            .OpHitObjectExecuteShaderNV => .Reserved,
-            .OpHitObjectGetCurrentTimeNV => .Reserved,
-            .OpHitObjectGetAttributesNV => .Reserved,
-            .OpHitObjectGetHitKindNV => .Reserved,
-            .OpHitObjectGetPrimitiveIndexNV => .Reserved,
-            .OpHitObjectGetGeometryIndexNV => .Reserved,
-            .OpHitObjectGetInstanceIdNV => .Reserved,
-            .OpHitObjectGetInstanceCustomIndexNV => .Reserved,
-            .OpHitObjectGetWorldRayDirectionNV => .Reserved,
-            .OpHitObjectGetWorldRayOriginNV => .Reserved,
-            .OpHitObjectGetRayTMaxNV => .Reserved,
-            .OpHitObjectGetRayTMinNV => .Reserved,
-            .OpHitObjectIsEmptyNV => .Reserved,
-            .OpHitObjectIsHitNV => .Reserved,
-            .OpHitObjectIsMissNV => .Reserved,
-            .OpReorderThreadWithHitObjectNV => .Reserved,
-            .OpReorderThreadWithHintNV => .Reserved,
-            .OpTypeHitObjectNV => .TypeDeclaration,
-            .OpImageSampleFootprintNV => .Image,
-            .OpEmitMeshTasksEXT => .Reserved,
-            .OpSetMeshOutputsEXT => .Reserved,
-            .OpGroupNonUniformPartitionNV => .NonUniform,
-            .OpWritePackedPrimitiveIndices4x8NV => .Reserved,
-            .OpFetchMicroTriangleVertexPositionNV => .Reserved,
-            .OpFetchMicroTriangleVertexBarycentricNV => .Reserved,
-            .OpReportIntersectionKHR => .Reserved,
-            .OpIgnoreIntersectionNV => .Reserved,
-            .OpTerminateRayNV => .Reserved,
-            .OpTraceNV => .Reserved,
-            .OpTraceMotionNV => .Reserved,
-            .OpTraceRayMotionNV => .Reserved,
-            .OpRayQueryGetIntersectionTriangleVertexPositionsKHR => .Reserved,
-            .OpTypeAccelerationStructureKHR => .TypeDeclaration,
-            .OpExecuteCallableNV => .Reserved,
-            .OpTypeCooperativeMatrixNV => .TypeDeclaration,
-            .OpCooperativeMatrixLoadNV => .Reserved,
-            .OpCooperativeMatrixStoreNV => .Reserved,
-            .OpCooperativeMatrixMulAddNV => .Reserved,
-            .OpCooperativeMatrixLengthNV => .Reserved,
-            .OpBeginInvocationInterlockEXT => .Reserved,
-            .OpEndInvocationInterlockEXT => .Reserved,
-            .OpDemoteToHelperInvocation => .ControlFlow,
-            .OpIsHelperInvocationEXT => .Reserved,
-            .OpConvertUToImageNV => .Reserved,
-            .OpConvertUToSamplerNV => .Reserved,
-            .OpConvertImageToUNV => .Reserved,
-            .OpConvertSamplerToUNV => .Reserved,
-            .OpConvertUToSampledImageNV => .Reserved,
-            .OpConvertSampledImageToUNV => .Reserved,
-            .OpSamplerImageAddressingModeNV => .Reserved,
-            .OpRawAccessChainNV => .Memory,
-            .OpSubgroupShuffleINTEL => .Group,
-            .OpSubgroupShuffleDownINTEL => .Group,
-            .OpSubgroupShuffleUpINTEL => .Group,
-            .OpSubgroupShuffleXorINTEL => .Group,
-            .OpSubgroupBlockReadINTEL => .Group,
-            .OpSubgroupBlockWriteINTEL => .Group,
-            .OpSubgroupImageBlockReadINTEL => .Group,
-            .OpSubgroupImageBlockWriteINTEL => .Group,
-            .OpSubgroupImageMediaBlockReadINTEL => .Group,
-            .OpSubgroupImageMediaBlockWriteINTEL => .Group,
-            .OpUCountLeadingZerosINTEL => .Reserved,
-            .OpUCountTrailingZerosINTEL => .Reserved,
-            .OpAbsISubINTEL => .Reserved,
-            .OpAbsUSubINTEL => .Reserved,
-            .OpIAddSatINTEL => .Reserved,
-            .OpUAddSatINTEL => .Reserved,
-            .OpIAverageINTEL => .Reserved,
-            .OpUAverageINTEL => .Reserved,
-            .OpIAverageRoundedINTEL => .Reserved,
-            .OpUAverageRoundedINTEL => .Reserved,
-            .OpISubSatINTEL => .Reserved,
-            .OpUSubSatINTEL => .Reserved,
-            .OpIMul32x16INTEL => .Reserved,
-            .OpUMul32x16INTEL => .Reserved,
-            .OpAtomicFMinEXT => .Atomic,
-            .OpAtomicFMaxEXT => .Atomic,
-            .OpAssumeTrueKHR => .Miscellaneous,
-            .OpExpectKHR => .Miscellaneous,
-            .OpDecorateString => .Annotation,
-            .OpMemberDecorateString => .Annotation,
-            .OpLoopControlINTEL => .Reserved,
-            .OpReadPipeBlockingINTEL => .Pipe,
-            .OpWritePipeBlockingINTEL => .Pipe,
-            .OpFPGARegINTEL => .Reserved,
-            .OpRayQueryGetRayTMinKHR => .Reserved,
-            .OpRayQueryGetRayFlagsKHR => .Reserved,
-            .OpRayQueryGetIntersectionTKHR => .Reserved,
-            .OpRayQueryGetIntersectionInstanceCustomIndexKHR => .Reserved,
-            .OpRayQueryGetIntersectionInstanceIdKHR => .Reserved,
-            .OpRayQueryGetIntersectionInstanceShaderBindingTableRecordOffsetKHR => .Reserved,
-            .OpRayQueryGetIntersectionGeometryIndexKHR => .Reserved,
-            .OpRayQueryGetIntersectionPrimitiveIndexKHR => .Reserved,
-            .OpRayQueryGetIntersectionBarycentricsKHR => .Reserved,
-            .OpRayQueryGetIntersectionFrontFaceKHR => .Reserved,
-            .OpRayQueryGetIntersectionCandidateAABBOpaqueKHR => .Reserved,
-            .OpRayQueryGetIntersectionObjectRayDirectionKHR => .Reserved,
-            .OpRayQueryGetIntersectionObjectRayOriginKHR => .Reserved,
-            .OpRayQueryGetWorldRayDirectionKHR => .Reserved,
-            .OpRayQueryGetWorldRayOriginKHR => .Reserved,
-            .OpRayQueryGetIntersectionObjectToWorldKHR => .Reserved,
-            .OpRayQueryGetIntersectionWorldToObjectKHR => .Reserved,
-            .OpAtomicFAddEXT => .Atomic,
-            .OpTypeBufferSurfaceINTEL => .TypeDeclaration,
-            .OpTypeStructContinuedINTEL => .TypeDeclaration,
-            .OpConstantCompositeContinuedINTEL => .ConstantCreation,
-            .OpSpecConstantCompositeContinuedINTEL => .ConstantCreation,
-            .OpCompositeConstructContinuedINTEL => .Composite,
-            .OpConvertFToBF16INTEL => .Conversion,
-            .OpConvertBF16ToFINTEL => .Conversion,
-            .OpControlBarrierArriveINTEL => .Barrier,
-            .OpControlBarrierWaitINTEL => .Barrier,
-            .OpGroupIMulKHR => .Group,
-            .OpGroupFMulKHR => .Group,
-            .OpGroupBitwiseAndKHR => .Group,
-            .OpGroupBitwiseOrKHR => .Group,
-            .OpGroupBitwiseXorKHR => .Group,
-            .OpGroupLogicalAndKHR => .Group,
-            .OpGroupLogicalOrKHR => .Group,
-            .OpGroupLogicalXorKHR => .Group,
-            .OpMaskedGatherINTEL => .Memory,
-            .OpMaskedScatterINTEL => .Memory,
+            .OpNop => .miscellaneous,
+            .OpUndef => .miscellaneous,
+            .OpSourceContinued => .debug,
+            .OpSource => .debug,
+            .OpSourceExtension => .debug,
+            .OpName => .debug,
+            .OpMemberName => .debug,
+            .OpString => .debug,
+            .OpLine => .debug,
+            .OpExtension => .extension,
+            .OpExtInstImport => .extension,
+            .OpExtInst => .extension,
+            .OpMemoryModel => .mode_setting,
+            .OpEntryPoint => .mode_setting,
+            .OpExecutionMode => .mode_setting,
+            .OpCapability => .mode_setting,
+            .OpTypeVoid => .type_declaration,
+            .OpTypeBool => .type_declaration,
+            .OpTypeInt => .type_declaration,
+            .OpTypeFloat => .type_declaration,
+            .OpTypeVector => .type_declaration,
+            .OpTypeMatrix => .type_declaration,
+            .OpTypeImage => .type_declaration,
+            .OpTypeSampler => .type_declaration,
+            .OpTypeSampledImage => .type_declaration,
+            .OpTypeArray => .type_declaration,
+            .OpTypeRuntimeArray => .type_declaration,
+            .OpTypeStruct => .type_declaration,
+            .OpTypeOpaque => .type_declaration,
+            .OpTypePointer => .type_declaration,
+            .OpTypeFunction => .type_declaration,
+            .OpTypeEvent => .type_declaration,
+            .OpTypeDeviceEvent => .type_declaration,
+            .OpTypeReserveId => .type_declaration,
+            .OpTypeQueue => .type_declaration,
+            .OpTypePipe => .type_declaration,
+            .OpTypeForwardPointer => .type_declaration,
+            .OpConstantTrue => .constant_creation,
+            .OpConstantFalse => .constant_creation,
+            .OpConstant => .constant_creation,
+            .OpConstantComposite => .constant_creation,
+            .OpConstantSampler => .constant_creation,
+            .OpConstantNull => .constant_creation,
+            .OpSpecConstantTrue => .constant_creation,
+            .OpSpecConstantFalse => .constant_creation,
+            .OpSpecConstant => .constant_creation,
+            .OpSpecConstantComposite => .constant_creation,
+            .OpSpecConstantOp => .constant_creation,
+            .OpFunction => .function,
+            .OpFunctionParameter => .function,
+            .OpFunctionEnd => .function,
+            .OpFunctionCall => .function,
+            .OpVariable => .memory,
+            .OpImageTexelPointer => .memory,
+            .OpLoad => .memory,
+            .OpStore => .memory,
+            .OpCopyMemory => .memory,
+            .OpCopyMemorySized => .memory,
+            .OpAccessChain => .memory,
+            .OpInBoundsAccessChain => .memory,
+            .OpPtrAccessChain => .memory,
+            .OpArrayLength => .memory,
+            .OpGenericPtrMemSemantics => .memory,
+            .OpInBoundsPtrAccessChain => .memory,
+            .OpDecorate => .annotation,
+            .OpMemberDecorate => .annotation,
+            .OpDecorationGroup => .annotation,
+            .OpGroupDecorate => .annotation,
+            .OpGroupMemberDecorate => .annotation,
+            .OpVectorExtractDynamic => .composite,
+            .OpVectorInsertDynamic => .composite,
+            .OpVectorShuffle => .composite,
+            .OpCompositeConstruct => .composite,
+            .OpCompositeExtract => .composite,
+            .OpCompositeInsert => .composite,
+            .OpCopyObject => .composite,
+            .OpTranspose => .composite,
+            .OpSampledImage => .image,
+            .OpImageSampleImplicitLod => .image,
+            .OpImageSampleExplicitLod => .image,
+            .OpImageSampleDrefImplicitLod => .image,
+            .OpImageSampleDrefExplicitLod => .image,
+            .OpImageSampleProjImplicitLod => .image,
+            .OpImageSampleProjExplicitLod => .image,
+            .OpImageSampleProjDrefImplicitLod => .image,
+            .OpImageSampleProjDrefExplicitLod => .image,
+            .OpImageFetch => .image,
+            .OpImageGather => .image,
+            .OpImageDrefGather => .image,
+            .OpImageRead => .image,
+            .OpImageWrite => .image,
+            .OpImage => .image,
+            .OpImageQueryFormat => .image,
+            .OpImageQueryOrder => .image,
+            .OpImageQuerySizeLod => .image,
+            .OpImageQuerySize => .image,
+            .OpImageQueryLod => .image,
+            .OpImageQueryLevels => .image,
+            .OpImageQuerySamples => .image,
+            .OpConvertFToU => .conversion,
+            .OpConvertFToS => .conversion,
+            .OpConvertSToF => .conversion,
+            .OpConvertUToF => .conversion,
+            .OpUConvert => .conversion,
+            .OpSConvert => .conversion,
+            .OpFConvert => .conversion,
+            .OpQuantizeToF16 => .conversion,
+            .OpConvertPtrToU => .conversion,
+            .OpSatConvertSToU => .conversion,
+            .OpSatConvertUToS => .conversion,
+            .OpConvertUToPtr => .conversion,
+            .OpPtrCastToGeneric => .conversion,
+            .OpGenericCastToPtr => .conversion,
+            .OpGenericCastToPtrExplicit => .conversion,
+            .OpBitcast => .conversion,
+            .OpSNegate => .arithmetic,
+            .OpFNegate => .arithmetic,
+            .OpIAdd => .arithmetic,
+            .OpFAdd => .arithmetic,
+            .OpISub => .arithmetic,
+            .OpFSub => .arithmetic,
+            .OpIMul => .arithmetic,
+            .OpFMul => .arithmetic,
+            .OpUDiv => .arithmetic,
+            .OpSDiv => .arithmetic,
+            .OpFDiv => .arithmetic,
+            .OpUMod => .arithmetic,
+            .OpSRem => .arithmetic,
+            .OpSMod => .arithmetic,
+            .OpFRem => .arithmetic,
+            .OpFMod => .arithmetic,
+            .OpVectorTimesScalar => .arithmetic,
+            .OpMatrixTimesScalar => .arithmetic,
+            .OpVectorTimesMatrix => .arithmetic,
+            .OpMatrixTimesVector => .arithmetic,
+            .OpMatrixTimesMatrix => .arithmetic,
+            .OpOuterProduct => .arithmetic,
+            .OpDot => .arithmetic,
+            .OpIAddCarry => .arithmetic,
+            .OpISubBorrow => .arithmetic,
+            .OpUMulExtended => .arithmetic,
+            .OpSMulExtended => .arithmetic,
+            .OpAny => .relational_and_logical,
+            .OpAll => .relational_and_logical,
+            .OpIsNan => .relational_and_logical,
+            .OpIsInf => .relational_and_logical,
+            .OpIsFinite => .relational_and_logical,
+            .OpIsNormal => .relational_and_logical,
+            .OpSignBitSet => .relational_and_logical,
+            .OpLessOrGreater => .relational_and_logical,
+            .OpOrdered => .relational_and_logical,
+            .OpUnordered => .relational_and_logical,
+            .OpLogicalEqual => .relational_and_logical,
+            .OpLogicalNotEqual => .relational_and_logical,
+            .OpLogicalOr => .relational_and_logical,
+            .OpLogicalAnd => .relational_and_logical,
+            .OpLogicalNot => .relational_and_logical,
+            .OpSelect => .relational_and_logical,
+            .OpIEqual => .relational_and_logical,
+            .OpINotEqual => .relational_and_logical,
+            .OpUGreaterThan => .relational_and_logical,
+            .OpSGreaterThan => .relational_and_logical,
+            .OpUGreaterThanEqual => .relational_and_logical,
+            .OpSGreaterThanEqual => .relational_and_logical,
+            .OpULessThan => .relational_and_logical,
+            .OpSLessThan => .relational_and_logical,
+            .OpULessThanEqual => .relational_and_logical,
+            .OpSLessThanEqual => .relational_and_logical,
+            .OpFOrdEqual => .relational_and_logical,
+            .OpFUnordEqual => .relational_and_logical,
+            .OpFOrdNotEqual => .relational_and_logical,
+            .OpFUnordNotEqual => .relational_and_logical,
+            .OpFOrdLessThan => .relational_and_logical,
+            .OpFUnordLessThan => .relational_and_logical,
+            .OpFOrdGreaterThan => .relational_and_logical,
+            .OpFUnordGreaterThan => .relational_and_logical,
+            .OpFOrdLessThanEqual => .relational_and_logical,
+            .OpFUnordLessThanEqual => .relational_and_logical,
+            .OpFOrdGreaterThanEqual => .relational_and_logical,
+            .OpFUnordGreaterThanEqual => .relational_and_logical,
+            .OpShiftRightLogical => .bit,
+            .OpShiftRightArithmetic => .bit,
+            .OpShiftLeftLogical => .bit,
+            .OpBitwiseOr => .bit,
+            .OpBitwiseXor => .bit,
+            .OpBitwiseAnd => .bit,
+            .OpNot => .bit,
+            .OpBitFieldInsert => .bit,
+            .OpBitFieldSExtract => .bit,
+            .OpBitFieldUExtract => .bit,
+            .OpBitReverse => .bit,
+            .OpBitCount => .bit,
+            .OpDPdx => .derivative,
+            .OpDPdy => .derivative,
+            .OpFwidth => .derivative,
+            .OpDPdxFine => .derivative,
+            .OpDPdyFine => .derivative,
+            .OpFwidthFine => .derivative,
+            .OpDPdxCoarse => .derivative,
+            .OpDPdyCoarse => .derivative,
+            .OpFwidthCoarse => .derivative,
+            .OpEmitVertex => .primitive,
+            .OpEndPrimitive => .primitive,
+            .OpEmitStreamVertex => .primitive,
+            .OpEndStreamPrimitive => .primitive,
+            .OpControlBarrier => .barrier,
+            .OpMemoryBarrier => .barrier,
+            .OpAtomicLoad => .atomic,
+            .OpAtomicStore => .atomic,
+            .OpAtomicExchange => .atomic,
+            .OpAtomicCompareExchange => .atomic,
+            .OpAtomicCompareExchangeWeak => .atomic,
+            .OpAtomicIIncrement => .atomic,
+            .OpAtomicIDecrement => .atomic,
+            .OpAtomicIAdd => .atomic,
+            .OpAtomicISub => .atomic,
+            .OpAtomicSMin => .atomic,
+            .OpAtomicUMin => .atomic,
+            .OpAtomicSMax => .atomic,
+            .OpAtomicUMax => .atomic,
+            .OpAtomicAnd => .atomic,
+            .OpAtomicOr => .atomic,
+            .OpAtomicXor => .atomic,
+            .OpPhi => .control_flow,
+            .OpLoopMerge => .control_flow,
+            .OpSelectionMerge => .control_flow,
+            .OpLabel => .control_flow,
+            .OpBranch => .control_flow,
+            .OpBranchConditional => .control_flow,
+            .OpSwitch => .control_flow,
+            .OpKill => .control_flow,
+            .OpReturn => .control_flow,
+            .OpReturnValue => .control_flow,
+            .OpUnreachable => .control_flow,
+            .OpLifetimeStart => .control_flow,
+            .OpLifetimeStop => .control_flow,
+            .OpGroupAsyncCopy => .group,
+            .OpGroupWaitEvents => .group,
+            .OpGroupAll => .group,
+            .OpGroupAny => .group,
+            .OpGroupBroadcast => .group,
+            .OpGroupIAdd => .group,
+            .OpGroupFAdd => .group,
+            .OpGroupFMin => .group,
+            .OpGroupUMin => .group,
+            .OpGroupSMin => .group,
+            .OpGroupFMax => .group,
+            .OpGroupUMax => .group,
+            .OpGroupSMax => .group,
+            .OpReadPipe => .pipe,
+            .OpWritePipe => .pipe,
+            .OpReservedReadPipe => .pipe,
+            .OpReservedWritePipe => .pipe,
+            .OpReserveReadPipePackets => .pipe,
+            .OpReserveWritePipePackets => .pipe,
+            .OpCommitReadPipe => .pipe,
+            .OpCommitWritePipe => .pipe,
+            .OpIsValidReserveId => .pipe,
+            .OpGetNumPipePackets => .pipe,
+            .OpGetMaxPipePackets => .pipe,
+            .OpGroupReserveReadPipePackets => .pipe,
+            .OpGroupReserveWritePipePackets => .pipe,
+            .OpGroupCommitReadPipe => .pipe,
+            .OpGroupCommitWritePipe => .pipe,
+            .OpEnqueueMarker => .device_side_enqueue,
+            .OpEnqueueKernel => .device_side_enqueue,
+            .OpGetKernelNDrangeSubGroupCount => .device_side_enqueue,
+            .OpGetKernelNDrangeMaxSubGroupSize => .device_side_enqueue,
+            .OpGetKernelWorkGroupSize => .device_side_enqueue,
+            .OpGetKernelPreferredWorkGroupSizeMultiple => .device_side_enqueue,
+            .OpRetainEvent => .device_side_enqueue,
+            .OpReleaseEvent => .device_side_enqueue,
+            .OpCreateUserEvent => .device_side_enqueue,
+            .OpIsValidEvent => .device_side_enqueue,
+            .OpSetUserEventStatus => .device_side_enqueue,
+            .OpCaptureEventProfilingInfo => .device_side_enqueue,
+            .OpGetDefaultQueue => .device_side_enqueue,
+            .OpBuildNDRange => .device_side_enqueue,
+            .OpImageSparseSampleImplicitLod => .image,
+            .OpImageSparseSampleExplicitLod => .image,
+            .OpImageSparseSampleDrefImplicitLod => .image,
+            .OpImageSparseSampleDrefExplicitLod => .image,
+            .OpImageSparseSampleProjImplicitLod => .image,
+            .OpImageSparseSampleProjExplicitLod => .image,
+            .OpImageSparseSampleProjDrefImplicitLod => .image,
+            .OpImageSparseSampleProjDrefExplicitLod => .image,
+            .OpImageSparseFetch => .image,
+            .OpImageSparseGather => .image,
+            .OpImageSparseDrefGather => .image,
+            .OpImageSparseTexelsResident => .image,
+            .OpNoLine => .debug,
+            .OpAtomicFlagTestAndSet => .atomic,
+            .OpAtomicFlagClear => .atomic,
+            .OpImageSparseRead => .image,
+            .OpSizeOf => .miscellaneous,
+            .OpTypePipeStorage => .type_declaration,
+            .OpConstantPipeStorage => .pipe,
+            .OpCreatePipeFromPipeStorage => .pipe,
+            .OpGetKernelLocalSizeForSubgroupCount => .device_side_enqueue,
+            .OpGetKernelMaxNumSubgroups => .device_side_enqueue,
+            .OpTypeNamedBarrier => .type_declaration,
+            .OpNamedBarrierInitialize => .barrier,
+            .OpMemoryNamedBarrier => .barrier,
+            .OpModuleProcessed => .debug,
+            .OpExecutionModeId => .mode_setting,
+            .OpDecorateId => .annotation,
+            .OpGroupNonUniformElect => .non_uniform,
+            .OpGroupNonUniformAll => .non_uniform,
+            .OpGroupNonUniformAny => .non_uniform,
+            .OpGroupNonUniformAllEqual => .non_uniform,
+            .OpGroupNonUniformBroadcast => .non_uniform,
+            .OpGroupNonUniformBroadcastFirst => .non_uniform,
+            .OpGroupNonUniformBallot => .non_uniform,
+            .OpGroupNonUniformInverseBallot => .non_uniform,
+            .OpGroupNonUniformBallotBitExtract => .non_uniform,
+            .OpGroupNonUniformBallotBitCount => .non_uniform,
+            .OpGroupNonUniformBallotFindLSB => .non_uniform,
+            .OpGroupNonUniformBallotFindMSB => .non_uniform,
+            .OpGroupNonUniformShuffle => .non_uniform,
+            .OpGroupNonUniformShuffleXor => .non_uniform,
+            .OpGroupNonUniformShuffleUp => .non_uniform,
+            .OpGroupNonUniformShuffleDown => .non_uniform,
+            .OpGroupNonUniformIAdd => .non_uniform,
+            .OpGroupNonUniformFAdd => .non_uniform,
+            .OpGroupNonUniformIMul => .non_uniform,
+            .OpGroupNonUniformFMul => .non_uniform,
+            .OpGroupNonUniformSMin => .non_uniform,
+            .OpGroupNonUniformUMin => .non_uniform,
+            .OpGroupNonUniformFMin => .non_uniform,
+            .OpGroupNonUniformSMax => .non_uniform,
+            .OpGroupNonUniformUMax => .non_uniform,
+            .OpGroupNonUniformFMax => .non_uniform,
+            .OpGroupNonUniformBitwiseAnd => .non_uniform,
+            .OpGroupNonUniformBitwiseOr => .non_uniform,
+            .OpGroupNonUniformBitwiseXor => .non_uniform,
+            .OpGroupNonUniformLogicalAnd => .non_uniform,
+            .OpGroupNonUniformLogicalOr => .non_uniform,
+            .OpGroupNonUniformLogicalXor => .non_uniform,
+            .OpGroupNonUniformQuadBroadcast => .non_uniform,
+            .OpGroupNonUniformQuadSwap => .non_uniform,
+            .OpCopyLogical => .composite,
+            .OpPtrEqual => .memory,
+            .OpPtrNotEqual => .memory,
+            .OpPtrDiff => .memory,
+            .OpColorAttachmentReadEXT => .image,
+            .OpDepthAttachmentReadEXT => .image,
+            .OpStencilAttachmentReadEXT => .image,
+            .OpTypeTensorARM => .type_declaration,
+            .OpTensorReadARM => .tensor,
+            .OpTensorWriteARM => .tensor,
+            .OpTensorQuerySizeARM => .tensor,
+            .OpGraphConstantARM => .graph,
+            .OpGraphEntryPointARM => .graph,
+            .OpGraphARM => .graph,
+            .OpGraphInputARM => .graph,
+            .OpGraphSetOutputARM => .graph,
+            .OpGraphEndARM => .graph,
+            .OpTypeGraphARM => .type_declaration,
+            .OpTerminateInvocation => .control_flow,
+            .OpTypeUntypedPointerKHR => .type_declaration,
+            .OpUntypedVariableKHR => .memory,
+            .OpUntypedAccessChainKHR => .memory,
+            .OpUntypedInBoundsAccessChainKHR => .memory,
+            .OpSubgroupBallotKHR => .group,
+            .OpSubgroupFirstInvocationKHR => .group,
+            .OpUntypedPtrAccessChainKHR => .memory,
+            .OpUntypedInBoundsPtrAccessChainKHR => .memory,
+            .OpUntypedArrayLengthKHR => .memory,
+            .OpUntypedPrefetchKHR => .memory,
+            .OpSubgroupAllKHR => .group,
+            .OpSubgroupAnyKHR => .group,
+            .OpSubgroupAllEqualKHR => .group,
+            .OpGroupNonUniformRotateKHR => .group,
+            .OpSubgroupReadInvocationKHR => .group,
+            .OpExtInstWithForwardRefsKHR => .extension,
+            .OpTraceRayKHR => .reserved,
+            .OpExecuteCallableKHR => .reserved,
+            .OpConvertUToAccelerationStructureKHR => .reserved,
+            .OpIgnoreIntersectionKHR => .reserved,
+            .OpTerminateRayKHR => .reserved,
+            .OpSDot => .arithmetic,
+            .OpUDot => .arithmetic,
+            .OpSUDot => .arithmetic,
+            .OpSDotAccSat => .arithmetic,
+            .OpUDotAccSat => .arithmetic,
+            .OpSUDotAccSat => .arithmetic,
+            .OpTypeCooperativeMatrixKHR => .type_declaration,
+            .OpCooperativeMatrixLoadKHR => .memory,
+            .OpCooperativeMatrixStoreKHR => .memory,
+            .OpCooperativeMatrixMulAddKHR => .arithmetic,
+            .OpCooperativeMatrixLengthKHR => .miscellaneous,
+            .OpConstantCompositeReplicateEXT => .constant_creation,
+            .OpSpecConstantCompositeReplicateEXT => .constant_creation,
+            .OpCompositeConstructReplicateEXT => .composite,
+            .OpTypeRayQueryKHR => .type_declaration,
+            .OpRayQueryInitializeKHR => .reserved,
+            .OpRayQueryTerminateKHR => .reserved,
+            .OpRayQueryGenerateIntersectionKHR => .reserved,
+            .OpRayQueryConfirmIntersectionKHR => .reserved,
+            .OpRayQueryProceedKHR => .reserved,
+            .OpRayQueryGetIntersectionTypeKHR => .reserved,
+            .OpImageSampleWeightedQCOM => .image,
+            .OpImageBoxFilterQCOM => .image,
+            .OpImageBlockMatchSSDQCOM => .image,
+            .OpImageBlockMatchSADQCOM => .image,
+            .OpImageBlockMatchWindowSSDQCOM => .image,
+            .OpImageBlockMatchWindowSADQCOM => .image,
+            .OpImageBlockMatchGatherSSDQCOM => .image,
+            .OpImageBlockMatchGatherSADQCOM => .image,
+            .OpGroupIAddNonUniformAMD => .group,
+            .OpGroupFAddNonUniformAMD => .group,
+            .OpGroupFMinNonUniformAMD => .group,
+            .OpGroupUMinNonUniformAMD => .group,
+            .OpGroupSMinNonUniformAMD => .group,
+            .OpGroupFMaxNonUniformAMD => .group,
+            .OpGroupUMaxNonUniformAMD => .group,
+            .OpGroupSMaxNonUniformAMD => .group,
+            .OpFragmentMaskFetchAMD => .reserved,
+            .OpFragmentFetchAMD => .reserved,
+            .OpReadClockKHR => .reserved,
+            .OpAllocateNodePayloadsAMDX => .reserved,
+            .OpEnqueueNodePayloadsAMDX => .reserved,
+            .OpTypeNodePayloadArrayAMDX => .reserved,
+            .OpFinishWritingNodePayloadAMDX => .reserved,
+            .OpNodePayloadArrayLengthAMDX => .reserved,
+            .OpIsNodePayloadValidAMDX => .reserved,
+            .OpConstantStringAMDX => .reserved,
+            .OpSpecConstantStringAMDX => .reserved,
+            .OpGroupNonUniformQuadAllKHR => .non_uniform,
+            .OpGroupNonUniformQuadAnyKHR => .non_uniform,
+            .OpHitObjectRecordHitMotionNV => .reserved,
+            .OpHitObjectRecordHitWithIndexMotionNV => .reserved,
+            .OpHitObjectRecordMissMotionNV => .reserved,
+            .OpHitObjectGetWorldToObjectNV => .reserved,
+            .OpHitObjectGetObjectToWorldNV => .reserved,
+            .OpHitObjectGetObjectRayDirectionNV => .reserved,
+            .OpHitObjectGetObjectRayOriginNV => .reserved,
+            .OpHitObjectTraceRayMotionNV => .reserved,
+            .OpHitObjectGetShaderRecordBufferHandleNV => .reserved,
+            .OpHitObjectGetShaderBindingTableRecordIndexNV => .reserved,
+            .OpHitObjectRecordEmptyNV => .reserved,
+            .OpHitObjectTraceRayNV => .reserved,
+            .OpHitObjectRecordHitNV => .reserved,
+            .OpHitObjectRecordHitWithIndexNV => .reserved,
+            .OpHitObjectRecordMissNV => .reserved,
+            .OpHitObjectExecuteShaderNV => .reserved,
+            .OpHitObjectGetCurrentTimeNV => .reserved,
+            .OpHitObjectGetAttributesNV => .reserved,
+            .OpHitObjectGetHitKindNV => .reserved,
+            .OpHitObjectGetPrimitiveIndexNV => .reserved,
+            .OpHitObjectGetGeometryIndexNV => .reserved,
+            .OpHitObjectGetInstanceIdNV => .reserved,
+            .OpHitObjectGetInstanceCustomIndexNV => .reserved,
+            .OpHitObjectGetWorldRayDirectionNV => .reserved,
+            .OpHitObjectGetWorldRayOriginNV => .reserved,
+            .OpHitObjectGetRayTMaxNV => .reserved,
+            .OpHitObjectGetRayTMinNV => .reserved,
+            .OpHitObjectIsEmptyNV => .reserved,
+            .OpHitObjectIsHitNV => .reserved,
+            .OpHitObjectIsMissNV => .reserved,
+            .OpReorderThreadWithHitObjectNV => .reserved,
+            .OpReorderThreadWithHintNV => .reserved,
+            .OpTypeHitObjectNV => .type_declaration,
+            .OpImageSampleFootprintNV => .image,
+            .OpTypeCooperativeVectorNV => .type_declaration,
+            .OpCooperativeVectorMatrixMulNV => .reserved,
+            .OpCooperativeVectorOuterProductAccumulateNV => .reserved,
+            .OpCooperativeVectorReduceSumAccumulateNV => .reserved,
+            .OpCooperativeVectorMatrixMulAddNV => .reserved,
+            .OpCooperativeMatrixConvertNV => .conversion,
+            .OpEmitMeshTasksEXT => .reserved,
+            .OpSetMeshOutputsEXT => .reserved,
+            .OpGroupNonUniformPartitionNV => .non_uniform,
+            .OpWritePackedPrimitiveIndices4x8NV => .reserved,
+            .OpFetchMicroTriangleVertexPositionNV => .reserved,
+            .OpFetchMicroTriangleVertexBarycentricNV => .reserved,
+            .OpCooperativeVectorLoadNV => .memory,
+            .OpCooperativeVectorStoreNV => .memory,
+            .OpReportIntersectionKHR => .reserved,
+            .OpIgnoreIntersectionNV => .reserved,
+            .OpTerminateRayNV => .reserved,
+            .OpTraceNV => .reserved,
+            .OpTraceMotionNV => .reserved,
+            .OpTraceRayMotionNV => .reserved,
+            .OpRayQueryGetIntersectionTriangleVertexPositionsKHR => .reserved,
+            .OpTypeAccelerationStructureKHR => .type_declaration,
+            .OpExecuteCallableNV => .reserved,
+            .OpRayQueryGetClusterIdNV => .reserved,
+            .OpHitObjectGetClusterIdNV => .reserved,
+            .OpTypeCooperativeMatrixNV => .type_declaration,
+            .OpCooperativeMatrixLoadNV => .reserved,
+            .OpCooperativeMatrixStoreNV => .reserved,
+            .OpCooperativeMatrixMulAddNV => .reserved,
+            .OpCooperativeMatrixLengthNV => .reserved,
+            .OpBeginInvocationInterlockEXT => .reserved,
+            .OpEndInvocationInterlockEXT => .reserved,
+            .OpCooperativeMatrixReduceNV => .arithmetic,
+            .OpCooperativeMatrixLoadTensorNV => .memory,
+            .OpCooperativeMatrixStoreTensorNV => .memory,
+            .OpCooperativeMatrixPerElementOpNV => .function,
+            .OpTypeTensorLayoutNV => .type_declaration,
+            .OpTypeTensorViewNV => .type_declaration,
+            .OpCreateTensorLayoutNV => .reserved,
+            .OpTensorLayoutSetDimensionNV => .reserved,
+            .OpTensorLayoutSetStrideNV => .reserved,
+            .OpTensorLayoutSliceNV => .reserved,
+            .OpTensorLayoutSetClampValueNV => .reserved,
+            .OpCreateTensorViewNV => .reserved,
+            .OpTensorViewSetDimensionNV => .reserved,
+            .OpTensorViewSetStrideNV => .reserved,
+            .OpDemoteToHelperInvocation => .control_flow,
+            .OpIsHelperInvocationEXT => .reserved,
+            .OpTensorViewSetClipNV => .reserved,
+            .OpTensorLayoutSetBlockSizeNV => .reserved,
+            .OpCooperativeMatrixTransposeNV => .conversion,
+            .OpConvertUToImageNV => .reserved,
+            .OpConvertUToSamplerNV => .reserved,
+            .OpConvertImageToUNV => .reserved,
+            .OpConvertSamplerToUNV => .reserved,
+            .OpConvertUToSampledImageNV => .reserved,
+            .OpConvertSampledImageToUNV => .reserved,
+            .OpSamplerImageAddressingModeNV => .reserved,
+            .OpRawAccessChainNV => .memory,
+            .OpRayQueryGetIntersectionSpherePositionNV => .reserved,
+            .OpRayQueryGetIntersectionSphereRadiusNV => .reserved,
+            .OpRayQueryGetIntersectionLSSPositionsNV => .reserved,
+            .OpRayQueryGetIntersectionLSSRadiiNV => .reserved,
+            .OpRayQueryGetIntersectionLSSHitValueNV => .reserved,
+            .OpHitObjectGetSpherePositionNV => .reserved,
+            .OpHitObjectGetSphereRadiusNV => .reserved,
+            .OpHitObjectGetLSSPositionsNV => .reserved,
+            .OpHitObjectGetLSSRadiiNV => .reserved,
+            .OpHitObjectIsSphereHitNV => .reserved,
+            .OpHitObjectIsLSSHitNV => .reserved,
+            .OpRayQueryIsSphereHitNV => .reserved,
+            .OpRayQueryIsLSSHitNV => .reserved,
+            .OpSubgroupShuffleINTEL => .group,
+            .OpSubgroupShuffleDownINTEL => .group,
+            .OpSubgroupShuffleUpINTEL => .group,
+            .OpSubgroupShuffleXorINTEL => .group,
+            .OpSubgroupBlockReadINTEL => .group,
+            .OpSubgroupBlockWriteINTEL => .group,
+            .OpSubgroupImageBlockReadINTEL => .group,
+            .OpSubgroupImageBlockWriteINTEL => .group,
+            .OpSubgroupImageMediaBlockReadINTEL => .group,
+            .OpSubgroupImageMediaBlockWriteINTEL => .group,
+            .OpUCountLeadingZerosINTEL => .reserved,
+            .OpUCountTrailingZerosINTEL => .reserved,
+            .OpAbsISubINTEL => .reserved,
+            .OpAbsUSubINTEL => .reserved,
+            .OpIAddSatINTEL => .reserved,
+            .OpUAddSatINTEL => .reserved,
+            .OpIAverageINTEL => .reserved,
+            .OpUAverageINTEL => .reserved,
+            .OpIAverageRoundedINTEL => .reserved,
+            .OpUAverageRoundedINTEL => .reserved,
+            .OpISubSatINTEL => .reserved,
+            .OpUSubSatINTEL => .reserved,
+            .OpIMul32x16INTEL => .reserved,
+            .OpUMul32x16INTEL => .reserved,
+            .OpAtomicFMinEXT => .atomic,
+            .OpAtomicFMaxEXT => .atomic,
+            .OpAssumeTrueKHR => .miscellaneous,
+            .OpExpectKHR => .miscellaneous,
+            .OpDecorateString => .annotation,
+            .OpMemberDecorateString => .annotation,
+            .OpLoopControlINTEL => .reserved,
+            .OpReadPipeBlockingINTEL => .pipe,
+            .OpWritePipeBlockingINTEL => .pipe,
+            .OpFPGARegINTEL => .reserved,
+            .OpRayQueryGetRayTMinKHR => .reserved,
+            .OpRayQueryGetRayFlagsKHR => .reserved,
+            .OpRayQueryGetIntersectionTKHR => .reserved,
+            .OpRayQueryGetIntersectionInstanceCustomIndexKHR => .reserved,
+            .OpRayQueryGetIntersectionInstanceIdKHR => .reserved,
+            .OpRayQueryGetIntersectionInstanceShaderBindingTableRecordOffsetKHR => .reserved,
+            .OpRayQueryGetIntersectionGeometryIndexKHR => .reserved,
+            .OpRayQueryGetIntersectionPrimitiveIndexKHR => .reserved,
+            .OpRayQueryGetIntersectionBarycentricsKHR => .reserved,
+            .OpRayQueryGetIntersectionFrontFaceKHR => .reserved,
+            .OpRayQueryGetIntersectionCandidateAABBOpaqueKHR => .reserved,
+            .OpRayQueryGetIntersectionObjectRayDirectionKHR => .reserved,
+            .OpRayQueryGetIntersectionObjectRayOriginKHR => .reserved,
+            .OpRayQueryGetWorldRayDirectionKHR => .reserved,
+            .OpRayQueryGetWorldRayOriginKHR => .reserved,
+            .OpRayQueryGetIntersectionObjectToWorldKHR => .reserved,
+            .OpRayQueryGetIntersectionWorldToObjectKHR => .reserved,
+            .OpAtomicFAddEXT => .atomic,
+            .OpTypeBufferSurfaceINTEL => .type_declaration,
+            .OpTypeStructContinuedINTEL => .type_declaration,
+            .OpConstantCompositeContinuedINTEL => .constant_creation,
+            .OpSpecConstantCompositeContinuedINTEL => .constant_creation,
+            .OpCompositeConstructContinuedINTEL => .composite,
+            .OpConvertFToBF16INTEL => .conversion,
+            .OpConvertBF16ToFINTEL => .conversion,
+            .OpControlBarrierArriveINTEL => .barrier,
+            .OpControlBarrierWaitINTEL => .barrier,
+            .OpArithmeticFenceEXT => .miscellaneous,
+            .OpTaskSequenceCreateINTEL => .reserved,
+            .OpTaskSequenceAsyncINTEL => .reserved,
+            .OpTaskSequenceGetINTEL => .reserved,
+            .OpTaskSequenceReleaseINTEL => .reserved,
+            .OpTypeTaskSequenceINTEL => .type_declaration,
+            .OpSubgroupBlockPrefetchINTEL => .group,
+            .OpSubgroup2DBlockLoadINTEL => .group,
+            .OpSubgroup2DBlockLoadTransformINTEL => .group,
+            .OpSubgroup2DBlockLoadTransposeINTEL => .group,
+            .OpSubgroup2DBlockPrefetchINTEL => .group,
+            .OpSubgroup2DBlockStoreINTEL => .group,
+            .OpSubgroupMatrixMultiplyAccumulateINTEL => .group,
+            .OpBitwiseFunctionINTEL => .bit,
+            .OpGroupIMulKHR => .group,
+            .OpGroupFMulKHR => .group,
+            .OpGroupBitwiseAndKHR => .group,
+            .OpGroupBitwiseOrKHR => .group,
+            .OpGroupBitwiseXorKHR => .group,
+            .OpGroupLogicalAndKHR => .group,
+            .OpGroupLogicalOrKHR => .group,
+            .OpGroupLogicalXorKHR => .group,
+            .OpRoundFToTF32INTEL => .conversion,
+            .OpMaskedGatherINTEL => .memory,
+            .OpMaskedScatterINTEL => .memory,
+            .OpConvertHandleToImageINTEL => .image,
+            .OpConvertHandleToSamplerINTEL => .image,
+            .OpConvertHandleToSampledImageINTEL => .image,
         };
     }
 };
 pub const ImageOperands = packed struct {
-    Bias: bool = false,
-    Lod: bool = false,
-    Grad: bool = false,
-    ConstOffset: bool = false,
-    Offset: bool = false,
-    ConstOffsets: bool = false,
-    Sample: bool = false,
-    MinLod: bool = false,
-    MakeTexelAvailable: bool = false,
-    MakeTexelVisible: bool = false,
-    NonPrivateTexel: bool = false,
-    VolatileTexel: bool = false,
-    SignExtend: bool = false,
-    ZeroExtend: bool = false,
-    Nontemporal: bool = false,
+    bias: bool = false,
+    lod: bool = false,
+    grad: bool = false,
+    const_offset: bool = false,
+    offset: bool = false,
+    const_offsets: bool = false,
+    sample: bool = false,
+    min_lod: bool = false,
+    make_texel_available: bool = false,
+    make_texel_visible: bool = false,
+    non_private_texel: bool = false,
+    volatile_texel: bool = false,
+    sign_extend: bool = false,
+    zero_extend: bool = false,
+    nontemporal: bool = false,
     _reserved_bit_15: bool = false,
-    Offsets: bool = false,
+    offsets: bool = false,
     _reserved_bit_17: bool = false,
     _reserved_bit_18: bool = false,
     _reserved_bit_19: bool = false,
@@ -3251,29 +3557,24 @@ pub const ImageOperands = packed struct {
     _reserved_bit_30: bool = false,
     _reserved_bit_31: bool = false,
 
-    pub const MakeTexelAvailableKHR: ImageOperands = .{ .MakeTexelAvailable = true };
-    pub const MakeTexelVisibleKHR: ImageOperands = .{ .MakeTexelVisible = true };
-    pub const NonPrivateTexelKHR: ImageOperands = .{ .NonPrivateTexel = true };
-    pub const VolatileTexelKHR: ImageOperands = .{ .VolatileTexel = true };
-
     pub const Extended = struct {
-        Bias: ?struct { id_ref: IdRef } = null,
-        Lod: ?struct { id_ref: IdRef } = null,
-        Grad: ?struct { id_ref_0: IdRef, id_ref_1: IdRef } = null,
-        ConstOffset: ?struct { id_ref: IdRef } = null,
-        Offset: ?struct { id_ref: IdRef } = null,
-        ConstOffsets: ?struct { id_ref: IdRef } = null,
-        Sample: ?struct { id_ref: IdRef } = null,
-        MinLod: ?struct { id_ref: IdRef } = null,
-        MakeTexelAvailable: ?struct { id_scope: IdScope } = null,
-        MakeTexelVisible: ?struct { id_scope: IdScope } = null,
-        NonPrivateTexel: bool = false,
-        VolatileTexel: bool = false,
-        SignExtend: bool = false,
-        ZeroExtend: bool = false,
-        Nontemporal: bool = false,
+        bias: ?struct { id_ref: Id } = null,
+        lod: ?struct { id_ref: Id } = null,
+        grad: ?struct { id_ref_0: Id, id_ref_1: Id } = null,
+        const_offset: ?struct { id_ref: Id } = null,
+        offset: ?struct { id_ref: Id } = null,
+        const_offsets: ?struct { id_ref: Id } = null,
+        sample: ?struct { id_ref: Id } = null,
+        min_lod: ?struct { id_ref: Id } = null,
+        make_texel_available: ?struct { id_scope: Id } = null,
+        make_texel_visible: ?struct { id_scope: Id } = null,
+        non_private_texel: bool = false,
+        volatile_texel: bool = false,
+        sign_extend: bool = false,
+        zero_extend: bool = false,
+        nontemporal: bool = false,
         _reserved_bit_15: bool = false,
-        Offsets: ?struct { id_ref: IdRef } = null,
+        offsets: ?struct { id_ref: Id } = null,
         _reserved_bit_17: bool = false,
         _reserved_bit_18: bool = false,
         _reserved_bit_19: bool = false,
@@ -3292,11 +3593,11 @@ pub const ImageOperands = packed struct {
     };
 };
 pub const FPFastMathMode = packed struct {
-    NotNaN: bool = false,
-    NotInf: bool = false,
-    NSZ: bool = false,
-    AllowRecip: bool = false,
-    Fast: bool = false,
+    not_na_n: bool = false,
+    not_inf: bool = false,
+    nsz: bool = false,
+    allow_recip: bool = false,
+    fast: bool = false,
     _reserved_bit_5: bool = false,
     _reserved_bit_6: bool = false,
     _reserved_bit_7: bool = false,
@@ -3308,9 +3609,9 @@ pub const FPFastMathMode = packed struct {
     _reserved_bit_13: bool = false,
     _reserved_bit_14: bool = false,
     _reserved_bit_15: bool = false,
-    AllowContract: bool = false,
-    AllowReassoc: bool = false,
-    AllowTransform: bool = false,
+    allow_contract: bool = false,
+    allow_reassoc: bool = false,
+    allow_transform: bool = false,
     _reserved_bit_19: bool = false,
     _reserved_bit_20: bool = false,
     _reserved_bit_21: bool = false,
@@ -3324,13 +3625,10 @@ pub const FPFastMathMode = packed struct {
     _reserved_bit_29: bool = false,
     _reserved_bit_30: bool = false,
     _reserved_bit_31: bool = false,
-
-    pub const AllowContractFastINTEL: FPFastMathMode = .{ .AllowContract = true };
-    pub const AllowReassocINTEL: FPFastMathMode = .{ .AllowReassoc = true };
 };
 pub const SelectionControl = packed struct {
-    Flatten: bool = false,
-    DontFlatten: bool = false,
+    flatten: bool = false,
+    dont_flatten: bool = false,
     _reserved_bit_2: bool = false,
     _reserved_bit_3: bool = false,
     _reserved_bit_4: bool = false,
@@ -3363,15 +3661,15 @@ pub const SelectionControl = packed struct {
     _reserved_bit_31: bool = false,
 };
 pub const LoopControl = packed struct {
-    Unroll: bool = false,
-    DontUnroll: bool = false,
-    DependencyInfinite: bool = false,
-    DependencyLength: bool = false,
-    MinIterations: bool = false,
-    MaxIterations: bool = false,
-    IterationMultiple: bool = false,
-    PeelCount: bool = false,
-    PartialCount: bool = false,
+    unroll: bool = false,
+    dont_unroll: bool = false,
+    dependency_infinite: bool = false,
+    dependency_length: bool = false,
+    min_iterations: bool = false,
+    max_iterations: bool = false,
+    iteration_multiple: bool = false,
+    peel_count: bool = false,
+    partial_count: bool = false,
     _reserved_bit_9: bool = false,
     _reserved_bit_10: bool = false,
     _reserved_bit_11: bool = false,
@@ -3379,16 +3677,16 @@ pub const LoopControl = packed struct {
     _reserved_bit_13: bool = false,
     _reserved_bit_14: bool = false,
     _reserved_bit_15: bool = false,
-    InitiationIntervalINTEL: bool = false,
-    MaxConcurrencyINTEL: bool = false,
-    DependencyArrayINTEL: bool = false,
-    PipelineEnableINTEL: bool = false,
-    LoopCoalesceINTEL: bool = false,
-    MaxInterleavingINTEL: bool = false,
-    SpeculatedIterationsINTEL: bool = false,
-    NoFusionINTEL: bool = false,
-    LoopCountINTEL: bool = false,
-    MaxReinvocationDelayINTEL: bool = false,
+    initiation_interval_intel: bool = false,
+    max_concurrency_intel: bool = false,
+    dependency_array_intel: bool = false,
+    pipeline_enable_intel: bool = false,
+    loop_coalesce_intel: bool = false,
+    max_interleaving_intel: bool = false,
+    speculated_iterations_intel: bool = false,
+    no_fusion_intel: bool = false,
+    loop_count_intel: bool = false,
+    max_reinvocation_delay_intel: bool = false,
     _reserved_bit_26: bool = false,
     _reserved_bit_27: bool = false,
     _reserved_bit_28: bool = false,
@@ -3397,15 +3695,15 @@ pub const LoopControl = packed struct {
     _reserved_bit_31: bool = false,
 
     pub const Extended = struct {
-        Unroll: bool = false,
-        DontUnroll: bool = false,
-        DependencyInfinite: bool = false,
-        DependencyLength: ?struct { literal_integer: LiteralInteger } = null,
-        MinIterations: ?struct { literal_integer: LiteralInteger } = null,
-        MaxIterations: ?struct { literal_integer: LiteralInteger } = null,
-        IterationMultiple: ?struct { literal_integer: LiteralInteger } = null,
-        PeelCount: ?struct { literal_integer: LiteralInteger } = null,
-        PartialCount: ?struct { literal_integer: LiteralInteger } = null,
+        unroll: bool = false,
+        dont_unroll: bool = false,
+        dependency_infinite: bool = false,
+        dependency_length: ?struct { literal_integer: LiteralInteger } = null,
+        min_iterations: ?struct { literal_integer: LiteralInteger } = null,
+        max_iterations: ?struct { literal_integer: LiteralInteger } = null,
+        iteration_multiple: ?struct { literal_integer: LiteralInteger } = null,
+        peel_count: ?struct { literal_integer: LiteralInteger } = null,
+        partial_count: ?struct { literal_integer: LiteralInteger } = null,
         _reserved_bit_9: bool = false,
         _reserved_bit_10: bool = false,
         _reserved_bit_11: bool = false,
@@ -3413,16 +3711,16 @@ pub const LoopControl = packed struct {
         _reserved_bit_13: bool = false,
         _reserved_bit_14: bool = false,
         _reserved_bit_15: bool = false,
-        InitiationIntervalINTEL: ?struct { literal_integer: LiteralInteger } = null,
-        MaxConcurrencyINTEL: ?struct { literal_integer: LiteralInteger } = null,
-        DependencyArrayINTEL: ?struct { literal_integer: LiteralInteger } = null,
-        PipelineEnableINTEL: ?struct { literal_integer: LiteralInteger } = null,
-        LoopCoalesceINTEL: ?struct { literal_integer: LiteralInteger } = null,
-        MaxInterleavingINTEL: ?struct { literal_integer: LiteralInteger } = null,
-        SpeculatedIterationsINTEL: ?struct { literal_integer: LiteralInteger } = null,
-        NoFusionINTEL: bool = false,
-        LoopCountINTEL: ?struct { literal_integer: LiteralInteger } = null,
-        MaxReinvocationDelayINTEL: ?struct { literal_integer: LiteralInteger } = null,
+        initiation_interval_intel: ?struct { literal_integer: LiteralInteger } = null,
+        max_concurrency_intel: ?struct { literal_integer: LiteralInteger } = null,
+        dependency_array_intel: ?struct { literal_integer: LiteralInteger } = null,
+        pipeline_enable_intel: ?struct { literal_integer: LiteralInteger } = null,
+        loop_coalesce_intel: ?struct { literal_integer: LiteralInteger } = null,
+        max_interleaving_intel: ?struct { literal_integer: LiteralInteger } = null,
+        speculated_iterations_intel: ?struct { literal_integer: LiteralInteger } = null,
+        no_fusion_intel: bool = false,
+        loop_count_intel: ?struct { literal_integer: LiteralInteger } = null,
+        max_reinvocation_delay_intel: ?struct { literal_integer: LiteralInteger } = null,
         _reserved_bit_26: bool = false,
         _reserved_bit_27: bool = false,
         _reserved_bit_28: bool = false,
@@ -3432,10 +3730,10 @@ pub const LoopControl = packed struct {
     };
 };
 pub const FunctionControl = packed struct {
-    Inline: bool = false,
-    DontInline: bool = false,
-    Pure: bool = false,
-    Const: bool = false,
+    @"inline": bool = false,
+    dont_inline: bool = false,
+    pure: bool = false,
+    @"const": bool = false,
     _reserved_bit_4: bool = false,
     _reserved_bit_5: bool = false,
     _reserved_bit_6: bool = false,
@@ -3448,7 +3746,7 @@ pub const FunctionControl = packed struct {
     _reserved_bit_13: bool = false,
     _reserved_bit_14: bool = false,
     _reserved_bit_15: bool = false,
-    OptNoneINTEL: bool = false,
+    opt_none_ext: bool = false,
     _reserved_bit_17: bool = false,
     _reserved_bit_18: bool = false,
     _reserved_bit_19: bool = false,
@@ -3467,21 +3765,21 @@ pub const FunctionControl = packed struct {
 };
 pub const MemorySemantics = packed struct {
     _reserved_bit_0: bool = false,
-    Acquire: bool = false,
-    Release: bool = false,
-    AcquireRelease: bool = false,
-    SequentiallyConsistent: bool = false,
+    acquire: bool = false,
+    release: bool = false,
+    acquire_release: bool = false,
+    sequentially_consistent: bool = false,
     _reserved_bit_5: bool = false,
-    UniformMemory: bool = false,
-    SubgroupMemory: bool = false,
-    WorkgroupMemory: bool = false,
-    CrossWorkgroupMemory: bool = false,
-    AtomicCounterMemory: bool = false,
-    ImageMemory: bool = false,
-    OutputMemory: bool = false,
-    MakeAvailable: bool = false,
-    MakeVisible: bool = false,
-    Volatile: bool = false,
+    uniform_memory: bool = false,
+    subgroup_memory: bool = false,
+    workgroup_memory: bool = false,
+    cross_workgroup_memory: bool = false,
+    atomic_counter_memory: bool = false,
+    image_memory: bool = false,
+    output_memory: bool = false,
+    make_available: bool = false,
+    make_visible: bool = false,
+    @"volatile": bool = false,
     _reserved_bit_16: bool = false,
     _reserved_bit_17: bool = false,
     _reserved_bit_18: bool = false,
@@ -3498,18 +3796,14 @@ pub const MemorySemantics = packed struct {
     _reserved_bit_29: bool = false,
     _reserved_bit_30: bool = false,
     _reserved_bit_31: bool = false,
-
-    pub const OutputMemoryKHR: MemorySemantics = .{ .OutputMemory = true };
-    pub const MakeAvailableKHR: MemorySemantics = .{ .MakeAvailable = true };
-    pub const MakeVisibleKHR: MemorySemantics = .{ .MakeVisible = true };
 };
 pub const MemoryAccess = packed struct {
-    Volatile: bool = false,
-    Aligned: bool = false,
-    Nontemporal: bool = false,
-    MakePointerAvailable: bool = false,
-    MakePointerVisible: bool = false,
-    NonPrivatePointer: bool = false,
+    @"volatile": bool = false,
+    aligned: bool = false,
+    nontemporal: bool = false,
+    make_pointer_available: bool = false,
+    make_pointer_visible: bool = false,
+    non_private_pointer: bool = false,
     _reserved_bit_6: bool = false,
     _reserved_bit_7: bool = false,
     _reserved_bit_8: bool = false,
@@ -3520,8 +3814,8 @@ pub const MemoryAccess = packed struct {
     _reserved_bit_13: bool = false,
     _reserved_bit_14: bool = false,
     _reserved_bit_15: bool = false,
-    AliasScopeINTELMask: bool = false,
-    NoAliasINTELMask: bool = false,
+    alias_scope_intel_mask: bool = false,
+    no_alias_intel_mask: bool = false,
     _reserved_bit_18: bool = false,
     _reserved_bit_19: bool = false,
     _reserved_bit_20: bool = false,
@@ -3537,17 +3831,13 @@ pub const MemoryAccess = packed struct {
     _reserved_bit_30: bool = false,
     _reserved_bit_31: bool = false,
 
-    pub const MakePointerAvailableKHR: MemoryAccess = .{ .MakePointerAvailable = true };
-    pub const MakePointerVisibleKHR: MemoryAccess = .{ .MakePointerVisible = true };
-    pub const NonPrivatePointerKHR: MemoryAccess = .{ .NonPrivatePointer = true };
-
     pub const Extended = struct {
-        Volatile: bool = false,
-        Aligned: ?struct { literal_integer: LiteralInteger } = null,
-        Nontemporal: bool = false,
-        MakePointerAvailable: ?struct { id_scope: IdScope } = null,
-        MakePointerVisible: ?struct { id_scope: IdScope } = null,
-        NonPrivatePointer: bool = false,
+        @"volatile": bool = false,
+        aligned: ?struct { literal_integer: LiteralInteger } = null,
+        nontemporal: bool = false,
+        make_pointer_available: ?struct { id_scope: Id } = null,
+        make_pointer_visible: ?struct { id_scope: Id } = null,
+        non_private_pointer: bool = false,
         _reserved_bit_6: bool = false,
         _reserved_bit_7: bool = false,
         _reserved_bit_8: bool = false,
@@ -3558,8 +3848,8 @@ pub const MemoryAccess = packed struct {
         _reserved_bit_13: bool = false,
         _reserved_bit_14: bool = false,
         _reserved_bit_15: bool = false,
-        AliasScopeINTELMask: ?struct { id_ref: IdRef } = null,
-        NoAliasINTELMask: ?struct { id_ref: IdRef } = null,
+        alias_scope_intel_mask: ?struct { id_ref: Id } = null,
+        no_alias_intel_mask: ?struct { id_ref: Id } = null,
         _reserved_bit_18: bool = false,
         _reserved_bit_19: bool = false,
         _reserved_bit_20: bool = false,
@@ -3577,7 +3867,7 @@ pub const MemoryAccess = packed struct {
     };
 };
 pub const KernelProfilingInfo = packed struct {
-    CmdExecTime: bool = false,
+    cmd_exec_time: bool = false,
     _reserved_bit_1: bool = false,
     _reserved_bit_2: bool = false,
     _reserved_bit_3: bool = false,
@@ -3611,17 +3901,17 @@ pub const KernelProfilingInfo = packed struct {
     _reserved_bit_31: bool = false,
 };
 pub const RayFlags = packed struct {
-    OpaqueKHR: bool = false,
-    NoOpaqueKHR: bool = false,
-    TerminateOnFirstHitKHR: bool = false,
-    SkipClosestHitShaderKHR: bool = false,
-    CullBackFacingTrianglesKHR: bool = false,
-    CullFrontFacingTrianglesKHR: bool = false,
-    CullOpaqueKHR: bool = false,
-    CullNoOpaqueKHR: bool = false,
-    SkipTrianglesKHR: bool = false,
-    SkipAABBsKHR: bool = false,
-    ForceOpacityMicromap2StateEXT: bool = false,
+    opaque_khr: bool = false,
+    no_opaque_khr: bool = false,
+    terminate_on_first_hit_khr: bool = false,
+    skip_closest_hit_shader_khr: bool = false,
+    cull_back_facing_triangles_khr: bool = false,
+    cull_front_facing_triangles_khr: bool = false,
+    cull_opaque_khr: bool = false,
+    cull_no_opaque_khr: bool = false,
+    skip_triangles_khr: bool = false,
+    skip_aab_bs_khr: bool = false,
+    force_opacity_micromap2state_ext: bool = false,
     _reserved_bit_11: bool = false,
     _reserved_bit_12: bool = false,
     _reserved_bit_13: bool = false,
@@ -3645,10 +3935,10 @@ pub const RayFlags = packed struct {
     _reserved_bit_31: bool = false,
 };
 pub const FragmentShadingRate = packed struct {
-    Vertical2Pixels: bool = false,
-    Vertical4Pixels: bool = false,
-    Horizontal2Pixels: bool = false,
-    Horizontal4Pixels: bool = false,
+    vertical2pixels: bool = false,
+    vertical4pixels: bool = false,
+    horizontal2pixels: bool = false,
+    horizontal4pixels: bool = false,
     _reserved_bit_4: bool = false,
     _reserved_bit_5: bool = false,
     _reserved_bit_6: bool = false,
@@ -3679,8 +3969,8 @@ pub const FragmentShadingRate = packed struct {
     _reserved_bit_31: bool = false,
 };
 pub const RawAccessChainOperands = packed struct {
-    RobustnessPerComponentNV: bool = false,
-    RobustnessPerElementNV: bool = false,
+    robustness_per_component_nv: bool = false,
+    robustness_per_element_nv: bool = false,
     _reserved_bit_2: bool = false,
     _reserved_bit_3: bool = false,
     _reserved_bit_4: bool = false,
@@ -3713,1199 +4003,1187 @@ pub const RawAccessChainOperands = packed struct {
     _reserved_bit_31: bool = false,
 };
 pub const SourceLanguage = enum(u32) {
-    Unknown = 0,
-    ESSL = 1,
-    GLSL = 2,
-    OpenCL_C = 3,
-    OpenCL_CPP = 4,
-    HLSL = 5,
-    CPP_for_OpenCL = 6,
-    SYCL = 7,
-    HERO_C = 8,
-    NZSL = 9,
-    WGSL = 10,
-    Slang = 11,
-    Zig = 12,
+    unknown = 0,
+    essl = 1,
+    glsl = 2,
+    open_cl_c = 3,
+    open_cl_cpp = 4,
+    hlsl = 5,
+    cpp_for_open_cl = 6,
+    sycl = 7,
+    hero_c = 8,
+    nzsl = 9,
+    wgsl = 10,
+    slang = 11,
+    zig = 12,
+    rust = 13,
 };
 pub const ExecutionModel = enum(u32) {
-    Vertex = 0,
-    TessellationControl = 1,
-    TessellationEvaluation = 2,
-    Geometry = 3,
-    Fragment = 4,
-    GLCompute = 5,
-    Kernel = 6,
-    TaskNV = 5267,
-    MeshNV = 5268,
-    RayGenerationKHR = 5313,
-    IntersectionKHR = 5314,
-    AnyHitKHR = 5315,
-    ClosestHitKHR = 5316,
-    MissKHR = 5317,
-    CallableKHR = 5318,
-    TaskEXT = 5364,
-    MeshEXT = 5365,
-
-    pub const RayGenerationNV = ExecutionModel.RayGenerationKHR;
-    pub const IntersectionNV = ExecutionModel.IntersectionKHR;
-    pub const AnyHitNV = ExecutionModel.AnyHitKHR;
-    pub const ClosestHitNV = ExecutionModel.ClosestHitKHR;
-    pub const MissNV = ExecutionModel.MissKHR;
-    pub const CallableNV = ExecutionModel.CallableKHR;
+    vertex = 0,
+    tessellation_control = 1,
+    tessellation_evaluation = 2,
+    geometry = 3,
+    fragment = 4,
+    gl_compute = 5,
+    kernel = 6,
+    task_nv = 5267,
+    mesh_nv = 5268,
+    ray_generation_khr = 5313,
+    intersection_khr = 5314,
+    any_hit_khr = 5315,
+    closest_hit_khr = 5316,
+    miss_khr = 5317,
+    callable_khr = 5318,
+    task_ext = 5364,
+    mesh_ext = 5365,
 };
 pub const AddressingModel = enum(u32) {
-    Logical = 0,
-    Physical32 = 1,
-    Physical64 = 2,
-    PhysicalStorageBuffer64 = 5348,
-
-    pub const PhysicalStorageBuffer64EXT = AddressingModel.PhysicalStorageBuffer64;
+    logical = 0,
+    physical32 = 1,
+    physical64 = 2,
+    physical_storage_buffer64 = 5348,
 };
 pub const MemoryModel = enum(u32) {
-    Simple = 0,
-    GLSL450 = 1,
-    OpenCL = 2,
-    Vulkan = 3,
-
-    pub const VulkanKHR = MemoryModel.Vulkan;
+    simple = 0,
+    glsl450 = 1,
+    open_cl = 2,
+    vulkan = 3,
 };
 pub const ExecutionMode = enum(u32) {
-    Invocations = 0,
-    SpacingEqual = 1,
-    SpacingFractionalEven = 2,
-    SpacingFractionalOdd = 3,
-    VertexOrderCw = 4,
-    VertexOrderCcw = 5,
-    PixelCenterInteger = 6,
-    OriginUpperLeft = 7,
-    OriginLowerLeft = 8,
-    EarlyFragmentTests = 9,
-    PointMode = 10,
-    Xfb = 11,
-    DepthReplacing = 12,
-    DepthGreater = 14,
-    DepthLess = 15,
-    DepthUnchanged = 16,
-    LocalSize = 17,
-    LocalSizeHint = 18,
-    InputPoints = 19,
-    InputLines = 20,
-    InputLinesAdjacency = 21,
-    Triangles = 22,
-    InputTrianglesAdjacency = 23,
-    Quads = 24,
-    Isolines = 25,
-    OutputVertices = 26,
-    OutputPoints = 27,
-    OutputLineStrip = 28,
-    OutputTriangleStrip = 29,
-    VecTypeHint = 30,
-    ContractionOff = 31,
-    Initializer = 33,
-    Finalizer = 34,
-    SubgroupSize = 35,
-    SubgroupsPerWorkgroup = 36,
-    SubgroupsPerWorkgroupId = 37,
-    LocalSizeId = 38,
-    LocalSizeHintId = 39,
-    NonCoherentColorAttachmentReadEXT = 4169,
-    NonCoherentDepthAttachmentReadEXT = 4170,
-    NonCoherentStencilAttachmentReadEXT = 4171,
-    SubgroupUniformControlFlowKHR = 4421,
-    PostDepthCoverage = 4446,
-    DenormPreserve = 4459,
-    DenormFlushToZero = 4460,
-    SignedZeroInfNanPreserve = 4461,
-    RoundingModeRTE = 4462,
-    RoundingModeRTZ = 4463,
-    EarlyAndLateFragmentTestsAMD = 5017,
-    StencilRefReplacingEXT = 5027,
-    CoalescingAMDX = 5069,
-    MaxNodeRecursionAMDX = 5071,
-    StaticNumWorkgroupsAMDX = 5072,
-    ShaderIndexAMDX = 5073,
-    MaxNumWorkgroupsAMDX = 5077,
-    StencilRefUnchangedFrontAMD = 5079,
-    StencilRefGreaterFrontAMD = 5080,
-    StencilRefLessFrontAMD = 5081,
-    StencilRefUnchangedBackAMD = 5082,
-    StencilRefGreaterBackAMD = 5083,
-    StencilRefLessBackAMD = 5084,
-    QuadDerivativesKHR = 5088,
-    RequireFullQuadsKHR = 5089,
-    OutputLinesEXT = 5269,
-    OutputPrimitivesEXT = 5270,
-    DerivativeGroupQuadsNV = 5289,
-    DerivativeGroupLinearNV = 5290,
-    OutputTrianglesEXT = 5298,
-    PixelInterlockOrderedEXT = 5366,
-    PixelInterlockUnorderedEXT = 5367,
-    SampleInterlockOrderedEXT = 5368,
-    SampleInterlockUnorderedEXT = 5369,
-    ShadingRateInterlockOrderedEXT = 5370,
-    ShadingRateInterlockUnorderedEXT = 5371,
-    SharedLocalMemorySizeINTEL = 5618,
-    RoundingModeRTPINTEL = 5620,
-    RoundingModeRTNINTEL = 5621,
-    FloatingPointModeALTINTEL = 5622,
-    FloatingPointModeIEEEINTEL = 5623,
-    MaxWorkgroupSizeINTEL = 5893,
-    MaxWorkDimINTEL = 5894,
-    NoGlobalOffsetINTEL = 5895,
-    NumSIMDWorkitemsINTEL = 5896,
-    SchedulerTargetFmaxMhzINTEL = 5903,
-    MaximallyReconvergesKHR = 6023,
-    FPFastMathDefault = 6028,
-    StreamingInterfaceINTEL = 6154,
-    RegisterMapInterfaceINTEL = 6160,
-    NamedBarrierCountINTEL = 6417,
-    MaximumRegistersINTEL = 6461,
-    MaximumRegistersIdINTEL = 6462,
-    NamedMaximumRegistersINTEL = 6463,
-
-    pub const OutputLinesNV = ExecutionMode.OutputLinesEXT;
-    pub const OutputPrimitivesNV = ExecutionMode.OutputPrimitivesEXT;
-    pub const OutputTrianglesNV = ExecutionMode.OutputTrianglesEXT;
+    invocations = 0,
+    spacing_equal = 1,
+    spacing_fractional_even = 2,
+    spacing_fractional_odd = 3,
+    vertex_order_cw = 4,
+    vertex_order_ccw = 5,
+    pixel_center_integer = 6,
+    origin_upper_left = 7,
+    origin_lower_left = 8,
+    early_fragment_tests = 9,
+    point_mode = 10,
+    xfb = 11,
+    depth_replacing = 12,
+    depth_greater = 14,
+    depth_less = 15,
+    depth_unchanged = 16,
+    local_size = 17,
+    local_size_hint = 18,
+    input_points = 19,
+    input_lines = 20,
+    input_lines_adjacency = 21,
+    triangles = 22,
+    input_triangles_adjacency = 23,
+    quads = 24,
+    isolines = 25,
+    output_vertices = 26,
+    output_points = 27,
+    output_line_strip = 28,
+    output_triangle_strip = 29,
+    vec_type_hint = 30,
+    contraction_off = 31,
+    initializer = 33,
+    finalizer = 34,
+    subgroup_size = 35,
+    subgroups_per_workgroup = 36,
+    subgroups_per_workgroup_id = 37,
+    local_size_id = 38,
+    local_size_hint_id = 39,
+    non_coherent_color_attachment_read_ext = 4169,
+    non_coherent_depth_attachment_read_ext = 4170,
+    non_coherent_stencil_attachment_read_ext = 4171,
+    subgroup_uniform_control_flow_khr = 4421,
+    post_depth_coverage = 4446,
+    denorm_preserve = 4459,
+    denorm_flush_to_zero = 4460,
+    signed_zero_inf_nan_preserve = 4461,
+    rounding_mode_rte = 4462,
+    rounding_mode_rtz = 4463,
+    non_coherent_tile_attachment_read_qcom = 4489,
+    tile_shading_rate_qcom = 4490,
+    early_and_late_fragment_tests_amd = 5017,
+    stencil_ref_replacing_ext = 5027,
+    coalescing_amdx = 5069,
+    is_api_entry_amdx = 5070,
+    max_node_recursion_amdx = 5071,
+    static_num_workgroups_amdx = 5072,
+    shader_index_amdx = 5073,
+    max_num_workgroups_amdx = 5077,
+    stencil_ref_unchanged_front_amd = 5079,
+    stencil_ref_greater_front_amd = 5080,
+    stencil_ref_less_front_amd = 5081,
+    stencil_ref_unchanged_back_amd = 5082,
+    stencil_ref_greater_back_amd = 5083,
+    stencil_ref_less_back_amd = 5084,
+    quad_derivatives_khr = 5088,
+    require_full_quads_khr = 5089,
+    shares_input_with_amdx = 5102,
+    output_lines_ext = 5269,
+    output_primitives_ext = 5270,
+    derivative_group_quads_khr = 5289,
+    derivative_group_linear_khr = 5290,
+    output_triangles_ext = 5298,
+    pixel_interlock_ordered_ext = 5366,
+    pixel_interlock_unordered_ext = 5367,
+    sample_interlock_ordered_ext = 5368,
+    sample_interlock_unordered_ext = 5369,
+    shading_rate_interlock_ordered_ext = 5370,
+    shading_rate_interlock_unordered_ext = 5371,
+    shared_local_memory_size_intel = 5618,
+    rounding_mode_rtpintel = 5620,
+    rounding_mode_rtnintel = 5621,
+    floating_point_mode_altintel = 5622,
+    floating_point_mode_ieeeintel = 5623,
+    max_workgroup_size_intel = 5893,
+    max_work_dim_intel = 5894,
+    no_global_offset_intel = 5895,
+    num_simd_workitems_intel = 5896,
+    scheduler_target_fmax_mhz_intel = 5903,
+    maximally_reconverges_khr = 6023,
+    fp_fast_math_default = 6028,
+    streaming_interface_intel = 6154,
+    register_map_interface_intel = 6160,
+    named_barrier_count_intel = 6417,
+    maximum_registers_intel = 6461,
+    maximum_registers_id_intel = 6462,
+    named_maximum_registers_intel = 6463,
 
     pub const Extended = union(ExecutionMode) {
-        Invocations: struct { literal_integer: LiteralInteger },
-        SpacingEqual,
-        SpacingFractionalEven,
-        SpacingFractionalOdd,
-        VertexOrderCw,
-        VertexOrderCcw,
-        PixelCenterInteger,
-        OriginUpperLeft,
-        OriginLowerLeft,
-        EarlyFragmentTests,
-        PointMode,
-        Xfb,
-        DepthReplacing,
-        DepthGreater,
-        DepthLess,
-        DepthUnchanged,
-        LocalSize: struct { x_size: LiteralInteger, y_size: LiteralInteger, z_size: LiteralInteger },
-        LocalSizeHint: struct { x_size: LiteralInteger, y_size: LiteralInteger, z_size: LiteralInteger },
-        InputPoints,
-        InputLines,
-        InputLinesAdjacency,
-        Triangles,
-        InputTrianglesAdjacency,
-        Quads,
-        Isolines,
-        OutputVertices: struct { vertex_count: LiteralInteger },
-        OutputPoints,
-        OutputLineStrip,
-        OutputTriangleStrip,
-        VecTypeHint: struct { vector_type: LiteralInteger },
-        ContractionOff,
-        Initializer,
-        Finalizer,
-        SubgroupSize: struct { subgroup_size: LiteralInteger },
-        SubgroupsPerWorkgroup: struct { subgroups_per_workgroup: LiteralInteger },
-        SubgroupsPerWorkgroupId: struct { subgroups_per_workgroup: IdRef },
-        LocalSizeId: struct { x_size: IdRef, y_size: IdRef, z_size: IdRef },
-        LocalSizeHintId: struct { x_size_hint: IdRef, y_size_hint: IdRef, z_size_hint: IdRef },
-        NonCoherentColorAttachmentReadEXT,
-        NonCoherentDepthAttachmentReadEXT,
-        NonCoherentStencilAttachmentReadEXT,
-        SubgroupUniformControlFlowKHR,
-        PostDepthCoverage,
-        DenormPreserve: struct { target_width: LiteralInteger },
-        DenormFlushToZero: struct { target_width: LiteralInteger },
-        SignedZeroInfNanPreserve: struct { target_width: LiteralInteger },
-        RoundingModeRTE: struct { target_width: LiteralInteger },
-        RoundingModeRTZ: struct { target_width: LiteralInteger },
-        EarlyAndLateFragmentTestsAMD,
-        StencilRefReplacingEXT,
-        CoalescingAMDX,
-        MaxNodeRecursionAMDX: struct { number_of_recursions: IdRef },
-        StaticNumWorkgroupsAMDX: struct { x_size: IdRef, y_size: IdRef, z_size: IdRef },
-        ShaderIndexAMDX: struct { shader_index: IdRef },
-        MaxNumWorkgroupsAMDX: struct { x_size: IdRef, y_size: IdRef, z_size: IdRef },
-        StencilRefUnchangedFrontAMD,
-        StencilRefGreaterFrontAMD,
-        StencilRefLessFrontAMD,
-        StencilRefUnchangedBackAMD,
-        StencilRefGreaterBackAMD,
-        StencilRefLessBackAMD,
-        QuadDerivativesKHR,
-        RequireFullQuadsKHR,
-        OutputLinesEXT,
-        OutputPrimitivesEXT: struct { primitive_count: LiteralInteger },
-        DerivativeGroupQuadsNV,
-        DerivativeGroupLinearNV,
-        OutputTrianglesEXT,
-        PixelInterlockOrderedEXT,
-        PixelInterlockUnorderedEXT,
-        SampleInterlockOrderedEXT,
-        SampleInterlockUnorderedEXT,
-        ShadingRateInterlockOrderedEXT,
-        ShadingRateInterlockUnorderedEXT,
-        SharedLocalMemorySizeINTEL: struct { size: LiteralInteger },
-        RoundingModeRTPINTEL: struct { target_width: LiteralInteger },
-        RoundingModeRTNINTEL: struct { target_width: LiteralInteger },
-        FloatingPointModeALTINTEL: struct { target_width: LiteralInteger },
-        FloatingPointModeIEEEINTEL: struct { target_width: LiteralInteger },
-        MaxWorkgroupSizeINTEL: struct { literal_integer_0: LiteralInteger, literal_integer_1: LiteralInteger, literal_integer_2: LiteralInteger },
-        MaxWorkDimINTEL: struct { literal_integer: LiteralInteger },
-        NoGlobalOffsetINTEL,
-        NumSIMDWorkitemsINTEL: struct { literal_integer: LiteralInteger },
-        SchedulerTargetFmaxMhzINTEL: struct { literal_integer: LiteralInteger },
-        MaximallyReconvergesKHR,
-        FPFastMathDefault: struct { target_type: IdRef, id_ref_1: IdRef },
-        StreamingInterfaceINTEL: struct { stallfreereturn: LiteralInteger },
-        RegisterMapInterfaceINTEL: struct { waitfordonewrite: LiteralInteger },
-        NamedBarrierCountINTEL: struct { barrier_count: LiteralInteger },
-        MaximumRegistersINTEL: struct { number_of_registers: LiteralInteger },
-        MaximumRegistersIdINTEL: struct { number_of_registers: IdRef },
-        NamedMaximumRegistersINTEL: struct { named_maximum_number_of_registers: NamedMaximumNumberOfRegisters },
+        invocations: struct { literal_integer: LiteralInteger },
+        spacing_equal,
+        spacing_fractional_even,
+        spacing_fractional_odd,
+        vertex_order_cw,
+        vertex_order_ccw,
+        pixel_center_integer,
+        origin_upper_left,
+        origin_lower_left,
+        early_fragment_tests,
+        point_mode,
+        xfb,
+        depth_replacing,
+        depth_greater,
+        depth_less,
+        depth_unchanged,
+        local_size: struct { x_size: LiteralInteger, y_size: LiteralInteger, z_size: LiteralInteger },
+        local_size_hint: struct { x_size: LiteralInteger, y_size: LiteralInteger, z_size: LiteralInteger },
+        input_points,
+        input_lines,
+        input_lines_adjacency,
+        triangles,
+        input_triangles_adjacency,
+        quads,
+        isolines,
+        output_vertices: struct { vertex_count: LiteralInteger },
+        output_points,
+        output_line_strip,
+        output_triangle_strip,
+        vec_type_hint: struct { vector_type: LiteralInteger },
+        contraction_off,
+        initializer,
+        finalizer,
+        subgroup_size: struct { subgroup_size: LiteralInteger },
+        subgroups_per_workgroup: struct { subgroups_per_workgroup: LiteralInteger },
+        subgroups_per_workgroup_id: struct { subgroups_per_workgroup: Id },
+        local_size_id: struct { x_size: Id, y_size: Id, z_size: Id },
+        local_size_hint_id: struct { x_size_hint: Id, y_size_hint: Id, z_size_hint: Id },
+        non_coherent_color_attachment_read_ext,
+        non_coherent_depth_attachment_read_ext,
+        non_coherent_stencil_attachment_read_ext,
+        subgroup_uniform_control_flow_khr,
+        post_depth_coverage,
+        denorm_preserve: struct { target_width: LiteralInteger },
+        denorm_flush_to_zero: struct { target_width: LiteralInteger },
+        signed_zero_inf_nan_preserve: struct { target_width: LiteralInteger },
+        rounding_mode_rte: struct { target_width: LiteralInteger },
+        rounding_mode_rtz: struct { target_width: LiteralInteger },
+        non_coherent_tile_attachment_read_qcom,
+        tile_shading_rate_qcom: struct { x_rate: LiteralInteger, y_rate: LiteralInteger, z_rate: LiteralInteger },
+        early_and_late_fragment_tests_amd,
+        stencil_ref_replacing_ext,
+        coalescing_amdx,
+        is_api_entry_amdx: struct { is_entry: Id },
+        max_node_recursion_amdx: struct { number_of_recursions: Id },
+        static_num_workgroups_amdx: struct { x_size: Id, y_size: Id, z_size: Id },
+        shader_index_amdx: struct { shader_index: Id },
+        max_num_workgroups_amdx: struct { x_size: Id, y_size: Id, z_size: Id },
+        stencil_ref_unchanged_front_amd,
+        stencil_ref_greater_front_amd,
+        stencil_ref_less_front_amd,
+        stencil_ref_unchanged_back_amd,
+        stencil_ref_greater_back_amd,
+        stencil_ref_less_back_amd,
+        quad_derivatives_khr,
+        require_full_quads_khr,
+        shares_input_with_amdx: struct { node_name: Id, shader_index: Id },
+        output_lines_ext,
+        output_primitives_ext: struct { primitive_count: LiteralInteger },
+        derivative_group_quads_khr,
+        derivative_group_linear_khr,
+        output_triangles_ext,
+        pixel_interlock_ordered_ext,
+        pixel_interlock_unordered_ext,
+        sample_interlock_ordered_ext,
+        sample_interlock_unordered_ext,
+        shading_rate_interlock_ordered_ext,
+        shading_rate_interlock_unordered_ext,
+        shared_local_memory_size_intel: struct { size: LiteralInteger },
+        rounding_mode_rtpintel: struct { target_width: LiteralInteger },
+        rounding_mode_rtnintel: struct { target_width: LiteralInteger },
+        floating_point_mode_altintel: struct { target_width: LiteralInteger },
+        floating_point_mode_ieeeintel: struct { target_width: LiteralInteger },
+        max_workgroup_size_intel: struct { literal_integer_0: LiteralInteger, literal_integer_1: LiteralInteger, literal_integer_2: LiteralInteger },
+        max_work_dim_intel: struct { literal_integer: LiteralInteger },
+        no_global_offset_intel,
+        num_simd_workitems_intel: struct { literal_integer: LiteralInteger },
+        scheduler_target_fmax_mhz_intel: struct { literal_integer: LiteralInteger },
+        maximally_reconverges_khr,
+        fp_fast_math_default: struct { target_type: Id, id_ref_1: Id },
+        streaming_interface_intel: struct { stall_free_return: LiteralInteger },
+        register_map_interface_intel: struct { wait_for_done_write: LiteralInteger },
+        named_barrier_count_intel: struct { barrier_count: LiteralInteger },
+        maximum_registers_intel: struct { number_of_registers: LiteralInteger },
+        maximum_registers_id_intel: struct { number_of_registers: Id },
+        named_maximum_registers_intel: struct { named_maximum_number_of_registers: NamedMaximumNumberOfRegisters },
     };
 };
 pub const StorageClass = enum(u32) {
-    UniformConstant = 0,
-    Input = 1,
-    Uniform = 2,
-    Output = 3,
-    Workgroup = 4,
-    CrossWorkgroup = 5,
-    Private = 6,
-    Function = 7,
-    Generic = 8,
-    PushConstant = 9,
-    AtomicCounter = 10,
-    Image = 11,
-    StorageBuffer = 12,
-    TileImageEXT = 4172,
-    NodePayloadAMDX = 5068,
-    NodeOutputPayloadAMDX = 5076,
-    CallableDataKHR = 5328,
-    IncomingCallableDataKHR = 5329,
-    RayPayloadKHR = 5338,
-    HitAttributeKHR = 5339,
-    IncomingRayPayloadKHR = 5342,
-    ShaderRecordBufferKHR = 5343,
-    PhysicalStorageBuffer = 5349,
-    HitObjectAttributeNV = 5385,
-    TaskPayloadWorkgroupEXT = 5402,
-    CodeSectionINTEL = 5605,
-    DeviceOnlyINTEL = 5936,
-    HostOnlyINTEL = 5937,
-
-    pub const CallableDataNV = StorageClass.CallableDataKHR;
-    pub const IncomingCallableDataNV = StorageClass.IncomingCallableDataKHR;
-    pub const RayPayloadNV = StorageClass.RayPayloadKHR;
-    pub const HitAttributeNV = StorageClass.HitAttributeKHR;
-    pub const IncomingRayPayloadNV = StorageClass.IncomingRayPayloadKHR;
-    pub const ShaderRecordBufferNV = StorageClass.ShaderRecordBufferKHR;
-    pub const PhysicalStorageBufferEXT = StorageClass.PhysicalStorageBuffer;
+    uniform_constant = 0,
+    input = 1,
+    uniform = 2,
+    output = 3,
+    workgroup = 4,
+    cross_workgroup = 5,
+    private = 6,
+    function = 7,
+    generic = 8,
+    push_constant = 9,
+    atomic_counter = 10,
+    image = 11,
+    storage_buffer = 12,
+    tile_image_ext = 4172,
+    tile_attachment_qcom = 4491,
+    node_payload_amdx = 5068,
+    callable_data_khr = 5328,
+    incoming_callable_data_khr = 5329,
+    ray_payload_khr = 5338,
+    hit_attribute_khr = 5339,
+    incoming_ray_payload_khr = 5342,
+    shader_record_buffer_khr = 5343,
+    physical_storage_buffer = 5349,
+    hit_object_attribute_nv = 5385,
+    task_payload_workgroup_ext = 5402,
+    code_section_intel = 5605,
+    device_only_intel = 5936,
+    host_only_intel = 5937,
 };
 pub const Dim = enum(u32) {
-    @"1D" = 0,
-    @"2D" = 1,
-    @"3D" = 2,
-    Cube = 3,
-    Rect = 4,
-    Buffer = 5,
-    SubpassData = 6,
-    TileImageDataEXT = 4173,
+    @"1d" = 0,
+    @"2d" = 1,
+    @"3d" = 2,
+    cube = 3,
+    rect = 4,
+    buffer = 5,
+    subpass_data = 6,
+    tile_image_data_ext = 4173,
 };
 pub const SamplerAddressingMode = enum(u32) {
-    None = 0,
-    ClampToEdge = 1,
-    Clamp = 2,
-    Repeat = 3,
-    RepeatMirrored = 4,
+    none = 0,
+    clamp_to_edge = 1,
+    clamp = 2,
+    repeat = 3,
+    repeat_mirrored = 4,
 };
 pub const SamplerFilterMode = enum(u32) {
-    Nearest = 0,
-    Linear = 1,
+    nearest = 0,
+    linear = 1,
 };
 pub const ImageFormat = enum(u32) {
-    Unknown = 0,
-    Rgba32f = 1,
-    Rgba16f = 2,
-    R32f = 3,
-    Rgba8 = 4,
-    Rgba8Snorm = 5,
-    Rg32f = 6,
-    Rg16f = 7,
-    R11fG11fB10f = 8,
-    R16f = 9,
-    Rgba16 = 10,
-    Rgb10A2 = 11,
-    Rg16 = 12,
-    Rg8 = 13,
-    R16 = 14,
-    R8 = 15,
-    Rgba16Snorm = 16,
-    Rg16Snorm = 17,
-    Rg8Snorm = 18,
-    R16Snorm = 19,
-    R8Snorm = 20,
-    Rgba32i = 21,
-    Rgba16i = 22,
-    Rgba8i = 23,
-    R32i = 24,
-    Rg32i = 25,
-    Rg16i = 26,
-    Rg8i = 27,
-    R16i = 28,
-    R8i = 29,
-    Rgba32ui = 30,
-    Rgba16ui = 31,
-    Rgba8ui = 32,
-    R32ui = 33,
-    Rgb10a2ui = 34,
-    Rg32ui = 35,
-    Rg16ui = 36,
-    Rg8ui = 37,
-    R16ui = 38,
-    R8ui = 39,
-    R64ui = 40,
-    R64i = 41,
+    unknown = 0,
+    rgba32f = 1,
+    rgba16f = 2,
+    r32f = 3,
+    rgba8 = 4,
+    rgba8snorm = 5,
+    rg32f = 6,
+    rg16f = 7,
+    r11f_g11f_b10f = 8,
+    r16f = 9,
+    rgba16 = 10,
+    rgb10a2 = 11,
+    rg16 = 12,
+    rg8 = 13,
+    r16 = 14,
+    r8 = 15,
+    rgba16snorm = 16,
+    rg16snorm = 17,
+    rg8snorm = 18,
+    r16snorm = 19,
+    r8snorm = 20,
+    rgba32i = 21,
+    rgba16i = 22,
+    rgba8i = 23,
+    r32i = 24,
+    rg32i = 25,
+    rg16i = 26,
+    rg8i = 27,
+    r16i = 28,
+    r8i = 29,
+    rgba32ui = 30,
+    rgba16ui = 31,
+    rgba8ui = 32,
+    r32ui = 33,
+    rgb10a2ui = 34,
+    rg32ui = 35,
+    rg16ui = 36,
+    rg8ui = 37,
+    r16ui = 38,
+    r8ui = 39,
+    r64ui = 40,
+    r64i = 41,
 };
 pub const ImageChannelOrder = enum(u32) {
-    R = 0,
-    A = 1,
-    RG = 2,
-    RA = 3,
-    RGB = 4,
-    RGBA = 5,
-    BGRA = 6,
-    ARGB = 7,
-    Intensity = 8,
-    Luminance = 9,
-    Rx = 10,
-    RGx = 11,
-    RGBx = 12,
-    Depth = 13,
-    DepthStencil = 14,
-    sRGB = 15,
-    sRGBx = 16,
-    sRGBA = 17,
-    sBGRA = 18,
-    ABGR = 19,
+    r = 0,
+    a = 1,
+    rg = 2,
+    ra = 3,
+    rgb = 4,
+    rgba = 5,
+    bgra = 6,
+    argb = 7,
+    intensity = 8,
+    luminance = 9,
+    rx = 10,
+    r_gx = 11,
+    rg_bx = 12,
+    depth = 13,
+    depth_stencil = 14,
+    s_rgb = 15,
+    s_rg_bx = 16,
+    s_rgba = 17,
+    s_bgra = 18,
+    abgr = 19,
 };
 pub const ImageChannelDataType = enum(u32) {
-    SnormInt8 = 0,
-    SnormInt16 = 1,
-    UnormInt8 = 2,
-    UnormInt16 = 3,
-    UnormShort565 = 4,
-    UnormShort555 = 5,
-    UnormInt101010 = 6,
-    SignedInt8 = 7,
-    SignedInt16 = 8,
-    SignedInt32 = 9,
-    UnsignedInt8 = 10,
-    UnsignedInt16 = 11,
-    UnsignedInt32 = 12,
-    HalfFloat = 13,
-    Float = 14,
-    UnormInt24 = 15,
-    UnormInt101010_2 = 16,
-    UnsignedIntRaw10EXT = 19,
-    UnsignedIntRaw12EXT = 20,
+    snorm_int8 = 0,
+    snorm_int16 = 1,
+    unorm_int8 = 2,
+    unorm_int16 = 3,
+    unorm_short565 = 4,
+    unorm_short555 = 5,
+    unorm_int101010 = 6,
+    signed_int8 = 7,
+    signed_int16 = 8,
+    signed_int32 = 9,
+    unsigned_int8 = 10,
+    unsigned_int16 = 11,
+    unsigned_int32 = 12,
+    half_float = 13,
+    float = 14,
+    unorm_int24 = 15,
+    unorm_int101010_2 = 16,
+    unorm_int10x6ext = 17,
+    unsigned_int_raw10ext = 19,
+    unsigned_int_raw12ext = 20,
+    unorm_int2_101010ext = 21,
+    unsigned_int10x6ext = 22,
+    unsigned_int12x4ext = 23,
+    unsigned_int14x2ext = 24,
+    unorm_int12x4ext = 25,
+    unorm_int14x2ext = 26,
 };
 pub const FPRoundingMode = enum(u32) {
-    RTE = 0,
-    RTZ = 1,
-    RTP = 2,
-    RTN = 3,
+    rte = 0,
+    rtz = 1,
+    rtp = 2,
+    rtn = 3,
 };
 pub const FPDenormMode = enum(u32) {
-    Preserve = 0,
-    FlushToZero = 1,
+    preserve = 0,
+    flush_to_zero = 1,
 };
 pub const QuantizationModes = enum(u32) {
-    TRN = 0,
-    TRN_ZERO = 1,
-    RND = 2,
-    RND_ZERO = 3,
-    RND_INF = 4,
-    RND_MIN_INF = 5,
-    RND_CONV = 6,
-    RND_CONV_ODD = 7,
+    trn = 0,
+    trn_zero = 1,
+    rnd = 2,
+    rnd_zero = 3,
+    rnd_inf = 4,
+    rnd_min_inf = 5,
+    rnd_conv = 6,
+    rnd_conv_odd = 7,
 };
 pub const FPOperationMode = enum(u32) {
-    IEEE = 0,
-    ALT = 1,
+    ieee = 0,
+    alt = 1,
 };
 pub const OverflowModes = enum(u32) {
-    WRAP = 0,
-    SAT = 1,
-    SAT_ZERO = 2,
-    SAT_SYM = 3,
+    wrap = 0,
+    sat = 1,
+    sat_zero = 2,
+    sat_sym = 3,
 };
 pub const LinkageType = enum(u32) {
-    Export = 0,
-    Import = 1,
-    LinkOnceODR = 2,
+    @"export" = 0,
+    import = 1,
+    link_once_odr = 2,
 };
 pub const AccessQualifier = enum(u32) {
-    ReadOnly = 0,
-    WriteOnly = 1,
-    ReadWrite = 2,
+    read_only = 0,
+    write_only = 1,
+    read_write = 2,
 };
 pub const HostAccessQualifier = enum(u32) {
-    NoneINTEL = 0,
-    ReadINTEL = 1,
-    WriteINTEL = 2,
-    ReadWriteINTEL = 3,
+    none_intel = 0,
+    read_intel = 1,
+    write_intel = 2,
+    read_write_intel = 3,
 };
 pub const FunctionParameterAttribute = enum(u32) {
-    Zext = 0,
-    Sext = 1,
-    ByVal = 2,
-    Sret = 3,
-    NoAlias = 4,
-    NoCapture = 5,
-    NoWrite = 6,
-    NoReadWrite = 7,
-    RuntimeAlignedINTEL = 5940,
+    zext = 0,
+    sext = 1,
+    by_val = 2,
+    sret = 3,
+    no_alias = 4,
+    no_capture = 5,
+    no_write = 6,
+    no_read_write = 7,
+    runtime_aligned_intel = 5940,
 };
 pub const Decoration = enum(u32) {
-    RelaxedPrecision = 0,
-    SpecId = 1,
-    Block = 2,
-    BufferBlock = 3,
-    RowMajor = 4,
-    ColMajor = 5,
-    ArrayStride = 6,
-    MatrixStride = 7,
-    GLSLShared = 8,
-    GLSLPacked = 9,
-    CPacked = 10,
-    BuiltIn = 11,
-    NoPerspective = 13,
-    Flat = 14,
-    Patch = 15,
-    Centroid = 16,
-    Sample = 17,
-    Invariant = 18,
-    Restrict = 19,
-    Aliased = 20,
-    Volatile = 21,
-    Constant = 22,
-    Coherent = 23,
-    NonWritable = 24,
-    NonReadable = 25,
-    Uniform = 26,
-    UniformId = 27,
-    SaturatedConversion = 28,
-    Stream = 29,
-    Location = 30,
-    Component = 31,
-    Index = 32,
-    Binding = 33,
-    DescriptorSet = 34,
-    Offset = 35,
-    XfbBuffer = 36,
-    XfbStride = 37,
-    FuncParamAttr = 38,
-    FPRoundingMode = 39,
-    FPFastMathMode = 40,
-    LinkageAttributes = 41,
-    NoContraction = 42,
-    InputAttachmentIndex = 43,
-    Alignment = 44,
-    MaxByteOffset = 45,
-    AlignmentId = 46,
-    MaxByteOffsetId = 47,
-    NoSignedWrap = 4469,
-    NoUnsignedWrap = 4470,
-    WeightTextureQCOM = 4487,
-    BlockMatchTextureQCOM = 4488,
-    BlockMatchSamplerQCOM = 4499,
-    ExplicitInterpAMD = 4999,
-    NodeSharesPayloadLimitsWithAMDX = 5019,
-    NodeMaxPayloadsAMDX = 5020,
-    TrackFinishWritingAMDX = 5078,
-    PayloadNodeNameAMDX = 5091,
-    OverrideCoverageNV = 5248,
-    PassthroughNV = 5250,
-    ViewportRelativeNV = 5252,
-    SecondaryViewportRelativeNV = 5256,
-    PerPrimitiveEXT = 5271,
-    PerViewNV = 5272,
-    PerTaskNV = 5273,
-    PerVertexKHR = 5285,
-    NonUniform = 5300,
-    RestrictPointer = 5355,
-    AliasedPointer = 5356,
-    HitObjectShaderRecordBufferNV = 5386,
-    BindlessSamplerNV = 5398,
-    BindlessImageNV = 5399,
-    BoundSamplerNV = 5400,
-    BoundImageNV = 5401,
-    SIMTCallINTEL = 5599,
-    ReferencedIndirectlyINTEL = 5602,
-    ClobberINTEL = 5607,
-    SideEffectsINTEL = 5608,
-    VectorComputeVariableINTEL = 5624,
-    FuncParamIOKindINTEL = 5625,
-    VectorComputeFunctionINTEL = 5626,
-    StackCallINTEL = 5627,
-    GlobalVariableOffsetINTEL = 5628,
-    CounterBuffer = 5634,
-    UserSemantic = 5635,
-    UserTypeGOOGLE = 5636,
-    FunctionRoundingModeINTEL = 5822,
-    FunctionDenormModeINTEL = 5823,
-    RegisterINTEL = 5825,
-    MemoryINTEL = 5826,
-    NumbanksINTEL = 5827,
-    BankwidthINTEL = 5828,
-    MaxPrivateCopiesINTEL = 5829,
-    SinglepumpINTEL = 5830,
-    DoublepumpINTEL = 5831,
-    MaxReplicatesINTEL = 5832,
-    SimpleDualPortINTEL = 5833,
-    MergeINTEL = 5834,
-    BankBitsINTEL = 5835,
-    ForcePow2DepthINTEL = 5836,
-    StridesizeINTEL = 5883,
-    WordsizeINTEL = 5884,
-    TrueDualPortINTEL = 5885,
-    BurstCoalesceINTEL = 5899,
-    CacheSizeINTEL = 5900,
-    DontStaticallyCoalesceINTEL = 5901,
-    PrefetchINTEL = 5902,
-    StallEnableINTEL = 5905,
-    FuseLoopsInFunctionINTEL = 5907,
-    MathOpDSPModeINTEL = 5909,
-    AliasScopeINTEL = 5914,
-    NoAliasINTEL = 5915,
-    InitiationIntervalINTEL = 5917,
-    MaxConcurrencyINTEL = 5918,
-    PipelineEnableINTEL = 5919,
-    BufferLocationINTEL = 5921,
-    IOPipeStorageINTEL = 5944,
-    FunctionFloatingPointModeINTEL = 6080,
-    SingleElementVectorINTEL = 6085,
-    VectorComputeCallableFunctionINTEL = 6087,
-    MediaBlockIOINTEL = 6140,
-    StallFreeINTEL = 6151,
-    FPMaxErrorDecorationINTEL = 6170,
-    LatencyControlLabelINTEL = 6172,
-    LatencyControlConstraintINTEL = 6173,
-    ConduitKernelArgumentINTEL = 6175,
-    RegisterMapKernelArgumentINTEL = 6176,
-    MMHostInterfaceAddressWidthINTEL = 6177,
-    MMHostInterfaceDataWidthINTEL = 6178,
-    MMHostInterfaceLatencyINTEL = 6179,
-    MMHostInterfaceReadWriteModeINTEL = 6180,
-    MMHostInterfaceMaxBurstINTEL = 6181,
-    MMHostInterfaceWaitRequestINTEL = 6182,
-    StableKernelArgumentINTEL = 6183,
-    HostAccessINTEL = 6188,
-    InitModeINTEL = 6190,
-    ImplementInRegisterMapINTEL = 6191,
-    CacheControlLoadINTEL = 6442,
-    CacheControlStoreINTEL = 6443,
-
-    pub const PerPrimitiveNV = Decoration.PerPrimitiveEXT;
-    pub const PerVertexNV = Decoration.PerVertexKHR;
-    pub const NonUniformEXT = Decoration.NonUniform;
-    pub const RestrictPointerEXT = Decoration.RestrictPointer;
-    pub const AliasedPointerEXT = Decoration.AliasedPointer;
-    pub const HlslCounterBufferGOOGLE = Decoration.CounterBuffer;
-    pub const HlslSemanticGOOGLE = Decoration.UserSemantic;
+    relaxed_precision = 0,
+    spec_id = 1,
+    block = 2,
+    buffer_block = 3,
+    row_major = 4,
+    col_major = 5,
+    array_stride = 6,
+    matrix_stride = 7,
+    glsl_shared = 8,
+    glsl_packed = 9,
+    c_packed = 10,
+    built_in = 11,
+    no_perspective = 13,
+    flat = 14,
+    patch = 15,
+    centroid = 16,
+    sample = 17,
+    invariant = 18,
+    restrict = 19,
+    aliased = 20,
+    @"volatile" = 21,
+    constant = 22,
+    coherent = 23,
+    non_writable = 24,
+    non_readable = 25,
+    uniform = 26,
+    uniform_id = 27,
+    saturated_conversion = 28,
+    stream = 29,
+    location = 30,
+    component = 31,
+    index = 32,
+    binding = 33,
+    descriptor_set = 34,
+    offset = 35,
+    xfb_buffer = 36,
+    xfb_stride = 37,
+    func_param_attr = 38,
+    fp_rounding_mode = 39,
+    fp_fast_math_mode = 40,
+    linkage_attributes = 41,
+    no_contraction = 42,
+    input_attachment_index = 43,
+    alignment = 44,
+    max_byte_offset = 45,
+    alignment_id = 46,
+    max_byte_offset_id = 47,
+    saturated_to_largest_float8normal_conversion_ext = 4216,
+    no_signed_wrap = 4469,
+    no_unsigned_wrap = 4470,
+    weight_texture_qcom = 4487,
+    block_match_texture_qcom = 4488,
+    block_match_sampler_qcom = 4499,
+    explicit_interp_amd = 4999,
+    node_shares_payload_limits_with_amdx = 5019,
+    node_max_payloads_amdx = 5020,
+    track_finish_writing_amdx = 5078,
+    payload_node_name_amdx = 5091,
+    payload_node_base_index_amdx = 5098,
+    payload_node_sparse_array_amdx = 5099,
+    payload_node_array_size_amdx = 5100,
+    payload_dispatch_indirect_amdx = 5105,
+    override_coverage_nv = 5248,
+    passthrough_nv = 5250,
+    viewport_relative_nv = 5252,
+    secondary_viewport_relative_nv = 5256,
+    per_primitive_ext = 5271,
+    per_view_nv = 5272,
+    per_task_nv = 5273,
+    per_vertex_khr = 5285,
+    non_uniform = 5300,
+    restrict_pointer = 5355,
+    aliased_pointer = 5356,
+    hit_object_shader_record_buffer_nv = 5386,
+    bindless_sampler_nv = 5398,
+    bindless_image_nv = 5399,
+    bound_sampler_nv = 5400,
+    bound_image_nv = 5401,
+    simt_call_intel = 5599,
+    referenced_indirectly_intel = 5602,
+    clobber_intel = 5607,
+    side_effects_intel = 5608,
+    vector_compute_variable_intel = 5624,
+    func_param_io_kind_intel = 5625,
+    vector_compute_function_intel = 5626,
+    stack_call_intel = 5627,
+    global_variable_offset_intel = 5628,
+    counter_buffer = 5634,
+    user_semantic = 5635,
+    user_type_google = 5636,
+    function_rounding_mode_intel = 5822,
+    function_denorm_mode_intel = 5823,
+    register_intel = 5825,
+    memory_intel = 5826,
+    numbanks_intel = 5827,
+    bankwidth_intel = 5828,
+    max_private_copies_intel = 5829,
+    singlepump_intel = 5830,
+    doublepump_intel = 5831,
+    max_replicates_intel = 5832,
+    simple_dual_port_intel = 5833,
+    merge_intel = 5834,
+    bank_bits_intel = 5835,
+    force_pow2depth_intel = 5836,
+    stridesize_intel = 5883,
+    wordsize_intel = 5884,
+    true_dual_port_intel = 5885,
+    burst_coalesce_intel = 5899,
+    cache_size_intel = 5900,
+    dont_statically_coalesce_intel = 5901,
+    prefetch_intel = 5902,
+    stall_enable_intel = 5905,
+    fuse_loops_in_function_intel = 5907,
+    math_op_dsp_mode_intel = 5909,
+    alias_scope_intel = 5914,
+    no_alias_intel = 5915,
+    initiation_interval_intel = 5917,
+    max_concurrency_intel = 5918,
+    pipeline_enable_intel = 5919,
+    buffer_location_intel = 5921,
+    io_pipe_storage_intel = 5944,
+    function_floating_point_mode_intel = 6080,
+    single_element_vector_intel = 6085,
+    vector_compute_callable_function_intel = 6087,
+    media_block_iointel = 6140,
+    stall_free_intel = 6151,
+    fp_max_error_decoration_intel = 6170,
+    latency_control_label_intel = 6172,
+    latency_control_constraint_intel = 6173,
+    conduit_kernel_argument_intel = 6175,
+    register_map_kernel_argument_intel = 6176,
+    mm_host_interface_address_width_intel = 6177,
+    mm_host_interface_data_width_intel = 6178,
+    mm_host_interface_latency_intel = 6179,
+    mm_host_interface_read_write_mode_intel = 6180,
+    mm_host_interface_max_burst_intel = 6181,
+    mm_host_interface_wait_request_intel = 6182,
+    stable_kernel_argument_intel = 6183,
+    host_access_intel = 6188,
+    init_mode_intel = 6190,
+    implement_in_register_map_intel = 6191,
+    cache_control_load_intel = 6442,
+    cache_control_store_intel = 6443,
 
     pub const Extended = union(Decoration) {
-        RelaxedPrecision,
-        SpecId: struct { specialization_constant_id: LiteralInteger },
-        Block,
-        BufferBlock,
-        RowMajor,
-        ColMajor,
-        ArrayStride: struct { array_stride: LiteralInteger },
-        MatrixStride: struct { matrix_stride: LiteralInteger },
-        GLSLShared,
-        GLSLPacked,
-        CPacked,
-        BuiltIn: struct { built_in: BuiltIn },
-        NoPerspective,
-        Flat,
-        Patch,
-        Centroid,
-        Sample,
-        Invariant,
-        Restrict,
-        Aliased,
-        Volatile,
-        Constant,
-        Coherent,
-        NonWritable,
-        NonReadable,
-        Uniform,
-        UniformId: struct { execution: IdScope },
-        SaturatedConversion,
-        Stream: struct { stream_number: LiteralInteger },
-        Location: struct { location: LiteralInteger },
-        Component: struct { component: LiteralInteger },
-        Index: struct { index: LiteralInteger },
-        Binding: struct { binding_point: LiteralInteger },
-        DescriptorSet: struct { descriptor_set: LiteralInteger },
-        Offset: struct { byte_offset: LiteralInteger },
-        XfbBuffer: struct { xfb_buffer_number: LiteralInteger },
-        XfbStride: struct { xfb_stride: LiteralInteger },
-        FuncParamAttr: struct { function_parameter_attribute: FunctionParameterAttribute },
-        FPRoundingMode: struct { fprounding_mode: FPRoundingMode },
-        FPFastMathMode: struct { fpfast_math_mode: FPFastMathMode },
-        LinkageAttributes: struct { name: LiteralString, linkage_type: LinkageType },
-        NoContraction,
-        InputAttachmentIndex: struct { attachment_index: LiteralInteger },
-        Alignment: struct { alignment: LiteralInteger },
-        MaxByteOffset: struct { max_byte_offset: LiteralInteger },
-        AlignmentId: struct { alignment: IdRef },
-        MaxByteOffsetId: struct { max_byte_offset: IdRef },
-        NoSignedWrap,
-        NoUnsignedWrap,
-        WeightTextureQCOM,
-        BlockMatchTextureQCOM,
-        BlockMatchSamplerQCOM,
-        ExplicitInterpAMD,
-        NodeSharesPayloadLimitsWithAMDX: struct { payload_array: IdRef },
-        NodeMaxPayloadsAMDX: struct { max_number_of_payloads: IdRef },
-        TrackFinishWritingAMDX,
-        PayloadNodeNameAMDX: struct { node_name: LiteralString },
-        OverrideCoverageNV,
-        PassthroughNV,
-        ViewportRelativeNV,
-        SecondaryViewportRelativeNV: struct { offset: LiteralInteger },
-        PerPrimitiveEXT,
-        PerViewNV,
-        PerTaskNV,
-        PerVertexKHR,
-        NonUniform,
-        RestrictPointer,
-        AliasedPointer,
-        HitObjectShaderRecordBufferNV,
-        BindlessSamplerNV,
-        BindlessImageNV,
-        BoundSamplerNV,
-        BoundImageNV,
-        SIMTCallINTEL: struct { n: LiteralInteger },
-        ReferencedIndirectlyINTEL,
-        ClobberINTEL: struct { register: LiteralString },
-        SideEffectsINTEL,
-        VectorComputeVariableINTEL,
-        FuncParamIOKindINTEL: struct { kind: LiteralInteger },
-        VectorComputeFunctionINTEL,
-        StackCallINTEL,
-        GlobalVariableOffsetINTEL: struct { offset: LiteralInteger },
-        CounterBuffer: struct { counter_buffer: IdRef },
-        UserSemantic: struct { semantic: LiteralString },
-        UserTypeGOOGLE: struct { user_type: LiteralString },
-        FunctionRoundingModeINTEL: struct { target_width: LiteralInteger, fp_rounding_mode: FPRoundingMode },
-        FunctionDenormModeINTEL: struct { target_width: LiteralInteger, fp_denorm_mode: FPDenormMode },
-        RegisterINTEL,
-        MemoryINTEL: struct { memory_type: LiteralString },
-        NumbanksINTEL: struct { banks: LiteralInteger },
-        BankwidthINTEL: struct { bank_width: LiteralInteger },
-        MaxPrivateCopiesINTEL: struct { maximum_copies: LiteralInteger },
-        SinglepumpINTEL,
-        DoublepumpINTEL,
-        MaxReplicatesINTEL: struct { maximum_replicates: LiteralInteger },
-        SimpleDualPortINTEL,
-        MergeINTEL: struct { merge_key: LiteralString, merge_type: LiteralString },
-        BankBitsINTEL: struct { bank_bits: []const LiteralInteger = &.{} },
-        ForcePow2DepthINTEL: struct { force_key: LiteralInteger },
-        StridesizeINTEL: struct { stride_size: LiteralInteger },
-        WordsizeINTEL: struct { word_size: LiteralInteger },
-        TrueDualPortINTEL,
-        BurstCoalesceINTEL,
-        CacheSizeINTEL: struct { cache_size_in_bytes: LiteralInteger },
-        DontStaticallyCoalesceINTEL,
-        PrefetchINTEL: struct { prefetcher_size_in_bytes: LiteralInteger },
-        StallEnableINTEL,
-        FuseLoopsInFunctionINTEL,
-        MathOpDSPModeINTEL: struct { mode: LiteralInteger, propagate: LiteralInteger },
-        AliasScopeINTEL: struct { aliasing_scopes_list: IdRef },
-        NoAliasINTEL: struct { aliasing_scopes_list: IdRef },
-        InitiationIntervalINTEL: struct { cycles: LiteralInteger },
-        MaxConcurrencyINTEL: struct { invocations: LiteralInteger },
-        PipelineEnableINTEL: struct { enable: LiteralInteger },
-        BufferLocationINTEL: struct { buffer_location_id: LiteralInteger },
-        IOPipeStorageINTEL: struct { io_pipe_id: LiteralInteger },
-        FunctionFloatingPointModeINTEL: struct { target_width: LiteralInteger, fp_operation_mode: FPOperationMode },
-        SingleElementVectorINTEL,
-        VectorComputeCallableFunctionINTEL,
-        MediaBlockIOINTEL,
-        StallFreeINTEL,
-        FPMaxErrorDecorationINTEL: struct { max_error: LiteralFloat },
-        LatencyControlLabelINTEL: struct { latency_label: LiteralInteger },
-        LatencyControlConstraintINTEL: struct { relative_to: LiteralInteger, control_type: LiteralInteger, relative_cycle: LiteralInteger },
-        ConduitKernelArgumentINTEL,
-        RegisterMapKernelArgumentINTEL,
-        MMHostInterfaceAddressWidthINTEL: struct { addresswidth: LiteralInteger },
-        MMHostInterfaceDataWidthINTEL: struct { datawidth: LiteralInteger },
-        MMHostInterfaceLatencyINTEL: struct { latency: LiteralInteger },
-        MMHostInterfaceReadWriteModeINTEL: struct { readwritemode: AccessQualifier },
-        MMHostInterfaceMaxBurstINTEL: struct { maxburstcount: LiteralInteger },
-        MMHostInterfaceWaitRequestINTEL: struct { waitrequest: LiteralInteger },
-        StableKernelArgumentINTEL,
-        HostAccessINTEL: struct { access: HostAccessQualifier, name: LiteralString },
-        InitModeINTEL: struct { trigger: InitializationModeQualifier },
-        ImplementInRegisterMapINTEL: struct { value: LiteralInteger },
-        CacheControlLoadINTEL: struct { cache_level: LiteralInteger, cache_control: LoadCacheControl },
-        CacheControlStoreINTEL: struct { cache_level: LiteralInteger, cache_control: StoreCacheControl },
+        relaxed_precision,
+        spec_id: struct { specialization_constant_id: LiteralInteger },
+        block,
+        buffer_block,
+        row_major,
+        col_major,
+        array_stride: struct { array_stride: LiteralInteger },
+        matrix_stride: struct { matrix_stride: LiteralInteger },
+        glsl_shared,
+        glsl_packed,
+        c_packed,
+        built_in: struct { built_in: BuiltIn },
+        no_perspective,
+        flat,
+        patch,
+        centroid,
+        sample,
+        invariant,
+        restrict,
+        aliased,
+        @"volatile",
+        constant,
+        coherent,
+        non_writable,
+        non_readable,
+        uniform,
+        uniform_id: struct { execution: Id },
+        saturated_conversion,
+        stream: struct { stream_number: LiteralInteger },
+        location: struct { location: LiteralInteger },
+        component: struct { component: LiteralInteger },
+        index: struct { index: LiteralInteger },
+        binding: struct { binding_point: LiteralInteger },
+        descriptor_set: struct { descriptor_set: LiteralInteger },
+        offset: struct { byte_offset: LiteralInteger },
+        xfb_buffer: struct { xfb_buffer_number: LiteralInteger },
+        xfb_stride: struct { xfb_stride: LiteralInteger },
+        func_param_attr: struct { function_parameter_attribute: FunctionParameterAttribute },
+        fp_rounding_mode: struct { fp_rounding_mode: FPRoundingMode },
+        fp_fast_math_mode: struct { fp_fast_math_mode: FPFastMathMode },
+        linkage_attributes: struct { name: LiteralString, linkage_type: LinkageType },
+        no_contraction,
+        input_attachment_index: struct { attachment_index: LiteralInteger },
+        alignment: struct { alignment: LiteralInteger },
+        max_byte_offset: struct { max_byte_offset: LiteralInteger },
+        alignment_id: struct { alignment: Id },
+        max_byte_offset_id: struct { max_byte_offset: Id },
+        saturated_to_largest_float8normal_conversion_ext,
+        no_signed_wrap,
+        no_unsigned_wrap,
+        weight_texture_qcom,
+        block_match_texture_qcom,
+        block_match_sampler_qcom,
+        explicit_interp_amd,
+        node_shares_payload_limits_with_amdx: struct { payload_type: Id },
+        node_max_payloads_amdx: struct { max_number_of_payloads: Id },
+        track_finish_writing_amdx,
+        payload_node_name_amdx: struct { node_name: Id },
+        payload_node_base_index_amdx: struct { base_index: Id },
+        payload_node_sparse_array_amdx,
+        payload_node_array_size_amdx: struct { array_size: Id },
+        payload_dispatch_indirect_amdx,
+        override_coverage_nv,
+        passthrough_nv,
+        viewport_relative_nv,
+        secondary_viewport_relative_nv: struct { offset: LiteralInteger },
+        per_primitive_ext,
+        per_view_nv,
+        per_task_nv,
+        per_vertex_khr,
+        non_uniform,
+        restrict_pointer,
+        aliased_pointer,
+        hit_object_shader_record_buffer_nv,
+        bindless_sampler_nv,
+        bindless_image_nv,
+        bound_sampler_nv,
+        bound_image_nv,
+        simt_call_intel: struct { n: LiteralInteger },
+        referenced_indirectly_intel,
+        clobber_intel: struct { register: LiteralString },
+        side_effects_intel,
+        vector_compute_variable_intel,
+        func_param_io_kind_intel: struct { kind: LiteralInteger },
+        vector_compute_function_intel,
+        stack_call_intel,
+        global_variable_offset_intel: struct { offset: LiteralInteger },
+        counter_buffer: struct { counter_buffer: Id },
+        user_semantic: struct { semantic: LiteralString },
+        user_type_google: struct { user_type: LiteralString },
+        function_rounding_mode_intel: struct { target_width: LiteralInteger, fp_rounding_mode: FPRoundingMode },
+        function_denorm_mode_intel: struct { target_width: LiteralInteger, fp_denorm_mode: FPDenormMode },
+        register_intel,
+        memory_intel: struct { memory_type: LiteralString },
+        numbanks_intel: struct { banks: LiteralInteger },
+        bankwidth_intel: struct { bank_width: LiteralInteger },
+        max_private_copies_intel: struct { maximum_copies: LiteralInteger },
+        singlepump_intel,
+        doublepump_intel,
+        max_replicates_intel: struct { maximum_replicates: LiteralInteger },
+        simple_dual_port_intel,
+        merge_intel: struct { merge_key: LiteralString, merge_type: LiteralString },
+        bank_bits_intel: struct { bank_bits: []const LiteralInteger = &.{} },
+        force_pow2depth_intel: struct { force_key: LiteralInteger },
+        stridesize_intel: struct { stride_size: LiteralInteger },
+        wordsize_intel: struct { word_size: LiteralInteger },
+        true_dual_port_intel,
+        burst_coalesce_intel,
+        cache_size_intel: struct { cache_size_in_bytes: LiteralInteger },
+        dont_statically_coalesce_intel,
+        prefetch_intel: struct { prefetcher_size_in_bytes: LiteralInteger },
+        stall_enable_intel,
+        fuse_loops_in_function_intel,
+        math_op_dsp_mode_intel: struct { mode: LiteralInteger, propagate: LiteralInteger },
+        alias_scope_intel: struct { aliasing_scopes_list: Id },
+        no_alias_intel: struct { aliasing_scopes_list: Id },
+        initiation_interval_intel: struct { cycles: LiteralInteger },
+        max_concurrency_intel: struct { invocations: LiteralInteger },
+        pipeline_enable_intel: struct { enable: LiteralInteger },
+        buffer_location_intel: struct { buffer_location_id: LiteralInteger },
+        io_pipe_storage_intel: struct { io_pipe_id: LiteralInteger },
+        function_floating_point_mode_intel: struct { target_width: LiteralInteger, fp_operation_mode: FPOperationMode },
+        single_element_vector_intel,
+        vector_compute_callable_function_intel,
+        media_block_iointel,
+        stall_free_intel,
+        fp_max_error_decoration_intel: struct { max_error: LiteralFloat },
+        latency_control_label_intel: struct { latency_label: LiteralInteger },
+        latency_control_constraint_intel: struct { relative_to: LiteralInteger, control_type: LiteralInteger, relative_cycle: LiteralInteger },
+        conduit_kernel_argument_intel,
+        register_map_kernel_argument_intel,
+        mm_host_interface_address_width_intel: struct { address_width: LiteralInteger },
+        mm_host_interface_data_width_intel: struct { data_width: LiteralInteger },
+        mm_host_interface_latency_intel: struct { latency: LiteralInteger },
+        mm_host_interface_read_write_mode_intel: struct { read_write_mode: AccessQualifier },
+        mm_host_interface_max_burst_intel: struct { max_burst_count: LiteralInteger },
+        mm_host_interface_wait_request_intel: struct { waitrequest: LiteralInteger },
+        stable_kernel_argument_intel,
+        host_access_intel: struct { access: HostAccessQualifier, name: LiteralString },
+        init_mode_intel: struct { trigger: InitializationModeQualifier },
+        implement_in_register_map_intel: struct { value: LiteralInteger },
+        cache_control_load_intel: struct { cache_level: LiteralInteger, cache_control: LoadCacheControl },
+        cache_control_store_intel: struct { cache_level: LiteralInteger, cache_control: StoreCacheControl },
     };
 };
 pub const BuiltIn = enum(u32) {
-    Position = 0,
-    PointSize = 1,
-    ClipDistance = 3,
-    CullDistance = 4,
-    VertexId = 5,
-    InstanceId = 6,
-    PrimitiveId = 7,
-    InvocationId = 8,
-    Layer = 9,
-    ViewportIndex = 10,
-    TessLevelOuter = 11,
-    TessLevelInner = 12,
-    TessCoord = 13,
-    PatchVertices = 14,
-    FragCoord = 15,
-    PointCoord = 16,
-    FrontFacing = 17,
-    SampleId = 18,
-    SamplePosition = 19,
-    SampleMask = 20,
-    FragDepth = 22,
-    HelperInvocation = 23,
-    NumWorkgroups = 24,
-    WorkgroupSize = 25,
-    WorkgroupId = 26,
-    LocalInvocationId = 27,
-    GlobalInvocationId = 28,
-    LocalInvocationIndex = 29,
-    WorkDim = 30,
-    GlobalSize = 31,
-    EnqueuedWorkgroupSize = 32,
-    GlobalOffset = 33,
-    GlobalLinearId = 34,
-    SubgroupSize = 36,
-    SubgroupMaxSize = 37,
-    NumSubgroups = 38,
-    NumEnqueuedSubgroups = 39,
-    SubgroupId = 40,
-    SubgroupLocalInvocationId = 41,
-    VertexIndex = 42,
-    InstanceIndex = 43,
-    CoreIDARM = 4160,
-    CoreCountARM = 4161,
-    CoreMaxIDARM = 4162,
-    WarpIDARM = 4163,
-    WarpMaxIDARM = 4164,
-    SubgroupEqMask = 4416,
-    SubgroupGeMask = 4417,
-    SubgroupGtMask = 4418,
-    SubgroupLeMask = 4419,
-    SubgroupLtMask = 4420,
-    BaseVertex = 4424,
-    BaseInstance = 4425,
-    DrawIndex = 4426,
-    PrimitiveShadingRateKHR = 4432,
-    DeviceIndex = 4438,
-    ViewIndex = 4440,
-    ShadingRateKHR = 4444,
-    BaryCoordNoPerspAMD = 4992,
-    BaryCoordNoPerspCentroidAMD = 4993,
-    BaryCoordNoPerspSampleAMD = 4994,
-    BaryCoordSmoothAMD = 4995,
-    BaryCoordSmoothCentroidAMD = 4996,
-    BaryCoordSmoothSampleAMD = 4997,
-    BaryCoordPullModelAMD = 4998,
-    FragStencilRefEXT = 5014,
-    CoalescedInputCountAMDX = 5021,
-    ShaderIndexAMDX = 5073,
-    ViewportMaskNV = 5253,
-    SecondaryPositionNV = 5257,
-    SecondaryViewportMaskNV = 5258,
-    PositionPerViewNV = 5261,
-    ViewportMaskPerViewNV = 5262,
-    FullyCoveredEXT = 5264,
-    TaskCountNV = 5274,
-    PrimitiveCountNV = 5275,
-    PrimitiveIndicesNV = 5276,
-    ClipDistancePerViewNV = 5277,
-    CullDistancePerViewNV = 5278,
-    LayerPerViewNV = 5279,
-    MeshViewCountNV = 5280,
-    MeshViewIndicesNV = 5281,
-    BaryCoordKHR = 5286,
-    BaryCoordNoPerspKHR = 5287,
-    FragSizeEXT = 5292,
-    FragInvocationCountEXT = 5293,
-    PrimitivePointIndicesEXT = 5294,
-    PrimitiveLineIndicesEXT = 5295,
-    PrimitiveTriangleIndicesEXT = 5296,
-    CullPrimitiveEXT = 5299,
-    LaunchIdKHR = 5319,
-    LaunchSizeKHR = 5320,
-    WorldRayOriginKHR = 5321,
-    WorldRayDirectionKHR = 5322,
-    ObjectRayOriginKHR = 5323,
-    ObjectRayDirectionKHR = 5324,
-    RayTminKHR = 5325,
-    RayTmaxKHR = 5326,
-    InstanceCustomIndexKHR = 5327,
-    ObjectToWorldKHR = 5330,
-    WorldToObjectKHR = 5331,
-    HitTNV = 5332,
-    HitKindKHR = 5333,
-    CurrentRayTimeNV = 5334,
-    HitTriangleVertexPositionsKHR = 5335,
-    HitMicroTriangleVertexPositionsNV = 5337,
-    HitMicroTriangleVertexBarycentricsNV = 5344,
-    IncomingRayFlagsKHR = 5351,
-    RayGeometryIndexKHR = 5352,
-    WarpsPerSMNV = 5374,
-    SMCountNV = 5375,
-    WarpIDNV = 5376,
-    SMIDNV = 5377,
-    HitKindFrontFacingMicroTriangleNV = 5405,
-    HitKindBackFacingMicroTriangleNV = 5406,
-    CullMaskKHR = 6021,
-
-    pub const SubgroupEqMaskKHR = BuiltIn.SubgroupEqMask;
-    pub const SubgroupGeMaskKHR = BuiltIn.SubgroupGeMask;
-    pub const SubgroupGtMaskKHR = BuiltIn.SubgroupGtMask;
-    pub const SubgroupLeMaskKHR = BuiltIn.SubgroupLeMask;
-    pub const SubgroupLtMaskKHR = BuiltIn.SubgroupLtMask;
-    pub const BaryCoordNV = BuiltIn.BaryCoordKHR;
-    pub const BaryCoordNoPerspNV = BuiltIn.BaryCoordNoPerspKHR;
-    pub const FragmentSizeNV = BuiltIn.FragSizeEXT;
-    pub const InvocationsPerPixelNV = BuiltIn.FragInvocationCountEXT;
-    pub const LaunchIdNV = BuiltIn.LaunchIdKHR;
-    pub const LaunchSizeNV = BuiltIn.LaunchSizeKHR;
-    pub const WorldRayOriginNV = BuiltIn.WorldRayOriginKHR;
-    pub const WorldRayDirectionNV = BuiltIn.WorldRayDirectionKHR;
-    pub const ObjectRayOriginNV = BuiltIn.ObjectRayOriginKHR;
-    pub const ObjectRayDirectionNV = BuiltIn.ObjectRayDirectionKHR;
-    pub const RayTminNV = BuiltIn.RayTminKHR;
-    pub const RayTmaxNV = BuiltIn.RayTmaxKHR;
-    pub const InstanceCustomIndexNV = BuiltIn.InstanceCustomIndexKHR;
-    pub const ObjectToWorldNV = BuiltIn.ObjectToWorldKHR;
-    pub const WorldToObjectNV = BuiltIn.WorldToObjectKHR;
-    pub const HitKindNV = BuiltIn.HitKindKHR;
-    pub const IncomingRayFlagsNV = BuiltIn.IncomingRayFlagsKHR;
+    position = 0,
+    point_size = 1,
+    clip_distance = 3,
+    cull_distance = 4,
+    vertex_id = 5,
+    instance_id = 6,
+    primitive_id = 7,
+    invocation_id = 8,
+    layer = 9,
+    viewport_index = 10,
+    tess_level_outer = 11,
+    tess_level_inner = 12,
+    tess_coord = 13,
+    patch_vertices = 14,
+    frag_coord = 15,
+    point_coord = 16,
+    front_facing = 17,
+    sample_id = 18,
+    sample_position = 19,
+    sample_mask = 20,
+    frag_depth = 22,
+    helper_invocation = 23,
+    num_workgroups = 24,
+    workgroup_size = 25,
+    workgroup_id = 26,
+    local_invocation_id = 27,
+    global_invocation_id = 28,
+    local_invocation_index = 29,
+    work_dim = 30,
+    global_size = 31,
+    enqueued_workgroup_size = 32,
+    global_offset = 33,
+    global_linear_id = 34,
+    subgroup_size = 36,
+    subgroup_max_size = 37,
+    num_subgroups = 38,
+    num_enqueued_subgroups = 39,
+    subgroup_id = 40,
+    subgroup_local_invocation_id = 41,
+    vertex_index = 42,
+    instance_index = 43,
+    core_idarm = 4160,
+    core_count_arm = 4161,
+    core_max_idarm = 4162,
+    warp_idarm = 4163,
+    warp_max_idarm = 4164,
+    subgroup_eq_mask = 4416,
+    subgroup_ge_mask = 4417,
+    subgroup_gt_mask = 4418,
+    subgroup_le_mask = 4419,
+    subgroup_lt_mask = 4420,
+    base_vertex = 4424,
+    base_instance = 4425,
+    draw_index = 4426,
+    primitive_shading_rate_khr = 4432,
+    device_index = 4438,
+    view_index = 4440,
+    shading_rate_khr = 4444,
+    tile_offset_qcom = 4492,
+    tile_dimension_qcom = 4493,
+    tile_apron_size_qcom = 4494,
+    bary_coord_no_persp_amd = 4992,
+    bary_coord_no_persp_centroid_amd = 4993,
+    bary_coord_no_persp_sample_amd = 4994,
+    bary_coord_smooth_amd = 4995,
+    bary_coord_smooth_centroid_amd = 4996,
+    bary_coord_smooth_sample_amd = 4997,
+    bary_coord_pull_model_amd = 4998,
+    frag_stencil_ref_ext = 5014,
+    remaining_recursion_levels_amdx = 5021,
+    shader_index_amdx = 5073,
+    viewport_mask_nv = 5253,
+    secondary_position_nv = 5257,
+    secondary_viewport_mask_nv = 5258,
+    position_per_view_nv = 5261,
+    viewport_mask_per_view_nv = 5262,
+    fully_covered_ext = 5264,
+    task_count_nv = 5274,
+    primitive_count_nv = 5275,
+    primitive_indices_nv = 5276,
+    clip_distance_per_view_nv = 5277,
+    cull_distance_per_view_nv = 5278,
+    layer_per_view_nv = 5279,
+    mesh_view_count_nv = 5280,
+    mesh_view_indices_nv = 5281,
+    bary_coord_khr = 5286,
+    bary_coord_no_persp_khr = 5287,
+    frag_size_ext = 5292,
+    frag_invocation_count_ext = 5293,
+    primitive_point_indices_ext = 5294,
+    primitive_line_indices_ext = 5295,
+    primitive_triangle_indices_ext = 5296,
+    cull_primitive_ext = 5299,
+    launch_id_khr = 5319,
+    launch_size_khr = 5320,
+    world_ray_origin_khr = 5321,
+    world_ray_direction_khr = 5322,
+    object_ray_origin_khr = 5323,
+    object_ray_direction_khr = 5324,
+    ray_tmin_khr = 5325,
+    ray_tmax_khr = 5326,
+    instance_custom_index_khr = 5327,
+    object_to_world_khr = 5330,
+    world_to_object_khr = 5331,
+    hit_tnv = 5332,
+    hit_kind_khr = 5333,
+    current_ray_time_nv = 5334,
+    hit_triangle_vertex_positions_khr = 5335,
+    hit_micro_triangle_vertex_positions_nv = 5337,
+    hit_micro_triangle_vertex_barycentrics_nv = 5344,
+    incoming_ray_flags_khr = 5351,
+    ray_geometry_index_khr = 5352,
+    hit_is_sphere_nv = 5359,
+    hit_is_lssnv = 5360,
+    hit_sphere_position_nv = 5361,
+    warps_per_smnv = 5374,
+    sm_count_nv = 5375,
+    warp_idnv = 5376,
+    smidnv = 5377,
+    hit_lss_positions_nv = 5396,
+    hit_kind_front_facing_micro_triangle_nv = 5405,
+    hit_kind_back_facing_micro_triangle_nv = 5406,
+    hit_sphere_radius_nv = 5420,
+    hit_lss_radii_nv = 5421,
+    cluster_idnv = 5436,
+    cull_mask_khr = 6021,
 };
 pub const Scope = enum(u32) {
-    CrossDevice = 0,
-    Device = 1,
-    Workgroup = 2,
-    Subgroup = 3,
-    Invocation = 4,
-    QueueFamily = 5,
-    ShaderCallKHR = 6,
-
-    pub const QueueFamilyKHR = Scope.QueueFamily;
+    cross_device = 0,
+    device = 1,
+    workgroup = 2,
+    subgroup = 3,
+    invocation = 4,
+    queue_family = 5,
+    shader_call_khr = 6,
 };
 pub const GroupOperation = enum(u32) {
-    Reduce = 0,
-    InclusiveScan = 1,
-    ExclusiveScan = 2,
-    ClusteredReduce = 3,
-    PartitionedReduceNV = 6,
-    PartitionedInclusiveScanNV = 7,
-    PartitionedExclusiveScanNV = 8,
+    reduce = 0,
+    inclusive_scan = 1,
+    exclusive_scan = 2,
+    clustered_reduce = 3,
+    partitioned_reduce_nv = 6,
+    partitioned_inclusive_scan_nv = 7,
+    partitioned_exclusive_scan_nv = 8,
 };
 pub const KernelEnqueueFlags = enum(u32) {
-    NoWait = 0,
-    WaitKernel = 1,
-    WaitWorkGroup = 2,
+    no_wait = 0,
+    wait_kernel = 1,
+    wait_work_group = 2,
 };
 pub const Capability = enum(u32) {
-    Matrix = 0,
-    Shader = 1,
-    Geometry = 2,
-    Tessellation = 3,
-    Addresses = 4,
-    Linkage = 5,
-    Kernel = 6,
-    Vector16 = 7,
-    Float16Buffer = 8,
-    Float16 = 9,
-    Float64 = 10,
-    Int64 = 11,
-    Int64Atomics = 12,
-    ImageBasic = 13,
-    ImageReadWrite = 14,
-    ImageMipmap = 15,
-    Pipes = 17,
-    Groups = 18,
-    DeviceEnqueue = 19,
-    LiteralSampler = 20,
-    AtomicStorage = 21,
-    Int16 = 22,
-    TessellationPointSize = 23,
-    GeometryPointSize = 24,
-    ImageGatherExtended = 25,
-    StorageImageMultisample = 27,
-    UniformBufferArrayDynamicIndexing = 28,
-    SampledImageArrayDynamicIndexing = 29,
-    StorageBufferArrayDynamicIndexing = 30,
-    StorageImageArrayDynamicIndexing = 31,
-    ClipDistance = 32,
-    CullDistance = 33,
-    ImageCubeArray = 34,
-    SampleRateShading = 35,
-    ImageRect = 36,
-    SampledRect = 37,
-    GenericPointer = 38,
-    Int8 = 39,
-    InputAttachment = 40,
-    SparseResidency = 41,
-    MinLod = 42,
-    Sampled1D = 43,
-    Image1D = 44,
-    SampledCubeArray = 45,
-    SampledBuffer = 46,
-    ImageBuffer = 47,
-    ImageMSArray = 48,
-    StorageImageExtendedFormats = 49,
-    ImageQuery = 50,
-    DerivativeControl = 51,
-    InterpolationFunction = 52,
-    TransformFeedback = 53,
-    GeometryStreams = 54,
-    StorageImageReadWithoutFormat = 55,
-    StorageImageWriteWithoutFormat = 56,
-    MultiViewport = 57,
-    SubgroupDispatch = 58,
-    NamedBarrier = 59,
-    PipeStorage = 60,
-    GroupNonUniform = 61,
-    GroupNonUniformVote = 62,
-    GroupNonUniformArithmetic = 63,
-    GroupNonUniformBallot = 64,
-    GroupNonUniformShuffle = 65,
-    GroupNonUniformShuffleRelative = 66,
-    GroupNonUniformClustered = 67,
-    GroupNonUniformQuad = 68,
-    ShaderLayer = 69,
-    ShaderViewportIndex = 70,
-    UniformDecoration = 71,
-    CoreBuiltinsARM = 4165,
-    TileImageColorReadAccessEXT = 4166,
-    TileImageDepthReadAccessEXT = 4167,
-    TileImageStencilReadAccessEXT = 4168,
-    FragmentShadingRateKHR = 4422,
-    SubgroupBallotKHR = 4423,
-    DrawParameters = 4427,
-    WorkgroupMemoryExplicitLayoutKHR = 4428,
-    WorkgroupMemoryExplicitLayout8BitAccessKHR = 4429,
-    WorkgroupMemoryExplicitLayout16BitAccessKHR = 4430,
-    SubgroupVoteKHR = 4431,
-    StorageBuffer16BitAccess = 4433,
-    UniformAndStorageBuffer16BitAccess = 4434,
-    StoragePushConstant16 = 4435,
-    StorageInputOutput16 = 4436,
-    DeviceGroup = 4437,
-    MultiView = 4439,
-    VariablePointersStorageBuffer = 4441,
-    VariablePointers = 4442,
-    AtomicStorageOps = 4445,
-    SampleMaskPostDepthCoverage = 4447,
-    StorageBuffer8BitAccess = 4448,
-    UniformAndStorageBuffer8BitAccess = 4449,
-    StoragePushConstant8 = 4450,
-    DenormPreserve = 4464,
-    DenormFlushToZero = 4465,
-    SignedZeroInfNanPreserve = 4466,
-    RoundingModeRTE = 4467,
-    RoundingModeRTZ = 4468,
-    RayQueryProvisionalKHR = 4471,
-    RayQueryKHR = 4472,
-    RayTraversalPrimitiveCullingKHR = 4478,
-    RayTracingKHR = 4479,
-    TextureSampleWeightedQCOM = 4484,
-    TextureBoxFilterQCOM = 4485,
-    TextureBlockMatchQCOM = 4486,
-    TextureBlockMatch2QCOM = 4498,
-    Float16ImageAMD = 5008,
-    ImageGatherBiasLodAMD = 5009,
-    FragmentMaskAMD = 5010,
-    StencilExportEXT = 5013,
-    ImageReadWriteLodAMD = 5015,
-    Int64ImageEXT = 5016,
-    ShaderClockKHR = 5055,
-    ShaderEnqueueAMDX = 5067,
-    QuadControlKHR = 5087,
-    SampleMaskOverrideCoverageNV = 5249,
-    GeometryShaderPassthroughNV = 5251,
-    ShaderViewportIndexLayerEXT = 5254,
-    ShaderViewportMaskNV = 5255,
-    ShaderStereoViewNV = 5259,
-    PerViewAttributesNV = 5260,
-    FragmentFullyCoveredEXT = 5265,
-    MeshShadingNV = 5266,
-    ImageFootprintNV = 5282,
-    MeshShadingEXT = 5283,
-    FragmentBarycentricKHR = 5284,
-    ComputeDerivativeGroupQuadsNV = 5288,
-    FragmentDensityEXT = 5291,
-    GroupNonUniformPartitionedNV = 5297,
-    ShaderNonUniform = 5301,
-    RuntimeDescriptorArray = 5302,
-    InputAttachmentArrayDynamicIndexing = 5303,
-    UniformTexelBufferArrayDynamicIndexing = 5304,
-    StorageTexelBufferArrayDynamicIndexing = 5305,
-    UniformBufferArrayNonUniformIndexing = 5306,
-    SampledImageArrayNonUniformIndexing = 5307,
-    StorageBufferArrayNonUniformIndexing = 5308,
-    StorageImageArrayNonUniformIndexing = 5309,
-    InputAttachmentArrayNonUniformIndexing = 5310,
-    UniformTexelBufferArrayNonUniformIndexing = 5311,
-    StorageTexelBufferArrayNonUniformIndexing = 5312,
-    RayTracingPositionFetchKHR = 5336,
-    RayTracingNV = 5340,
-    RayTracingMotionBlurNV = 5341,
-    VulkanMemoryModel = 5345,
-    VulkanMemoryModelDeviceScope = 5346,
-    PhysicalStorageBufferAddresses = 5347,
-    ComputeDerivativeGroupLinearNV = 5350,
-    RayTracingProvisionalKHR = 5353,
-    CooperativeMatrixNV = 5357,
-    FragmentShaderSampleInterlockEXT = 5363,
-    FragmentShaderShadingRateInterlockEXT = 5372,
-    ShaderSMBuiltinsNV = 5373,
-    FragmentShaderPixelInterlockEXT = 5378,
-    DemoteToHelperInvocation = 5379,
-    DisplacementMicromapNV = 5380,
-    RayTracingOpacityMicromapEXT = 5381,
-    ShaderInvocationReorderNV = 5383,
-    BindlessTextureNV = 5390,
-    RayQueryPositionFetchKHR = 5391,
-    AtomicFloat16VectorNV = 5404,
-    RayTracingDisplacementMicromapNV = 5409,
-    RawAccessChainsNV = 5414,
-    SubgroupShuffleINTEL = 5568,
-    SubgroupBufferBlockIOINTEL = 5569,
-    SubgroupImageBlockIOINTEL = 5570,
-    SubgroupImageMediaBlockIOINTEL = 5579,
-    RoundToInfinityINTEL = 5582,
-    FloatingPointModeINTEL = 5583,
-    IntegerFunctions2INTEL = 5584,
-    FunctionPointersINTEL = 5603,
-    IndirectReferencesINTEL = 5604,
-    AsmINTEL = 5606,
-    AtomicFloat32MinMaxEXT = 5612,
-    AtomicFloat64MinMaxEXT = 5613,
-    AtomicFloat16MinMaxEXT = 5616,
-    VectorComputeINTEL = 5617,
-    VectorAnyINTEL = 5619,
-    ExpectAssumeKHR = 5629,
-    SubgroupAvcMotionEstimationINTEL = 5696,
-    SubgroupAvcMotionEstimationIntraINTEL = 5697,
-    SubgroupAvcMotionEstimationChromaINTEL = 5698,
-    VariableLengthArrayINTEL = 5817,
-    FunctionFloatControlINTEL = 5821,
-    FPGAMemoryAttributesINTEL = 5824,
-    FPFastMathModeINTEL = 5837,
-    ArbitraryPrecisionIntegersINTEL = 5844,
-    ArbitraryPrecisionFloatingPointINTEL = 5845,
-    UnstructuredLoopControlsINTEL = 5886,
-    FPGALoopControlsINTEL = 5888,
-    KernelAttributesINTEL = 5892,
-    FPGAKernelAttributesINTEL = 5897,
-    FPGAMemoryAccessesINTEL = 5898,
-    FPGAClusterAttributesINTEL = 5904,
-    LoopFuseINTEL = 5906,
-    FPGADSPControlINTEL = 5908,
-    MemoryAccessAliasingINTEL = 5910,
-    FPGAInvocationPipeliningAttributesINTEL = 5916,
-    FPGABufferLocationINTEL = 5920,
-    ArbitraryPrecisionFixedPointINTEL = 5922,
-    USMStorageClassesINTEL = 5935,
-    RuntimeAlignedAttributeINTEL = 5939,
-    IOPipesINTEL = 5943,
-    BlockingPipesINTEL = 5945,
-    FPGARegINTEL = 5948,
-    DotProductInputAll = 6016,
-    DotProductInput4x8Bit = 6017,
-    DotProductInput4x8BitPacked = 6018,
-    DotProduct = 6019,
-    RayCullMaskKHR = 6020,
-    CooperativeMatrixKHR = 6022,
-    BitInstructions = 6025,
-    GroupNonUniformRotateKHR = 6026,
-    FloatControls2 = 6029,
-    AtomicFloat32AddEXT = 6033,
-    AtomicFloat64AddEXT = 6034,
-    LongCompositesINTEL = 6089,
-    OptNoneINTEL = 6094,
-    AtomicFloat16AddEXT = 6095,
-    DebugInfoModuleINTEL = 6114,
-    BFloat16ConversionINTEL = 6115,
-    SplitBarrierINTEL = 6141,
-    FPGAClusterAttributesV2INTEL = 6150,
-    FPGAKernelAttributesv2INTEL = 6161,
-    FPMaxErrorINTEL = 6169,
-    FPGALatencyControlINTEL = 6171,
-    FPGAArgumentInterfacesINTEL = 6174,
-    GlobalVariableHostAccessINTEL = 6187,
-    GlobalVariableFPGADecorationsINTEL = 6189,
-    GroupUniformArithmeticKHR = 6400,
-    MaskedGatherScatterINTEL = 6427,
-    CacheControlsINTEL = 6441,
-    RegisterLimitsINTEL = 6460,
-
-    pub const StorageUniformBufferBlock16 = Capability.StorageBuffer16BitAccess;
-    pub const StorageUniform16 = Capability.UniformAndStorageBuffer16BitAccess;
-    pub const ShaderViewportIndexLayerNV = Capability.ShaderViewportIndexLayerEXT;
-    pub const FragmentBarycentricNV = Capability.FragmentBarycentricKHR;
-    pub const ShadingRateNV = Capability.FragmentDensityEXT;
-    pub const ShaderNonUniformEXT = Capability.ShaderNonUniform;
-    pub const RuntimeDescriptorArrayEXT = Capability.RuntimeDescriptorArray;
-    pub const InputAttachmentArrayDynamicIndexingEXT = Capability.InputAttachmentArrayDynamicIndexing;
-    pub const UniformTexelBufferArrayDynamicIndexingEXT = Capability.UniformTexelBufferArrayDynamicIndexing;
-    pub const StorageTexelBufferArrayDynamicIndexingEXT = Capability.StorageTexelBufferArrayDynamicIndexing;
-    pub const UniformBufferArrayNonUniformIndexingEXT = Capability.UniformBufferArrayNonUniformIndexing;
-    pub const SampledImageArrayNonUniformIndexingEXT = Capability.SampledImageArrayNonUniformIndexing;
-    pub const StorageBufferArrayNonUniformIndexingEXT = Capability.StorageBufferArrayNonUniformIndexing;
-    pub const StorageImageArrayNonUniformIndexingEXT = Capability.StorageImageArrayNonUniformIndexing;
-    pub const InputAttachmentArrayNonUniformIndexingEXT = Capability.InputAttachmentArrayNonUniformIndexing;
-    pub const UniformTexelBufferArrayNonUniformIndexingEXT = Capability.UniformTexelBufferArrayNonUniformIndexing;
-    pub const StorageTexelBufferArrayNonUniformIndexingEXT = Capability.StorageTexelBufferArrayNonUniformIndexing;
-    pub const VulkanMemoryModelKHR = Capability.VulkanMemoryModel;
-    pub const VulkanMemoryModelDeviceScopeKHR = Capability.VulkanMemoryModelDeviceScope;
-    pub const PhysicalStorageBufferAddressesEXT = Capability.PhysicalStorageBufferAddresses;
-    pub const DemoteToHelperInvocationEXT = Capability.DemoteToHelperInvocation;
-    pub const DotProductInputAllKHR = Capability.DotProductInputAll;
-    pub const DotProductInput4x8BitKHR = Capability.DotProductInput4x8Bit;
-    pub const DotProductInput4x8BitPackedKHR = Capability.DotProductInput4x8BitPacked;
-    pub const DotProductKHR = Capability.DotProduct;
+    matrix = 0,
+    shader = 1,
+    geometry = 2,
+    tessellation = 3,
+    addresses = 4,
+    linkage = 5,
+    kernel = 6,
+    vector16 = 7,
+    float16buffer = 8,
+    float16 = 9,
+    float64 = 10,
+    int64 = 11,
+    int64atomics = 12,
+    image_basic = 13,
+    image_read_write = 14,
+    image_mipmap = 15,
+    pipes = 17,
+    groups = 18,
+    device_enqueue = 19,
+    literal_sampler = 20,
+    atomic_storage = 21,
+    int16 = 22,
+    tessellation_point_size = 23,
+    geometry_point_size = 24,
+    image_gather_extended = 25,
+    storage_image_multisample = 27,
+    uniform_buffer_array_dynamic_indexing = 28,
+    sampled_image_array_dynamic_indexing = 29,
+    storage_buffer_array_dynamic_indexing = 30,
+    storage_image_array_dynamic_indexing = 31,
+    clip_distance = 32,
+    cull_distance = 33,
+    image_cube_array = 34,
+    sample_rate_shading = 35,
+    image_rect = 36,
+    sampled_rect = 37,
+    generic_pointer = 38,
+    int8 = 39,
+    input_attachment = 40,
+    sparse_residency = 41,
+    min_lod = 42,
+    sampled1d = 43,
+    image1d = 44,
+    sampled_cube_array = 45,
+    sampled_buffer = 46,
+    image_buffer = 47,
+    image_ms_array = 48,
+    storage_image_extended_formats = 49,
+    image_query = 50,
+    derivative_control = 51,
+    interpolation_function = 52,
+    transform_feedback = 53,
+    geometry_streams = 54,
+    storage_image_read_without_format = 55,
+    storage_image_write_without_format = 56,
+    multi_viewport = 57,
+    subgroup_dispatch = 58,
+    named_barrier = 59,
+    pipe_storage = 60,
+    group_non_uniform = 61,
+    group_non_uniform_vote = 62,
+    group_non_uniform_arithmetic = 63,
+    group_non_uniform_ballot = 64,
+    group_non_uniform_shuffle = 65,
+    group_non_uniform_shuffle_relative = 66,
+    group_non_uniform_clustered = 67,
+    group_non_uniform_quad = 68,
+    shader_layer = 69,
+    shader_viewport_index = 70,
+    uniform_decoration = 71,
+    core_builtins_arm = 4165,
+    tile_image_color_read_access_ext = 4166,
+    tile_image_depth_read_access_ext = 4167,
+    tile_image_stencil_read_access_ext = 4168,
+    tensors_arm = 4174,
+    storage_tensor_array_dynamic_indexing_arm = 4175,
+    storage_tensor_array_non_uniform_indexing_arm = 4176,
+    graph_arm = 4191,
+    cooperative_matrix_layouts_arm = 4201,
+    float8ext = 4212,
+    float8cooperative_matrix_ext = 4213,
+    fragment_shading_rate_khr = 4422,
+    subgroup_ballot_khr = 4423,
+    draw_parameters = 4427,
+    workgroup_memory_explicit_layout_khr = 4428,
+    workgroup_memory_explicit_layout8bit_access_khr = 4429,
+    workgroup_memory_explicit_layout16bit_access_khr = 4430,
+    subgroup_vote_khr = 4431,
+    storage_buffer16bit_access = 4433,
+    uniform_and_storage_buffer16bit_access = 4434,
+    storage_push_constant16 = 4435,
+    storage_input_output16 = 4436,
+    device_group = 4437,
+    multi_view = 4439,
+    variable_pointers_storage_buffer = 4441,
+    variable_pointers = 4442,
+    atomic_storage_ops = 4445,
+    sample_mask_post_depth_coverage = 4447,
+    storage_buffer8bit_access = 4448,
+    uniform_and_storage_buffer8bit_access = 4449,
+    storage_push_constant8 = 4450,
+    denorm_preserve = 4464,
+    denorm_flush_to_zero = 4465,
+    signed_zero_inf_nan_preserve = 4466,
+    rounding_mode_rte = 4467,
+    rounding_mode_rtz = 4468,
+    ray_query_provisional_khr = 4471,
+    ray_query_khr = 4472,
+    untyped_pointers_khr = 4473,
+    ray_traversal_primitive_culling_khr = 4478,
+    ray_tracing_khr = 4479,
+    texture_sample_weighted_qcom = 4484,
+    texture_box_filter_qcom = 4485,
+    texture_block_match_qcom = 4486,
+    tile_shading_qcom = 4495,
+    texture_block_match2qcom = 4498,
+    float16image_amd = 5008,
+    image_gather_bias_lod_amd = 5009,
+    fragment_mask_amd = 5010,
+    stencil_export_ext = 5013,
+    image_read_write_lod_amd = 5015,
+    int64image_ext = 5016,
+    shader_clock_khr = 5055,
+    shader_enqueue_amdx = 5067,
+    quad_control_khr = 5087,
+    int4type_intel = 5112,
+    int4cooperative_matrix_intel = 5114,
+    b_float16type_khr = 5116,
+    b_float16dot_product_khr = 5117,
+    b_float16cooperative_matrix_khr = 5118,
+    sample_mask_override_coverage_nv = 5249,
+    geometry_shader_passthrough_nv = 5251,
+    shader_viewport_index_layer_ext = 5254,
+    shader_viewport_mask_nv = 5255,
+    shader_stereo_view_nv = 5259,
+    per_view_attributes_nv = 5260,
+    fragment_fully_covered_ext = 5265,
+    mesh_shading_nv = 5266,
+    image_footprint_nv = 5282,
+    mesh_shading_ext = 5283,
+    fragment_barycentric_khr = 5284,
+    compute_derivative_group_quads_khr = 5288,
+    fragment_density_ext = 5291,
+    group_non_uniform_partitioned_nv = 5297,
+    shader_non_uniform = 5301,
+    runtime_descriptor_array = 5302,
+    input_attachment_array_dynamic_indexing = 5303,
+    uniform_texel_buffer_array_dynamic_indexing = 5304,
+    storage_texel_buffer_array_dynamic_indexing = 5305,
+    uniform_buffer_array_non_uniform_indexing = 5306,
+    sampled_image_array_non_uniform_indexing = 5307,
+    storage_buffer_array_non_uniform_indexing = 5308,
+    storage_image_array_non_uniform_indexing = 5309,
+    input_attachment_array_non_uniform_indexing = 5310,
+    uniform_texel_buffer_array_non_uniform_indexing = 5311,
+    storage_texel_buffer_array_non_uniform_indexing = 5312,
+    ray_tracing_position_fetch_khr = 5336,
+    ray_tracing_nv = 5340,
+    ray_tracing_motion_blur_nv = 5341,
+    vulkan_memory_model = 5345,
+    vulkan_memory_model_device_scope = 5346,
+    physical_storage_buffer_addresses = 5347,
+    compute_derivative_group_linear_khr = 5350,
+    ray_tracing_provisional_khr = 5353,
+    cooperative_matrix_nv = 5357,
+    fragment_shader_sample_interlock_ext = 5363,
+    fragment_shader_shading_rate_interlock_ext = 5372,
+    shader_sm_builtins_nv = 5373,
+    fragment_shader_pixel_interlock_ext = 5378,
+    demote_to_helper_invocation = 5379,
+    displacement_micromap_nv = 5380,
+    ray_tracing_opacity_micromap_ext = 5381,
+    shader_invocation_reorder_nv = 5383,
+    bindless_texture_nv = 5390,
+    ray_query_position_fetch_khr = 5391,
+    cooperative_vector_nv = 5394,
+    atomic_float16vector_nv = 5404,
+    ray_tracing_displacement_micromap_nv = 5409,
+    raw_access_chains_nv = 5414,
+    ray_tracing_spheres_geometry_nv = 5418,
+    ray_tracing_linear_swept_spheres_geometry_nv = 5419,
+    cooperative_matrix_reductions_nv = 5430,
+    cooperative_matrix_conversions_nv = 5431,
+    cooperative_matrix_per_element_operations_nv = 5432,
+    cooperative_matrix_tensor_addressing_nv = 5433,
+    cooperative_matrix_block_loads_nv = 5434,
+    cooperative_vector_training_nv = 5435,
+    ray_tracing_cluster_acceleration_structure_nv = 5437,
+    tensor_addressing_nv = 5439,
+    subgroup_shuffle_intel = 5568,
+    subgroup_buffer_block_iointel = 5569,
+    subgroup_image_block_iointel = 5570,
+    subgroup_image_media_block_iointel = 5579,
+    round_to_infinity_intel = 5582,
+    floating_point_mode_intel = 5583,
+    integer_functions2intel = 5584,
+    function_pointers_intel = 5603,
+    indirect_references_intel = 5604,
+    asm_intel = 5606,
+    atomic_float32min_max_ext = 5612,
+    atomic_float64min_max_ext = 5613,
+    atomic_float16min_max_ext = 5616,
+    vector_compute_intel = 5617,
+    vector_any_intel = 5619,
+    expect_assume_khr = 5629,
+    subgroup_avc_motion_estimation_intel = 5696,
+    subgroup_avc_motion_estimation_intra_intel = 5697,
+    subgroup_avc_motion_estimation_chroma_intel = 5698,
+    variable_length_array_intel = 5817,
+    function_float_control_intel = 5821,
+    fpga_memory_attributes_intel = 5824,
+    fp_fast_math_mode_intel = 5837,
+    arbitrary_precision_integers_intel = 5844,
+    arbitrary_precision_floating_point_intel = 5845,
+    unstructured_loop_controls_intel = 5886,
+    fpga_loop_controls_intel = 5888,
+    kernel_attributes_intel = 5892,
+    fpga_kernel_attributes_intel = 5897,
+    fpga_memory_accesses_intel = 5898,
+    fpga_cluster_attributes_intel = 5904,
+    loop_fuse_intel = 5906,
+    fpgadsp_control_intel = 5908,
+    memory_access_aliasing_intel = 5910,
+    fpga_invocation_pipelining_attributes_intel = 5916,
+    fpga_buffer_location_intel = 5920,
+    arbitrary_precision_fixed_point_intel = 5922,
+    usm_storage_classes_intel = 5935,
+    runtime_aligned_attribute_intel = 5939,
+    io_pipes_intel = 5943,
+    blocking_pipes_intel = 5945,
+    fpga_reg_intel = 5948,
+    dot_product_input_all = 6016,
+    dot_product_input4x8bit = 6017,
+    dot_product_input4x8bit_packed = 6018,
+    dot_product = 6019,
+    ray_cull_mask_khr = 6020,
+    cooperative_matrix_khr = 6022,
+    replicated_composites_ext = 6024,
+    bit_instructions = 6025,
+    group_non_uniform_rotate_khr = 6026,
+    float_controls2 = 6029,
+    atomic_float32add_ext = 6033,
+    atomic_float64add_ext = 6034,
+    long_composites_intel = 6089,
+    opt_none_ext = 6094,
+    atomic_float16add_ext = 6095,
+    debug_info_module_intel = 6114,
+    b_float16conversion_intel = 6115,
+    split_barrier_intel = 6141,
+    arithmetic_fence_ext = 6144,
+    fpga_cluster_attributes_v2intel = 6150,
+    fpga_kernel_attributesv2intel = 6161,
+    task_sequence_intel = 6162,
+    fp_max_error_intel = 6169,
+    fpga_latency_control_intel = 6171,
+    fpga_argument_interfaces_intel = 6174,
+    global_variable_host_access_intel = 6187,
+    global_variable_fpga_decorations_intel = 6189,
+    subgroup_buffer_prefetch_intel = 6220,
+    subgroup2d_block_iointel = 6228,
+    subgroup2d_block_transform_intel = 6229,
+    subgroup2d_block_transpose_intel = 6230,
+    subgroup_matrix_multiply_accumulate_intel = 6236,
+    ternary_bitwise_function_intel = 6241,
+    group_uniform_arithmetic_khr = 6400,
+    tensor_float32rounding_intel = 6425,
+    masked_gather_scatter_intel = 6427,
+    cache_controls_intel = 6441,
+    register_limits_intel = 6460,
+    bindless_images_intel = 6528,
 };
 pub const RayQueryIntersection = enum(u32) {
-    RayQueryCandidateIntersectionKHR = 0,
-    RayQueryCommittedIntersectionKHR = 1,
+    ray_query_candidate_intersection_khr = 0,
+    ray_query_committed_intersection_khr = 1,
 };
 pub const RayQueryCommittedIntersectionType = enum(u32) {
-    RayQueryCommittedIntersectionNoneKHR = 0,
-    RayQueryCommittedIntersectionTriangleKHR = 1,
-    RayQueryCommittedIntersectionGeneratedKHR = 2,
+    ray_query_committed_intersection_none_khr = 0,
+    ray_query_committed_intersection_triangle_khr = 1,
+    ray_query_committed_intersection_generated_khr = 2,
 };
 pub const RayQueryCandidateIntersectionType = enum(u32) {
-    RayQueryCandidateIntersectionTriangleKHR = 0,
-    RayQueryCandidateIntersectionAABBKHR = 1,
+    ray_query_candidate_intersection_triangle_khr = 0,
+    ray_query_candidate_intersection_aabbkhr = 1,
 };
 pub const PackedVectorFormat = enum(u32) {
-    PackedVectorFormat4x8Bit = 0,
-
-    pub const PackedVectorFormat4x8BitKHR = PackedVectorFormat.PackedVectorFormat4x8Bit;
+    packed_vector_format4x8bit = 0,
 };
 pub const CooperativeMatrixOperands = packed struct {
-    MatrixASignedComponentsKHR: bool = false,
-    MatrixBSignedComponentsKHR: bool = false,
-    MatrixCSignedComponentsKHR: bool = false,
-    MatrixResultSignedComponentsKHR: bool = false,
-    SaturatingAccumulationKHR: bool = false,
+    matrix_a_signed_components_khr: bool = false,
+    matrix_b_signed_components_khr: bool = false,
+    matrix_c_signed_components_khr: bool = false,
+    matrix_result_signed_components_khr: bool = false,
+    saturating_accumulation_khr: bool = false,
     _reserved_bit_5: bool = false,
     _reserved_bit_6: bool = false,
     _reserved_bit_7: bool = false,
@@ -4935,52 +5213,75 @@ pub const CooperativeMatrixOperands = packed struct {
     _reserved_bit_31: bool = false,
 };
 pub const CooperativeMatrixLayout = enum(u32) {
-    RowMajorKHR = 0,
-    ColumnMajorKHR = 1,
+    row_major_khr = 0,
+    column_major_khr = 1,
+    row_blocked_interleaved_arm = 4202,
+    column_blocked_interleaved_arm = 4203,
 };
 pub const CooperativeMatrixUse = enum(u32) {
-    MatrixAKHR = 0,
-    MatrixBKHR = 1,
-    MatrixAccumulatorKHR = 2,
+    matrix_akhr = 0,
+    matrix_bkhr = 1,
+    matrix_accumulator_khr = 2,
 };
-pub const InitializationModeQualifier = enum(u32) {
-    InitOnDeviceReprogramINTEL = 0,
-    InitOnDeviceResetINTEL = 1,
-};
-pub const LoadCacheControl = enum(u32) {
-    UncachedINTEL = 0,
-    CachedINTEL = 1,
-    StreamingINTEL = 2,
-    InvalidateAfterReadINTEL = 3,
-    ConstCachedINTEL = 4,
-};
-pub const StoreCacheControl = enum(u32) {
-    UncachedINTEL = 0,
-    WriteThroughINTEL = 1,
-    WriteBackINTEL = 2,
-    StreamingINTEL = 3,
+pub const CooperativeMatrixReduce = packed struct {
+    row: bool = false,
+    column: bool = false,
+    @"2x2": bool = false,
+    _reserved_bit_3: bool = false,
+    _reserved_bit_4: bool = false,
+    _reserved_bit_5: bool = false,
+    _reserved_bit_6: bool = false,
+    _reserved_bit_7: bool = false,
+    _reserved_bit_8: bool = false,
+    _reserved_bit_9: bool = false,
+    _reserved_bit_10: bool = false,
+    _reserved_bit_11: bool = false,
+    _reserved_bit_12: bool = false,
+    _reserved_bit_13: bool = false,
+    _reserved_bit_14: bool = false,
+    _reserved_bit_15: bool = false,
+    _reserved_bit_16: bool = false,
+    _reserved_bit_17: bool = false,
+    _reserved_bit_18: bool = false,
+    _reserved_bit_19: bool = false,
+    _reserved_bit_20: bool = false,
+    _reserved_bit_21: bool = false,
+    _reserved_bit_22: bool = false,
+    _reserved_bit_23: bool = false,
+    _reserved_bit_24: bool = false,
+    _reserved_bit_25: bool = false,
+    _reserved_bit_26: bool = false,
+    _reserved_bit_27: bool = false,
+    _reserved_bit_28: bool = false,
+    _reserved_bit_29: bool = false,
+    _reserved_bit_30: bool = false,
+    _reserved_bit_31: bool = false,
 };
-pub const NamedMaximumNumberOfRegisters = enum(u32) {
-    AutoINTEL = 0,
+pub const TensorClampMode = enum(u32) {
+    undefined = 0,
+    constant = 1,
+    clamp_to_edge = 2,
+    repeat = 3,
+    repeat_mirrored = 4,
 };
-pub const @"OpenCL.DebugInfo.100.DebugInfoFlags" = packed struct {
-    FlagIsProtected: bool = false,
-    FlagIsPrivate: bool = false,
-    FlagIsLocal: bool = false,
-    FlagIsDefinition: bool = false,
-    FlagFwdDecl: bool = false,
-    FlagArtificial: bool = false,
-    FlagExplicit: bool = false,
-    FlagPrototyped: bool = false,
-    FlagObjectPointer: bool = false,
-    FlagStaticMember: bool = false,
-    FlagIndirectVariable: bool = false,
-    FlagLValueReference: bool = false,
-    FlagRValueReference: bool = false,
-    FlagIsOptimized: bool = false,
-    FlagIsEnumClass: bool = false,
-    FlagTypePassByValue: bool = false,
-    FlagTypePassByReference: bool = false,
+pub const TensorAddressingOperands = packed struct {
+    tensor_view: bool = false,
+    decode_func: bool = false,
+    _reserved_bit_2: bool = false,
+    _reserved_bit_3: bool = false,
+    _reserved_bit_4: bool = false,
+    _reserved_bit_5: bool = false,
+    _reserved_bit_6: bool = false,
+    _reserved_bit_7: bool = false,
+    _reserved_bit_8: bool = false,
+    _reserved_bit_9: bool = false,
+    _reserved_bit_10: bool = false,
+    _reserved_bit_11: bool = false,
+    _reserved_bit_12: bool = false,
+    _reserved_bit_13: bool = false,
+    _reserved_bit_14: bool = false,
+    _reserved_bit_15: bool = false,
+    _reserved_bit_16: bool = false,
     _reserved_bit_17: bool = false,
     _reserved_bit_18: bool = false,
     _reserved_bit_19: bool = false,
@@ -4996,76 +5297,81 @@ pub const @"OpenCL.DebugInfo.100.DebugInfoFlags" = packed struct {
     _reserved_bit_29: bool = false,
     _reserved_bit_30: bool = false,
     _reserved_bit_31: bool = false,
+
+    pub const Extended = struct {
+        tensor_view: ?struct { id_ref: Id } = null,
+        decode_func: ?struct { id_ref: Id } = null,
+        _reserved_bit_2: bool = false,
+        _reserved_bit_3: bool = false,
+        _reserved_bit_4: bool = false,
+        _reserved_bit_5: bool = false,
+        _reserved_bit_6: bool = false,
+        _reserved_bit_7: bool = false,
+        _reserved_bit_8: bool = false,
+        _reserved_bit_9: bool = false,
+        _reserved_bit_10: bool = false,
+        _reserved_bit_11: bool = false,
+        _reserved_bit_12: bool = false,
+        _reserved_bit_13: bool = false,
+        _reserved_bit_14: bool = false,
+        _reserved_bit_15: bool = false,
+        _reserved_bit_16: bool = false,
+        _reserved_bit_17: bool = false,
+        _reserved_bit_18: bool = false,
+        _reserved_bit_19: bool = false,
+        _reserved_bit_20: bool = false,
+        _reserved_bit_21: bool = false,
+        _reserved_bit_22: bool = false,
+        _reserved_bit_23: bool = false,
+        _reserved_bit_24: bool = false,
+        _reserved_bit_25: bool = false,
+        _reserved_bit_26: bool = false,
+        _reserved_bit_27: bool = false,
+        _reserved_bit_28: bool = false,
+        _reserved_bit_29: bool = false,
+        _reserved_bit_30: bool = false,
+        _reserved_bit_31: bool = false,
+    };
 };
-pub const @"OpenCL.DebugInfo.100.DebugBaseTypeAttributeEncoding" = enum(u32) {
-    Unspecified = 0,
-    Address = 1,
-    Boolean = 2,
-    Float = 3,
-    Signed = 4,
-    SignedChar = 5,
-    Unsigned = 6,
-    UnsignedChar = 7,
-};
-pub const @"OpenCL.DebugInfo.100.DebugCompositeType" = enum(u32) {
-    Class = 0,
-    Structure = 1,
-    Union = 2,
+pub const InitializationModeQualifier = enum(u32) {
+    init_on_device_reprogram_intel = 0,
+    init_on_device_reset_intel = 1,
 };
-pub const @"OpenCL.DebugInfo.100.DebugTypeQualifier" = enum(u32) {
-    ConstType = 0,
-    VolatileType = 1,
-    RestrictType = 2,
-    AtomicType = 3,
+pub const LoadCacheControl = enum(u32) {
+    uncached_intel = 0,
+    cached_intel = 1,
+    streaming_intel = 2,
+    invalidate_after_read_intel = 3,
+    const_cached_intel = 4,
 };
-pub const @"OpenCL.DebugInfo.100.DebugOperation" = enum(u32) {
-    Deref = 0,
-    Plus = 1,
-    Minus = 2,
-    PlusUconst = 3,
-    BitPiece = 4,
-    Swap = 5,
-    Xderef = 6,
-    StackValue = 7,
-    Constu = 8,
-    Fragment = 9,
-
-    pub const Extended = union(@"OpenCL.DebugInfo.100.DebugOperation") {
-        Deref,
-        Plus,
-        Minus,
-        PlusUconst: struct { literal_integer: LiteralInteger },
-        BitPiece: struct { literal_integer_0: LiteralInteger, literal_integer_1: LiteralInteger },
-        Swap,
-        Xderef,
-        StackValue,
-        Constu: struct { literal_integer: LiteralInteger },
-        Fragment: struct { literal_integer_0: LiteralInteger, literal_integer_1: LiteralInteger },
-    };
+pub const StoreCacheControl = enum(u32) {
+    uncached_intel = 0,
+    write_through_intel = 1,
+    write_back_intel = 2,
+    streaming_intel = 3,
 };
-pub const @"OpenCL.DebugInfo.100.DebugImportedEntity" = enum(u32) {
-    ImportedModule = 0,
-    ImportedDeclaration = 1,
+pub const NamedMaximumNumberOfRegisters = enum(u32) {
+    auto_intel = 0,
 };
-pub const @"NonSemantic.Shader.DebugInfo.100.DebugInfoFlags" = packed struct {
-    FlagIsProtected: bool = false,
-    FlagIsPrivate: bool = false,
-    FlagIsLocal: bool = false,
-    FlagIsDefinition: bool = false,
-    FlagFwdDecl: bool = false,
-    FlagArtificial: bool = false,
-    FlagExplicit: bool = false,
-    FlagPrototyped: bool = false,
-    FlagObjectPointer: bool = false,
-    FlagStaticMember: bool = false,
-    FlagIndirectVariable: bool = false,
-    FlagLValueReference: bool = false,
-    FlagRValueReference: bool = false,
-    FlagIsOptimized: bool = false,
-    FlagIsEnumClass: bool = false,
-    FlagTypePassByValue: bool = false,
-    FlagTypePassByReference: bool = false,
-    FlagUnknownPhysicalLayout: bool = false,
+pub const MatrixMultiplyAccumulateOperands = packed struct {
+    matrix_a_signed_components_intel: bool = false,
+    matrix_b_signed_components_intel: bool = false,
+    matrix_cb_float16intel: bool = false,
+    matrix_result_b_float16intel: bool = false,
+    matrix_a_packed_int8intel: bool = false,
+    matrix_b_packed_int8intel: bool = false,
+    matrix_a_packed_int4intel: bool = false,
+    matrix_b_packed_int4intel: bool = false,
+    matrix_atf32intel: bool = false,
+    matrix_btf32intel: bool = false,
+    matrix_a_packed_float16intel: bool = false,
+    matrix_b_packed_float16intel: bool = false,
+    matrix_a_packed_b_float16intel: bool = false,
+    matrix_b_packed_b_float16intel: bool = false,
+    _reserved_bit_14: bool = false,
+    _reserved_bit_15: bool = false,
+    _reserved_bit_16: bool = false,
+    _reserved_bit_17: bool = false,
     _reserved_bit_18: bool = false,
     _reserved_bit_19: bool = false,
     _reserved_bit_20: bool = false,
@@ -5081,12 +5387,40 @@ pub const @"NonSemantic.Shader.DebugInfo.100.DebugInfoFlags" = packed struct {
     _reserved_bit_30: bool = false,
     _reserved_bit_31: bool = false,
 };
-pub const @"NonSemantic.Shader.DebugInfo.100.BuildIdentifierFlags" = packed struct {
-    IdentifierPossibleDuplicates: bool = false,
-    _reserved_bit_1: bool = false,
-    _reserved_bit_2: bool = false,
-    _reserved_bit_3: bool = false,
-    _reserved_bit_4: bool = false,
+pub const FPEncoding = enum(u32) {
+    b_float16khr = 0,
+    float8e4m3ext = 4214,
+    float8e5m2ext = 4215,
+};
+pub const CooperativeVectorMatrixLayout = enum(u32) {
+    row_major_nv = 0,
+    column_major_nv = 1,
+    inferencing_optimal_nv = 2,
+    training_optimal_nv = 3,
+};
+pub const ComponentType = enum(u32) {
+    float16nv = 0,
+    float32nv = 1,
+    float64nv = 2,
+    signed_int8nv = 3,
+    signed_int16nv = 4,
+    signed_int32nv = 5,
+    signed_int64nv = 6,
+    unsigned_int8nv = 7,
+    unsigned_int16nv = 8,
+    unsigned_int32nv = 9,
+    unsigned_int64nv = 10,
+    signed_int8packed_nv = 1000491000,
+    unsigned_int8packed_nv = 1000491001,
+    float_e4m3nv = 1000491002,
+    float_e5m2nv = 1000491003,
+};
+pub const TensorOperands = packed struct {
+    nontemporal_arm: bool = false,
+    out_of_bounds_value_arm: bool = false,
+    make_element_available_arm: bool = false,
+    make_element_visible_arm: bool = false,
+    non_private_element_arm: bool = false,
     _reserved_bit_5: bool = false,
     _reserved_bit_6: bool = false,
     _reserved_bit_7: bool = false,
@@ -5114,59 +5448,205 @@ pub const @"NonSemantic.Shader.DebugInfo.100.BuildIdentifierFlags" = packed stru
     _reserved_bit_29: bool = false,
     _reserved_bit_30: bool = false,
     _reserved_bit_31: bool = false,
+
+    pub const Extended = struct {
+        nontemporal_arm: bool = false,
+        out_of_bounds_value_arm: ?struct { id_ref: Id } = null,
+        make_element_available_arm: ?struct { id_ref: Id } = null,
+        make_element_visible_arm: ?struct { id_ref: Id } = null,
+        non_private_element_arm: bool = false,
+        _reserved_bit_5: bool = false,
+        _reserved_bit_6: bool = false,
+        _reserved_bit_7: bool = false,
+        _reserved_bit_8: bool = false,
+        _reserved_bit_9: bool = false,
+        _reserved_bit_10: bool = false,
+        _reserved_bit_11: bool = false,
+        _reserved_bit_12: bool = false,
+        _reserved_bit_13: bool = false,
+        _reserved_bit_14: bool = false,
+        _reserved_bit_15: bool = false,
+        _reserved_bit_16: bool = false,
+        _reserved_bit_17: bool = false,
+        _reserved_bit_18: bool = false,
+        _reserved_bit_19: bool = false,
+        _reserved_bit_20: bool = false,
+        _reserved_bit_21: bool = false,
+        _reserved_bit_22: bool = false,
+        _reserved_bit_23: bool = false,
+        _reserved_bit_24: bool = false,
+        _reserved_bit_25: bool = false,
+        _reserved_bit_26: bool = false,
+        _reserved_bit_27: bool = false,
+        _reserved_bit_28: bool = false,
+        _reserved_bit_29: bool = false,
+        _reserved_bit_30: bool = false,
+        _reserved_bit_31: bool = false,
+    };
 };
-pub const @"NonSemantic.Shader.DebugInfo.100.DebugBaseTypeAttributeEncoding" = enum(u32) {
-    Unspecified = 0,
-    Address = 1,
-    Boolean = 2,
-    Float = 3,
-    Signed = 4,
-    SignedChar = 5,
-    Unsigned = 6,
-    UnsignedChar = 7,
+pub const @"DebugInfo.DebugInfoFlags" = packed struct {
+    flag_is_protected: bool = false,
+    flag_is_private: bool = false,
+    flag_is_local: bool = false,
+    flag_is_definition: bool = false,
+    flag_fwd_decl: bool = false,
+    flag_artificial: bool = false,
+    flag_explicit: bool = false,
+    flag_prototyped: bool = false,
+    flag_object_pointer: bool = false,
+    flag_static_member: bool = false,
+    flag_indirect_variable: bool = false,
+    flag_l_value_reference: bool = false,
+    flag_r_value_reference: bool = false,
+    flag_is_optimized: bool = false,
+    _reserved_bit_14: bool = false,
+    _reserved_bit_15: bool = false,
+    _reserved_bit_16: bool = false,
+    _reserved_bit_17: bool = false,
+    _reserved_bit_18: bool = false,
+    _reserved_bit_19: bool = false,
+    _reserved_bit_20: bool = false,
+    _reserved_bit_21: bool = false,
+    _reserved_bit_22: bool = false,
+    _reserved_bit_23: bool = false,
+    _reserved_bit_24: bool = false,
+    _reserved_bit_25: bool = false,
+    _reserved_bit_26: bool = false,
+    _reserved_bit_27: bool = false,
+    _reserved_bit_28: bool = false,
+    _reserved_bit_29: bool = false,
+    _reserved_bit_30: bool = false,
+    _reserved_bit_31: bool = false,
 };
-pub const @"NonSemantic.Shader.DebugInfo.100.DebugCompositeType" = enum(u32) {
-    Class = 0,
-    Structure = 1,
-    Union = 2,
+pub const @"DebugInfo.DebugBaseTypeAttributeEncoding" = enum(u32) {
+    unspecified = 0,
+    address = 1,
+    boolean = 2,
+    float = 4,
+    signed = 5,
+    signed_char = 6,
+    unsigned = 7,
+    unsigned_char = 8,
 };
-pub const @"NonSemantic.Shader.DebugInfo.100.DebugTypeQualifier" = enum(u32) {
-    ConstType = 0,
-    VolatileType = 1,
-    RestrictType = 2,
-    AtomicType = 3,
+pub const @"DebugInfo.DebugCompositeType" = enum(u32) {
+    class = 0,
+    structure = 1,
+    @"union" = 2,
 };
-pub const @"NonSemantic.Shader.DebugInfo.100.DebugOperation" = enum(u32) {
-    Deref = 0,
-    Plus = 1,
-    Minus = 2,
-    PlusUconst = 3,
-    BitPiece = 4,
-    Swap = 5,
-    Xderef = 6,
-    StackValue = 7,
-    Constu = 8,
-    Fragment = 9,
+pub const @"DebugInfo.DebugTypeQualifier" = enum(u32) {
+    const_type = 0,
+    volatile_type = 1,
+    restrict_type = 2,
+};
+pub const @"DebugInfo.DebugOperation" = enum(u32) {
+    deref = 0,
+    plus = 1,
+    minus = 2,
+    plus_uconst = 3,
+    bit_piece = 4,
+    swap = 5,
+    xderef = 6,
+    stack_value = 7,
+    constu = 8,
 
-    pub const Extended = union(@"NonSemantic.Shader.DebugInfo.100.DebugOperation") {
-        Deref,
-        Plus,
-        Minus,
-        PlusUconst: struct { id_ref: IdRef },
-        BitPiece: struct { id_ref_0: IdRef, id_ref_1: IdRef },
-        Swap,
-        Xderef,
-        StackValue,
-        Constu: struct { id_ref: IdRef },
-        Fragment: struct { id_ref_0: IdRef, id_ref_1: IdRef },
+    pub const Extended = union(@"DebugInfo.DebugOperation") {
+        deref,
+        plus,
+        minus,
+        plus_uconst: struct { literal_integer: LiteralInteger },
+        bit_piece: struct { literal_integer_0: LiteralInteger, literal_integer_1: LiteralInteger },
+        swap,
+        xderef,
+        stack_value,
+        constu: struct { literal_integer: LiteralInteger },
     };
 };
-pub const @"NonSemantic.Shader.DebugInfo.100.DebugImportedEntity" = enum(u32) {
-    ImportedModule = 0,
-    ImportedDeclaration = 1,
+pub const @"OpenCL.DebugInfo.100.DebugInfoFlags" = packed struct {
+    flag_is_protected: bool = false,
+    flag_is_private: bool = false,
+    flag_is_local: bool = false,
+    flag_is_definition: bool = false,
+    flag_fwd_decl: bool = false,
+    flag_artificial: bool = false,
+    flag_explicit: bool = false,
+    flag_prototyped: bool = false,
+    flag_object_pointer: bool = false,
+    flag_static_member: bool = false,
+    flag_indirect_variable: bool = false,
+    flag_l_value_reference: bool = false,
+    flag_r_value_reference: bool = false,
+    flag_is_optimized: bool = false,
+    flag_is_enum_class: bool = false,
+    flag_type_pass_by_value: bool = false,
+    flag_type_pass_by_reference: bool = false,
+    _reserved_bit_17: bool = false,
+    _reserved_bit_18: bool = false,
+    _reserved_bit_19: bool = false,
+    _reserved_bit_20: bool = false,
+    _reserved_bit_21: bool = false,
+    _reserved_bit_22: bool = false,
+    _reserved_bit_23: bool = false,
+    _reserved_bit_24: bool = false,
+    _reserved_bit_25: bool = false,
+    _reserved_bit_26: bool = false,
+    _reserved_bit_27: bool = false,
+    _reserved_bit_28: bool = false,
+    _reserved_bit_29: bool = false,
+    _reserved_bit_30: bool = false,
+    _reserved_bit_31: bool = false,
+};
+pub const @"OpenCL.DebugInfo.100.DebugBaseTypeAttributeEncoding" = enum(u32) {
+    unspecified = 0,
+    address = 1,
+    boolean = 2,
+    float = 3,
+    signed = 4,
+    signed_char = 5,
+    unsigned = 6,
+    unsigned_char = 7,
+};
+pub const @"OpenCL.DebugInfo.100.DebugCompositeType" = enum(u32) {
+    class = 0,
+    structure = 1,
+    @"union" = 2,
+};
+pub const @"OpenCL.DebugInfo.100.DebugTypeQualifier" = enum(u32) {
+    const_type = 0,
+    volatile_type = 1,
+    restrict_type = 2,
+    atomic_type = 3,
+};
+pub const @"OpenCL.DebugInfo.100.DebugOperation" = enum(u32) {
+    deref = 0,
+    plus = 1,
+    minus = 2,
+    plus_uconst = 3,
+    bit_piece = 4,
+    swap = 5,
+    xderef = 6,
+    stack_value = 7,
+    constu = 8,
+    fragment = 9,
+
+    pub const Extended = union(@"OpenCL.DebugInfo.100.DebugOperation") {
+        deref,
+        plus,
+        minus,
+        plus_uconst: struct { literal_integer: LiteralInteger },
+        bit_piece: struct { literal_integer_0: LiteralInteger, literal_integer_1: LiteralInteger },
+        swap,
+        xderef,
+        stack_value,
+        constu: struct { literal_integer: LiteralInteger },
+        fragment: struct { literal_integer_0: LiteralInteger, literal_integer_1: LiteralInteger },
+    };
+};
+pub const @"OpenCL.DebugInfo.100.DebugImportedEntity" = enum(u32) {
+    imported_module = 0,
+    imported_declaration = 1,
 };
 pub const @"NonSemantic.ClspvReflection.6.KernelPropertyFlags" = packed struct {
-    MayUsePrintf: bool = false,
+    may_use_printf: bool = false,
     _reserved_bit_1: bool = false,
     _reserved_bit_2: bool = false,
     _reserved_bit_3: bool = false,
@@ -5199,21 +5679,55 @@ pub const @"NonSemantic.ClspvReflection.6.KernelPropertyFlags" = packed struct {
     _reserved_bit_30: bool = false,
     _reserved_bit_31: bool = false,
 };
-pub const @"DebugInfo.DebugInfoFlags" = packed struct {
-    FlagIsProtected: bool = false,
-    FlagIsPrivate: bool = false,
-    FlagIsLocal: bool = false,
-    FlagIsDefinition: bool = false,
-    FlagFwdDecl: bool = false,
-    FlagArtificial: bool = false,
-    FlagExplicit: bool = false,
-    FlagPrototyped: bool = false,
-    FlagObjectPointer: bool = false,
-    FlagStaticMember: bool = false,
-    FlagIndirectVariable: bool = false,
-    FlagLValueReference: bool = false,
-    FlagRValueReference: bool = false,
-    FlagIsOptimized: bool = false,
+pub const @"NonSemantic.Shader.DebugInfo.100.DebugInfoFlags" = packed struct {
+    flag_is_protected: bool = false,
+    flag_is_private: bool = false,
+    flag_is_local: bool = false,
+    flag_is_definition: bool = false,
+    flag_fwd_decl: bool = false,
+    flag_artificial: bool = false,
+    flag_explicit: bool = false,
+    flag_prototyped: bool = false,
+    flag_object_pointer: bool = false,
+    flag_static_member: bool = false,
+    flag_indirect_variable: bool = false,
+    flag_l_value_reference: bool = false,
+    flag_r_value_reference: bool = false,
+    flag_is_optimized: bool = false,
+    flag_is_enum_class: bool = false,
+    flag_type_pass_by_value: bool = false,
+    flag_type_pass_by_reference: bool = false,
+    flag_unknown_physical_layout: bool = false,
+    _reserved_bit_18: bool = false,
+    _reserved_bit_19: bool = false,
+    _reserved_bit_20: bool = false,
+    _reserved_bit_21: bool = false,
+    _reserved_bit_22: bool = false,
+    _reserved_bit_23: bool = false,
+    _reserved_bit_24: bool = false,
+    _reserved_bit_25: bool = false,
+    _reserved_bit_26: bool = false,
+    _reserved_bit_27: bool = false,
+    _reserved_bit_28: bool = false,
+    _reserved_bit_29: bool = false,
+    _reserved_bit_30: bool = false,
+    _reserved_bit_31: bool = false,
+};
+pub const @"NonSemantic.Shader.DebugInfo.100.BuildIdentifierFlags" = packed struct {
+    identifier_possible_duplicates: bool = false,
+    _reserved_bit_1: bool = false,
+    _reserved_bit_2: bool = false,
+    _reserved_bit_3: bool = false,
+    _reserved_bit_4: bool = false,
+    _reserved_bit_5: bool = false,
+    _reserved_bit_6: bool = false,
+    _reserved_bit_7: bool = false,
+    _reserved_bit_8: bool = false,
+    _reserved_bit_9: bool = false,
+    _reserved_bit_10: bool = false,
+    _reserved_bit_11: bool = false,
+    _reserved_bit_12: bool = false,
+    _reserved_bit_13: bool = false,
     _reserved_bit_14: bool = false,
     _reserved_bit_15: bool = false,
     _reserved_bit_16: bool = false,
@@ -5233,11298 +5747,12669 @@ pub const @"DebugInfo.DebugInfoFlags" = packed struct {
     _reserved_bit_30: bool = false,
     _reserved_bit_31: bool = false,
 };
-pub const @"DebugInfo.DebugBaseTypeAttributeEncoding" = enum(u32) {
-    Unspecified = 0,
-    Address = 1,
-    Boolean = 2,
-    Float = 4,
-    Signed = 5,
-    SignedChar = 6,
-    Unsigned = 7,
-    UnsignedChar = 8,
+pub const @"NonSemantic.Shader.DebugInfo.100.DebugBaseTypeAttributeEncoding" = enum(u32) {
+    unspecified = 0,
+    address = 1,
+    boolean = 2,
+    float = 3,
+    signed = 4,
+    signed_char = 5,
+    unsigned = 6,
+    unsigned_char = 7,
 };
-pub const @"DebugInfo.DebugCompositeType" = enum(u32) {
-    Class = 0,
-    Structure = 1,
-    Union = 2,
+pub const @"NonSemantic.Shader.DebugInfo.100.DebugCompositeType" = enum(u32) {
+    class = 0,
+    structure = 1,
+    @"union" = 2,
 };
-pub const @"DebugInfo.DebugTypeQualifier" = enum(u32) {
-    ConstType = 0,
-    VolatileType = 1,
-    RestrictType = 2,
+pub const @"NonSemantic.Shader.DebugInfo.100.DebugTypeQualifier" = enum(u32) {
+    const_type = 0,
+    volatile_type = 1,
+    restrict_type = 2,
+    atomic_type = 3,
 };
-pub const @"DebugInfo.DebugOperation" = enum(u32) {
-    Deref = 0,
-    Plus = 1,
-    Minus = 2,
-    PlusUconst = 3,
-    BitPiece = 4,
-    Swap = 5,
-    Xderef = 6,
-    StackValue = 7,
-    Constu = 8,
+pub const @"NonSemantic.Shader.DebugInfo.100.DebugOperation" = enum(u32) {
+    deref = 0,
+    plus = 1,
+    minus = 2,
+    plus_uconst = 3,
+    bit_piece = 4,
+    swap = 5,
+    xderef = 6,
+    stack_value = 7,
+    constu = 8,
+    fragment = 9,
 
-    pub const Extended = union(@"DebugInfo.DebugOperation") {
-        Deref,
-        Plus,
-        Minus,
-        PlusUconst: struct { literal_integer: LiteralInteger },
-        BitPiece: struct { literal_integer_0: LiteralInteger, literal_integer_1: LiteralInteger },
-        Swap,
-        Xderef,
-        StackValue,
-        Constu: struct { literal_integer: LiteralInteger },
+    pub const Extended = union(@"NonSemantic.Shader.DebugInfo.100.DebugOperation") {
+        deref,
+        plus,
+        minus,
+        plus_uconst: struct { id_ref: Id },
+        bit_piece: struct { id_ref_0: Id, id_ref_1: Id },
+        swap,
+        xderef,
+        stack_value,
+        constu: struct { id_ref: Id },
+        fragment: struct { id_ref_0: Id, id_ref_1: Id },
     };
 };
+pub const @"NonSemantic.Shader.DebugInfo.100.DebugImportedEntity" = enum(u32) {
+    imported_module = 0,
+    imported_declaration = 1,
+};
 pub const InstructionSet = enum {
     core,
-    @"OpenCL.std",
-    @"GLSL.std.450",
-    @"OpenCL.DebugInfo.100",
-    SPV_AMD_shader_ballot,
-    @"NonSemantic.Shader.DebugInfo.100",
-    @"NonSemantic.VkspReflection",
-    @"NonSemantic.ClspvReflection.6",
-    SPV_AMD_gcn_shader,
-    SPV_AMD_shader_trinary_minmax,
-    DebugInfo,
-    @"NonSemantic.DebugPrintf",
-    SPV_AMD_shader_explicit_vertex_parameter,
-    @"NonSemantic.DebugBreak",
+    spv_amd_shader_trinary_minmax,
+    spv_ext_inst_type_tosa_001000_1,
+    non_semantic_vksp_reflection,
+    spv_amd_shader_explicit_vertex_parameter,
+    debug_info,
+    non_semantic_debug_break,
+    open_cl_debug_info_100,
+    non_semantic_clspv_reflection_6,
+    glsl_std_450,
+    spv_amd_shader_ballot,
+    non_semantic_debug_printf,
+    spv_amd_gcn_shader,
+    open_cl_std,
+    non_semantic_shader_debug_info_100,
     zig,
 
     pub fn instructions(self: InstructionSet) []const Instruction {
         return switch (self) {
-            .core => &[_]Instruction{
+            .core => &.{
                 .{
                     .name = "OpNop",
                     .opcode = 0,
-                    .operands = &[_]Operand{},
+                    .operands = &.{},
                 },
                 .{
                     .name = "OpUndef",
                     .opcode = 1,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpSourceContinued",
                     .opcode = 2,
-                    .operands = &[_]Operand{
-                        .{ .kind = .LiteralString, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .literal_string, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpSource",
                     .opcode = 3,
-                    .operands = &[_]Operand{
-                        .{ .kind = .SourceLanguage, .quantifier = .required },
-                        .{ .kind = .LiteralInteger, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .optional },
-                        .{ .kind = .LiteralString, .quantifier = .optional },
+                    .operands = &.{
+                        .{ .kind = .source_language, .quantifier = .required },
+                        .{ .kind = .literal_integer, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .optional },
+                        .{ .kind = .literal_string, .quantifier = .optional },
                     },
                 },
                 .{
                     .name = "OpSourceExtension",
                     .opcode = 4,
-                    .operands = &[_]Operand{
-                        .{ .kind = .LiteralString, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .literal_string, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpName",
                     .opcode = 5,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .LiteralString, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .literal_string, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpMemberName",
                     .opcode = 6,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .LiteralInteger, .quantifier = .required },
-                        .{ .kind = .LiteralString, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .literal_integer, .quantifier = .required },
+                        .{ .kind = .literal_string, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpString",
                     .opcode = 7,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .LiteralString, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .literal_string, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpLine",
                     .opcode = 8,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .LiteralInteger, .quantifier = .required },
-                        .{ .kind = .LiteralInteger, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .literal_integer, .quantifier = .required },
+                        .{ .kind = .literal_integer, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpExtension",
                     .opcode = 10,
-                    .operands = &[_]Operand{
-                        .{ .kind = .LiteralString, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .literal_string, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpExtInstImport",
                     .opcode = 11,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .LiteralString, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .literal_string, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpExtInst",
                     .opcode = 12,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .LiteralExtInstInteger, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .variadic },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .literal_ext_inst_integer, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .variadic },
                     },
                 },
                 .{
                     .name = "OpMemoryModel",
                     .opcode = 14,
-                    .operands = &[_]Operand{
-                        .{ .kind = .AddressingModel, .quantifier = .required },
-                        .{ .kind = .MemoryModel, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .addressing_model, .quantifier = .required },
+                        .{ .kind = .memory_model, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpEntryPoint",
                     .opcode = 15,
-                    .operands = &[_]Operand{
-                        .{ .kind = .ExecutionModel, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .LiteralString, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .variadic },
+                    .operands = &.{
+                        .{ .kind = .execution_model, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .literal_string, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .variadic },
                     },
                 },
                 .{
                     .name = "OpExecutionMode",
                     .opcode = 16,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .ExecutionMode, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .execution_mode, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpCapability",
                     .opcode = 17,
-                    .operands = &[_]Operand{
-                        .{ .kind = .Capability, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .capability, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpTypeVoid",
                     .opcode = 19,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResult, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpTypeBool",
                     .opcode = 20,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResult, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpTypeInt",
                     .opcode = 21,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .LiteralInteger, .quantifier = .required },
-                        .{ .kind = .LiteralInteger, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .literal_integer, .quantifier = .required },
+                        .{ .kind = .literal_integer, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpTypeFloat",
                     .opcode = 22,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .LiteralInteger, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .literal_integer, .quantifier = .required },
+                        .{ .kind = .fp_encoding, .quantifier = .optional },
                     },
                 },
                 .{
                     .name = "OpTypeVector",
                     .opcode = 23,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .LiteralInteger, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .literal_integer, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpTypeMatrix",
                     .opcode = 24,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .LiteralInteger, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .literal_integer, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpTypeImage",
                     .opcode = 25,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .Dim, .quantifier = .required },
-                        .{ .kind = .LiteralInteger, .quantifier = .required },
-                        .{ .kind = .LiteralInteger, .quantifier = .required },
-                        .{ .kind = .LiteralInteger, .quantifier = .required },
-                        .{ .kind = .LiteralInteger, .quantifier = .required },
-                        .{ .kind = .ImageFormat, .quantifier = .required },
-                        .{ .kind = .AccessQualifier, .quantifier = .optional },
+                    .operands = &.{
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .dim, .quantifier = .required },
+                        .{ .kind = .literal_integer, .quantifier = .required },
+                        .{ .kind = .literal_integer, .quantifier = .required },
+                        .{ .kind = .literal_integer, .quantifier = .required },
+                        .{ .kind = .literal_integer, .quantifier = .required },
+                        .{ .kind = .image_format, .quantifier = .required },
+                        .{ .kind = .access_qualifier, .quantifier = .optional },
                     },
                 },
                 .{
                     .name = "OpTypeSampler",
                     .opcode = 26,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResult, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpTypeSampledImage",
                     .opcode = 27,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpTypeArray",
                     .opcode = 28,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpTypeRuntimeArray",
                     .opcode = 29,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpTypeStruct",
                     .opcode = 30,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .variadic },
+                    .operands = &.{
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .variadic },
                     },
                 },
                 .{
                     .name = "OpTypeOpaque",
                     .opcode = 31,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .LiteralString, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .literal_string, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpTypePointer",
                     .opcode = 32,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .StorageClass, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .storage_class, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpTypeFunction",
                     .opcode = 33,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .variadic },
+                    .operands = &.{
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .variadic },
                     },
                 },
                 .{
                     .name = "OpTypeEvent",
                     .opcode = 34,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResult, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpTypeDeviceEvent",
                     .opcode = 35,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResult, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpTypeReserveId",
                     .opcode = 36,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResult, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpTypeQueue",
                     .opcode = 37,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResult, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpTypePipe",
                     .opcode = 38,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .AccessQualifier, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .access_qualifier, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpTypeForwardPointer",
                     .opcode = 39,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .StorageClass, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .storage_class, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpConstantTrue",
                     .opcode = 41,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpConstantFalse",
                     .opcode = 42,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpConstant",
                     .opcode = 43,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .LiteralContextDependentNumber, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .literal_context_dependent_number, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpConstantComposite",
                     .opcode = 44,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .variadic },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .variadic },
                     },
                 },
                 .{
                     .name = "OpConstantSampler",
                     .opcode = 45,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .SamplerAddressingMode, .quantifier = .required },
-                        .{ .kind = .LiteralInteger, .quantifier = .required },
-                        .{ .kind = .SamplerFilterMode, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .sampler_addressing_mode, .quantifier = .required },
+                        .{ .kind = .literal_integer, .quantifier = .required },
+                        .{ .kind = .sampler_filter_mode, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpConstantNull",
                     .opcode = 46,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpSpecConstantTrue",
                     .opcode = 48,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpSpecConstantFalse",
                     .opcode = 49,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpSpecConstant",
                     .opcode = 50,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .LiteralContextDependentNumber, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .literal_context_dependent_number, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpSpecConstantComposite",
                     .opcode = 51,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .variadic },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .variadic },
                     },
                 },
                 .{
                     .name = "OpSpecConstantOp",
                     .opcode = 52,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .LiteralSpecConstantOpInteger, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .literal_spec_constant_op_integer, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpFunction",
                     .opcode = 54,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .FunctionControl, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .function_control, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpFunctionParameter",
                     .opcode = 55,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpFunctionEnd",
                     .opcode = 56,
-                    .operands = &[_]Operand{},
+                    .operands = &.{},
                 },
                 .{
                     .name = "OpFunctionCall",
                     .opcode = 57,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .variadic },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .variadic },
                     },
                 },
                 .{
                     .name = "OpVariable",
                     .opcode = 59,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .StorageClass, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .optional },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .storage_class, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .optional },
                     },
                 },
                 .{
                     .name = "OpImageTexelPointer",
                     .opcode = 60,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpLoad",
                     .opcode = 61,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .MemoryAccess, .quantifier = .optional },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .memory_access, .quantifier = .optional },
                     },
                 },
                 .{
                     .name = "OpStore",
                     .opcode = 62,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .MemoryAccess, .quantifier = .optional },
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .memory_access, .quantifier = .optional },
                     },
                 },
                 .{
                     .name = "OpCopyMemory",
                     .opcode = 63,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .MemoryAccess, .quantifier = .optional },
-                        .{ .kind = .MemoryAccess, .quantifier = .optional },
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .memory_access, .quantifier = .optional },
+                        .{ .kind = .memory_access, .quantifier = .optional },
                     },
                 },
                 .{
                     .name = "OpCopyMemorySized",
                     .opcode = 64,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .MemoryAccess, .quantifier = .optional },
-                        .{ .kind = .MemoryAccess, .quantifier = .optional },
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .memory_access, .quantifier = .optional },
+                        .{ .kind = .memory_access, .quantifier = .optional },
                     },
                 },
                 .{
                     .name = "OpAccessChain",
                     .opcode = 65,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .variadic },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .variadic },
                     },
                 },
                 .{
                     .name = "OpInBoundsAccessChain",
                     .opcode = 66,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .variadic },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .variadic },
                     },
                 },
                 .{
                     .name = "OpPtrAccessChain",
                     .opcode = 67,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .variadic },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .variadic },
                     },
                 },
                 .{
                     .name = "OpArrayLength",
                     .opcode = 68,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .LiteralInteger, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .literal_integer, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpGenericPtrMemSemantics",
                     .opcode = 69,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpInBoundsPtrAccessChain",
                     .opcode = 70,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .variadic },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .variadic },
                     },
                 },
                 .{
                     .name = "OpDecorate",
                     .opcode = 71,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .Decoration, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .decoration, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpMemberDecorate",
                     .opcode = 72,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .LiteralInteger, .quantifier = .required },
-                        .{ .kind = .Decoration, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .literal_integer, .quantifier = .required },
+                        .{ .kind = .decoration, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpDecorationGroup",
                     .opcode = 73,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResult, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpGroupDecorate",
                     .opcode = 74,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .variadic },
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .variadic },
                     },
                 },
                 .{
                     .name = "OpGroupMemberDecorate",
                     .opcode = 75,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .PairIdRefLiteralInteger, .quantifier = .variadic },
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .pair_id_ref_literal_integer, .quantifier = .variadic },
                     },
                 },
                 .{
                     .name = "OpVectorExtractDynamic",
                     .opcode = 77,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpVectorInsertDynamic",
                     .opcode = 78,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpVectorShuffle",
                     .opcode = 79,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .LiteralInteger, .quantifier = .variadic },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .literal_integer, .quantifier = .variadic },
                     },
                 },
                 .{
                     .name = "OpCompositeConstruct",
                     .opcode = 80,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .variadic },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .variadic },
                     },
                 },
                 .{
                     .name = "OpCompositeExtract",
                     .opcode = 81,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .LiteralInteger, .quantifier = .variadic },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .literal_integer, .quantifier = .variadic },
                     },
                 },
                 .{
                     .name = "OpCompositeInsert",
                     .opcode = 82,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .LiteralInteger, .quantifier = .variadic },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .literal_integer, .quantifier = .variadic },
                     },
                 },
                 .{
                     .name = "OpCopyObject",
                     .opcode = 83,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpTranspose",
                     .opcode = 84,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpSampledImage",
                     .opcode = 86,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpImageSampleImplicitLod",
                     .opcode = 87,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .ImageOperands, .quantifier = .optional },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .image_operands, .quantifier = .optional },
                     },
                 },
                 .{
                     .name = "OpImageSampleExplicitLod",
                     .opcode = 88,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .ImageOperands, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .image_operands, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpImageSampleDrefImplicitLod",
                     .opcode = 89,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .ImageOperands, .quantifier = .optional },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .image_operands, .quantifier = .optional },
                     },
                 },
                 .{
                     .name = "OpImageSampleDrefExplicitLod",
                     .opcode = 90,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .ImageOperands, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .image_operands, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpImageSampleProjImplicitLod",
                     .opcode = 91,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .ImageOperands, .quantifier = .optional },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .image_operands, .quantifier = .optional },
                     },
                 },
                 .{
                     .name = "OpImageSampleProjExplicitLod",
                     .opcode = 92,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .ImageOperands, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .image_operands, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpImageSampleProjDrefImplicitLod",
                     .opcode = 93,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .ImageOperands, .quantifier = .optional },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .image_operands, .quantifier = .optional },
                     },
                 },
                 .{
                     .name = "OpImageSampleProjDrefExplicitLod",
                     .opcode = 94,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .ImageOperands, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .image_operands, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpImageFetch",
                     .opcode = 95,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .ImageOperands, .quantifier = .optional },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .image_operands, .quantifier = .optional },
                     },
                 },
                 .{
                     .name = "OpImageGather",
                     .opcode = 96,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .ImageOperands, .quantifier = .optional },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .image_operands, .quantifier = .optional },
                     },
                 },
                 .{
                     .name = "OpImageDrefGather",
                     .opcode = 97,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .ImageOperands, .quantifier = .optional },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .image_operands, .quantifier = .optional },
                     },
                 },
                 .{
                     .name = "OpImageRead",
                     .opcode = 98,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .ImageOperands, .quantifier = .optional },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .image_operands, .quantifier = .optional },
                     },
                 },
                 .{
                     .name = "OpImageWrite",
                     .opcode = 99,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .ImageOperands, .quantifier = .optional },
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .image_operands, .quantifier = .optional },
                     },
                 },
                 .{
                     .name = "OpImage",
                     .opcode = 100,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpImageQueryFormat",
                     .opcode = 101,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpImageQueryOrder",
                     .opcode = 102,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpImageQuerySizeLod",
                     .opcode = 103,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpImageQuerySize",
                     .opcode = 104,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpImageQueryLod",
                     .opcode = 105,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpImageQueryLevels",
                     .opcode = 106,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpImageQuerySamples",
                     .opcode = 107,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpConvertFToU",
                     .opcode = 109,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpConvertFToS",
                     .opcode = 110,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpConvertSToF",
                     .opcode = 111,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpConvertUToF",
                     .opcode = 112,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpUConvert",
                     .opcode = 113,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpSConvert",
                     .opcode = 114,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpFConvert",
                     .opcode = 115,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpQuantizeToF16",
                     .opcode = 116,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpConvertPtrToU",
                     .opcode = 117,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpSatConvertSToU",
                     .opcode = 118,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpSatConvertUToS",
                     .opcode = 119,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpConvertUToPtr",
                     .opcode = 120,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpPtrCastToGeneric",
                     .opcode = 121,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpGenericCastToPtr",
                     .opcode = 122,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpGenericCastToPtrExplicit",
                     .opcode = 123,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .StorageClass, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .storage_class, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpBitcast",
                     .opcode = 124,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpSNegate",
                     .opcode = 126,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpFNegate",
                     .opcode = 127,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpIAdd",
                     .opcode = 128,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpFAdd",
                     .opcode = 129,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpISub",
                     .opcode = 130,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpFSub",
                     .opcode = 131,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpIMul",
                     .opcode = 132,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpFMul",
                     .opcode = 133,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpUDiv",
                     .opcode = 134,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpSDiv",
                     .opcode = 135,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpFDiv",
                     .opcode = 136,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpUMod",
                     .opcode = 137,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpSRem",
                     .opcode = 138,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpSMod",
                     .opcode = 139,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpFRem",
                     .opcode = 140,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpFMod",
                     .opcode = 141,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpVectorTimesScalar",
                     .opcode = 142,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpMatrixTimesScalar",
                     .opcode = 143,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpVectorTimesMatrix",
                     .opcode = 144,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpMatrixTimesVector",
                     .opcode = 145,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpMatrixTimesMatrix",
                     .opcode = 146,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpOuterProduct",
                     .opcode = 147,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpDot",
                     .opcode = 148,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpIAddCarry",
                     .opcode = 149,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpISubBorrow",
                     .opcode = 150,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpUMulExtended",
                     .opcode = 151,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpSMulExtended",
                     .opcode = 152,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpAny",
                     .opcode = 154,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpAll",
                     .opcode = 155,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpIsNan",
                     .opcode = 156,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpIsInf",
                     .opcode = 157,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpIsFinite",
                     .opcode = 158,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpIsNormal",
                     .opcode = 159,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpSignBitSet",
                     .opcode = 160,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpLessOrGreater",
                     .opcode = 161,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpOrdered",
                     .opcode = 162,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpUnordered",
                     .opcode = 163,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpLogicalEqual",
                     .opcode = 164,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpLogicalNotEqual",
                     .opcode = 165,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpLogicalOr",
                     .opcode = 166,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpLogicalAnd",
                     .opcode = 167,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpLogicalNot",
                     .opcode = 168,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpSelect",
                     .opcode = 169,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpIEqual",
                     .opcode = 170,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpINotEqual",
                     .opcode = 171,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpUGreaterThan",
                     .opcode = 172,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpSGreaterThan",
                     .opcode = 173,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpUGreaterThanEqual",
                     .opcode = 174,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpSGreaterThanEqual",
                     .opcode = 175,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpULessThan",
                     .opcode = 176,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpSLessThan",
                     .opcode = 177,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpULessThanEqual",
                     .opcode = 178,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpSLessThanEqual",
                     .opcode = 179,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpFOrdEqual",
                     .opcode = 180,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpFUnordEqual",
                     .opcode = 181,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpFOrdNotEqual",
                     .opcode = 182,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpFUnordNotEqual",
                     .opcode = 183,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpFOrdLessThan",
                     .opcode = 184,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpFUnordLessThan",
                     .opcode = 185,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpFOrdGreaterThan",
                     .opcode = 186,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpFUnordGreaterThan",
                     .opcode = 187,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpFOrdLessThanEqual",
                     .opcode = 188,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpFUnordLessThanEqual",
                     .opcode = 189,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpFOrdGreaterThanEqual",
                     .opcode = 190,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpFUnordGreaterThanEqual",
                     .opcode = 191,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpShiftRightLogical",
                     .opcode = 194,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpShiftRightArithmetic",
                     .opcode = 195,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpShiftLeftLogical",
                     .opcode = 196,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpBitwiseOr",
                     .opcode = 197,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpBitwiseXor",
                     .opcode = 198,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpBitwiseAnd",
                     .opcode = 199,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpNot",
                     .opcode = 200,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpBitFieldInsert",
                     .opcode = 201,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpBitFieldSExtract",
                     .opcode = 202,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpBitFieldUExtract",
                     .opcode = 203,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpBitReverse",
                     .opcode = 204,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpBitCount",
                     .opcode = 205,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpDPdx",
                     .opcode = 207,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpDPdy",
                     .opcode = 208,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpFwidth",
                     .opcode = 209,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpDPdxFine",
                     .opcode = 210,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpDPdyFine",
                     .opcode = 211,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpFwidthFine",
                     .opcode = 212,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpDPdxCoarse",
                     .opcode = 213,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpDPdyCoarse",
                     .opcode = 214,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpFwidthCoarse",
                     .opcode = 215,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpEmitVertex",
                     .opcode = 218,
-                    .operands = &[_]Operand{},
+                    .operands = &.{},
                 },
                 .{
                     .name = "OpEndPrimitive",
                     .opcode = 219,
-                    .operands = &[_]Operand{},
+                    .operands = &.{},
                 },
                 .{
                     .name = "OpEmitStreamVertex",
                     .opcode = 220,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpEndStreamPrimitive",
                     .opcode = 221,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpControlBarrier",
                     .opcode = 224,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdScope, .quantifier = .required },
-                        .{ .kind = .IdScope, .quantifier = .required },
-                        .{ .kind = .IdMemorySemantics, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_scope, .quantifier = .required },
+                        .{ .kind = .id_scope, .quantifier = .required },
+                        .{ .kind = .id_memory_semantics, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpMemoryBarrier",
                     .opcode = 225,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdScope, .quantifier = .required },
-                        .{ .kind = .IdMemorySemantics, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_scope, .quantifier = .required },
+                        .{ .kind = .id_memory_semantics, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpAtomicLoad",
                     .opcode = 227,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdScope, .quantifier = .required },
-                        .{ .kind = .IdMemorySemantics, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_scope, .quantifier = .required },
+                        .{ .kind = .id_memory_semantics, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpAtomicStore",
                     .opcode = 228,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdScope, .quantifier = .required },
-                        .{ .kind = .IdMemorySemantics, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_scope, .quantifier = .required },
+                        .{ .kind = .id_memory_semantics, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpAtomicExchange",
                     .opcode = 229,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdScope, .quantifier = .required },
-                        .{ .kind = .IdMemorySemantics, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_scope, .quantifier = .required },
+                        .{ .kind = .id_memory_semantics, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpAtomicCompareExchange",
                     .opcode = 230,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdScope, .quantifier = .required },
-                        .{ .kind = .IdMemorySemantics, .quantifier = .required },
-                        .{ .kind = .IdMemorySemantics, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_scope, .quantifier = .required },
+                        .{ .kind = .id_memory_semantics, .quantifier = .required },
+                        .{ .kind = .id_memory_semantics, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpAtomicCompareExchangeWeak",
                     .opcode = 231,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdScope, .quantifier = .required },
-                        .{ .kind = .IdMemorySemantics, .quantifier = .required },
-                        .{ .kind = .IdMemorySemantics, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_scope, .quantifier = .required },
+                        .{ .kind = .id_memory_semantics, .quantifier = .required },
+                        .{ .kind = .id_memory_semantics, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpAtomicIIncrement",
                     .opcode = 232,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdScope, .quantifier = .required },
-                        .{ .kind = .IdMemorySemantics, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_scope, .quantifier = .required },
+                        .{ .kind = .id_memory_semantics, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpAtomicIDecrement",
                     .opcode = 233,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdScope, .quantifier = .required },
-                        .{ .kind = .IdMemorySemantics, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_scope, .quantifier = .required },
+                        .{ .kind = .id_memory_semantics, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpAtomicIAdd",
                     .opcode = 234,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdScope, .quantifier = .required },
-                        .{ .kind = .IdMemorySemantics, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_scope, .quantifier = .required },
+                        .{ .kind = .id_memory_semantics, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpAtomicISub",
                     .opcode = 235,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdScope, .quantifier = .required },
-                        .{ .kind = .IdMemorySemantics, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_scope, .quantifier = .required },
+                        .{ .kind = .id_memory_semantics, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpAtomicSMin",
                     .opcode = 236,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdScope, .quantifier = .required },
-                        .{ .kind = .IdMemorySemantics, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_scope, .quantifier = .required },
+                        .{ .kind = .id_memory_semantics, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpAtomicUMin",
                     .opcode = 237,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdScope, .quantifier = .required },
-                        .{ .kind = .IdMemorySemantics, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_scope, .quantifier = .required },
+                        .{ .kind = .id_memory_semantics, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpAtomicSMax",
                     .opcode = 238,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdScope, .quantifier = .required },
-                        .{ .kind = .IdMemorySemantics, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_scope, .quantifier = .required },
+                        .{ .kind = .id_memory_semantics, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpAtomicUMax",
                     .opcode = 239,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdScope, .quantifier = .required },
-                        .{ .kind = .IdMemorySemantics, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_scope, .quantifier = .required },
+                        .{ .kind = .id_memory_semantics, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpAtomicAnd",
                     .opcode = 240,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdScope, .quantifier = .required },
-                        .{ .kind = .IdMemorySemantics, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_scope, .quantifier = .required },
+                        .{ .kind = .id_memory_semantics, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpAtomicOr",
                     .opcode = 241,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdScope, .quantifier = .required },
-                        .{ .kind = .IdMemorySemantics, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_scope, .quantifier = .required },
+                        .{ .kind = .id_memory_semantics, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpAtomicXor",
                     .opcode = 242,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdScope, .quantifier = .required },
-                        .{ .kind = .IdMemorySemantics, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_scope, .quantifier = .required },
+                        .{ .kind = .id_memory_semantics, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpPhi",
                     .opcode = 245,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .PairIdRefIdRef, .quantifier = .variadic },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .pair_id_ref_id_ref, .quantifier = .variadic },
                     },
                 },
                 .{
                     .name = "OpLoopMerge",
                     .opcode = 246,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .LoopControl, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .loop_control, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpSelectionMerge",
                     .opcode = 247,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .SelectionControl, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .selection_control, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpLabel",
                     .opcode = 248,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResult, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpBranch",
                     .opcode = 249,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpBranchConditional",
                     .opcode = 250,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .LiteralInteger, .quantifier = .variadic },
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .literal_integer, .quantifier = .variadic },
                     },
                 },
                 .{
                     .name = "OpSwitch",
                     .opcode = 251,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .PairLiteralIntegerIdRef, .quantifier = .variadic },
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .pair_literal_integer_id_ref, .quantifier = .variadic },
                     },
                 },
                 .{
                     .name = "OpKill",
                     .opcode = 252,
-                    .operands = &[_]Operand{},
+                    .operands = &.{},
                 },
                 .{
                     .name = "OpReturn",
                     .opcode = 253,
-                    .operands = &[_]Operand{},
+                    .operands = &.{},
                 },
                 .{
                     .name = "OpReturnValue",
                     .opcode = 254,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpUnreachable",
                     .opcode = 255,
-                    .operands = &[_]Operand{},
+                    .operands = &.{},
                 },
                 .{
                     .name = "OpLifetimeStart",
                     .opcode = 256,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .LiteralInteger, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .literal_integer, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpLifetimeStop",
                     .opcode = 257,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .LiteralInteger, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .literal_integer, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpGroupAsyncCopy",
                     .opcode = 259,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdScope, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_scope, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpGroupWaitEvents",
                     .opcode = 260,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdScope, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_scope, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpGroupAll",
                     .opcode = 261,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdScope, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_scope, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpGroupAny",
                     .opcode = 262,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdScope, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_scope, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpGroupBroadcast",
                     .opcode = 263,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdScope, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_scope, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpGroupIAdd",
                     .opcode = 264,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdScope, .quantifier = .required },
-                        .{ .kind = .GroupOperation, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_scope, .quantifier = .required },
+                        .{ .kind = .group_operation, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpGroupFAdd",
                     .opcode = 265,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdScope, .quantifier = .required },
-                        .{ .kind = .GroupOperation, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_scope, .quantifier = .required },
+                        .{ .kind = .group_operation, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpGroupFMin",
                     .opcode = 266,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdScope, .quantifier = .required },
-                        .{ .kind = .GroupOperation, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_scope, .quantifier = .required },
+                        .{ .kind = .group_operation, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpGroupUMin",
                     .opcode = 267,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdScope, .quantifier = .required },
-                        .{ .kind = .GroupOperation, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_scope, .quantifier = .required },
+                        .{ .kind = .group_operation, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpGroupSMin",
                     .opcode = 268,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdScope, .quantifier = .required },
-                        .{ .kind = .GroupOperation, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_scope, .quantifier = .required },
+                        .{ .kind = .group_operation, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpGroupFMax",
                     .opcode = 269,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdScope, .quantifier = .required },
-                        .{ .kind = .GroupOperation, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_scope, .quantifier = .required },
+                        .{ .kind = .group_operation, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpGroupUMax",
                     .opcode = 270,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdScope, .quantifier = .required },
-                        .{ .kind = .GroupOperation, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_scope, .quantifier = .required },
+                        .{ .kind = .group_operation, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpGroupSMax",
                     .opcode = 271,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdScope, .quantifier = .required },
-                        .{ .kind = .GroupOperation, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_scope, .quantifier = .required },
+                        .{ .kind = .group_operation, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpReadPipe",
                     .opcode = 274,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpWritePipe",
                     .opcode = 275,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpReservedReadPipe",
                     .opcode = 276,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpReservedWritePipe",
                     .opcode = 277,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpReserveReadPipePackets",
                     .opcode = 278,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpReserveWritePipePackets",
                     .opcode = 279,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpCommitReadPipe",
                     .opcode = 280,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpCommitWritePipe",
                     .opcode = 281,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpIsValidReserveId",
                     .opcode = 282,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpGetNumPipePackets",
                     .opcode = 283,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpGetMaxPipePackets",
                     .opcode = 284,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpGroupReserveReadPipePackets",
                     .opcode = 285,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdScope, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_scope, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpGroupReserveWritePipePackets",
                     .opcode = 286,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdScope, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_scope, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpGroupCommitReadPipe",
                     .opcode = 287,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdScope, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_scope, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpGroupCommitWritePipe",
                     .opcode = 288,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdScope, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_scope, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpEnqueueMarker",
                     .opcode = 291,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpEnqueueKernel",
                     .opcode = 292,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .variadic },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .variadic },
                     },
                 },
                 .{
                     .name = "OpGetKernelNDrangeSubGroupCount",
                     .opcode = 293,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpGetKernelNDrangeMaxSubGroupSize",
                     .opcode = 294,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpGetKernelWorkGroupSize",
                     .opcode = 295,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpGetKernelPreferredWorkGroupSizeMultiple",
                     .opcode = 296,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpRetainEvent",
                     .opcode = 297,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpReleaseEvent",
                     .opcode = 298,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpCreateUserEvent",
                     .opcode = 299,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpIsValidEvent",
                     .opcode = 300,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpSetUserEventStatus",
                     .opcode = 301,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpCaptureEventProfilingInfo",
                     .opcode = 302,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpGetDefaultQueue",
                     .opcode = 303,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpBuildNDRange",
                     .opcode = 304,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpImageSparseSampleImplicitLod",
                     .opcode = 305,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .ImageOperands, .quantifier = .optional },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .image_operands, .quantifier = .optional },
                     },
                 },
                 .{
                     .name = "OpImageSparseSampleExplicitLod",
                     .opcode = 306,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .ImageOperands, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .image_operands, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpImageSparseSampleDrefImplicitLod",
                     .opcode = 307,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .ImageOperands, .quantifier = .optional },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .image_operands, .quantifier = .optional },
                     },
                 },
                 .{
                     .name = "OpImageSparseSampleDrefExplicitLod",
                     .opcode = 308,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .ImageOperands, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .image_operands, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpImageSparseSampleProjImplicitLod",
                     .opcode = 309,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .ImageOperands, .quantifier = .optional },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .image_operands, .quantifier = .optional },
                     },
                 },
                 .{
                     .name = "OpImageSparseSampleProjExplicitLod",
                     .opcode = 310,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .ImageOperands, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .image_operands, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpImageSparseSampleProjDrefImplicitLod",
                     .opcode = 311,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .ImageOperands, .quantifier = .optional },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .image_operands, .quantifier = .optional },
                     },
                 },
                 .{
                     .name = "OpImageSparseSampleProjDrefExplicitLod",
                     .opcode = 312,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .ImageOperands, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .image_operands, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpImageSparseFetch",
                     .opcode = 313,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .ImageOperands, .quantifier = .optional },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .image_operands, .quantifier = .optional },
                     },
                 },
                 .{
                     .name = "OpImageSparseGather",
                     .opcode = 314,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .ImageOperands, .quantifier = .optional },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .image_operands, .quantifier = .optional },
                     },
                 },
                 .{
                     .name = "OpImageSparseDrefGather",
                     .opcode = 315,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .ImageOperands, .quantifier = .optional },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .image_operands, .quantifier = .optional },
                     },
                 },
                 .{
                     .name = "OpImageSparseTexelsResident",
                     .opcode = 316,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpNoLine",
                     .opcode = 317,
-                    .operands = &[_]Operand{},
+                    .operands = &.{},
                 },
                 .{
                     .name = "OpAtomicFlagTestAndSet",
                     .opcode = 318,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdScope, .quantifier = .required },
-                        .{ .kind = .IdMemorySemantics, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_scope, .quantifier = .required },
+                        .{ .kind = .id_memory_semantics, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpAtomicFlagClear",
                     .opcode = 319,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdScope, .quantifier = .required },
-                        .{ .kind = .IdMemorySemantics, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_scope, .quantifier = .required },
+                        .{ .kind = .id_memory_semantics, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpImageSparseRead",
                     .opcode = 320,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .ImageOperands, .quantifier = .optional },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .image_operands, .quantifier = .optional },
                     },
                 },
                 .{
                     .name = "OpSizeOf",
                     .opcode = 321,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpTypePipeStorage",
                     .opcode = 322,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResult, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpConstantPipeStorage",
                     .opcode = 323,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .LiteralInteger, .quantifier = .required },
-                        .{ .kind = .LiteralInteger, .quantifier = .required },
-                        .{ .kind = .LiteralInteger, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .literal_integer, .quantifier = .required },
+                        .{ .kind = .literal_integer, .quantifier = .required },
+                        .{ .kind = .literal_integer, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpCreatePipeFromPipeStorage",
                     .opcode = 324,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpGetKernelLocalSizeForSubgroupCount",
                     .opcode = 325,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpGetKernelMaxNumSubgroups",
                     .opcode = 326,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpTypeNamedBarrier",
                     .opcode = 327,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResult, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpNamedBarrierInitialize",
                     .opcode = 328,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpMemoryNamedBarrier",
                     .opcode = 329,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdScope, .quantifier = .required },
-                        .{ .kind = .IdMemorySemantics, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_scope, .quantifier = .required },
+                        .{ .kind = .id_memory_semantics, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpModuleProcessed",
                     .opcode = 330,
-                    .operands = &[_]Operand{
-                        .{ .kind = .LiteralString, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .literal_string, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpExecutionModeId",
                     .opcode = 331,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .ExecutionMode, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .execution_mode, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpDecorateId",
                     .opcode = 332,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .Decoration, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .decoration, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpGroupNonUniformElect",
                     .opcode = 333,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdScope, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_scope, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpGroupNonUniformAll",
                     .opcode = 334,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdScope, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_scope, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpGroupNonUniformAny",
                     .opcode = 335,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdScope, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_scope, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpGroupNonUniformAllEqual",
                     .opcode = 336,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdScope, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_scope, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpGroupNonUniformBroadcast",
                     .opcode = 337,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdScope, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_scope, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpGroupNonUniformBroadcastFirst",
                     .opcode = 338,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdScope, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_scope, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpGroupNonUniformBallot",
                     .opcode = 339,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdScope, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_scope, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpGroupNonUniformInverseBallot",
                     .opcode = 340,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdScope, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_scope, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpGroupNonUniformBallotBitExtract",
                     .opcode = 341,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdScope, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_scope, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpGroupNonUniformBallotBitCount",
                     .opcode = 342,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdScope, .quantifier = .required },
-                        .{ .kind = .GroupOperation, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_scope, .quantifier = .required },
+                        .{ .kind = .group_operation, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpGroupNonUniformBallotFindLSB",
                     .opcode = 343,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdScope, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_scope, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpGroupNonUniformBallotFindMSB",
                     .opcode = 344,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdScope, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_scope, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpGroupNonUniformShuffle",
                     .opcode = 345,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdScope, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_scope, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpGroupNonUniformShuffleXor",
                     .opcode = 346,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdScope, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_scope, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpGroupNonUniformShuffleUp",
                     .opcode = 347,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdScope, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_scope, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpGroupNonUniformShuffleDown",
                     .opcode = 348,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdScope, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_scope, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpGroupNonUniformIAdd",
                     .opcode = 349,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdScope, .quantifier = .required },
-                        .{ .kind = .GroupOperation, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .optional },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_scope, .quantifier = .required },
+                        .{ .kind = .group_operation, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .optional },
                     },
                 },
                 .{
                     .name = "OpGroupNonUniformFAdd",
                     .opcode = 350,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdScope, .quantifier = .required },
-                        .{ .kind = .GroupOperation, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .optional },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_scope, .quantifier = .required },
+                        .{ .kind = .group_operation, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .optional },
                     },
                 },
                 .{
                     .name = "OpGroupNonUniformIMul",
                     .opcode = 351,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdScope, .quantifier = .required },
-                        .{ .kind = .GroupOperation, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .optional },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_scope, .quantifier = .required },
+                        .{ .kind = .group_operation, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .optional },
                     },
                 },
                 .{
                     .name = "OpGroupNonUniformFMul",
                     .opcode = 352,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdScope, .quantifier = .required },
-                        .{ .kind = .GroupOperation, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .optional },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_scope, .quantifier = .required },
+                        .{ .kind = .group_operation, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .optional },
                     },
                 },
                 .{
                     .name = "OpGroupNonUniformSMin",
                     .opcode = 353,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdScope, .quantifier = .required },
-                        .{ .kind = .GroupOperation, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .optional },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_scope, .quantifier = .required },
+                        .{ .kind = .group_operation, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .optional },
                     },
                 },
                 .{
                     .name = "OpGroupNonUniformUMin",
                     .opcode = 354,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdScope, .quantifier = .required },
-                        .{ .kind = .GroupOperation, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .optional },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_scope, .quantifier = .required },
+                        .{ .kind = .group_operation, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .optional },
                     },
                 },
                 .{
                     .name = "OpGroupNonUniformFMin",
                     .opcode = 355,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdScope, .quantifier = .required },
-                        .{ .kind = .GroupOperation, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .optional },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_scope, .quantifier = .required },
+                        .{ .kind = .group_operation, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .optional },
                     },
                 },
                 .{
                     .name = "OpGroupNonUniformSMax",
                     .opcode = 356,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdScope, .quantifier = .required },
-                        .{ .kind = .GroupOperation, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .optional },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_scope, .quantifier = .required },
+                        .{ .kind = .group_operation, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .optional },
                     },
                 },
                 .{
                     .name = "OpGroupNonUniformUMax",
                     .opcode = 357,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdScope, .quantifier = .required },
-                        .{ .kind = .GroupOperation, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .optional },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_scope, .quantifier = .required },
+                        .{ .kind = .group_operation, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .optional },
                     },
                 },
                 .{
                     .name = "OpGroupNonUniformFMax",
                     .opcode = 358,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdScope, .quantifier = .required },
-                        .{ .kind = .GroupOperation, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .optional },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_scope, .quantifier = .required },
+                        .{ .kind = .group_operation, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .optional },
                     },
                 },
                 .{
                     .name = "OpGroupNonUniformBitwiseAnd",
                     .opcode = 359,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdScope, .quantifier = .required },
-                        .{ .kind = .GroupOperation, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .optional },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_scope, .quantifier = .required },
+                        .{ .kind = .group_operation, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .optional },
                     },
                 },
                 .{
                     .name = "OpGroupNonUniformBitwiseOr",
                     .opcode = 360,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdScope, .quantifier = .required },
-                        .{ .kind = .GroupOperation, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .optional },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_scope, .quantifier = .required },
+                        .{ .kind = .group_operation, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .optional },
                     },
                 },
                 .{
                     .name = "OpGroupNonUniformBitwiseXor",
                     .opcode = 361,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdScope, .quantifier = .required },
-                        .{ .kind = .GroupOperation, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .optional },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_scope, .quantifier = .required },
+                        .{ .kind = .group_operation, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .optional },
                     },
                 },
                 .{
                     .name = "OpGroupNonUniformLogicalAnd",
                     .opcode = 362,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdScope, .quantifier = .required },
-                        .{ .kind = .GroupOperation, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .optional },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_scope, .quantifier = .required },
+                        .{ .kind = .group_operation, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .optional },
                     },
                 },
                 .{
                     .name = "OpGroupNonUniformLogicalOr",
                     .opcode = 363,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdScope, .quantifier = .required },
-                        .{ .kind = .GroupOperation, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .optional },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_scope, .quantifier = .required },
+                        .{ .kind = .group_operation, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .optional },
                     },
                 },
                 .{
                     .name = "OpGroupNonUniformLogicalXor",
                     .opcode = 364,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdScope, .quantifier = .required },
-                        .{ .kind = .GroupOperation, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .optional },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_scope, .quantifier = .required },
+                        .{ .kind = .group_operation, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .optional },
                     },
                 },
                 .{
                     .name = "OpGroupNonUniformQuadBroadcast",
                     .opcode = 365,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdScope, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_scope, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpGroupNonUniformQuadSwap",
                     .opcode = 366,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdScope, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_scope, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpCopyLogical",
                     .opcode = 400,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpPtrEqual",
                     .opcode = 401,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpPtrNotEqual",
                     .opcode = 402,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpPtrDiff",
                     .opcode = 403,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpColorAttachmentReadEXT",
                     .opcode = 4160,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .optional },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .optional },
                     },
                 },
                 .{
                     .name = "OpDepthAttachmentReadEXT",
                     .opcode = 4161,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .optional },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .optional },
                     },
                 },
                 .{
                     .name = "OpStencilAttachmentReadEXT",
                     .opcode = 4162,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .optional },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .optional },
+                    },
+                },
+                .{
+                    .name = "OpTypeTensorARM",
+                    .opcode = 4163,
+                    .operands = &.{
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .optional },
+                        .{ .kind = .id_ref, .quantifier = .optional },
+                    },
+                },
+                .{
+                    .name = "OpTensorReadARM",
+                    .opcode = 4164,
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .tensor_operands, .quantifier = .optional },
+                    },
+                },
+                .{
+                    .name = "OpTensorWriteARM",
+                    .opcode = 4165,
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .tensor_operands, .quantifier = .optional },
+                    },
+                },
+                .{
+                    .name = "OpTensorQuerySizeARM",
+                    .opcode = 4166,
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                    },
+                },
+                .{
+                    .name = "OpGraphConstantARM",
+                    .opcode = 4181,
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .literal_integer, .quantifier = .required },
+                    },
+                },
+                .{
+                    .name = "OpGraphEntryPointARM",
+                    .opcode = 4182,
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .literal_string, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .variadic },
+                    },
+                },
+                .{
+                    .name = "OpGraphARM",
+                    .opcode = 4183,
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                    },
+                },
+                .{
+                    .name = "OpGraphInputARM",
+                    .opcode = 4184,
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .variadic },
+                    },
+                },
+                .{
+                    .name = "OpGraphSetOutputARM",
+                    .opcode = 4185,
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .variadic },
+                    },
+                },
+                .{
+                    .name = "OpGraphEndARM",
+                    .opcode = 4186,
+                    .operands = &.{},
+                },
+                .{
+                    .name = "OpTypeGraphARM",
+                    .opcode = 4190,
+                    .operands = &.{
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .literal_integer, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .variadic },
                     },
                 },
                 .{
                     .name = "OpTerminateInvocation",
                     .opcode = 4416,
-                    .operands = &[_]Operand{},
+                    .operands = &.{},
+                },
+                .{
+                    .name = "OpTypeUntypedPointerKHR",
+                    .opcode = 4417,
+                    .operands = &.{
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .storage_class, .quantifier = .required },
+                    },
+                },
+                .{
+                    .name = "OpUntypedVariableKHR",
+                    .opcode = 4418,
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .storage_class, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .optional },
+                        .{ .kind = .id_ref, .quantifier = .optional },
+                    },
+                },
+                .{
+                    .name = "OpUntypedAccessChainKHR",
+                    .opcode = 4419,
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .variadic },
+                    },
+                },
+                .{
+                    .name = "OpUntypedInBoundsAccessChainKHR",
+                    .opcode = 4420,
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .variadic },
+                    },
                 },
                 .{
                     .name = "OpSubgroupBallotKHR",
                     .opcode = 4421,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpSubgroupFirstInvocationKHR",
                     .opcode = 4422,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                    },
+                },
+                .{
+                    .name = "OpUntypedPtrAccessChainKHR",
+                    .opcode = 4423,
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .variadic },
+                    },
+                },
+                .{
+                    .name = "OpUntypedInBoundsPtrAccessChainKHR",
+                    .opcode = 4424,
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .variadic },
+                    },
+                },
+                .{
+                    .name = "OpUntypedArrayLengthKHR",
+                    .opcode = 4425,
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .literal_integer, .quantifier = .required },
+                    },
+                },
+                .{
+                    .name = "OpUntypedPrefetchKHR",
+                    .opcode = 4426,
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .optional },
+                        .{ .kind = .id_ref, .quantifier = .optional },
+                        .{ .kind = .id_ref, .quantifier = .optional },
                     },
                 },
                 .{
                     .name = "OpSubgroupAllKHR",
                     .opcode = 4428,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpSubgroupAnyKHR",
                     .opcode = 4429,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpSubgroupAllEqualKHR",
                     .opcode = 4430,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpGroupNonUniformRotateKHR",
                     .opcode = 4431,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdScope, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .optional },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_scope, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .optional },
                     },
                 },
                 .{
                     .name = "OpSubgroupReadInvocationKHR",
                     .opcode = 4432,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                    },
+                },
+                .{
+                    .name = "OpExtInstWithForwardRefsKHR",
+                    .opcode = 4433,
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .literal_ext_inst_integer, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .variadic },
                     },
                 },
                 .{
                     .name = "OpTraceRayKHR",
                     .opcode = 4445,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpExecuteCallableKHR",
                     .opcode = 4446,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpConvertUToAccelerationStructureKHR",
                     .opcode = 4447,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpIgnoreIntersectionKHR",
                     .opcode = 4448,
-                    .operands = &[_]Operand{},
+                    .operands = &.{},
                 },
                 .{
                     .name = "OpTerminateRayKHR",
                     .opcode = 4449,
-                    .operands = &[_]Operand{},
+                    .operands = &.{},
                 },
                 .{
                     .name = "OpSDot",
                     .opcode = 4450,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .PackedVectorFormat, .quantifier = .optional },
-                    },
-                },
-                .{
-                    .name = "OpSDotKHR",
-                    .opcode = 4450,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .PackedVectorFormat, .quantifier = .optional },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .packed_vector_format, .quantifier = .optional },
                     },
                 },
                 .{
                     .name = "OpUDot",
                     .opcode = 4451,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .PackedVectorFormat, .quantifier = .optional },
-                    },
-                },
-                .{
-                    .name = "OpUDotKHR",
-                    .opcode = 4451,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .PackedVectorFormat, .quantifier = .optional },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .packed_vector_format, .quantifier = .optional },
                     },
                 },
                 .{
                     .name = "OpSUDot",
                     .opcode = 4452,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .PackedVectorFormat, .quantifier = .optional },
-                    },
-                },
-                .{
-                    .name = "OpSUDotKHR",
-                    .opcode = 4452,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .PackedVectorFormat, .quantifier = .optional },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .packed_vector_format, .quantifier = .optional },
                     },
                 },
                 .{
                     .name = "OpSDotAccSat",
                     .opcode = 4453,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .PackedVectorFormat, .quantifier = .optional },
-                    },
-                },
-                .{
-                    .name = "OpSDotAccSatKHR",
-                    .opcode = 4453,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .PackedVectorFormat, .quantifier = .optional },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .packed_vector_format, .quantifier = .optional },
                     },
                 },
                 .{
                     .name = "OpUDotAccSat",
                     .opcode = 4454,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .PackedVectorFormat, .quantifier = .optional },
-                    },
-                },
-                .{
-                    .name = "OpUDotAccSatKHR",
-                    .opcode = 4454,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .PackedVectorFormat, .quantifier = .optional },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .packed_vector_format, .quantifier = .optional },
                     },
                 },
                 .{
                     .name = "OpSUDotAccSat",
                     .opcode = 4455,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .PackedVectorFormat, .quantifier = .optional },
-                    },
-                },
-                .{
-                    .name = "OpSUDotAccSatKHR",
-                    .opcode = 4455,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .PackedVectorFormat, .quantifier = .optional },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .packed_vector_format, .quantifier = .optional },
                     },
                 },
                 .{
                     .name = "OpTypeCooperativeMatrixKHR",
                     .opcode = 4456,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdScope, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_scope, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpCooperativeMatrixLoadKHR",
                     .opcode = 4457,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .optional },
-                        .{ .kind = .MemoryAccess, .quantifier = .optional },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .optional },
+                        .{ .kind = .memory_access, .quantifier = .optional },
                     },
                 },
                 .{
                     .name = "OpCooperativeMatrixStoreKHR",
                     .opcode = 4458,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .optional },
-                        .{ .kind = .MemoryAccess, .quantifier = .optional },
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .optional },
+                        .{ .kind = .memory_access, .quantifier = .optional },
                     },
                 },
                 .{
                     .name = "OpCooperativeMatrixMulAddKHR",
                     .opcode = 4459,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .CooperativeMatrixOperands, .quantifier = .optional },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .cooperative_matrix_operands, .quantifier = .optional },
                     },
                 },
                 .{
                     .name = "OpCooperativeMatrixLengthKHR",
                     .opcode = 4460,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                    },
+                },
+                .{
+                    .name = "OpConstantCompositeReplicateEXT",
+                    .opcode = 4461,
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                    },
+                },
+                .{
+                    .name = "OpSpecConstantCompositeReplicateEXT",
+                    .opcode = 4462,
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                    },
+                },
+                .{
+                    .name = "OpCompositeConstructReplicateEXT",
+                    .opcode = 4463,
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpTypeRayQueryKHR",
                     .opcode = 4472,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResult, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpRayQueryInitializeKHR",
                     .opcode = 4473,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpRayQueryTerminateKHR",
                     .opcode = 4474,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpRayQueryGenerateIntersectionKHR",
                     .opcode = 4475,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpRayQueryConfirmIntersectionKHR",
                     .opcode = 4476,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpRayQueryProceedKHR",
                     .opcode = 4477,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpRayQueryGetIntersectionTypeKHR",
                     .opcode = 4479,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpImageSampleWeightedQCOM",
                     .opcode = 4480,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpImageBoxFilterQCOM",
                     .opcode = 4481,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpImageBlockMatchSSDQCOM",
                     .opcode = 4482,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpImageBlockMatchSADQCOM",
                     .opcode = 4483,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpImageBlockMatchWindowSSDQCOM",
                     .opcode = 4500,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpImageBlockMatchWindowSADQCOM",
                     .opcode = 4501,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpImageBlockMatchGatherSSDQCOM",
                     .opcode = 4502,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpImageBlockMatchGatherSADQCOM",
                     .opcode = 4503,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpGroupIAddNonUniformAMD",
                     .opcode = 5000,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdScope, .quantifier = .required },
-                        .{ .kind = .GroupOperation, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_scope, .quantifier = .required },
+                        .{ .kind = .group_operation, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpGroupFAddNonUniformAMD",
                     .opcode = 5001,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdScope, .quantifier = .required },
-                        .{ .kind = .GroupOperation, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_scope, .quantifier = .required },
+                        .{ .kind = .group_operation, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpGroupFMinNonUniformAMD",
                     .opcode = 5002,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdScope, .quantifier = .required },
-                        .{ .kind = .GroupOperation, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_scope, .quantifier = .required },
+                        .{ .kind = .group_operation, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpGroupUMinNonUniformAMD",
                     .opcode = 5003,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdScope, .quantifier = .required },
-                        .{ .kind = .GroupOperation, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_scope, .quantifier = .required },
+                        .{ .kind = .group_operation, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpGroupSMinNonUniformAMD",
                     .opcode = 5004,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdScope, .quantifier = .required },
-                        .{ .kind = .GroupOperation, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_scope, .quantifier = .required },
+                        .{ .kind = .group_operation, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpGroupFMaxNonUniformAMD",
                     .opcode = 5005,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdScope, .quantifier = .required },
-                        .{ .kind = .GroupOperation, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_scope, .quantifier = .required },
+                        .{ .kind = .group_operation, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpGroupUMaxNonUniformAMD",
                     .opcode = 5006,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdScope, .quantifier = .required },
-                        .{ .kind = .GroupOperation, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_scope, .quantifier = .required },
+                        .{ .kind = .group_operation, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpGroupSMaxNonUniformAMD",
                     .opcode = 5007,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdScope, .quantifier = .required },
-                        .{ .kind = .GroupOperation, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_scope, .quantifier = .required },
+                        .{ .kind = .group_operation, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpFragmentMaskFetchAMD",
                     .opcode = 5011,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpFragmentFetchAMD",
                     .opcode = 5012,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpReadClockKHR",
                     .opcode = 5056,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdScope, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_scope, .quantifier = .required },
                     },
                 },
                 .{
-                    .name = "OpFinalizeNodePayloadsAMDX",
+                    .name = "OpAllocateNodePayloadsAMDX",
+                    .opcode = 5074,
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_scope, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                    },
+                },
+                .{
+                    .name = "OpEnqueueNodePayloadsAMDX",
                     .opcode = 5075,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
+                    },
+                },
+                .{
+                    .name = "OpTypeNodePayloadArrayAMDX",
+                    .opcode = 5076,
+                    .operands = &.{
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpFinishWritingNodePayloadAMDX",
                     .opcode = 5078,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
-                    .name = "OpInitializeNodePayloadsAMDX",
+                    .name = "OpNodePayloadArrayLengthAMDX",
                     .opcode = 5090,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdScope, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                    },
+                },
+                .{
+                    .name = "OpIsNodePayloadValidAMDX",
+                    .opcode = 5101,
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                    },
+                },
+                .{
+                    .name = "OpConstantStringAMDX",
+                    .opcode = 5103,
+                    .operands = &.{
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .literal_string, .quantifier = .required },
+                    },
+                },
+                .{
+                    .name = "OpSpecConstantStringAMDX",
+                    .opcode = 5104,
+                    .operands = &.{
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .literal_string, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpGroupNonUniformQuadAllKHR",
                     .opcode = 5110,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpGroupNonUniformQuadAnyKHR",
                     .opcode = 5111,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpHitObjectRecordHitMotionNV",
                     .opcode = 5249,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpHitObjectRecordHitWithIndexMotionNV",
                     .opcode = 5250,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpHitObjectRecordMissMotionNV",
                     .opcode = 5251,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpHitObjectGetWorldToObjectNV",
                     .opcode = 5252,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpHitObjectGetObjectToWorldNV",
                     .opcode = 5253,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpHitObjectGetObjectRayDirectionNV",
                     .opcode = 5254,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpHitObjectGetObjectRayOriginNV",
                     .opcode = 5255,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpHitObjectTraceRayMotionNV",
                     .opcode = 5256,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpHitObjectGetShaderRecordBufferHandleNV",
                     .opcode = 5257,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpHitObjectGetShaderBindingTableRecordIndexNV",
                     .opcode = 5258,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpHitObjectRecordEmptyNV",
                     .opcode = 5259,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpHitObjectTraceRayNV",
                     .opcode = 5260,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpHitObjectRecordHitNV",
                     .opcode = 5261,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpHitObjectRecordHitWithIndexNV",
                     .opcode = 5262,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpHitObjectRecordMissNV",
                     .opcode = 5263,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpHitObjectExecuteShaderNV",
                     .opcode = 5264,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpHitObjectGetCurrentTimeNV",
                     .opcode = 5265,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpHitObjectGetAttributesNV",
                     .opcode = 5266,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpHitObjectGetHitKindNV",
                     .opcode = 5267,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpHitObjectGetPrimitiveIndexNV",
                     .opcode = 5268,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpHitObjectGetGeometryIndexNV",
                     .opcode = 5269,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpHitObjectGetInstanceIdNV",
                     .opcode = 5270,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpHitObjectGetInstanceCustomIndexNV",
                     .opcode = 5271,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpHitObjectGetWorldRayDirectionNV",
                     .opcode = 5272,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpHitObjectGetWorldRayOriginNV",
                     .opcode = 5273,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpHitObjectGetRayTMaxNV",
                     .opcode = 5274,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpHitObjectGetRayTMinNV",
                     .opcode = 5275,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpHitObjectIsEmptyNV",
                     .opcode = 5276,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpHitObjectIsHitNV",
                     .opcode = 5277,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpHitObjectIsMissNV",
                     .opcode = 5278,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpReorderThreadWithHitObjectNV",
                     .opcode = 5279,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .optional },
-                        .{ .kind = .IdRef, .quantifier = .optional },
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .optional },
+                        .{ .kind = .id_ref, .quantifier = .optional },
                     },
                 },
                 .{
                     .name = "OpReorderThreadWithHintNV",
                     .opcode = 5280,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpTypeHitObjectNV",
                     .opcode = 5281,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResult, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpImageSampleFootprintNV",
                     .opcode = 5283,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .ImageOperands, .quantifier = .optional },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .image_operands, .quantifier = .optional },
+                    },
+                },
+                .{
+                    .name = "OpTypeCooperativeVectorNV",
+                    .opcode = 5288,
+                    .operands = &.{
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                    },
+                },
+                .{
+                    .name = "OpCooperativeVectorMatrixMulNV",
+                    .opcode = 5289,
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .optional },
+                        .{ .kind = .cooperative_matrix_operands, .quantifier = .optional },
+                    },
+                },
+                .{
+                    .name = "OpCooperativeVectorOuterProductAccumulateNV",
+                    .opcode = 5290,
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .optional },
+                    },
+                },
+                .{
+                    .name = "OpCooperativeVectorReduceSumAccumulateNV",
+                    .opcode = 5291,
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                    },
+                },
+                .{
+                    .name = "OpCooperativeVectorMatrixMulAddNV",
+                    .opcode = 5292,
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .optional },
+                        .{ .kind = .cooperative_matrix_operands, .quantifier = .optional },
+                    },
+                },
+                .{
+                    .name = "OpCooperativeMatrixConvertNV",
+                    .opcode = 5293,
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpEmitMeshTasksEXT",
                     .opcode = 5294,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .optional },
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .optional },
                     },
                 },
                 .{
                     .name = "OpSetMeshOutputsEXT",
                     .opcode = 5295,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpGroupNonUniformPartitionNV",
                     .opcode = 5296,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpWritePackedPrimitiveIndices4x8NV",
                     .opcode = 5299,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpFetchMicroTriangleVertexPositionNV",
                     .opcode = 5300,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpFetchMicroTriangleVertexBarycentricNV",
                     .opcode = 5301,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
-                    .name = "OpReportIntersectionNV",
-                    .opcode = 5334,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .name = "OpCooperativeVectorLoadNV",
+                    .opcode = 5302,
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .memory_access, .quantifier = .optional },
+                    },
+                },
+                .{
+                    .name = "OpCooperativeVectorStoreNV",
+                    .opcode = 5303,
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .memory_access, .quantifier = .optional },
                     },
                 },
                 .{
                     .name = "OpReportIntersectionKHR",
                     .opcode = 5334,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpIgnoreIntersectionNV",
                     .opcode = 5335,
-                    .operands = &[_]Operand{},
+                    .operands = &.{},
                 },
                 .{
                     .name = "OpTerminateRayNV",
                     .opcode = 5336,
-                    .operands = &[_]Operand{},
+                    .operands = &.{},
                 },
                 .{
                     .name = "OpTraceNV",
                     .opcode = 5337,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpTraceMotionNV",
                     .opcode = 5338,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpTraceRayMotionNV",
                     .opcode = 5339,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpRayQueryGetIntersectionTriangleVertexPositionsKHR",
                     .opcode = 5340,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                    },
-                },
-                .{
-                    .name = "OpTypeAccelerationStructureNV",
-                    .opcode = 5341,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResult, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpTypeAccelerationStructureKHR",
                     .opcode = 5341,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResult, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpExecuteCallableNV",
                     .opcode = 5344,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                    },
+                },
+                .{
+                    .name = "OpRayQueryGetClusterIdNV",
+                    .opcode = 5345,
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                    },
+                },
+                .{
+                    .name = "OpHitObjectGetClusterIdNV",
+                    .opcode = 5346,
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpTypeCooperativeMatrixNV",
                     .opcode = 5358,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdScope, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_scope, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpCooperativeMatrixLoadNV",
                     .opcode = 5359,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .MemoryAccess, .quantifier = .optional },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .memory_access, .quantifier = .optional },
                     },
                 },
                 .{
                     .name = "OpCooperativeMatrixStoreNV",
                     .opcode = 5360,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .MemoryAccess, .quantifier = .optional },
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .memory_access, .quantifier = .optional },
                     },
                 },
                 .{
                     .name = "OpCooperativeMatrixMulAddNV",
                     .opcode = 5361,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpCooperativeMatrixLengthNV",
                     .opcode = 5362,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpBeginInvocationInterlockEXT",
                     .opcode = 5364,
-                    .operands = &[_]Operand{},
+                    .operands = &.{},
                 },
                 .{
                     .name = "OpEndInvocationInterlockEXT",
                     .opcode = 5365,
-                    .operands = &[_]Operand{},
+                    .operands = &.{},
                 },
                 .{
-                    .name = "OpDemoteToHelperInvocation",
-                    .opcode = 5380,
-                    .operands = &[_]Operand{},
+                    .name = "OpCooperativeMatrixReduceNV",
+                    .opcode = 5366,
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .cooperative_matrix_reduce, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                    },
                 },
                 .{
-                    .name = "OpDemoteToHelperInvocationEXT",
+                    .name = "OpCooperativeMatrixLoadTensorNV",
+                    .opcode = 5367,
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .memory_access, .quantifier = .required },
+                        .{ .kind = .tensor_addressing_operands, .quantifier = .required },
+                    },
+                },
+                .{
+                    .name = "OpCooperativeMatrixStoreTensorNV",
+                    .opcode = 5368,
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .memory_access, .quantifier = .required },
+                        .{ .kind = .tensor_addressing_operands, .quantifier = .required },
+                    },
+                },
+                .{
+                    .name = "OpCooperativeMatrixPerElementOpNV",
+                    .opcode = 5369,
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .variadic },
+                    },
+                },
+                .{
+                    .name = "OpTypeTensorLayoutNV",
+                    .opcode = 5370,
+                    .operands = &.{
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                    },
+                },
+                .{
+                    .name = "OpTypeTensorViewNV",
+                    .opcode = 5371,
+                    .operands = &.{
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .variadic },
+                    },
+                },
+                .{
+                    .name = "OpCreateTensorLayoutNV",
+                    .opcode = 5372,
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                    },
+                },
+                .{
+                    .name = "OpTensorLayoutSetDimensionNV",
+                    .opcode = 5373,
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .variadic },
+                    },
+                },
+                .{
+                    .name = "OpTensorLayoutSetStrideNV",
+                    .opcode = 5374,
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .variadic },
+                    },
+                },
+                .{
+                    .name = "OpTensorLayoutSliceNV",
+                    .opcode = 5375,
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .variadic },
+                    },
+                },
+                .{
+                    .name = "OpTensorLayoutSetClampValueNV",
+                    .opcode = 5376,
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                    },
+                },
+                .{
+                    .name = "OpCreateTensorViewNV",
+                    .opcode = 5377,
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                    },
+                },
+                .{
+                    .name = "OpTensorViewSetDimensionNV",
+                    .opcode = 5378,
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .variadic },
+                    },
+                },
+                .{
+                    .name = "OpTensorViewSetStrideNV",
+                    .opcode = 5379,
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .variadic },
+                    },
+                },
+                .{
+                    .name = "OpDemoteToHelperInvocation",
                     .opcode = 5380,
-                    .operands = &[_]Operand{},
+                    .operands = &.{},
                 },
                 .{
                     .name = "OpIsHelperInvocationEXT",
                     .opcode = 5381,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                    },
+                },
+                .{
+                    .name = "OpTensorViewSetClipNV",
+                    .opcode = 5382,
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                    },
+                },
+                .{
+                    .name = "OpTensorLayoutSetBlockSizeNV",
+                    .opcode = 5384,
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .variadic },
+                    },
+                },
+                .{
+                    .name = "OpCooperativeMatrixTransposeNV",
+                    .opcode = 5390,
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpConvertUToImageNV",
                     .opcode = 5391,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpConvertUToSamplerNV",
                     .opcode = 5392,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpConvertImageToUNV",
                     .opcode = 5393,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpConvertSamplerToUNV",
                     .opcode = 5394,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpConvertUToSampledImageNV",
                     .opcode = 5395,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpConvertSampledImageToUNV",
                     .opcode = 5396,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpSamplerImageAddressingModeNV",
                     .opcode = 5397,
-                    .operands = &[_]Operand{
-                        .{ .kind = .LiteralInteger, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .literal_integer, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpRawAccessChainNV",
                     .opcode = 5398,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .RawAccessChainOperands, .quantifier = .optional },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .raw_access_chain_operands, .quantifier = .optional },
+                    },
+                },
+                .{
+                    .name = "OpRayQueryGetIntersectionSpherePositionNV",
+                    .opcode = 5427,
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                    },
+                },
+                .{
+                    .name = "OpRayQueryGetIntersectionSphereRadiusNV",
+                    .opcode = 5428,
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                    },
+                },
+                .{
+                    .name = "OpRayQueryGetIntersectionLSSPositionsNV",
+                    .opcode = 5429,
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                    },
+                },
+                .{
+                    .name = "OpRayQueryGetIntersectionLSSRadiiNV",
+                    .opcode = 5430,
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                    },
+                },
+                .{
+                    .name = "OpRayQueryGetIntersectionLSSHitValueNV",
+                    .opcode = 5431,
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                    },
+                },
+                .{
+                    .name = "OpHitObjectGetSpherePositionNV",
+                    .opcode = 5432,
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                    },
+                },
+                .{
+                    .name = "OpHitObjectGetSphereRadiusNV",
+                    .opcode = 5433,
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                    },
+                },
+                .{
+                    .name = "OpHitObjectGetLSSPositionsNV",
+                    .opcode = 5434,
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                    },
+                },
+                .{
+                    .name = "OpHitObjectGetLSSRadiiNV",
+                    .opcode = 5435,
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                    },
+                },
+                .{
+                    .name = "OpHitObjectIsSphereHitNV",
+                    .opcode = 5436,
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                    },
+                },
+                .{
+                    .name = "OpHitObjectIsLSSHitNV",
+                    .opcode = 5437,
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                    },
+                },
+                .{
+                    .name = "OpRayQueryIsSphereHitNV",
+                    .opcode = 5438,
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                    },
+                },
+                .{
+                    .name = "OpRayQueryIsLSSHitNV",
+                    .opcode = 5439,
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpSubgroupShuffleINTEL",
                     .opcode = 5571,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpSubgroupShuffleDownINTEL",
                     .opcode = 5572,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpSubgroupShuffleUpINTEL",
                     .opcode = 5573,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpSubgroupShuffleXorINTEL",
                     .opcode = 5574,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpSubgroupBlockReadINTEL",
                     .opcode = 5575,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpSubgroupBlockWriteINTEL",
                     .opcode = 5576,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpSubgroupImageBlockReadINTEL",
                     .opcode = 5577,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpSubgroupImageBlockWriteINTEL",
                     .opcode = 5578,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpSubgroupImageMediaBlockReadINTEL",
                     .opcode = 5580,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpSubgroupImageMediaBlockWriteINTEL",
                     .opcode = 5581,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpUCountLeadingZerosINTEL",
                     .opcode = 5585,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpUCountTrailingZerosINTEL",
                     .opcode = 5586,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpAbsISubINTEL",
                     .opcode = 5587,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpAbsUSubINTEL",
                     .opcode = 5588,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpIAddSatINTEL",
                     .opcode = 5589,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpUAddSatINTEL",
                     .opcode = 5590,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpIAverageINTEL",
                     .opcode = 5591,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpUAverageINTEL",
                     .opcode = 5592,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpIAverageRoundedINTEL",
                     .opcode = 5593,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpUAverageRoundedINTEL",
                     .opcode = 5594,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpISubSatINTEL",
                     .opcode = 5595,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpUSubSatINTEL",
                     .opcode = 5596,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpIMul32x16INTEL",
                     .opcode = 5597,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpUMul32x16INTEL",
                     .opcode = 5598,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpConstantFunctionPointerINTEL",
                     .opcode = 5600,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpFunctionPointerCallINTEL",
                     .opcode = 5601,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .variadic },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .variadic },
                     },
                 },
                 .{
                     .name = "OpAsmTargetINTEL",
                     .opcode = 5609,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .LiteralString, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .literal_string, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpAsmINTEL",
                     .opcode = 5610,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .LiteralString, .quantifier = .required },
-                        .{ .kind = .LiteralString, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .literal_string, .quantifier = .required },
+                        .{ .kind = .literal_string, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpAsmCallINTEL",
                     .opcode = 5611,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .variadic },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .variadic },
                     },
                 },
                 .{
                     .name = "OpAtomicFMinEXT",
                     .opcode = 5614,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdScope, .quantifier = .required },
-                        .{ .kind = .IdMemorySemantics, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_scope, .quantifier = .required },
+                        .{ .kind = .id_memory_semantics, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpAtomicFMaxEXT",
                     .opcode = 5615,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdScope, .quantifier = .required },
-                        .{ .kind = .IdMemorySemantics, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_scope, .quantifier = .required },
+                        .{ .kind = .id_memory_semantics, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpAssumeTrueKHR",
                     .opcode = 5630,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpExpectKHR",
                     .opcode = 5631,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpDecorateString",
                     .opcode = 5632,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .Decoration, .quantifier = .required },
-                    },
-                },
-                .{
-                    .name = "OpDecorateStringGOOGLE",
-                    .opcode = 5632,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .Decoration, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .decoration, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpMemberDecorateString",
                     .opcode = 5633,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .LiteralInteger, .quantifier = .required },
-                        .{ .kind = .Decoration, .quantifier = .required },
-                    },
-                },
-                .{
-                    .name = "OpMemberDecorateStringGOOGLE",
-                    .opcode = 5633,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .LiteralInteger, .quantifier = .required },
-                        .{ .kind = .Decoration, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .literal_integer, .quantifier = .required },
+                        .{ .kind = .decoration, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpVmeImageINTEL",
                     .opcode = 5699,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpTypeVmeImageINTEL",
                     .opcode = 5700,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpTypeAvcImePayloadINTEL",
                     .opcode = 5701,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResult, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpTypeAvcRefPayloadINTEL",
                     .opcode = 5702,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResult, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpTypeAvcSicPayloadINTEL",
                     .opcode = 5703,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResult, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpTypeAvcMcePayloadINTEL",
                     .opcode = 5704,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResult, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpTypeAvcMceResultINTEL",
                     .opcode = 5705,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResult, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpTypeAvcImeResultINTEL",
                     .opcode = 5706,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResult, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpTypeAvcImeResultSingleReferenceStreamoutINTEL",
                     .opcode = 5707,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResult, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpTypeAvcImeResultDualReferenceStreamoutINTEL",
                     .opcode = 5708,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResult, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpTypeAvcImeSingleReferenceStreaminINTEL",
                     .opcode = 5709,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResult, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpTypeAvcImeDualReferenceStreaminINTEL",
                     .opcode = 5710,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResult, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpTypeAvcRefResultINTEL",
                     .opcode = 5711,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResult, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpTypeAvcSicResultINTEL",
                     .opcode = 5712,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResult, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpSubgroupAvcMceGetDefaultInterBaseMultiReferencePenaltyINTEL",
                     .opcode = 5713,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpSubgroupAvcMceSetInterBaseMultiReferencePenaltyINTEL",
                     .opcode = 5714,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpSubgroupAvcMceGetDefaultInterShapePenaltyINTEL",
                     .opcode = 5715,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpSubgroupAvcMceSetInterShapePenaltyINTEL",
                     .opcode = 5716,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpSubgroupAvcMceGetDefaultInterDirectionPenaltyINTEL",
                     .opcode = 5717,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpSubgroupAvcMceSetInterDirectionPenaltyINTEL",
                     .opcode = 5718,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpSubgroupAvcMceGetDefaultIntraLumaShapePenaltyINTEL",
                     .opcode = 5719,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpSubgroupAvcMceGetDefaultInterMotionVectorCostTableINTEL",
                     .opcode = 5720,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpSubgroupAvcMceGetDefaultHighPenaltyCostTableINTEL",
                     .opcode = 5721,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpSubgroupAvcMceGetDefaultMediumPenaltyCostTableINTEL",
                     .opcode = 5722,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpSubgroupAvcMceGetDefaultLowPenaltyCostTableINTEL",
                     .opcode = 5723,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpSubgroupAvcMceSetMotionVectorCostFunctionINTEL",
                     .opcode = 5724,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpSubgroupAvcMceGetDefaultIntraLumaModePenaltyINTEL",
                     .opcode = 5725,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpSubgroupAvcMceGetDefaultNonDcLumaIntraPenaltyINTEL",
                     .opcode = 5726,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpSubgroupAvcMceGetDefaultIntraChromaModeBasePenaltyINTEL",
                     .opcode = 5727,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpSubgroupAvcMceSetAcOnlyHaarINTEL",
                     .opcode = 5728,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpSubgroupAvcMceSetSourceInterlacedFieldPolarityINTEL",
                     .opcode = 5729,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpSubgroupAvcMceSetSingleReferenceInterlacedFieldPolarityINTEL",
                     .opcode = 5730,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpSubgroupAvcMceSetDualReferenceInterlacedFieldPolaritiesINTEL",
                     .opcode = 5731,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpSubgroupAvcMceConvertToImePayloadINTEL",
                     .opcode = 5732,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpSubgroupAvcMceConvertToImeResultINTEL",
                     .opcode = 5733,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpSubgroupAvcMceConvertToRefPayloadINTEL",
                     .opcode = 5734,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpSubgroupAvcMceConvertToRefResultINTEL",
                     .opcode = 5735,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpSubgroupAvcMceConvertToSicPayloadINTEL",
                     .opcode = 5736,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpSubgroupAvcMceConvertToSicResultINTEL",
                     .opcode = 5737,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpSubgroupAvcMceGetMotionVectorsINTEL",
                     .opcode = 5738,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpSubgroupAvcMceGetInterDistortionsINTEL",
                     .opcode = 5739,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpSubgroupAvcMceGetBestInterDistortionsINTEL",
                     .opcode = 5740,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpSubgroupAvcMceGetInterMajorShapeINTEL",
                     .opcode = 5741,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpSubgroupAvcMceGetInterMinorShapeINTEL",
                     .opcode = 5742,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpSubgroupAvcMceGetInterDirectionsINTEL",
                     .opcode = 5743,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpSubgroupAvcMceGetInterMotionVectorCountINTEL",
                     .opcode = 5744,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpSubgroupAvcMceGetInterReferenceIdsINTEL",
                     .opcode = 5745,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpSubgroupAvcMceGetInterReferenceInterlacedFieldPolaritiesINTEL",
                     .opcode = 5746,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpSubgroupAvcImeInitializeINTEL",
                     .opcode = 5747,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpSubgroupAvcImeSetSingleReferenceINTEL",
                     .opcode = 5748,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpSubgroupAvcImeSetDualReferenceINTEL",
                     .opcode = 5749,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpSubgroupAvcImeRefWindowSizeINTEL",
                     .opcode = 5750,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpSubgroupAvcImeAdjustRefOffsetINTEL",
                     .opcode = 5751,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpSubgroupAvcImeConvertToMcePayloadINTEL",
                     .opcode = 5752,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpSubgroupAvcImeSetMaxMotionVectorCountINTEL",
                     .opcode = 5753,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpSubgroupAvcImeSetUnidirectionalMixDisableINTEL",
                     .opcode = 5754,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpSubgroupAvcImeSetEarlySearchTerminationThresholdINTEL",
                     .opcode = 5755,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpSubgroupAvcImeSetWeightedSadINTEL",
                     .opcode = 5756,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpSubgroupAvcImeEvaluateWithSingleReferenceINTEL",
                     .opcode = 5757,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpSubgroupAvcImeEvaluateWithDualReferenceINTEL",
                     .opcode = 5758,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpSubgroupAvcImeEvaluateWithSingleReferenceStreaminINTEL",
                     .opcode = 5759,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpSubgroupAvcImeEvaluateWithDualReferenceStreaminINTEL",
                     .opcode = 5760,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpSubgroupAvcImeEvaluateWithSingleReferenceStreamoutINTEL",
                     .opcode = 5761,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpSubgroupAvcImeEvaluateWithDualReferenceStreamoutINTEL",
                     .opcode = 5762,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpSubgroupAvcImeEvaluateWithSingleReferenceStreaminoutINTEL",
                     .opcode = 5763,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpSubgroupAvcImeEvaluateWithDualReferenceStreaminoutINTEL",
                     .opcode = 5764,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpSubgroupAvcImeConvertToMceResultINTEL",
                     .opcode = 5765,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpSubgroupAvcImeGetSingleReferenceStreaminINTEL",
                     .opcode = 5766,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpSubgroupAvcImeGetDualReferenceStreaminINTEL",
                     .opcode = 5767,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpSubgroupAvcImeStripSingleReferenceStreamoutINTEL",
                     .opcode = 5768,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpSubgroupAvcImeStripDualReferenceStreamoutINTEL",
                     .opcode = 5769,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpSubgroupAvcImeGetStreamoutSingleReferenceMajorShapeMotionVectorsINTEL",
                     .opcode = 5770,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpSubgroupAvcImeGetStreamoutSingleReferenceMajorShapeDistortionsINTEL",
                     .opcode = 5771,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpSubgroupAvcImeGetStreamoutSingleReferenceMajorShapeReferenceIdsINTEL",
                     .opcode = 5772,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpSubgroupAvcImeGetStreamoutDualReferenceMajorShapeMotionVectorsINTEL",
                     .opcode = 5773,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpSubgroupAvcImeGetStreamoutDualReferenceMajorShapeDistortionsINTEL",
                     .opcode = 5774,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpSubgroupAvcImeGetStreamoutDualReferenceMajorShapeReferenceIdsINTEL",
                     .opcode = 5775,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpSubgroupAvcImeGetBorderReachedINTEL",
                     .opcode = 5776,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpSubgroupAvcImeGetTruncatedSearchIndicationINTEL",
                     .opcode = 5777,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpSubgroupAvcImeGetUnidirectionalEarlySearchTerminationINTEL",
                     .opcode = 5778,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpSubgroupAvcImeGetWeightingPatternMinimumMotionVectorINTEL",
                     .opcode = 5779,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpSubgroupAvcImeGetWeightingPatternMinimumDistortionINTEL",
                     .opcode = 5780,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpSubgroupAvcFmeInitializeINTEL",
                     .opcode = 5781,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpSubgroupAvcBmeInitializeINTEL",
                     .opcode = 5782,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpSubgroupAvcRefConvertToMcePayloadINTEL",
                     .opcode = 5783,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpSubgroupAvcRefSetBidirectionalMixDisableINTEL",
                     .opcode = 5784,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpSubgroupAvcRefSetBilinearFilterEnableINTEL",
                     .opcode = 5785,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpSubgroupAvcRefEvaluateWithSingleReferenceINTEL",
                     .opcode = 5786,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpSubgroupAvcRefEvaluateWithDualReferenceINTEL",
                     .opcode = 5787,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpSubgroupAvcRefEvaluateWithMultiReferenceINTEL",
                     .opcode = 5788,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpSubgroupAvcRefEvaluateWithMultiReferenceInterlacedINTEL",
                     .opcode = 5789,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpSubgroupAvcRefConvertToMceResultINTEL",
                     .opcode = 5790,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpSubgroupAvcSicInitializeINTEL",
                     .opcode = 5791,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpSubgroupAvcSicConfigureSkcINTEL",
                     .opcode = 5792,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpSubgroupAvcSicConfigureIpeLumaINTEL",
                     .opcode = 5793,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpSubgroupAvcSicConfigureIpeLumaChromaINTEL",
                     .opcode = 5794,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpSubgroupAvcSicGetMotionVectorMaskINTEL",
                     .opcode = 5795,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpSubgroupAvcSicConvertToMcePayloadINTEL",
                     .opcode = 5796,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpSubgroupAvcSicSetIntraLumaShapePenaltyINTEL",
                     .opcode = 5797,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpSubgroupAvcSicSetIntraLumaModeCostFunctionINTEL",
                     .opcode = 5798,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpSubgroupAvcSicSetIntraChromaModeCostFunctionINTEL",
                     .opcode = 5799,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpSubgroupAvcSicSetBilinearFilterEnableINTEL",
                     .opcode = 5800,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpSubgroupAvcSicSetSkcForwardTransformEnableINTEL",
                     .opcode = 5801,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpSubgroupAvcSicSetBlockBasedRawSkipSadINTEL",
                     .opcode = 5802,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpSubgroupAvcSicEvaluateIpeINTEL",
                     .opcode = 5803,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpSubgroupAvcSicEvaluateWithSingleReferenceINTEL",
                     .opcode = 5804,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpSubgroupAvcSicEvaluateWithDualReferenceINTEL",
                     .opcode = 5805,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpSubgroupAvcSicEvaluateWithMultiReferenceINTEL",
                     .opcode = 5806,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpSubgroupAvcSicEvaluateWithMultiReferenceInterlacedINTEL",
                     .opcode = 5807,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpSubgroupAvcSicConvertToMceResultINTEL",
                     .opcode = 5808,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpSubgroupAvcSicGetIpeLumaShapeINTEL",
                     .opcode = 5809,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpSubgroupAvcSicGetBestIpeLumaDistortionINTEL",
                     .opcode = 5810,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpSubgroupAvcSicGetBestIpeChromaDistortionINTEL",
                     .opcode = 5811,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpSubgroupAvcSicGetPackedIpeLumaModesINTEL",
                     .opcode = 5812,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpSubgroupAvcSicGetIpeChromaModeINTEL",
                     .opcode = 5813,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpSubgroupAvcSicGetPackedSkcLumaCountThresholdINTEL",
                     .opcode = 5814,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpSubgroupAvcSicGetPackedSkcLumaSumThresholdINTEL",
                     .opcode = 5815,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpSubgroupAvcSicGetInterRawSadsINTEL",
                     .opcode = 5816,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpVariableLengthArrayINTEL",
                     .opcode = 5818,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpSaveMemoryINTEL",
                     .opcode = 5819,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpRestoreMemoryINTEL",
                     .opcode = 5820,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpArbitraryFloatSinCosPiINTEL",
                     .opcode = 5840,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .LiteralInteger, .quantifier = .required },
-                        .{ .kind = .LiteralInteger, .quantifier = .required },
-                        .{ .kind = .LiteralInteger, .quantifier = .required },
-                        .{ .kind = .LiteralInteger, .quantifier = .required },
-                        .{ .kind = .LiteralInteger, .quantifier = .required },
-                        .{ .kind = .LiteralInteger, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .literal_integer, .quantifier = .required },
+                        .{ .kind = .literal_integer, .quantifier = .required },
+                        .{ .kind = .literal_integer, .quantifier = .required },
+                        .{ .kind = .literal_integer, .quantifier = .required },
+                        .{ .kind = .literal_integer, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpArbitraryFloatCastINTEL",
                     .opcode = 5841,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .LiteralInteger, .quantifier = .required },
-                        .{ .kind = .LiteralInteger, .quantifier = .required },
-                        .{ .kind = .LiteralInteger, .quantifier = .required },
-                        .{ .kind = .LiteralInteger, .quantifier = .required },
-                        .{ .kind = .LiteralInteger, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .literal_integer, .quantifier = .required },
+                        .{ .kind = .literal_integer, .quantifier = .required },
+                        .{ .kind = .literal_integer, .quantifier = .required },
+                        .{ .kind = .literal_integer, .quantifier = .required },
+                        .{ .kind = .literal_integer, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpArbitraryFloatCastFromIntINTEL",
                     .opcode = 5842,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .LiteralInteger, .quantifier = .required },
-                        .{ .kind = .LiteralInteger, .quantifier = .required },
-                        .{ .kind = .LiteralInteger, .quantifier = .required },
-                        .{ .kind = .LiteralInteger, .quantifier = .required },
-                        .{ .kind = .LiteralInteger, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .literal_integer, .quantifier = .required },
+                        .{ .kind = .literal_integer, .quantifier = .required },
+                        .{ .kind = .literal_integer, .quantifier = .required },
+                        .{ .kind = .literal_integer, .quantifier = .required },
+                        .{ .kind = .literal_integer, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpArbitraryFloatCastToIntINTEL",
                     .opcode = 5843,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .LiteralInteger, .quantifier = .required },
-                        .{ .kind = .LiteralInteger, .quantifier = .required },
-                        .{ .kind = .LiteralInteger, .quantifier = .required },
-                        .{ .kind = .LiteralInteger, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .literal_integer, .quantifier = .required },
+                        .{ .kind = .literal_integer, .quantifier = .required },
+                        .{ .kind = .literal_integer, .quantifier = .required },
+                        .{ .kind = .literal_integer, .quantifier = .required },
+                        .{ .kind = .literal_integer, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpArbitraryFloatAddINTEL",
                     .opcode = 5846,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .LiteralInteger, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .LiteralInteger, .quantifier = .required },
-                        .{ .kind = .LiteralInteger, .quantifier = .required },
-                        .{ .kind = .LiteralInteger, .quantifier = .required },
-                        .{ .kind = .LiteralInteger, .quantifier = .required },
-                        .{ .kind = .LiteralInteger, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .literal_integer, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .literal_integer, .quantifier = .required },
+                        .{ .kind = .literal_integer, .quantifier = .required },
+                        .{ .kind = .literal_integer, .quantifier = .required },
+                        .{ .kind = .literal_integer, .quantifier = .required },
+                        .{ .kind = .literal_integer, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpArbitraryFloatSubINTEL",
                     .opcode = 5847,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .LiteralInteger, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .LiteralInteger, .quantifier = .required },
-                        .{ .kind = .LiteralInteger, .quantifier = .required },
-                        .{ .kind = .LiteralInteger, .quantifier = .required },
-                        .{ .kind = .LiteralInteger, .quantifier = .required },
-                        .{ .kind = .LiteralInteger, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .literal_integer, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .literal_integer, .quantifier = .required },
+                        .{ .kind = .literal_integer, .quantifier = .required },
+                        .{ .kind = .literal_integer, .quantifier = .required },
+                        .{ .kind = .literal_integer, .quantifier = .required },
+                        .{ .kind = .literal_integer, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpArbitraryFloatMulINTEL",
                     .opcode = 5848,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .LiteralInteger, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .LiteralInteger, .quantifier = .required },
-                        .{ .kind = .LiteralInteger, .quantifier = .required },
-                        .{ .kind = .LiteralInteger, .quantifier = .required },
-                        .{ .kind = .LiteralInteger, .quantifier = .required },
-                        .{ .kind = .LiteralInteger, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .literal_integer, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .literal_integer, .quantifier = .required },
+                        .{ .kind = .literal_integer, .quantifier = .required },
+                        .{ .kind = .literal_integer, .quantifier = .required },
+                        .{ .kind = .literal_integer, .quantifier = .required },
+                        .{ .kind = .literal_integer, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpArbitraryFloatDivINTEL",
                     .opcode = 5849,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .LiteralInteger, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .LiteralInteger, .quantifier = .required },
-                        .{ .kind = .LiteralInteger, .quantifier = .required },
-                        .{ .kind = .LiteralInteger, .quantifier = .required },
-                        .{ .kind = .LiteralInteger, .quantifier = .required },
-                        .{ .kind = .LiteralInteger, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .literal_integer, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .literal_integer, .quantifier = .required },
+                        .{ .kind = .literal_integer, .quantifier = .required },
+                        .{ .kind = .literal_integer, .quantifier = .required },
+                        .{ .kind = .literal_integer, .quantifier = .required },
+                        .{ .kind = .literal_integer, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpArbitraryFloatGTINTEL",
                     .opcode = 5850,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .LiteralInteger, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .LiteralInteger, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .literal_integer, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .literal_integer, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpArbitraryFloatGEINTEL",
                     .opcode = 5851,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .LiteralInteger, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .LiteralInteger, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .literal_integer, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .literal_integer, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpArbitraryFloatLTINTEL",
                     .opcode = 5852,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .LiteralInteger, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .LiteralInteger, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .literal_integer, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .literal_integer, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpArbitraryFloatLEINTEL",
                     .opcode = 5853,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .LiteralInteger, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .LiteralInteger, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .literal_integer, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .literal_integer, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpArbitraryFloatEQINTEL",
                     .opcode = 5854,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .LiteralInteger, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .LiteralInteger, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .literal_integer, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .literal_integer, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpArbitraryFloatRecipINTEL",
                     .opcode = 5855,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .LiteralInteger, .quantifier = .required },
-                        .{ .kind = .LiteralInteger, .quantifier = .required },
-                        .{ .kind = .LiteralInteger, .quantifier = .required },
-                        .{ .kind = .LiteralInteger, .quantifier = .required },
-                        .{ .kind = .LiteralInteger, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .literal_integer, .quantifier = .required },
+                        .{ .kind = .literal_integer, .quantifier = .required },
+                        .{ .kind = .literal_integer, .quantifier = .required },
+                        .{ .kind = .literal_integer, .quantifier = .required },
+                        .{ .kind = .literal_integer, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpArbitraryFloatRSqrtINTEL",
                     .opcode = 5856,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .LiteralInteger, .quantifier = .required },
-                        .{ .kind = .LiteralInteger, .quantifier = .required },
-                        .{ .kind = .LiteralInteger, .quantifier = .required },
-                        .{ .kind = .LiteralInteger, .quantifier = .required },
-                        .{ .kind = .LiteralInteger, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .literal_integer, .quantifier = .required },
+                        .{ .kind = .literal_integer, .quantifier = .required },
+                        .{ .kind = .literal_integer, .quantifier = .required },
+                        .{ .kind = .literal_integer, .quantifier = .required },
+                        .{ .kind = .literal_integer, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpArbitraryFloatCbrtINTEL",
                     .opcode = 5857,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .LiteralInteger, .quantifier = .required },
-                        .{ .kind = .LiteralInteger, .quantifier = .required },
-                        .{ .kind = .LiteralInteger, .quantifier = .required },
-                        .{ .kind = .LiteralInteger, .quantifier = .required },
-                        .{ .kind = .LiteralInteger, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .literal_integer, .quantifier = .required },
+                        .{ .kind = .literal_integer, .quantifier = .required },
+                        .{ .kind = .literal_integer, .quantifier = .required },
+                        .{ .kind = .literal_integer, .quantifier = .required },
+                        .{ .kind = .literal_integer, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpArbitraryFloatHypotINTEL",
                     .opcode = 5858,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .LiteralInteger, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .LiteralInteger, .quantifier = .required },
-                        .{ .kind = .LiteralInteger, .quantifier = .required },
-                        .{ .kind = .LiteralInteger, .quantifier = .required },
-                        .{ .kind = .LiteralInteger, .quantifier = .required },
-                        .{ .kind = .LiteralInteger, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .literal_integer, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .literal_integer, .quantifier = .required },
+                        .{ .kind = .literal_integer, .quantifier = .required },
+                        .{ .kind = .literal_integer, .quantifier = .required },
+                        .{ .kind = .literal_integer, .quantifier = .required },
+                        .{ .kind = .literal_integer, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpArbitraryFloatSqrtINTEL",
                     .opcode = 5859,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .LiteralInteger, .quantifier = .required },
-                        .{ .kind = .LiteralInteger, .quantifier = .required },
-                        .{ .kind = .LiteralInteger, .quantifier = .required },
-                        .{ .kind = .LiteralInteger, .quantifier = .required },
-                        .{ .kind = .LiteralInteger, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .literal_integer, .quantifier = .required },
+                        .{ .kind = .literal_integer, .quantifier = .required },
+                        .{ .kind = .literal_integer, .quantifier = .required },
+                        .{ .kind = .literal_integer, .quantifier = .required },
+                        .{ .kind = .literal_integer, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpArbitraryFloatLogINTEL",
                     .opcode = 5860,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .LiteralInteger, .quantifier = .required },
-                        .{ .kind = .LiteralInteger, .quantifier = .required },
-                        .{ .kind = .LiteralInteger, .quantifier = .required },
-                        .{ .kind = .LiteralInteger, .quantifier = .required },
-                        .{ .kind = .LiteralInteger, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .literal_integer, .quantifier = .required },
+                        .{ .kind = .literal_integer, .quantifier = .required },
+                        .{ .kind = .literal_integer, .quantifier = .required },
+                        .{ .kind = .literal_integer, .quantifier = .required },
+                        .{ .kind = .literal_integer, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpArbitraryFloatLog2INTEL",
                     .opcode = 5861,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .LiteralInteger, .quantifier = .required },
-                        .{ .kind = .LiteralInteger, .quantifier = .required },
-                        .{ .kind = .LiteralInteger, .quantifier = .required },
-                        .{ .kind = .LiteralInteger, .quantifier = .required },
-                        .{ .kind = .LiteralInteger, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .literal_integer, .quantifier = .required },
+                        .{ .kind = .literal_integer, .quantifier = .required },
+                        .{ .kind = .literal_integer, .quantifier = .required },
+                        .{ .kind = .literal_integer, .quantifier = .required },
+                        .{ .kind = .literal_integer, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpArbitraryFloatLog10INTEL",
                     .opcode = 5862,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .LiteralInteger, .quantifier = .required },
-                        .{ .kind = .LiteralInteger, .quantifier = .required },
-                        .{ .kind = .LiteralInteger, .quantifier = .required },
-                        .{ .kind = .LiteralInteger, .quantifier = .required },
-                        .{ .kind = .LiteralInteger, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .literal_integer, .quantifier = .required },
+                        .{ .kind = .literal_integer, .quantifier = .required },
+                        .{ .kind = .literal_integer, .quantifier = .required },
+                        .{ .kind = .literal_integer, .quantifier = .required },
+                        .{ .kind = .literal_integer, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpArbitraryFloatLog1pINTEL",
                     .opcode = 5863,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .LiteralInteger, .quantifier = .required },
-                        .{ .kind = .LiteralInteger, .quantifier = .required },
-                        .{ .kind = .LiteralInteger, .quantifier = .required },
-                        .{ .kind = .LiteralInteger, .quantifier = .required },
-                        .{ .kind = .LiteralInteger, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .literal_integer, .quantifier = .required },
+                        .{ .kind = .literal_integer, .quantifier = .required },
+                        .{ .kind = .literal_integer, .quantifier = .required },
+                        .{ .kind = .literal_integer, .quantifier = .required },
+                        .{ .kind = .literal_integer, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpArbitraryFloatExpINTEL",
                     .opcode = 5864,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .LiteralInteger, .quantifier = .required },
-                        .{ .kind = .LiteralInteger, .quantifier = .required },
-                        .{ .kind = .LiteralInteger, .quantifier = .required },
-                        .{ .kind = .LiteralInteger, .quantifier = .required },
-                        .{ .kind = .LiteralInteger, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .literal_integer, .quantifier = .required },
+                        .{ .kind = .literal_integer, .quantifier = .required },
+                        .{ .kind = .literal_integer, .quantifier = .required },
+                        .{ .kind = .literal_integer, .quantifier = .required },
+                        .{ .kind = .literal_integer, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpArbitraryFloatExp2INTEL",
                     .opcode = 5865,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .LiteralInteger, .quantifier = .required },
-                        .{ .kind = .LiteralInteger, .quantifier = .required },
-                        .{ .kind = .LiteralInteger, .quantifier = .required },
-                        .{ .kind = .LiteralInteger, .quantifier = .required },
-                        .{ .kind = .LiteralInteger, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .literal_integer, .quantifier = .required },
+                        .{ .kind = .literal_integer, .quantifier = .required },
+                        .{ .kind = .literal_integer, .quantifier = .required },
+                        .{ .kind = .literal_integer, .quantifier = .required },
+                        .{ .kind = .literal_integer, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpArbitraryFloatExp10INTEL",
                     .opcode = 5866,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .LiteralInteger, .quantifier = .required },
-                        .{ .kind = .LiteralInteger, .quantifier = .required },
-                        .{ .kind = .LiteralInteger, .quantifier = .required },
-                        .{ .kind = .LiteralInteger, .quantifier = .required },
-                        .{ .kind = .LiteralInteger, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .literal_integer, .quantifier = .required },
+                        .{ .kind = .literal_integer, .quantifier = .required },
+                        .{ .kind = .literal_integer, .quantifier = .required },
+                        .{ .kind = .literal_integer, .quantifier = .required },
+                        .{ .kind = .literal_integer, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpArbitraryFloatExpm1INTEL",
                     .opcode = 5867,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .LiteralInteger, .quantifier = .required },
-                        .{ .kind = .LiteralInteger, .quantifier = .required },
-                        .{ .kind = .LiteralInteger, .quantifier = .required },
-                        .{ .kind = .LiteralInteger, .quantifier = .required },
-                        .{ .kind = .LiteralInteger, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .literal_integer, .quantifier = .required },
+                        .{ .kind = .literal_integer, .quantifier = .required },
+                        .{ .kind = .literal_integer, .quantifier = .required },
+                        .{ .kind = .literal_integer, .quantifier = .required },
+                        .{ .kind = .literal_integer, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpArbitraryFloatSinINTEL",
                     .opcode = 5868,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .LiteralInteger, .quantifier = .required },
-                        .{ .kind = .LiteralInteger, .quantifier = .required },
-                        .{ .kind = .LiteralInteger, .quantifier = .required },
-                        .{ .kind = .LiteralInteger, .quantifier = .required },
-                        .{ .kind = .LiteralInteger, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .literal_integer, .quantifier = .required },
+                        .{ .kind = .literal_integer, .quantifier = .required },
+                        .{ .kind = .literal_integer, .quantifier = .required },
+                        .{ .kind = .literal_integer, .quantifier = .required },
+                        .{ .kind = .literal_integer, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpArbitraryFloatCosINTEL",
                     .opcode = 5869,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .LiteralInteger, .quantifier = .required },
-                        .{ .kind = .LiteralInteger, .quantifier = .required },
-                        .{ .kind = .LiteralInteger, .quantifier = .required },
-                        .{ .kind = .LiteralInteger, .quantifier = .required },
-                        .{ .kind = .LiteralInteger, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .literal_integer, .quantifier = .required },
+                        .{ .kind = .literal_integer, .quantifier = .required },
+                        .{ .kind = .literal_integer, .quantifier = .required },
+                        .{ .kind = .literal_integer, .quantifier = .required },
+                        .{ .kind = .literal_integer, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpArbitraryFloatSinCosINTEL",
                     .opcode = 5870,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .LiteralInteger, .quantifier = .required },
-                        .{ .kind = .LiteralInteger, .quantifier = .required },
-                        .{ .kind = .LiteralInteger, .quantifier = .required },
-                        .{ .kind = .LiteralInteger, .quantifier = .required },
-                        .{ .kind = .LiteralInteger, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .literal_integer, .quantifier = .required },
+                        .{ .kind = .literal_integer, .quantifier = .required },
+                        .{ .kind = .literal_integer, .quantifier = .required },
+                        .{ .kind = .literal_integer, .quantifier = .required },
+                        .{ .kind = .literal_integer, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpArbitraryFloatSinPiINTEL",
                     .opcode = 5871,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .LiteralInteger, .quantifier = .required },
-                        .{ .kind = .LiteralInteger, .quantifier = .required },
-                        .{ .kind = .LiteralInteger, .quantifier = .required },
-                        .{ .kind = .LiteralInteger, .quantifier = .required },
-                        .{ .kind = .LiteralInteger, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .literal_integer, .quantifier = .required },
+                        .{ .kind = .literal_integer, .quantifier = .required },
+                        .{ .kind = .literal_integer, .quantifier = .required },
+                        .{ .kind = .literal_integer, .quantifier = .required },
+                        .{ .kind = .literal_integer, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpArbitraryFloatCosPiINTEL",
                     .opcode = 5872,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .LiteralInteger, .quantifier = .required },
-                        .{ .kind = .LiteralInteger, .quantifier = .required },
-                        .{ .kind = .LiteralInteger, .quantifier = .required },
-                        .{ .kind = .LiteralInteger, .quantifier = .required },
-                        .{ .kind = .LiteralInteger, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .literal_integer, .quantifier = .required },
+                        .{ .kind = .literal_integer, .quantifier = .required },
+                        .{ .kind = .literal_integer, .quantifier = .required },
+                        .{ .kind = .literal_integer, .quantifier = .required },
+                        .{ .kind = .literal_integer, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpArbitraryFloatASinINTEL",
                     .opcode = 5873,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .LiteralInteger, .quantifier = .required },
-                        .{ .kind = .LiteralInteger, .quantifier = .required },
-                        .{ .kind = .LiteralInteger, .quantifier = .required },
-                        .{ .kind = .LiteralInteger, .quantifier = .required },
-                        .{ .kind = .LiteralInteger, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .literal_integer, .quantifier = .required },
+                        .{ .kind = .literal_integer, .quantifier = .required },
+                        .{ .kind = .literal_integer, .quantifier = .required },
+                        .{ .kind = .literal_integer, .quantifier = .required },
+                        .{ .kind = .literal_integer, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpArbitraryFloatASinPiINTEL",
                     .opcode = 5874,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .LiteralInteger, .quantifier = .required },
-                        .{ .kind = .LiteralInteger, .quantifier = .required },
-                        .{ .kind = .LiteralInteger, .quantifier = .required },
-                        .{ .kind = .LiteralInteger, .quantifier = .required },
-                        .{ .kind = .LiteralInteger, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .literal_integer, .quantifier = .required },
+                        .{ .kind = .literal_integer, .quantifier = .required },
+                        .{ .kind = .literal_integer, .quantifier = .required },
+                        .{ .kind = .literal_integer, .quantifier = .required },
+                        .{ .kind = .literal_integer, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpArbitraryFloatACosINTEL",
                     .opcode = 5875,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .LiteralInteger, .quantifier = .required },
-                        .{ .kind = .LiteralInteger, .quantifier = .required },
-                        .{ .kind = .LiteralInteger, .quantifier = .required },
-                        .{ .kind = .LiteralInteger, .quantifier = .required },
-                        .{ .kind = .LiteralInteger, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .literal_integer, .quantifier = .required },
+                        .{ .kind = .literal_integer, .quantifier = .required },
+                        .{ .kind = .literal_integer, .quantifier = .required },
+                        .{ .kind = .literal_integer, .quantifier = .required },
+                        .{ .kind = .literal_integer, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpArbitraryFloatACosPiINTEL",
                     .opcode = 5876,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .LiteralInteger, .quantifier = .required },
-                        .{ .kind = .LiteralInteger, .quantifier = .required },
-                        .{ .kind = .LiteralInteger, .quantifier = .required },
-                        .{ .kind = .LiteralInteger, .quantifier = .required },
-                        .{ .kind = .LiteralInteger, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .literal_integer, .quantifier = .required },
+                        .{ .kind = .literal_integer, .quantifier = .required },
+                        .{ .kind = .literal_integer, .quantifier = .required },
+                        .{ .kind = .literal_integer, .quantifier = .required },
+                        .{ .kind = .literal_integer, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpArbitraryFloatATanINTEL",
                     .opcode = 5877,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .LiteralInteger, .quantifier = .required },
-                        .{ .kind = .LiteralInteger, .quantifier = .required },
-                        .{ .kind = .LiteralInteger, .quantifier = .required },
-                        .{ .kind = .LiteralInteger, .quantifier = .required },
-                        .{ .kind = .LiteralInteger, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .literal_integer, .quantifier = .required },
+                        .{ .kind = .literal_integer, .quantifier = .required },
+                        .{ .kind = .literal_integer, .quantifier = .required },
+                        .{ .kind = .literal_integer, .quantifier = .required },
+                        .{ .kind = .literal_integer, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpArbitraryFloatATanPiINTEL",
                     .opcode = 5878,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .LiteralInteger, .quantifier = .required },
-                        .{ .kind = .LiteralInteger, .quantifier = .required },
-                        .{ .kind = .LiteralInteger, .quantifier = .required },
-                        .{ .kind = .LiteralInteger, .quantifier = .required },
-                        .{ .kind = .LiteralInteger, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .literal_integer, .quantifier = .required },
+                        .{ .kind = .literal_integer, .quantifier = .required },
+                        .{ .kind = .literal_integer, .quantifier = .required },
+                        .{ .kind = .literal_integer, .quantifier = .required },
+                        .{ .kind = .literal_integer, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpArbitraryFloatATan2INTEL",
                     .opcode = 5879,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .LiteralInteger, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .LiteralInteger, .quantifier = .required },
-                        .{ .kind = .LiteralInteger, .quantifier = .required },
-                        .{ .kind = .LiteralInteger, .quantifier = .required },
-                        .{ .kind = .LiteralInteger, .quantifier = .required },
-                        .{ .kind = .LiteralInteger, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .literal_integer, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .literal_integer, .quantifier = .required },
+                        .{ .kind = .literal_integer, .quantifier = .required },
+                        .{ .kind = .literal_integer, .quantifier = .required },
+                        .{ .kind = .literal_integer, .quantifier = .required },
+                        .{ .kind = .literal_integer, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpArbitraryFloatPowINTEL",
                     .opcode = 5880,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .LiteralInteger, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .LiteralInteger, .quantifier = .required },
-                        .{ .kind = .LiteralInteger, .quantifier = .required },
-                        .{ .kind = .LiteralInteger, .quantifier = .required },
-                        .{ .kind = .LiteralInteger, .quantifier = .required },
-                        .{ .kind = .LiteralInteger, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .literal_integer, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .literal_integer, .quantifier = .required },
+                        .{ .kind = .literal_integer, .quantifier = .required },
+                        .{ .kind = .literal_integer, .quantifier = .required },
+                        .{ .kind = .literal_integer, .quantifier = .required },
+                        .{ .kind = .literal_integer, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpArbitraryFloatPowRINTEL",
                     .opcode = 5881,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .LiteralInteger, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .LiteralInteger, .quantifier = .required },
-                        .{ .kind = .LiteralInteger, .quantifier = .required },
-                        .{ .kind = .LiteralInteger, .quantifier = .required },
-                        .{ .kind = .LiteralInteger, .quantifier = .required },
-                        .{ .kind = .LiteralInteger, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .literal_integer, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .literal_integer, .quantifier = .required },
+                        .{ .kind = .literal_integer, .quantifier = .required },
+                        .{ .kind = .literal_integer, .quantifier = .required },
+                        .{ .kind = .literal_integer, .quantifier = .required },
+                        .{ .kind = .literal_integer, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpArbitraryFloatPowNINTEL",
                     .opcode = 5882,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .LiteralInteger, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .LiteralInteger, .quantifier = .required },
-                        .{ .kind = .LiteralInteger, .quantifier = .required },
-                        .{ .kind = .LiteralInteger, .quantifier = .required },
-                        .{ .kind = .LiteralInteger, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .literal_integer, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .literal_integer, .quantifier = .required },
+                        .{ .kind = .literal_integer, .quantifier = .required },
+                        .{ .kind = .literal_integer, .quantifier = .required },
+                        .{ .kind = .literal_integer, .quantifier = .required },
+                        .{ .kind = .literal_integer, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpLoopControlINTEL",
                     .opcode = 5887,
-                    .operands = &[_]Operand{
-                        .{ .kind = .LiteralInteger, .quantifier = .variadic },
+                    .operands = &.{
+                        .{ .kind = .literal_integer, .quantifier = .variadic },
                     },
                 },
                 .{
                     .name = "OpAliasDomainDeclINTEL",
                     .opcode = 5911,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .optional },
+                    .operands = &.{
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .optional },
                     },
                 },
                 .{
                     .name = "OpAliasScopeDeclINTEL",
                     .opcode = 5912,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .optional },
+                    .operands = &.{
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .optional },
                     },
                 },
                 .{
                     .name = "OpAliasScopeListDeclINTEL",
                     .opcode = 5913,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .variadic },
+                    .operands = &.{
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .variadic },
                     },
                 },
                 .{
                     .name = "OpFixedSqrtINTEL",
                     .opcode = 5923,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .LiteralInteger, .quantifier = .required },
-                        .{ .kind = .LiteralInteger, .quantifier = .required },
-                        .{ .kind = .LiteralInteger, .quantifier = .required },
-                        .{ .kind = .LiteralInteger, .quantifier = .required },
-                        .{ .kind = .LiteralInteger, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .literal_integer, .quantifier = .required },
+                        .{ .kind = .literal_integer, .quantifier = .required },
+                        .{ .kind = .literal_integer, .quantifier = .required },
+                        .{ .kind = .literal_integer, .quantifier = .required },
+                        .{ .kind = .literal_integer, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpFixedRecipINTEL",
                     .opcode = 5924,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .LiteralInteger, .quantifier = .required },
-                        .{ .kind = .LiteralInteger, .quantifier = .required },
-                        .{ .kind = .LiteralInteger, .quantifier = .required },
-                        .{ .kind = .LiteralInteger, .quantifier = .required },
-                        .{ .kind = .LiteralInteger, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .literal_integer, .quantifier = .required },
+                        .{ .kind = .literal_integer, .quantifier = .required },
+                        .{ .kind = .literal_integer, .quantifier = .required },
+                        .{ .kind = .literal_integer, .quantifier = .required },
+                        .{ .kind = .literal_integer, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpFixedRsqrtINTEL",
                     .opcode = 5925,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .LiteralInteger, .quantifier = .required },
-                        .{ .kind = .LiteralInteger, .quantifier = .required },
-                        .{ .kind = .LiteralInteger, .quantifier = .required },
-                        .{ .kind = .LiteralInteger, .quantifier = .required },
-                        .{ .kind = .LiteralInteger, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .literal_integer, .quantifier = .required },
+                        .{ .kind = .literal_integer, .quantifier = .required },
+                        .{ .kind = .literal_integer, .quantifier = .required },
+                        .{ .kind = .literal_integer, .quantifier = .required },
+                        .{ .kind = .literal_integer, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpFixedSinINTEL",
                     .opcode = 5926,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .LiteralInteger, .quantifier = .required },
-                        .{ .kind = .LiteralInteger, .quantifier = .required },
-                        .{ .kind = .LiteralInteger, .quantifier = .required },
-                        .{ .kind = .LiteralInteger, .quantifier = .required },
-                        .{ .kind = .LiteralInteger, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .literal_integer, .quantifier = .required },
+                        .{ .kind = .literal_integer, .quantifier = .required },
+                        .{ .kind = .literal_integer, .quantifier = .required },
+                        .{ .kind = .literal_integer, .quantifier = .required },
+                        .{ .kind = .literal_integer, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpFixedCosINTEL",
                     .opcode = 5927,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .LiteralInteger, .quantifier = .required },
-                        .{ .kind = .LiteralInteger, .quantifier = .required },
-                        .{ .kind = .LiteralInteger, .quantifier = .required },
-                        .{ .kind = .LiteralInteger, .quantifier = .required },
-                        .{ .kind = .LiteralInteger, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .literal_integer, .quantifier = .required },
+                        .{ .kind = .literal_integer, .quantifier = .required },
+                        .{ .kind = .literal_integer, .quantifier = .required },
+                        .{ .kind = .literal_integer, .quantifier = .required },
+                        .{ .kind = .literal_integer, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpFixedSinCosINTEL",
                     .opcode = 5928,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .LiteralInteger, .quantifier = .required },
-                        .{ .kind = .LiteralInteger, .quantifier = .required },
-                        .{ .kind = .LiteralInteger, .quantifier = .required },
-                        .{ .kind = .LiteralInteger, .quantifier = .required },
-                        .{ .kind = .LiteralInteger, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .literal_integer, .quantifier = .required },
+                        .{ .kind = .literal_integer, .quantifier = .required },
+                        .{ .kind = .literal_integer, .quantifier = .required },
+                        .{ .kind = .literal_integer, .quantifier = .required },
+                        .{ .kind = .literal_integer, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpFixedSinPiINTEL",
                     .opcode = 5929,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .LiteralInteger, .quantifier = .required },
-                        .{ .kind = .LiteralInteger, .quantifier = .required },
-                        .{ .kind = .LiteralInteger, .quantifier = .required },
-                        .{ .kind = .LiteralInteger, .quantifier = .required },
-                        .{ .kind = .LiteralInteger, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .literal_integer, .quantifier = .required },
+                        .{ .kind = .literal_integer, .quantifier = .required },
+                        .{ .kind = .literal_integer, .quantifier = .required },
+                        .{ .kind = .literal_integer, .quantifier = .required },
+                        .{ .kind = .literal_integer, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpFixedCosPiINTEL",
                     .opcode = 5930,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .LiteralInteger, .quantifier = .required },
-                        .{ .kind = .LiteralInteger, .quantifier = .required },
-                        .{ .kind = .LiteralInteger, .quantifier = .required },
-                        .{ .kind = .LiteralInteger, .quantifier = .required },
-                        .{ .kind = .LiteralInteger, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .literal_integer, .quantifier = .required },
+                        .{ .kind = .literal_integer, .quantifier = .required },
+                        .{ .kind = .literal_integer, .quantifier = .required },
+                        .{ .kind = .literal_integer, .quantifier = .required },
+                        .{ .kind = .literal_integer, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpFixedSinCosPiINTEL",
                     .opcode = 5931,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .LiteralInteger, .quantifier = .required },
-                        .{ .kind = .LiteralInteger, .quantifier = .required },
-                        .{ .kind = .LiteralInteger, .quantifier = .required },
-                        .{ .kind = .LiteralInteger, .quantifier = .required },
-                        .{ .kind = .LiteralInteger, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .literal_integer, .quantifier = .required },
+                        .{ .kind = .literal_integer, .quantifier = .required },
+                        .{ .kind = .literal_integer, .quantifier = .required },
+                        .{ .kind = .literal_integer, .quantifier = .required },
+                        .{ .kind = .literal_integer, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpFixedLogINTEL",
                     .opcode = 5932,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .LiteralInteger, .quantifier = .required },
-                        .{ .kind = .LiteralInteger, .quantifier = .required },
-                        .{ .kind = .LiteralInteger, .quantifier = .required },
-                        .{ .kind = .LiteralInteger, .quantifier = .required },
-                        .{ .kind = .LiteralInteger, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .literal_integer, .quantifier = .required },
+                        .{ .kind = .literal_integer, .quantifier = .required },
+                        .{ .kind = .literal_integer, .quantifier = .required },
+                        .{ .kind = .literal_integer, .quantifier = .required },
+                        .{ .kind = .literal_integer, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpFixedExpINTEL",
                     .opcode = 5933,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .LiteralInteger, .quantifier = .required },
-                        .{ .kind = .LiteralInteger, .quantifier = .required },
-                        .{ .kind = .LiteralInteger, .quantifier = .required },
-                        .{ .kind = .LiteralInteger, .quantifier = .required },
-                        .{ .kind = .LiteralInteger, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .literal_integer, .quantifier = .required },
+                        .{ .kind = .literal_integer, .quantifier = .required },
+                        .{ .kind = .literal_integer, .quantifier = .required },
+                        .{ .kind = .literal_integer, .quantifier = .required },
+                        .{ .kind = .literal_integer, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpPtrCastToCrossWorkgroupINTEL",
                     .opcode = 5934,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpCrossWorkgroupCastToPtrINTEL",
                     .opcode = 5938,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpReadPipeBlockingINTEL",
                     .opcode = 5946,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpWritePipeBlockingINTEL",
                     .opcode = 5947,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpFPGARegINTEL",
                     .opcode = 5949,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpRayQueryGetRayTMinKHR",
                     .opcode = 6016,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpRayQueryGetRayFlagsKHR",
                     .opcode = 6017,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpRayQueryGetIntersectionTKHR",
                     .opcode = 6018,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpRayQueryGetIntersectionInstanceCustomIndexKHR",
                     .opcode = 6019,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpRayQueryGetIntersectionInstanceIdKHR",
                     .opcode = 6020,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpRayQueryGetIntersectionInstanceShaderBindingTableRecordOffsetKHR",
                     .opcode = 6021,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpRayQueryGetIntersectionGeometryIndexKHR",
                     .opcode = 6022,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpRayQueryGetIntersectionPrimitiveIndexKHR",
                     .opcode = 6023,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpRayQueryGetIntersectionBarycentricsKHR",
                     .opcode = 6024,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpRayQueryGetIntersectionFrontFaceKHR",
                     .opcode = 6025,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpRayQueryGetIntersectionCandidateAABBOpaqueKHR",
                     .opcode = 6026,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpRayQueryGetIntersectionObjectRayDirectionKHR",
                     .opcode = 6027,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpRayQueryGetIntersectionObjectRayOriginKHR",
                     .opcode = 6028,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpRayQueryGetWorldRayDirectionKHR",
                     .opcode = 6029,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpRayQueryGetWorldRayOriginKHR",
                     .opcode = 6030,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpRayQueryGetIntersectionObjectToWorldKHR",
                     .opcode = 6031,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpRayQueryGetIntersectionWorldToObjectKHR",
                     .opcode = 6032,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpAtomicFAddEXT",
                     .opcode = 6035,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdScope, .quantifier = .required },
-                        .{ .kind = .IdMemorySemantics, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_scope, .quantifier = .required },
+                        .{ .kind = .id_memory_semantics, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpTypeBufferSurfaceINTEL",
                     .opcode = 6086,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .AccessQualifier, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .access_qualifier, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpTypeStructContinuedINTEL",
                     .opcode = 6090,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdRef, .quantifier = .variadic },
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .variadic },
                     },
                 },
                 .{
                     .name = "OpConstantCompositeContinuedINTEL",
                     .opcode = 6091,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdRef, .quantifier = .variadic },
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .variadic },
                     },
                 },
                 .{
                     .name = "OpSpecConstantCompositeContinuedINTEL",
                     .opcode = 6092,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdRef, .quantifier = .variadic },
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .variadic },
                     },
                 },
                 .{
                     .name = "OpCompositeConstructContinuedINTEL",
                     .opcode = 6096,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .variadic },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .variadic },
                     },
                 },
                 .{
                     .name = "OpConvertFToBF16INTEL",
                     .opcode = 6116,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpConvertBF16ToFINTEL",
                     .opcode = 6117,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpControlBarrierArriveINTEL",
                     .opcode = 6142,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdScope, .quantifier = .required },
-                        .{ .kind = .IdScope, .quantifier = .required },
-                        .{ .kind = .IdMemorySemantics, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_scope, .quantifier = .required },
+                        .{ .kind = .id_scope, .quantifier = .required },
+                        .{ .kind = .id_memory_semantics, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "OpControlBarrierWaitINTEL",
                     .opcode = 6143,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdScope, .quantifier = .required },
-                        .{ .kind = .IdScope, .quantifier = .required },
-                        .{ .kind = .IdMemorySemantics, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_scope, .quantifier = .required },
+                        .{ .kind = .id_scope, .quantifier = .required },
+                        .{ .kind = .id_memory_semantics, .quantifier = .required },
                     },
                 },
                 .{
-                    .name = "OpGroupIMulKHR",
-                    .opcode = 6401,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdScope, .quantifier = .required },
-                        .{ .kind = .GroupOperation, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .name = "OpArithmeticFenceEXT",
+                    .opcode = 6145,
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
-                    .name = "OpGroupFMulKHR",
-                    .opcode = 6402,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdScope, .quantifier = .required },
-                        .{ .kind = .GroupOperation, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .name = "OpTaskSequenceCreateINTEL",
+                    .opcode = 6163,
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .literal_integer, .quantifier = .required },
+                        .{ .kind = .literal_integer, .quantifier = .required },
+                        .{ .kind = .literal_integer, .quantifier = .required },
+                        .{ .kind = .literal_integer, .quantifier = .required },
                     },
                 },
                 .{
-                    .name = "OpGroupBitwiseAndKHR",
-                    .opcode = 6403,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdScope, .quantifier = .required },
-                        .{ .kind = .GroupOperation, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .name = "OpTaskSequenceAsyncINTEL",
+                    .opcode = 6164,
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .variadic },
                     },
                 },
                 .{
-                    .name = "OpGroupBitwiseOrKHR",
-                    .opcode = 6404,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdScope, .quantifier = .required },
-                        .{ .kind = .GroupOperation, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .name = "OpTaskSequenceGetINTEL",
+                    .opcode = 6165,
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
-                    .name = "OpGroupBitwiseXorKHR",
-                    .opcode = 6405,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdScope, .quantifier = .required },
-                        .{ .kind = .GroupOperation, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .name = "OpTaskSequenceReleaseINTEL",
+                    .opcode = 6166,
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
-                    .name = "OpGroupLogicalAndKHR",
-                    .opcode = 6406,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdScope, .quantifier = .required },
-                        .{ .kind = .GroupOperation, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .name = "OpTypeTaskSequenceINTEL",
+                    .opcode = 6199,
+                    .operands = &.{
+                        .{ .kind = .id_result, .quantifier = .required },
                     },
                 },
                 .{
-                    .name = "OpGroupLogicalOrKHR",
-                    .opcode = 6407,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdScope, .quantifier = .required },
-                        .{ .kind = .GroupOperation, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .name = "OpSubgroupBlockPrefetchINTEL",
+                    .opcode = 6221,
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .memory_access, .quantifier = .optional },
                     },
                 },
                 .{
-                    .name = "OpGroupLogicalXorKHR",
-                    .opcode = 6408,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdScope, .quantifier = .required },
-                        .{ .kind = .GroupOperation, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .name = "OpSubgroup2DBlockLoadINTEL",
+                    .opcode = 6231,
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
-                    .name = "OpMaskedGatherINTEL",
-                    .opcode = 6428,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdResultType, .quantifier = .required },
-                        .{ .kind = .IdResult, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .LiteralInteger, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .name = "OpSubgroup2DBlockLoadTransformINTEL",
+                    .opcode = 6232,
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
-                    .name = "OpMaskedScatterINTEL",
-                    .opcode = 6429,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .LiteralInteger, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .name = "OpSubgroup2DBlockLoadTransposeINTEL",
+                    .opcode = 6233,
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
-            },
-            .@"OpenCL.std" => &[_]Instruction{
                 .{
-                    .name = "acos",
-                    .opcode = 0,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .name = "OpSubgroup2DBlockPrefetchINTEL",
+                    .opcode = 6234,
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
-                    .name = "acosh",
-                    .opcode = 1,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .name = "OpSubgroup2DBlockStoreINTEL",
+                    .opcode = 6235,
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                    },
+                },
+                .{
+                    .name = "OpSubgroupMatrixMultiplyAccumulateINTEL",
+                    .opcode = 6237,
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .matrix_multiply_accumulate_operands, .quantifier = .optional },
+                    },
+                },
+                .{
+                    .name = "OpBitwiseFunctionINTEL",
+                    .opcode = 6242,
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
-                    .name = "acospi",
-                    .opcode = 2,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .name = "OpGroupIMulKHR",
+                    .opcode = 6401,
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_scope, .quantifier = .required },
+                        .{ .kind = .group_operation, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
-                    .name = "asin",
-                    .opcode = 3,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdRef, .quantifier = .required },
-                    },
+                    .name = "OpGroupFMulKHR",
+                    .opcode = 6402,
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_scope, .quantifier = .required },
+                        .{ .kind = .group_operation, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                    },
                 },
                 .{
-                    .name = "asinh",
+                    .name = "OpGroupBitwiseAndKHR",
+                    .opcode = 6403,
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_scope, .quantifier = .required },
+                        .{ .kind = .group_operation, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                    },
+                },
+                .{
+                    .name = "OpGroupBitwiseOrKHR",
+                    .opcode = 6404,
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_scope, .quantifier = .required },
+                        .{ .kind = .group_operation, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                    },
+                },
+                .{
+                    .name = "OpGroupBitwiseXorKHR",
+                    .opcode = 6405,
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_scope, .quantifier = .required },
+                        .{ .kind = .group_operation, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                    },
+                },
+                .{
+                    .name = "OpGroupLogicalAndKHR",
+                    .opcode = 6406,
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_scope, .quantifier = .required },
+                        .{ .kind = .group_operation, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                    },
+                },
+                .{
+                    .name = "OpGroupLogicalOrKHR",
+                    .opcode = 6407,
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_scope, .quantifier = .required },
+                        .{ .kind = .group_operation, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                    },
+                },
+                .{
+                    .name = "OpGroupLogicalXorKHR",
+                    .opcode = 6408,
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_scope, .quantifier = .required },
+                        .{ .kind = .group_operation, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                    },
+                },
+                .{
+                    .name = "OpRoundFToTF32INTEL",
+                    .opcode = 6426,
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                    },
+                },
+                .{
+                    .name = "OpMaskedGatherINTEL",
+                    .opcode = 6428,
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .literal_integer, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                    },
+                },
+                .{
+                    .name = "OpMaskedScatterINTEL",
+                    .opcode = 6429,
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .literal_integer, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                    },
+                },
+                .{
+                    .name = "OpConvertHandleToImageINTEL",
+                    .opcode = 6529,
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                    },
+                },
+                .{
+                    .name = "OpConvertHandleToSamplerINTEL",
+                    .opcode = 6530,
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                    },
+                },
+                .{
+                    .name = "OpConvertHandleToSampledImageINTEL",
+                    .opcode = 6531,
+                    .operands = &.{
+                        .{ .kind = .id_result_type, .quantifier = .required },
+                        .{ .kind = .id_result, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                    },
+                },
+            },
+            .spv_amd_shader_trinary_minmax => &.{
+                .{
+                    .name = "FMin3AMD",
+                    .opcode = 1,
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                    },
+                },
+                .{
+                    .name = "UMin3AMD",
+                    .opcode = 2,
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                    },
+                },
+                .{
+                    .name = "SMin3AMD",
+                    .opcode = 3,
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                    },
+                },
+                .{
+                    .name = "FMax3AMD",
                     .opcode = 4,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
-                    .name = "asinpi",
+                    .name = "UMax3AMD",
                     .opcode = 5,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
-                    .name = "atan",
+                    .name = "SMax3AMD",
                     .opcode = 6,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
-                    .name = "atan2",
+                    .name = "FMid3AMD",
                     .opcode = 7,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
-                    .name = "atanh",
+                    .name = "UMid3AMD",
                     .opcode = 8,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
-                    .name = "atanpi",
+                    .name = "SMid3AMD",
                     .opcode = 9,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
+            },
+            .spv_ext_inst_type_tosa_001000_1 => &.{
                 .{
-                    .name = "atan2pi",
+                    .name = "ARGMAX",
+                    .opcode = 0,
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                    },
+                },
+                .{
+                    .name = "AVG_POOL2D",
+                    .opcode = 1,
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                    },
+                },
+                .{
+                    .name = "CONV2D",
+                    .opcode = 2,
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                    },
+                },
+                .{
+                    .name = "CONV3D",
+                    .opcode = 3,
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                    },
+                },
+                .{
+                    .name = "DEPTHWISE_CONV2D",
+                    .opcode = 4,
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                    },
+                },
+                .{
+                    .name = "FFT2D",
+                    .opcode = 5,
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                    },
+                },
+                .{
+                    .name = "MATMUL",
+                    .opcode = 6,
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                    },
+                },
+                .{
+                    .name = "MAX_POOL2D",
+                    .opcode = 7,
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                    },
+                },
+                .{
+                    .name = "RFFT2D",
+                    .opcode = 8,
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                    },
+                },
+                .{
+                    .name = "TRANSPOSE_CONV2D",
+                    .opcode = 9,
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                    },
+                },
+                .{
+                    .name = "CLAMP",
                     .opcode = 10,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
-                    .name = "cbrt",
+                    .name = "ERF",
                     .opcode = 11,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
-                    .name = "ceil",
+                    .name = "SIGMOID",
                     .opcode = 12,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
-                    .name = "copysign",
+                    .name = "TANH",
                     .opcode = 13,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
-                    .name = "cos",
+                    .name = "ADD",
                     .opcode = 14,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
-                    .name = "cosh",
+                    .name = "ARITHMETIC_RIGHT_SHIFT",
                     .opcode = 15,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
-                    .name = "cospi",
+                    .name = "BITWISE_AND",
                     .opcode = 16,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
-                    .name = "erfc",
+                    .name = "BITWISE_OR",
                     .opcode = 17,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
-                    .name = "erf",
+                    .name = "BITWISE_XOR",
                     .opcode = 18,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
-                    .name = "exp",
+                    .name = "INTDIV",
                     .opcode = 19,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
-                    .name = "exp2",
+                    .name = "LOGICAL_AND",
                     .opcode = 20,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
-                    .name = "exp10",
+                    .name = "LOGICAL_LEFT_SHIFT",
                     .opcode = 21,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
-                    .name = "expm1",
+                    .name = "LOGICAL_RIGHT_SHIFT",
                     .opcode = 22,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
-                    .name = "fabs",
+                    .name = "LOGICAL_OR",
                     .opcode = 23,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
-                    .name = "fdim",
+                    .name = "LOGICAL_XOR",
                     .opcode = 24,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
-                    .name = "floor",
+                    .name = "MAXIMUM",
                     .opcode = 25,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
-                    .name = "fma",
+                    .name = "MINIMUM",
                     .opcode = 26,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
-                    .name = "fmax",
+                    .name = "MUL",
                     .opcode = 27,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
-                    .name = "fmin",
+                    .name = "POW",
                     .opcode = 28,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
-                    .name = "fmod",
+                    .name = "SUB",
                     .opcode = 29,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
-                    .name = "fract",
+                    .name = "TABLE",
                     .opcode = 30,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
-                    .name = "frexp",
+                    .name = "ABS",
                     .opcode = 31,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
-                    .name = "hypot",
+                    .name = "BITWISE_NOT",
                     .opcode = 32,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
-                    .name = "ilogb",
+                    .name = "CEIL",
                     .opcode = 33,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
-                    .name = "ldexp",
+                    .name = "CLZ",
                     .opcode = 34,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
-                    .name = "lgamma",
+                    .name = "COS",
                     .opcode = 35,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
-                    .name = "lgamma_r",
+                    .name = "EXP",
                     .opcode = 36,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
-                    .name = "log",
+                    .name = "FLOOR",
                     .opcode = 37,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
-                    .name = "log2",
+                    .name = "LOG",
                     .opcode = 38,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
-                    .name = "log10",
+                    .name = "LOGICAL_NOT",
                     .opcode = 39,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
-                    .name = "log1p",
+                    .name = "NEGATE",
                     .opcode = 40,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
-                    .name = "logb",
+                    .name = "RECIPROCAL",
                     .opcode = 41,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
-                    .name = "mad",
+                    .name = "RSQRT",
                     .opcode = 42,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
-                    .name = "maxmag",
+                    .name = "SIN",
                     .opcode = 43,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
-                    .name = "minmag",
+                    .name = "SELECT",
                     .opcode = 44,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
-                    .name = "modf",
+                    .name = "EQUAL",
                     .opcode = 45,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
-                    .name = "nan",
+                    .name = "GREATER",
                     .opcode = 46,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
-                    .name = "nextafter",
+                    .name = "GREATER_EQUAL",
                     .opcode = 47,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
-                    .name = "pow",
+                    .name = "REDUCE_ALL",
                     .opcode = 48,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
-                    .name = "pown",
+                    .name = "REDUCE_ANY",
                     .opcode = 49,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
-                    .name = "powr",
+                    .name = "REDUCE_MAX",
                     .opcode = 50,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
-                    .name = "remainder",
+                    .name = "REDUCE_MIN",
                     .opcode = 51,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
-                    .name = "remquo",
+                    .name = "REDUCE_PRODUCT",
                     .opcode = 52,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
-                    .name = "rint",
+                    .name = "REDUCE_SUM",
                     .opcode = 53,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
-                    .name = "rootn",
+                    .name = "CONCAT",
                     .opcode = 54,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .variadic },
                     },
                 },
                 .{
-                    .name = "round",
+                    .name = "PAD",
                     .opcode = 55,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
-                    .name = "rsqrt",
+                    .name = "RESHAPE",
                     .opcode = 56,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
-                    .name = "sin",
+                    .name = "REVERSE",
                     .opcode = 57,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
-                    .name = "sincos",
+                    .name = "SLICE",
                     .opcode = 58,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
-                    .name = "sinh",
+                    .name = "TILE",
                     .opcode = 59,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
-                    .name = "sinpi",
+                    .name = "TRANSPOSE",
                     .opcode = 60,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
-                    .name = "sqrt",
+                    .name = "GATHER",
                     .opcode = 61,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
-                    .name = "tan",
+                    .name = "SCATTER",
                     .opcode = 62,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
-                    .name = "tanh",
+                    .name = "RESIZE",
                     .opcode = 63,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
-                    .name = "tanpi",
+                    .name = "CAST",
                     .opcode = 64,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
-                    .name = "tgamma",
+                    .name = "RESCALE",
                     .opcode = 65,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
+            },
+            .non_semantic_vksp_reflection => &.{
                 .{
-                    .name = "trunc",
-                    .opcode = 66,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .name = "Configuration",
+                    .opcode = 1,
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
-                    .name = "half_cos",
-                    .opcode = 67,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .name = "StartCounter",
+                    .opcode = 2,
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
-                    .name = "half_divide",
-                    .opcode = 68,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .name = "StopCounter",
+                    .opcode = 3,
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
-                    .name = "half_exp",
-                    .opcode = 69,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .name = "PushConstants",
+                    .opcode = 4,
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
-                    .name = "half_exp2",
-                    .opcode = 70,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .name = "SpecializationMapEntry",
+                    .opcode = 5,
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
-                    .name = "half_exp10",
-                    .opcode = 71,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .name = "DescriptorSetBuffer",
+                    .opcode = 6,
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
-                    .name = "half_log",
-                    .opcode = 72,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .name = "DescriptorSetImage",
+                    .opcode = 7,
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
-                    .name = "half_log2",
-                    .opcode = 73,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .name = "DescriptorSetSampler",
+                    .opcode = 8,
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
+            },
+            .spv_amd_shader_explicit_vertex_parameter => &.{
                 .{
-                    .name = "half_log10",
-                    .opcode = 74,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .name = "InterpolateAtVertexAMD",
+                    .opcode = 1,
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
+            },
+            .debug_info => &.{
                 .{
-                    .name = "half_powr",
-                    .opcode = 75,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                    },
+                    .name = "DebugInfoNone",
+                    .opcode = 0,
+                    .operands = &.{},
                 },
                 .{
-                    .name = "half_recip",
-                    .opcode = 76,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .name = "DebugCompilationUnit",
+                    .opcode = 1,
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .literal_integer, .quantifier = .required },
+                        .{ .kind = .literal_integer, .quantifier = .required },
                     },
                 },
                 .{
-                    .name = "half_rsqrt",
-                    .opcode = 77,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .name = "DebugTypeBasic",
+                    .opcode = 2,
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .debug_info_debug_base_type_attribute_encoding, .quantifier = .required },
                     },
                 },
                 .{
-                    .name = "half_sin",
-                    .opcode = 78,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .name = "DebugTypePointer",
+                    .opcode = 3,
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .storage_class, .quantifier = .required },
+                        .{ .kind = .debug_info_debug_info_flags, .quantifier = .required },
                     },
                 },
                 .{
-                    .name = "half_sqrt",
-                    .opcode = 79,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .name = "DebugTypeQualifier",
+                    .opcode = 4,
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .debug_info_debug_type_qualifier, .quantifier = .required },
                     },
                 },
                 .{
-                    .name = "half_tan",
-                    .opcode = 80,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .name = "DebugTypeArray",
+                    .opcode = 5,
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .variadic },
                     },
                 },
                 .{
-                    .name = "native_cos",
-                    .opcode = 81,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .name = "DebugTypeVector",
+                    .opcode = 6,
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .literal_integer, .quantifier = .required },
                     },
                 },
                 .{
-                    .name = "native_divide",
-                    .opcode = 82,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .name = "DebugTypedef",
+                    .opcode = 7,
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .literal_integer, .quantifier = .required },
+                        .{ .kind = .literal_integer, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
-                    .name = "native_exp",
-                    .opcode = 83,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .name = "DebugTypeFunction",
+                    .opcode = 8,
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .variadic },
                     },
                 },
                 .{
-                    .name = "native_exp2",
-                    .opcode = 84,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .name = "DebugTypeEnum",
+                    .opcode = 9,
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .literal_integer, .quantifier = .required },
+                        .{ .kind = .literal_integer, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .debug_info_debug_info_flags, .quantifier = .required },
+                        .{ .kind = .pair_id_ref_id_ref, .quantifier = .variadic },
                     },
                 },
                 .{
-                    .name = "native_exp10",
-                    .opcode = 85,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .name = "DebugTypeComposite",
+                    .opcode = 10,
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .debug_info_debug_composite_type, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .literal_integer, .quantifier = .required },
+                        .{ .kind = .literal_integer, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .debug_info_debug_info_flags, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .variadic },
                     },
                 },
                 .{
-                    .name = "native_log",
-                    .opcode = 86,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .name = "DebugTypeMember",
+                    .opcode = 11,
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .literal_integer, .quantifier = .required },
+                        .{ .kind = .literal_integer, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .debug_info_debug_info_flags, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .optional },
                     },
                 },
                 .{
-                    .name = "native_log2",
-                    .opcode = 87,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .name = "DebugTypeInheritance",
+                    .opcode = 12,
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .debug_info_debug_info_flags, .quantifier = .required },
                     },
                 },
                 .{
-                    .name = "native_log10",
-                    .opcode = 88,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .name = "DebugTypePtrToMember",
+                    .opcode = 13,
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
-                    .name = "native_powr",
-                    .opcode = 89,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .name = "DebugTypeTemplate",
+                    .opcode = 14,
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .variadic },
                     },
                 },
                 .{
-                    .name = "native_recip",
-                    .opcode = 90,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .name = "DebugTypeTemplateParameter",
+                    .opcode = 15,
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .literal_integer, .quantifier = .required },
+                        .{ .kind = .literal_integer, .quantifier = .required },
                     },
                 },
                 .{
-                    .name = "native_rsqrt",
-                    .opcode = 91,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .name = "DebugTypeTemplateTemplateParameter",
+                    .opcode = 16,
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .literal_integer, .quantifier = .required },
+                        .{ .kind = .literal_integer, .quantifier = .required },
                     },
                 },
                 .{
-                    .name = "native_sin",
-                    .opcode = 92,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .name = "DebugTypeTemplateParameterPack",
+                    .opcode = 17,
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .literal_integer, .quantifier = .required },
+                        .{ .kind = .literal_integer, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .variadic },
                     },
                 },
                 .{
-                    .name = "native_sqrt",
-                    .opcode = 93,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .name = "DebugGlobalVariable",
+                    .opcode = 18,
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .literal_integer, .quantifier = .required },
+                        .{ .kind = .literal_integer, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .debug_info_debug_info_flags, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .optional },
                     },
                 },
                 .{
-                    .name = "native_tan",
-                    .opcode = 94,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .name = "DebugFunctionDeclaration",
+                    .opcode = 19,
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .literal_integer, .quantifier = .required },
+                        .{ .kind = .literal_integer, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .debug_info_debug_info_flags, .quantifier = .required },
                     },
                 },
                 .{
-                    .name = "fclamp",
-                    .opcode = 95,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .name = "DebugFunction",
+                    .opcode = 20,
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .literal_integer, .quantifier = .required },
+                        .{ .kind = .literal_integer, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .debug_info_debug_info_flags, .quantifier = .required },
+                        .{ .kind = .literal_integer, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .optional },
                     },
                 },
                 .{
-                    .name = "degrees",
-                    .opcode = 96,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .name = "DebugLexicalBlock",
+                    .opcode = 21,
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .literal_integer, .quantifier = .required },
+                        .{ .kind = .literal_integer, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .optional },
                     },
                 },
                 .{
-                    .name = "fmax_common",
-                    .opcode = 97,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .name = "DebugLexicalBlockDiscriminator",
+                    .opcode = 22,
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .literal_integer, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
-                    .name = "fmin_common",
-                    .opcode = 98,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .name = "DebugScope",
+                    .opcode = 23,
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .optional },
                     },
                 },
                 .{
-                    .name = "mix",
-                    .opcode = 99,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .name = "DebugNoScope",
+                    .opcode = 24,
+                    .operands = &.{},
+                },
+                .{
+                    .name = "DebugInlinedAt",
+                    .opcode = 25,
+                    .operands = &.{
+                        .{ .kind = .literal_integer, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .optional },
                     },
                 },
                 .{
-                    .name = "radians",
-                    .opcode = 100,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .name = "DebugLocalVariable",
+                    .opcode = 26,
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .literal_integer, .quantifier = .required },
+                        .{ .kind = .literal_integer, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .literal_integer, .quantifier = .optional },
                     },
                 },
                 .{
-                    .name = "step",
-                    .opcode = 101,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .name = "DebugInlinedVariable",
+                    .opcode = 27,
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
-                    .name = "smoothstep",
-                    .opcode = 102,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .name = "DebugDeclare",
+                    .opcode = 28,
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
-                    .name = "sign",
-                    .opcode = 103,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .name = "DebugValue",
+                    .opcode = 29,
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .variadic },
                     },
                 },
                 .{
-                    .name = "cross",
-                    .opcode = 104,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .name = "DebugOperation",
+                    .opcode = 30,
+                    .operands = &.{
+                        .{ .kind = .debug_info_debug_operation, .quantifier = .required },
+                        .{ .kind = .literal_integer, .quantifier = .variadic },
                     },
                 },
                 .{
-                    .name = "distance",
-                    .opcode = 105,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .name = "DebugExpression",
+                    .opcode = 31,
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .variadic },
                     },
                 },
                 .{
-                    .name = "length",
-                    .opcode = 106,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .name = "DebugMacroDef",
+                    .opcode = 32,
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .literal_integer, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .optional },
                     },
                 },
                 .{
-                    .name = "normalize",
-                    .opcode = 107,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .name = "DebugMacroUndef",
+                    .opcode = 33,
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .literal_integer, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
+            },
+            .non_semantic_debug_break => &.{
                 .{
-                    .name = "fast_distance",
-                    .opcode = 108,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .name = "DebugBreak",
+                    .opcode = 1,
+                    .operands = &.{},
+                },
+            },
+            .open_cl_debug_info_100 => &.{
+                .{
+                    .name = "DebugInfoNone",
+                    .opcode = 0,
+                    .operands = &.{},
+                },
+                .{
+                    .name = "DebugCompilationUnit",
+                    .opcode = 1,
+                    .operands = &.{
+                        .{ .kind = .literal_integer, .quantifier = .required },
+                        .{ .kind = .literal_integer, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .source_language, .quantifier = .required },
                     },
                 },
                 .{
-                    .name = "fast_length",
-                    .opcode = 109,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .name = "DebugTypeBasic",
+                    .opcode = 2,
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .open_cl_debug_info_100_debug_base_type_attribute_encoding, .quantifier = .required },
                     },
                 },
                 .{
-                    .name = "fast_normalize",
-                    .opcode = 110,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .name = "DebugTypePointer",
+                    .opcode = 3,
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .storage_class, .quantifier = .required },
+                        .{ .kind = .open_cl_debug_info_100_debug_info_flags, .quantifier = .required },
                     },
                 },
                 .{
-                    .name = "s_abs",
-                    .opcode = 141,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .name = "DebugTypeQualifier",
+                    .opcode = 4,
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .open_cl_debug_info_100_debug_type_qualifier, .quantifier = .required },
                     },
                 },
                 .{
-                    .name = "s_abs_diff",
-                    .opcode = 142,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .name = "DebugTypeArray",
+                    .opcode = 5,
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .variadic },
                     },
                 },
                 .{
-                    .name = "s_add_sat",
-                    .opcode = 143,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .name = "DebugTypeVector",
+                    .opcode = 6,
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .literal_integer, .quantifier = .required },
                     },
                 },
                 .{
-                    .name = "u_add_sat",
-                    .opcode = 144,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .name = "DebugTypedef",
+                    .opcode = 7,
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .literal_integer, .quantifier = .required },
+                        .{ .kind = .literal_integer, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
-                    .name = "s_hadd",
-                    .opcode = 145,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .name = "DebugTypeFunction",
+                    .opcode = 8,
+                    .operands = &.{
+                        .{ .kind = .open_cl_debug_info_100_debug_info_flags, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .variadic },
                     },
                 },
                 .{
-                    .name = "u_hadd",
-                    .opcode = 146,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .name = "DebugTypeEnum",
+                    .opcode = 9,
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .literal_integer, .quantifier = .required },
+                        .{ .kind = .literal_integer, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .open_cl_debug_info_100_debug_info_flags, .quantifier = .required },
+                        .{ .kind = .pair_id_ref_id_ref, .quantifier = .variadic },
                     },
                 },
                 .{
-                    .name = "s_rhadd",
-                    .opcode = 147,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .name = "DebugTypeComposite",
+                    .opcode = 10,
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .open_cl_debug_info_100_debug_composite_type, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .literal_integer, .quantifier = .required },
+                        .{ .kind = .literal_integer, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .open_cl_debug_info_100_debug_info_flags, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .variadic },
                     },
                 },
                 .{
-                    .name = "u_rhadd",
-                    .opcode = 148,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .name = "DebugTypeMember",
+                    .opcode = 11,
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .literal_integer, .quantifier = .required },
+                        .{ .kind = .literal_integer, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .open_cl_debug_info_100_debug_info_flags, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .optional },
                     },
                 },
                 .{
-                    .name = "s_clamp",
-                    .opcode = 149,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .name = "DebugTypeInheritance",
+                    .opcode = 12,
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .open_cl_debug_info_100_debug_info_flags, .quantifier = .required },
                     },
                 },
                 .{
-                    .name = "u_clamp",
-                    .opcode = 150,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .name = "DebugTypePtrToMember",
+                    .opcode = 13,
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
-                    .name = "clz",
-                    .opcode = 151,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .name = "DebugTypeTemplate",
+                    .opcode = 14,
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .variadic },
                     },
                 },
                 .{
-                    .name = "ctz",
-                    .opcode = 152,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .name = "DebugTypeTemplateParameter",
+                    .opcode = 15,
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .literal_integer, .quantifier = .required },
+                        .{ .kind = .literal_integer, .quantifier = .required },
                     },
                 },
                 .{
-                    .name = "s_mad_hi",
-                    .opcode = 153,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .name = "DebugTypeTemplateTemplateParameter",
+                    .opcode = 16,
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .literal_integer, .quantifier = .required },
+                        .{ .kind = .literal_integer, .quantifier = .required },
                     },
                 },
                 .{
-                    .name = "u_mad_sat",
-                    .opcode = 154,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .name = "DebugTypeTemplateParameterPack",
+                    .opcode = 17,
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .literal_integer, .quantifier = .required },
+                        .{ .kind = .literal_integer, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .variadic },
                     },
                 },
                 .{
-                    .name = "s_mad_sat",
-                    .opcode = 155,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .name = "DebugGlobalVariable",
+                    .opcode = 18,
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .literal_integer, .quantifier = .required },
+                        .{ .kind = .literal_integer, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .open_cl_debug_info_100_debug_info_flags, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .optional },
                     },
                 },
                 .{
-                    .name = "s_max",
-                    .opcode = 156,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .name = "DebugFunctionDeclaration",
+                    .opcode = 19,
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .literal_integer, .quantifier = .required },
+                        .{ .kind = .literal_integer, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .open_cl_debug_info_100_debug_info_flags, .quantifier = .required },
                     },
                 },
                 .{
-                    .name = "u_max",
-                    .opcode = 157,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .name = "DebugFunction",
+                    .opcode = 20,
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .literal_integer, .quantifier = .required },
+                        .{ .kind = .literal_integer, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .open_cl_debug_info_100_debug_info_flags, .quantifier = .required },
+                        .{ .kind = .literal_integer, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .optional },
                     },
                 },
                 .{
-                    .name = "s_min",
-                    .opcode = 158,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .name = "DebugLexicalBlock",
+                    .opcode = 21,
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .literal_integer, .quantifier = .required },
+                        .{ .kind = .literal_integer, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .optional },
                     },
                 },
                 .{
-                    .name = "u_min",
-                    .opcode = 159,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .name = "DebugLexicalBlockDiscriminator",
+                    .opcode = 22,
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .literal_integer, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
-                    .name = "s_mul_hi",
-                    .opcode = 160,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .name = "DebugScope",
+                    .opcode = 23,
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .optional },
                     },
                 },
                 .{
-                    .name = "rotate",
-                    .opcode = 161,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .name = "DebugNoScope",
+                    .opcode = 24,
+                    .operands = &.{},
+                },
+                .{
+                    .name = "DebugInlinedAt",
+                    .opcode = 25,
+                    .operands = &.{
+                        .{ .kind = .literal_integer, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .optional },
                     },
                 },
                 .{
-                    .name = "s_sub_sat",
-                    .opcode = 162,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .name = "DebugLocalVariable",
+                    .opcode = 26,
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .literal_integer, .quantifier = .required },
+                        .{ .kind = .literal_integer, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .open_cl_debug_info_100_debug_info_flags, .quantifier = .required },
+                        .{ .kind = .literal_integer, .quantifier = .optional },
                     },
                 },
                 .{
-                    .name = "u_sub_sat",
-                    .opcode = 163,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .name = "DebugInlinedVariable",
+                    .opcode = 27,
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
-                    .name = "u_upsample",
-                    .opcode = 164,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .name = "DebugDeclare",
+                    .opcode = 28,
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
-                    .name = "s_upsample",
-                    .opcode = 165,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .name = "DebugValue",
+                    .opcode = 29,
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .variadic },
                     },
                 },
                 .{
-                    .name = "popcount",
-                    .opcode = 166,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .name = "DebugOperation",
+                    .opcode = 30,
+                    .operands = &.{
+                        .{ .kind = .open_cl_debug_info_100_debug_operation, .quantifier = .required },
+                        .{ .kind = .literal_integer, .quantifier = .variadic },
                     },
                 },
                 .{
-                    .name = "s_mad24",
-                    .opcode = 167,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .name = "DebugExpression",
+                    .opcode = 31,
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .variadic },
                     },
                 },
                 .{
-                    .name = "u_mad24",
-                    .opcode = 168,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .name = "DebugMacroDef",
+                    .opcode = 32,
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .literal_integer, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .optional },
                     },
                 },
                 .{
-                    .name = "s_mul24",
-                    .opcode = 169,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .name = "DebugMacroUndef",
+                    .opcode = 33,
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .literal_integer, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
-                    .name = "u_mul24",
-                    .opcode = 170,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .name = "DebugImportedEntity",
+                    .opcode = 34,
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .open_cl_debug_info_100_debug_imported_entity, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .literal_integer, .quantifier = .required },
+                        .{ .kind = .literal_integer, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
-                    .name = "vloadn",
-                    .opcode = 171,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .LiteralInteger, .quantifier = .required },
+                    .name = "DebugSource",
+                    .opcode = 35,
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .optional },
                     },
                 },
                 .{
-                    .name = "vstoren",
-                    .opcode = 172,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .name = "DebugModuleINTEL",
+                    .opcode = 36,
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .literal_integer, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .literal_integer, .quantifier = .required },
                     },
                 },
+            },
+            .non_semantic_clspv_reflection_6 => &.{
                 .{
-                    .name = "vload_half",
-                    .opcode = 173,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .name = "Kernel",
+                    .opcode = 1,
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .optional },
+                        .{ .kind = .id_ref, .quantifier = .optional },
+                        .{ .kind = .id_ref, .quantifier = .optional },
                     },
                 },
                 .{
-                    .name = "vload_halfn",
-                    .opcode = 174,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .LiteralInteger, .quantifier = .required },
+                    .name = "ArgumentInfo",
+                    .opcode = 2,
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .optional },
+                        .{ .kind = .id_ref, .quantifier = .optional },
+                        .{ .kind = .id_ref, .quantifier = .optional },
+                        .{ .kind = .id_ref, .quantifier = .optional },
                     },
                 },
                 .{
-                    .name = "vstore_half",
-                    .opcode = 175,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .name = "ArgumentStorageBuffer",
+                    .opcode = 3,
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .optional },
                     },
                 },
                 .{
-                    .name = "vstore_half_r",
-                    .opcode = 176,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .FPRoundingMode, .quantifier = .required },
+                    .name = "ArgumentUniform",
+                    .opcode = 4,
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .optional },
+                    },
+                },
+                .{
+                    .name = "ArgumentPodStorageBuffer",
+                    .opcode = 5,
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .optional },
+                    },
+                },
+                .{
+                    .name = "ArgumentPodUniform",
+                    .opcode = 6,
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .optional },
+                    },
+                },
+                .{
+                    .name = "ArgumentPodPushConstant",
+                    .opcode = 7,
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .optional },
+                    },
+                },
+                .{
+                    .name = "ArgumentSampledImage",
+                    .opcode = 8,
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .optional },
+                    },
+                },
+                .{
+                    .name = "ArgumentStorageImage",
+                    .opcode = 9,
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .optional },
+                    },
+                },
+                .{
+                    .name = "ArgumentSampler",
+                    .opcode = 10,
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .optional },
+                    },
+                },
+                .{
+                    .name = "ArgumentWorkgroup",
+                    .opcode = 11,
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .optional },
+                    },
+                },
+                .{
+                    .name = "SpecConstantWorkgroupSize",
+                    .opcode = 12,
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                    },
+                },
+                .{
+                    .name = "SpecConstantGlobalOffset",
+                    .opcode = 13,
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                    },
+                },
+                .{
+                    .name = "SpecConstantWorkDim",
+                    .opcode = 14,
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
+                    },
+                },
+                .{
+                    .name = "PushConstantGlobalOffset",
+                    .opcode = 15,
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                    },
+                },
+                .{
+                    .name = "PushConstantEnqueuedLocalSize",
+                    .opcode = 16,
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                    },
+                },
+                .{
+                    .name = "PushConstantGlobalSize",
+                    .opcode = 17,
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                    },
+                },
+                .{
+                    .name = "PushConstantRegionOffset",
+                    .opcode = 18,
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                    },
+                },
+                .{
+                    .name = "PushConstantNumWorkgroups",
+                    .opcode = 19,
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                    },
+                },
+                .{
+                    .name = "PushConstantRegionGroupOffset",
+                    .opcode = 20,
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                    },
+                },
+                .{
+                    .name = "ConstantDataStorageBuffer",
+                    .opcode = 21,
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                    },
+                },
+                .{
+                    .name = "ConstantDataUniform",
+                    .opcode = 22,
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                    },
+                },
+                .{
+                    .name = "LiteralSampler",
+                    .opcode = 23,
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                    },
+                },
+                .{
+                    .name = "PropertyRequiredWorkgroupSize",
+                    .opcode = 24,
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                    },
+                },
+                .{
+                    .name = "SpecConstantSubgroupMaxSize",
+                    .opcode = 25,
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
+                    },
+                },
+                .{
+                    .name = "ArgumentPointerPushConstant",
+                    .opcode = 26,
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .optional },
+                    },
+                },
+                .{
+                    .name = "ArgumentPointerUniform",
+                    .opcode = 27,
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .optional },
                     },
                 },
                 .{
-                    .name = "vstore_halfn",
-                    .opcode = 177,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .name = "ProgramScopeVariablesStorageBuffer",
+                    .opcode = 28,
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
-                    .name = "vstore_halfn_r",
-                    .opcode = 178,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .FPRoundingMode, .quantifier = .required },
+                    .name = "ProgramScopeVariablePointerRelocation",
+                    .opcode = 29,
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
-                    .name = "vloada_halfn",
-                    .opcode = 179,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .LiteralInteger, .quantifier = .required },
+                    .name = "ImageArgumentInfoChannelOrderPushConstant",
+                    .opcode = 30,
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
-                    .name = "vstorea_halfn",
-                    .opcode = 180,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .name = "ImageArgumentInfoChannelDataTypePushConstant",
+                    .opcode = 31,
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
-                    .name = "vstorea_halfn_r",
-                    .opcode = 181,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .FPRoundingMode, .quantifier = .required },
+                    .name = "ImageArgumentInfoChannelOrderUniform",
+                    .opcode = 32,
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
-                    .name = "shuffle",
-                    .opcode = 182,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .name = "ImageArgumentInfoChannelDataTypeUniform",
+                    .opcode = 33,
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
-                    .name = "shuffle2",
-                    .opcode = 183,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .name = "ArgumentStorageTexelBuffer",
+                    .opcode = 34,
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .optional },
                     },
                 },
                 .{
-                    .name = "printf",
-                    .opcode = 184,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .variadic },
+                    .name = "ArgumentUniformTexelBuffer",
+                    .opcode = 35,
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .optional },
                     },
                 },
                 .{
-                    .name = "prefetch",
-                    .opcode = 185,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .name = "ConstantDataPointerPushConstant",
+                    .opcode = 36,
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
-                    .name = "bitselect",
-                    .opcode = 186,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .name = "ProgramScopeVariablePointerPushConstant",
+                    .opcode = 37,
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
-                    .name = "select",
-                    .opcode = 187,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .name = "PrintfInfo",
+                    .opcode = 38,
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .variadic },
                     },
                 },
                 .{
-                    .name = "u_abs",
-                    .opcode = 201,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .name = "PrintfBufferStorageBuffer",
+                    .opcode = 39,
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
-                    .name = "u_abs_diff",
-                    .opcode = 202,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .name = "PrintfBufferPointerPushConstant",
+                    .opcode = 40,
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
-                    .name = "u_mul_hi",
-                    .opcode = 203,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .name = "NormalizedSamplerMaskPushConstant",
+                    .opcode = 41,
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
-                    .name = "u_mad_hi",
-                    .opcode = 204,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .name = "WorkgroupVariableSize",
+                    .opcode = 42,
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
             },
-            .@"GLSL.std.450" => &[_]Instruction{
+            .glsl_std_450 => &.{
                 .{
                     .name = "Round",
                     .opcode = 1,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "RoundEven",
                     .opcode = 2,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "Trunc",
                     .opcode = 3,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "FAbs",
                     .opcode = 4,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "SAbs",
                     .opcode = 5,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "FSign",
                     .opcode = 6,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "SSign",
                     .opcode = 7,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "Floor",
                     .opcode = 8,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "Ceil",
                     .opcode = 9,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "Fract",
                     .opcode = 10,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "Radians",
                     .opcode = 11,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "Degrees",
                     .opcode = 12,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "Sin",
                     .opcode = 13,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "Cos",
                     .opcode = 14,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "Tan",
                     .opcode = 15,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "Asin",
                     .opcode = 16,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "Acos",
                     .opcode = 17,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "Atan",
                     .opcode = 18,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "Sinh",
                     .opcode = 19,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "Cosh",
                     .opcode = 20,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "Tanh",
                     .opcode = 21,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "Asinh",
                     .opcode = 22,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "Acosh",
                     .opcode = 23,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "Atanh",
                     .opcode = 24,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "Atan2",
                     .opcode = 25,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "Pow",
                     .opcode = 26,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "Exp",
                     .opcode = 27,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "Log",
                     .opcode = 28,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "Exp2",
                     .opcode = 29,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "Log2",
                     .opcode = 30,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "Sqrt",
                     .opcode = 31,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "InverseSqrt",
                     .opcode = 32,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "Determinant",
                     .opcode = 33,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "MatrixInverse",
                     .opcode = 34,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "Modf",
                     .opcode = 35,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "ModfStruct",
                     .opcode = 36,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "FMin",
                     .opcode = 37,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "UMin",
                     .opcode = 38,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "SMin",
                     .opcode = 39,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "FMax",
                     .opcode = 40,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "UMax",
                     .opcode = 41,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "SMax",
                     .opcode = 42,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "FClamp",
                     .opcode = 43,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "UClamp",
                     .opcode = 44,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "SClamp",
                     .opcode = 45,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "FMix",
                     .opcode = 46,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "IMix",
                     .opcode = 47,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "Step",
                     .opcode = 48,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "SmoothStep",
                     .opcode = 49,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "Fma",
                     .opcode = 50,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "Frexp",
                     .opcode = 51,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "FrexpStruct",
                     .opcode = 52,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "Ldexp",
                     .opcode = 53,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "PackSnorm4x8",
                     .opcode = 54,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "PackUnorm4x8",
                     .opcode = 55,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "PackSnorm2x16",
                     .opcode = 56,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "PackUnorm2x16",
                     .opcode = 57,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "PackHalf2x16",
                     .opcode = 58,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "PackDouble2x32",
                     .opcode = 59,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "UnpackSnorm2x16",
                     .opcode = 60,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "UnpackUnorm2x16",
                     .opcode = 61,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "UnpackHalf2x16",
                     .opcode = 62,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "UnpackSnorm4x8",
                     .opcode = 63,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "UnpackUnorm4x8",
                     .opcode = 64,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "UnpackDouble2x32",
                     .opcode = 65,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "Length",
                     .opcode = 66,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "Distance",
                     .opcode = 67,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "Cross",
                     .opcode = 68,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "Normalize",
                     .opcode = 69,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "FaceForward",
                     .opcode = 70,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "Reflect",
                     .opcode = 71,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "Refract",
                     .opcode = 72,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "FindILsb",
                     .opcode = 73,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "FindSMsb",
                     .opcode = 74,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "FindUMsb",
                     .opcode = 75,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "InterpolateAtCentroid",
                     .opcode = 76,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "InterpolateAtSample",
                     .opcode = 77,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "InterpolateAtOffset",
                     .opcode = 78,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "NMin",
                     .opcode = 79,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "NMax",
                     .opcode = 80,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "NClamp",
                     .opcode = 81,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
             },
-            .@"OpenCL.DebugInfo.100" => &[_]Instruction{
+            .spv_amd_shader_ballot => &.{
                 .{
-                    .name = "DebugInfoNone",
+                    .name = "SwizzleInvocationsAMD",
+                    .opcode = 1,
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                    },
+                },
+                .{
+                    .name = "SwizzleInvocationsMaskedAMD",
+                    .opcode = 2,
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                    },
+                },
+                .{
+                    .name = "WriteInvocationAMD",
+                    .opcode = 3,
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                    },
+                },
+                .{
+                    .name = "MbcntAMD",
+                    .opcode = 4,
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
+                    },
+                },
+            },
+            .non_semantic_debug_printf => &.{
+                .{
+                    .name = "DebugPrintf",
+                    .opcode = 1,
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .variadic },
+                    },
+                },
+            },
+            .spv_amd_gcn_shader => &.{
+                .{
+                    .name = "CubeFaceIndexAMD",
+                    .opcode = 1,
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
+                    },
+                },
+                .{
+                    .name = "CubeFaceCoordAMD",
+                    .opcode = 2,
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
+                    },
+                },
+                .{
+                    .name = "TimeAMD",
+                    .opcode = 3,
+                    .operands = &.{},
+                },
+            },
+            .open_cl_std => &.{
+                .{
+                    .name = "acos",
                     .opcode = 0,
-                    .operands = &[_]Operand{},
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
+                    },
                 },
                 .{
-                    .name = "DebugCompilationUnit",
+                    .name = "acosh",
                     .opcode = 1,
-                    .operands = &[_]Operand{
-                        .{ .kind = .LiteralInteger, .quantifier = .required },
-                        .{ .kind = .LiteralInteger, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .SourceLanguage, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
-                    .name = "DebugTypeBasic",
+                    .name = "acospi",
                     .opcode = 2,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .@"OpenCL.DebugInfo.100.DebugBaseTypeAttributeEncoding", .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
-                    .name = "DebugTypePointer",
+                    .name = "asin",
                     .opcode = 3,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .StorageClass, .quantifier = .required },
-                        .{ .kind = .@"OpenCL.DebugInfo.100.DebugInfoFlags", .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
-                    .name = "DebugTypeQualifier",
+                    .name = "asinh",
                     .opcode = 4,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .@"OpenCL.DebugInfo.100.DebugTypeQualifier", .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
-                    .name = "DebugTypeArray",
+                    .name = "asinpi",
                     .opcode = 5,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .variadic },
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
-                    .name = "DebugTypeVector",
+                    .name = "atan",
                     .opcode = 6,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .LiteralInteger, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
-                    .name = "DebugTypedef",
+                    .name = "atan2",
                     .opcode = 7,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .LiteralInteger, .quantifier = .required },
-                        .{ .kind = .LiteralInteger, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
-                    .name = "DebugTypeFunction",
+                    .name = "atanh",
                     .opcode = 8,
-                    .operands = &[_]Operand{
-                        .{ .kind = .@"OpenCL.DebugInfo.100.DebugInfoFlags", .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .variadic },
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
-                    .name = "DebugTypeEnum",
+                    .name = "atanpi",
                     .opcode = 9,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .LiteralInteger, .quantifier = .required },
-                        .{ .kind = .LiteralInteger, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .@"OpenCL.DebugInfo.100.DebugInfoFlags", .quantifier = .required },
-                        .{ .kind = .PairIdRefIdRef, .quantifier = .variadic },
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
-                    .name = "DebugTypeComposite",
+                    .name = "atan2pi",
                     .opcode = 10,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .@"OpenCL.DebugInfo.100.DebugCompositeType", .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .LiteralInteger, .quantifier = .required },
-                        .{ .kind = .LiteralInteger, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .@"OpenCL.DebugInfo.100.DebugInfoFlags", .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .variadic },
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
-                    .name = "DebugTypeMember",
+                    .name = "cbrt",
                     .opcode = 11,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .LiteralInteger, .quantifier = .required },
-                        .{ .kind = .LiteralInteger, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .@"OpenCL.DebugInfo.100.DebugInfoFlags", .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .optional },
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
-                    .name = "DebugTypeInheritance",
+                    .name = "ceil",
                     .opcode = 12,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .@"OpenCL.DebugInfo.100.DebugInfoFlags", .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
-                    .name = "DebugTypePtrToMember",
+                    .name = "copysign",
                     .opcode = 13,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
-                    .name = "DebugTypeTemplate",
+                    .name = "cos",
                     .opcode = 14,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .variadic },
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
-                    .name = "DebugTypeTemplateParameter",
+                    .name = "cosh",
                     .opcode = 15,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .LiteralInteger, .quantifier = .required },
-                        .{ .kind = .LiteralInteger, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
-                    .name = "DebugTypeTemplateTemplateParameter",
+                    .name = "cospi",
                     .opcode = 16,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .LiteralInteger, .quantifier = .required },
-                        .{ .kind = .LiteralInteger, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
-                    .name = "DebugTypeTemplateParameterPack",
+                    .name = "erfc",
                     .opcode = 17,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .LiteralInteger, .quantifier = .required },
-                        .{ .kind = .LiteralInteger, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .variadic },
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
-                    .name = "DebugGlobalVariable",
+                    .name = "erf",
                     .opcode = 18,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .LiteralInteger, .quantifier = .required },
-                        .{ .kind = .LiteralInteger, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .@"OpenCL.DebugInfo.100.DebugInfoFlags", .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .optional },
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
-                    .name = "DebugFunctionDeclaration",
+                    .name = "exp",
                     .opcode = 19,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .LiteralInteger, .quantifier = .required },
-                        .{ .kind = .LiteralInteger, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .@"OpenCL.DebugInfo.100.DebugInfoFlags", .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
-                    .name = "DebugFunction",
+                    .name = "exp2",
                     .opcode = 20,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .LiteralInteger, .quantifier = .required },
-                        .{ .kind = .LiteralInteger, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .@"OpenCL.DebugInfo.100.DebugInfoFlags", .quantifier = .required },
-                        .{ .kind = .LiteralInteger, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .optional },
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
-                    .name = "DebugLexicalBlock",
+                    .name = "exp10",
                     .opcode = 21,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .LiteralInteger, .quantifier = .required },
-                        .{ .kind = .LiteralInteger, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .optional },
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
-                    .name = "DebugLexicalBlockDiscriminator",
+                    .name = "expm1",
                     .opcode = 22,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .LiteralInteger, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
-                    .name = "DebugScope",
+                    .name = "fabs",
                     .opcode = 23,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .optional },
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
-                    .name = "DebugNoScope",
+                    .name = "fdim",
                     .opcode = 24,
-                    .operands = &[_]Operand{},
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                    },
                 },
                 .{
-                    .name = "DebugInlinedAt",
+                    .name = "floor",
                     .opcode = 25,
-                    .operands = &[_]Operand{
-                        .{ .kind = .LiteralInteger, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .optional },
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
-                    .name = "DebugLocalVariable",
+                    .name = "fma",
                     .opcode = 26,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .LiteralInteger, .quantifier = .required },
-                        .{ .kind = .LiteralInteger, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .@"OpenCL.DebugInfo.100.DebugInfoFlags", .quantifier = .required },
-                        .{ .kind = .LiteralInteger, .quantifier = .optional },
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
-                    .name = "DebugInlinedVariable",
+                    .name = "fmax",
                     .opcode = 27,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
-                    .name = "DebugDeclare",
+                    .name = "fmin",
                     .opcode = 28,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
-                    .name = "DebugValue",
+                    .name = "fmod",
                     .opcode = 29,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .variadic },
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
-                    .name = "DebugOperation",
+                    .name = "fract",
                     .opcode = 30,
-                    .operands = &[_]Operand{
-                        .{ .kind = .@"OpenCL.DebugInfo.100.DebugOperation", .quantifier = .required },
-                        .{ .kind = .LiteralInteger, .quantifier = .variadic },
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
-                    .name = "DebugExpression",
+                    .name = "frexp",
                     .opcode = 31,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdRef, .quantifier = .variadic },
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
-                    .name = "DebugMacroDef",
+                    .name = "hypot",
                     .opcode = 32,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .LiteralInteger, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .optional },
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                    },
+                },
+                .{
+                    .name = "ilogb",
+                    .opcode = 33,
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
+                    },
+                },
+                .{
+                    .name = "ldexp",
+                    .opcode = 34,
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                    },
+                },
+                .{
+                    .name = "lgamma",
+                    .opcode = 35,
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
+                    },
+                },
+                .{
+                    .name = "lgamma_r",
+                    .opcode = 36,
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                    },
+                },
+                .{
+                    .name = "log",
+                    .opcode = 37,
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
+                    },
+                },
+                .{
+                    .name = "log2",
+                    .opcode = 38,
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
+                    },
+                },
+                .{
+                    .name = "log10",
+                    .opcode = 39,
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
+                    },
+                },
+                .{
+                    .name = "log1p",
+                    .opcode = 40,
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
+                    },
+                },
+                .{
+                    .name = "logb",
+                    .opcode = 41,
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
+                    },
+                },
+                .{
+                    .name = "mad",
+                    .opcode = 42,
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                    },
+                },
+                .{
+                    .name = "maxmag",
+                    .opcode = 43,
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                    },
+                },
+                .{
+                    .name = "minmag",
+                    .opcode = 44,
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                    },
+                },
+                .{
+                    .name = "modf",
+                    .opcode = 45,
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                    },
+                },
+                .{
+                    .name = "nan",
+                    .opcode = 46,
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
+                    },
+                },
+                .{
+                    .name = "nextafter",
+                    .opcode = 47,
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                    },
+                },
+                .{
+                    .name = "pow",
+                    .opcode = 48,
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                    },
+                },
+                .{
+                    .name = "pown",
+                    .opcode = 49,
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
-                    .name = "DebugMacroUndef",
-                    .opcode = 33,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .LiteralInteger, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .name = "powr",
+                    .opcode = 50,
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
-                    .name = "DebugImportedEntity",
-                    .opcode = 34,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .@"OpenCL.DebugInfo.100.DebugImportedEntity", .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .LiteralInteger, .quantifier = .required },
-                        .{ .kind = .LiteralInteger, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .name = "remainder",
+                    .opcode = 51,
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
-                    .name = "DebugSource",
-                    .opcode = 35,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .optional },
+                    .name = "remquo",
+                    .opcode = 52,
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
-                    .name = "DebugModuleINTEL",
-                    .opcode = 36,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .LiteralInteger, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .LiteralInteger, .quantifier = .required },
+                    .name = "rint",
+                    .opcode = 53,
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
-            },
-            .SPV_AMD_shader_ballot => &[_]Instruction{
                 .{
-                    .name = "SwizzleInvocationsAMD",
-                    .opcode = 1,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .name = "rootn",
+                    .opcode = 54,
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
-                    .name = "SwizzleInvocationsMaskedAMD",
-                    .opcode = 2,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .name = "round",
+                    .opcode = 55,
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
-                    .name = "WriteInvocationAMD",
-                    .opcode = 3,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .name = "rsqrt",
+                    .opcode = 56,
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
-                    .name = "MbcntAMD",
-                    .opcode = 4,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .name = "sin",
+                    .opcode = 57,
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
-            },
-            .@"NonSemantic.Shader.DebugInfo.100" => &[_]Instruction{
                 .{
-                    .name = "DebugInfoNone",
-                    .opcode = 0,
-                    .operands = &[_]Operand{},
+                    .name = "sincos",
+                    .opcode = 58,
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                    },
                 },
                 .{
-                    .name = "DebugCompilationUnit",
-                    .opcode = 1,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .name = "sinh",
+                    .opcode = 59,
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
-                    .name = "DebugTypeBasic",
-                    .opcode = 2,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .name = "sinpi",
+                    .opcode = 60,
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
-                    .name = "DebugTypePointer",
-                    .opcode = 3,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .name = "sqrt",
+                    .opcode = 61,
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
-                    .name = "DebugTypeQualifier",
-                    .opcode = 4,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .name = "tan",
+                    .opcode = 62,
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
-                    .name = "DebugTypeArray",
-                    .opcode = 5,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .variadic },
+                    .name = "tanh",
+                    .opcode = 63,
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
-                    .name = "DebugTypeVector",
-                    .opcode = 6,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .name = "tanpi",
+                    .opcode = 64,
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
-                    .name = "DebugTypedef",
-                    .opcode = 7,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .name = "tgamma",
+                    .opcode = 65,
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
-                    .name = "DebugTypeFunction",
-                    .opcode = 8,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .variadic },
+                    .name = "trunc",
+                    .opcode = 66,
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
-                    .name = "DebugTypeEnum",
-                    .opcode = 9,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .PairIdRefIdRef, .quantifier = .variadic },
+                    .name = "half_cos",
+                    .opcode = 67,
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
-                    .name = "DebugTypeComposite",
-                    .opcode = 10,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .variadic },
+                    .name = "half_divide",
+                    .opcode = 68,
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
-                    .name = "DebugTypeMember",
-                    .opcode = 11,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .optional },
+                    .name = "half_exp",
+                    .opcode = 69,
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
-                    .name = "DebugTypeInheritance",
-                    .opcode = 12,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .name = "half_exp2",
+                    .opcode = 70,
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
-                    .name = "DebugTypePtrToMember",
-                    .opcode = 13,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .name = "half_exp10",
+                    .opcode = 71,
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
-                    .name = "DebugTypeTemplate",
-                    .opcode = 14,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .variadic },
+                    .name = "half_log",
+                    .opcode = 72,
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
-                    .name = "DebugTypeTemplateParameter",
-                    .opcode = 15,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .name = "half_log2",
+                    .opcode = 73,
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
-                    .name = "DebugTypeTemplateTemplateParameter",
-                    .opcode = 16,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .name = "half_log10",
+                    .opcode = 74,
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
-                    .name = "DebugTypeTemplateParameterPack",
-                    .opcode = 17,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .variadic },
+                    .name = "half_powr",
+                    .opcode = 75,
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
-                    .name = "DebugGlobalVariable",
-                    .opcode = 18,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .optional },
+                    .name = "half_recip",
+                    .opcode = 76,
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
-                    .name = "DebugFunctionDeclaration",
-                    .opcode = 19,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .name = "half_rsqrt",
+                    .opcode = 77,
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
-                    .name = "DebugFunction",
-                    .opcode = 20,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .optional },
+                    .name = "half_sin",
+                    .opcode = 78,
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
-                    .name = "DebugLexicalBlock",
-                    .opcode = 21,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .optional },
+                    .name = "half_sqrt",
+                    .opcode = 79,
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
-                    .name = "DebugLexicalBlockDiscriminator",
-                    .opcode = 22,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .name = "half_tan",
+                    .opcode = 80,
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
-                    .name = "DebugScope",
-                    .opcode = 23,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .optional },
+                    .name = "native_cos",
+                    .opcode = 81,
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
-                    .name = "DebugNoScope",
-                    .opcode = 24,
-                    .operands = &[_]Operand{},
+                    .name = "native_divide",
+                    .opcode = 82,
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                    },
                 },
                 .{
-                    .name = "DebugInlinedAt",
-                    .opcode = 25,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .optional },
+                    .name = "native_exp",
+                    .opcode = 83,
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
-                    .name = "DebugLocalVariable",
-                    .opcode = 26,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .optional },
+                    .name = "native_exp2",
+                    .opcode = 84,
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
-                    .name = "DebugInlinedVariable",
-                    .opcode = 27,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .name = "native_exp10",
+                    .opcode = 85,
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
-                    .name = "DebugDeclare",
-                    .opcode = 28,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .variadic },
+                    .name = "native_log",
+                    .opcode = 86,
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
-                    .name = "DebugValue",
-                    .opcode = 29,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .variadic },
+                    .name = "native_log2",
+                    .opcode = 87,
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
-                    .name = "DebugOperation",
-                    .opcode = 30,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .variadic },
+                    .name = "native_log10",
+                    .opcode = 88,
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
-                    .name = "DebugExpression",
-                    .opcode = 31,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdRef, .quantifier = .variadic },
+                    .name = "native_powr",
+                    .opcode = 89,
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
-                    .name = "DebugMacroDef",
-                    .opcode = 32,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .optional },
+                    .name = "native_recip",
+                    .opcode = 90,
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
-                    .name = "DebugMacroUndef",
-                    .opcode = 33,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .name = "native_rsqrt",
+                    .opcode = 91,
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
-                    .name = "DebugImportedEntity",
-                    .opcode = 34,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .name = "native_sin",
+                    .opcode = 92,
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
-                    .name = "DebugSource",
-                    .opcode = 35,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .optional },
+                    .name = "native_sqrt",
+                    .opcode = 93,
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
-                    .name = "DebugFunctionDefinition",
-                    .opcode = 101,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .name = "native_tan",
+                    .opcode = 94,
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
-                    .name = "DebugSourceContinued",
-                    .opcode = 102,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .name = "fclamp",
+                    .opcode = 95,
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
-                    .name = "DebugLine",
-                    .opcode = 103,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .name = "degrees",
+                    .opcode = 96,
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
-                    .name = "DebugNoLine",
-                    .opcode = 104,
-                    .operands = &[_]Operand{},
+                    .name = "fmax_common",
+                    .opcode = 97,
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                    },
                 },
                 .{
-                    .name = "DebugBuildIdentifier",
-                    .opcode = 105,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .name = "fmin_common",
+                    .opcode = 98,
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
-                    .name = "DebugStoragePath",
-                    .opcode = 106,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .name = "mix",
+                    .opcode = 99,
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
-                    .name = "DebugEntryPoint",
-                    .opcode = 107,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .name = "radians",
+                    .opcode = 100,
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
-                    .name = "DebugTypeMatrix",
-                    .opcode = 108,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .name = "step",
+                    .opcode = 101,
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
-            },
-            .@"NonSemantic.VkspReflection" => &[_]Instruction{
                 .{
-                    .name = "Configuration",
-                    .opcode = 1,
-                    .operands = &[_]Operand{
-                        .{ .kind = .LiteralString, .quantifier = .required },
-                        .{ .kind = .LiteralInteger, .quantifier = .required },
-                        .{ .kind = .LiteralString, .quantifier = .required },
-                        .{ .kind = .LiteralString, .quantifier = .required },
-                        .{ .kind = .LiteralString, .quantifier = .required },
-                        .{ .kind = .LiteralInteger, .quantifier = .required },
-                        .{ .kind = .LiteralInteger, .quantifier = .required },
-                        .{ .kind = .LiteralInteger, .quantifier = .required },
+                    .name = "smoothstep",
+                    .opcode = 102,
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
-                    .name = "StartCounter",
-                    .opcode = 2,
-                    .operands = &[_]Operand{
-                        .{ .kind = .LiteralString, .quantifier = .required },
+                    .name = "sign",
+                    .opcode = 103,
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
-                    .name = "StopCounter",
-                    .opcode = 3,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .name = "cross",
+                    .opcode = 104,
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
-                    .name = "PushConstants",
-                    .opcode = 4,
-                    .operands = &[_]Operand{
-                        .{ .kind = .LiteralInteger, .quantifier = .required },
-                        .{ .kind = .LiteralInteger, .quantifier = .required },
-                        .{ .kind = .LiteralString, .quantifier = .required },
-                        .{ .kind = .LiteralInteger, .quantifier = .required },
+                    .name = "distance",
+                    .opcode = 105,
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
-                    .name = "SpecializationMapEntry",
-                    .opcode = 5,
-                    .operands = &[_]Operand{
-                        .{ .kind = .LiteralInteger, .quantifier = .required },
-                        .{ .kind = .LiteralInteger, .quantifier = .required },
-                        .{ .kind = .LiteralInteger, .quantifier = .required },
+                    .name = "length",
+                    .opcode = 106,
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
-                    .name = "DescriptorSetBuffer",
-                    .opcode = 6,
-                    .operands = &[_]Operand{
-                        .{ .kind = .LiteralInteger, .quantifier = .required },
-                        .{ .kind = .LiteralInteger, .quantifier = .required },
-                        .{ .kind = .LiteralInteger, .quantifier = .required },
-                        .{ .kind = .LiteralInteger, .quantifier = .required },
-                        .{ .kind = .LiteralInteger, .quantifier = .required },
-                        .{ .kind = .LiteralInteger, .quantifier = .required },
-                        .{ .kind = .LiteralInteger, .quantifier = .required },
-                        .{ .kind = .LiteralInteger, .quantifier = .required },
-                        .{ .kind = .LiteralInteger, .quantifier = .required },
-                        .{ .kind = .LiteralInteger, .quantifier = .required },
-                        .{ .kind = .LiteralInteger, .quantifier = .required },
-                        .{ .kind = .LiteralInteger, .quantifier = .required },
-                        .{ .kind = .LiteralInteger, .quantifier = .required },
+                    .name = "normalize",
+                    .opcode = 107,
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
-                    .name = "DescriptorSetImage",
-                    .opcode = 7,
-                    .operands = &[_]Operand{
-                        .{ .kind = .LiteralInteger, .quantifier = .required },
-                        .{ .kind = .LiteralInteger, .quantifier = .required },
-                        .{ .kind = .LiteralInteger, .quantifier = .required },
-                        .{ .kind = .LiteralInteger, .quantifier = .required },
-                        .{ .kind = .LiteralInteger, .quantifier = .required },
-                        .{ .kind = .LiteralInteger, .quantifier = .required },
-                        .{ .kind = .LiteralInteger, .quantifier = .required },
-                        .{ .kind = .LiteralInteger, .quantifier = .required },
-                        .{ .kind = .LiteralInteger, .quantifier = .required },
-                        .{ .kind = .LiteralInteger, .quantifier = .required },
-                        .{ .kind = .LiteralInteger, .quantifier = .required },
-                        .{ .kind = .LiteralInteger, .quantifier = .required },
-                        .{ .kind = .LiteralInteger, .quantifier = .required },
-                        .{ .kind = .LiteralInteger, .quantifier = .required },
-                        .{ .kind = .LiteralInteger, .quantifier = .required },
-                        .{ .kind = .LiteralInteger, .quantifier = .required },
-                        .{ .kind = .LiteralInteger, .quantifier = .required },
-                        .{ .kind = .LiteralInteger, .quantifier = .required },
-                        .{ .kind = .LiteralInteger, .quantifier = .required },
-                        .{ .kind = .LiteralInteger, .quantifier = .required },
-                        .{ .kind = .LiteralInteger, .quantifier = .required },
-                        .{ .kind = .LiteralInteger, .quantifier = .required },
-                        .{ .kind = .LiteralInteger, .quantifier = .required },
-                        .{ .kind = .LiteralInteger, .quantifier = .required },
-                        .{ .kind = .LiteralInteger, .quantifier = .required },
-                        .{ .kind = .LiteralInteger, .quantifier = .required },
-                        .{ .kind = .LiteralInteger, .quantifier = .required },
-                        .{ .kind = .LiteralInteger, .quantifier = .required },
-                        .{ .kind = .LiteralInteger, .quantifier = .required },
-                        .{ .kind = .LiteralInteger, .quantifier = .required },
-                        .{ .kind = .LiteralInteger, .quantifier = .required },
-                        .{ .kind = .LiteralInteger, .quantifier = .required },
-                        .{ .kind = .LiteralInteger, .quantifier = .required },
+                    .name = "fast_distance",
+                    .opcode = 108,
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
-                    .name = "DescriptorSetSampler",
-                    .opcode = 8,
-                    .operands = &[_]Operand{
-                        .{ .kind = .LiteralInteger, .quantifier = .required },
-                        .{ .kind = .LiteralInteger, .quantifier = .required },
-                        .{ .kind = .LiteralInteger, .quantifier = .required },
-                        .{ .kind = .LiteralInteger, .quantifier = .required },
-                        .{ .kind = .LiteralInteger, .quantifier = .required },
-                        .{ .kind = .LiteralInteger, .quantifier = .required },
-                        .{ .kind = .LiteralInteger, .quantifier = .required },
-                        .{ .kind = .LiteralInteger, .quantifier = .required },
-                        .{ .kind = .LiteralInteger, .quantifier = .required },
-                        .{ .kind = .LiteralInteger, .quantifier = .required },
-                        .{ .kind = .LiteralFloat, .quantifier = .required },
-                        .{ .kind = .LiteralInteger, .quantifier = .required },
-                        .{ .kind = .LiteralFloat, .quantifier = .required },
-                        .{ .kind = .LiteralInteger, .quantifier = .required },
-                        .{ .kind = .LiteralInteger, .quantifier = .required },
-                        .{ .kind = .LiteralFloat, .quantifier = .required },
-                        .{ .kind = .LiteralFloat, .quantifier = .required },
-                        .{ .kind = .LiteralInteger, .quantifier = .required },
-                        .{ .kind = .LiteralInteger, .quantifier = .required },
+                    .name = "fast_length",
+                    .opcode = 109,
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
-            },
-            .@"NonSemantic.ClspvReflection.6" => &[_]Instruction{
                 .{
-                    .name = "Kernel",
-                    .opcode = 1,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .optional },
-                        .{ .kind = .IdRef, .quantifier = .optional },
-                        .{ .kind = .IdRef, .quantifier = .optional },
+                    .name = "fast_normalize",
+                    .opcode = 110,
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
-                    .name = "ArgumentInfo",
-                    .opcode = 2,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .optional },
-                        .{ .kind = .IdRef, .quantifier = .optional },
-                        .{ .kind = .IdRef, .quantifier = .optional },
-                        .{ .kind = .IdRef, .quantifier = .optional },
+                    .name = "s_abs",
+                    .opcode = 141,
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
-                    .name = "ArgumentStorageBuffer",
-                    .opcode = 3,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .optional },
+                    .name = "s_abs_diff",
+                    .opcode = 142,
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
-                    .name = "ArgumentUniform",
-                    .opcode = 4,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .optional },
+                    .name = "s_add_sat",
+                    .opcode = 143,
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
-                    .name = "ArgumentPodStorageBuffer",
-                    .opcode = 5,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .optional },
+                    .name = "u_add_sat",
+                    .opcode = 144,
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
-                    .name = "ArgumentPodUniform",
-                    .opcode = 6,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .optional },
+                    .name = "s_hadd",
+                    .opcode = 145,
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
-                    .name = "ArgumentPodPushConstant",
-                    .opcode = 7,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .optional },
+                    .name = "u_hadd",
+                    .opcode = 146,
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
-                    .name = "ArgumentSampledImage",
-                    .opcode = 8,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .optional },
+                    .name = "s_rhadd",
+                    .opcode = 147,
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
-                    .name = "ArgumentStorageImage",
-                    .opcode = 9,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .optional },
+                    .name = "u_rhadd",
+                    .opcode = 148,
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
-                    .name = "ArgumentSampler",
-                    .opcode = 10,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .optional },
+                    .name = "s_clamp",
+                    .opcode = 149,
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
-                    .name = "ArgumentWorkgroup",
-                    .opcode = 11,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .optional },
+                    .name = "u_clamp",
+                    .opcode = 150,
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
-                    .name = "SpecConstantWorkgroupSize",
-                    .opcode = 12,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .name = "clz",
+                    .opcode = 151,
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
-                    .name = "SpecConstantGlobalOffset",
-                    .opcode = 13,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .name = "ctz",
+                    .opcode = 152,
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
-                    .name = "SpecConstantWorkDim",
-                    .opcode = 14,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .name = "s_mad_hi",
+                    .opcode = 153,
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
-                    .name = "PushConstantGlobalOffset",
-                    .opcode = 15,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .name = "u_mad_sat",
+                    .opcode = 154,
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
-                    .name = "PushConstantEnqueuedLocalSize",
-                    .opcode = 16,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .name = "s_mad_sat",
+                    .opcode = 155,
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
-                    .name = "PushConstantGlobalSize",
-                    .opcode = 17,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .name = "s_max",
+                    .opcode = 156,
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
-                    .name = "PushConstantRegionOffset",
-                    .opcode = 18,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .name = "u_max",
+                    .opcode = 157,
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
-                    .name = "PushConstantNumWorkgroups",
-                    .opcode = 19,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .name = "s_min",
+                    .opcode = 158,
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
-                    .name = "PushConstantRegionGroupOffset",
-                    .opcode = 20,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .name = "u_min",
+                    .opcode = 159,
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
-                    .name = "ConstantDataStorageBuffer",
-                    .opcode = 21,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .name = "s_mul_hi",
+                    .opcode = 160,
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
-                    .name = "ConstantDataUniform",
-                    .opcode = 22,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .name = "rotate",
+                    .opcode = 161,
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
-                    .name = "LiteralSampler",
-                    .opcode = 23,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .name = "s_sub_sat",
+                    .opcode = 162,
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
-                    .name = "PropertyRequiredWorkgroupSize",
-                    .opcode = 24,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .name = "u_sub_sat",
+                    .opcode = 163,
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
-                    .name = "SpecConstantSubgroupMaxSize",
-                    .opcode = 25,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .name = "u_upsample",
+                    .opcode = 164,
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
-                    .name = "ArgumentPointerPushConstant",
-                    .opcode = 26,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .optional },
+                    .name = "s_upsample",
+                    .opcode = 165,
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
-                    .name = "ArgumentPointerUniform",
-                    .opcode = 27,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .optional },
+                    .name = "popcount",
+                    .opcode = 166,
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
-                    .name = "ProgramScopeVariablesStorageBuffer",
-                    .opcode = 28,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .name = "s_mad24",
+                    .opcode = 167,
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
-                    .name = "ProgramScopeVariablePointerRelocation",
-                    .opcode = 29,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .name = "u_mad24",
+                    .opcode = 168,
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
-                    .name = "ImageArgumentInfoChannelOrderPushConstant",
-                    .opcode = 30,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .name = "s_mul24",
+                    .opcode = 169,
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
-                    .name = "ImageArgumentInfoChannelDataTypePushConstant",
-                    .opcode = 31,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .name = "u_mul24",
+                    .opcode = 170,
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
-                    .name = "ImageArgumentInfoChannelOrderUniform",
-                    .opcode = 32,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .name = "vloadn",
+                    .opcode = 171,
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .literal_integer, .quantifier = .required },
                     },
                 },
                 .{
-                    .name = "ImageArgumentInfoChannelDataTypeUniform",
-                    .opcode = 33,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .name = "vstoren",
+                    .opcode = 172,
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
-                    .name = "ArgumentStorageTexelBuffer",
-                    .opcode = 34,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .optional },
+                    .name = "vload_half",
+                    .opcode = 173,
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
-                    .name = "ArgumentUniformTexelBuffer",
-                    .opcode = 35,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .optional },
+                    .name = "vload_halfn",
+                    .opcode = 174,
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .literal_integer, .quantifier = .required },
                     },
                 },
                 .{
-                    .name = "ConstantDataPointerPushConstant",
-                    .opcode = 36,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .name = "vstore_half",
+                    .opcode = 175,
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
-                    .name = "ProgramScopeVariablePointerPushConstant",
-                    .opcode = 37,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .name = "vstore_half_r",
+                    .opcode = 176,
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .fp_rounding_mode, .quantifier = .required },
                     },
                 },
                 .{
-                    .name = "PrintfInfo",
-                    .opcode = 38,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .variadic },
+                    .name = "vstore_halfn",
+                    .opcode = 177,
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
-                    .name = "PrintfBufferStorageBuffer",
-                    .opcode = 39,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .name = "vstore_halfn_r",
+                    .opcode = 178,
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .fp_rounding_mode, .quantifier = .required },
                     },
                 },
                 .{
-                    .name = "PrintfBufferPointerPushConstant",
-                    .opcode = 40,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .name = "vloada_halfn",
+                    .opcode = 179,
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .literal_integer, .quantifier = .required },
                     },
                 },
                 .{
-                    .name = "NormalizedSamplerMaskPushConstant",
-                    .opcode = 41,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .name = "vstorea_halfn",
+                    .opcode = 180,
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
-            },
-            .SPV_AMD_gcn_shader => &[_]Instruction{
                 .{
-                    .name = "CubeFaceIndexAMD",
-                    .opcode = 1,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .name = "vstorea_halfn_r",
+                    .opcode = 181,
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .fp_rounding_mode, .quantifier = .required },
                     },
                 },
                 .{
-                    .name = "CubeFaceCoordAMD",
-                    .opcode = 2,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .name = "shuffle",
+                    .opcode = 182,
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
-                    .name = "TimeAMD",
-                    .opcode = 3,
-                    .operands = &[_]Operand{},
-                },
-            },
-            .SPV_AMD_shader_trinary_minmax => &[_]Instruction{
-                .{
-                    .name = "FMin3AMD",
-                    .opcode = 1,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .name = "shuffle2",
+                    .opcode = 183,
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
-                    .name = "UMin3AMD",
-                    .opcode = 2,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .name = "printf",
+                    .opcode = 184,
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .variadic },
                     },
                 },
                 .{
-                    .name = "SMin3AMD",
-                    .opcode = 3,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .name = "prefetch",
+                    .opcode = 185,
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
-                    .name = "FMax3AMD",
-                    .opcode = 4,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .name = "bitselect",
+                    .opcode = 186,
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
-                    .name = "UMax3AMD",
-                    .opcode = 5,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .name = "select",
+                    .opcode = 187,
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
-                    .name = "SMax3AMD",
-                    .opcode = 6,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .name = "u_abs",
+                    .opcode = 201,
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
-                    .name = "FMid3AMD",
-                    .opcode = 7,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .name = "u_abs_diff",
+                    .opcode = 202,
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
-                    .name = "UMid3AMD",
-                    .opcode = 8,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .name = "u_mul_hi",
+                    .opcode = 203,
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
-                    .name = "SMid3AMD",
-                    .opcode = 9,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .name = "u_mad_hi",
+                    .opcode = 204,
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
             },
-            .DebugInfo => &[_]Instruction{
+            .non_semantic_shader_debug_info_100 => &.{
                 .{
                     .name = "DebugInfoNone",
                     .opcode = 0,
-                    .operands = &[_]Operand{},
+                    .operands = &.{},
                 },
                 .{
                     .name = "DebugCompilationUnit",
                     .opcode = 1,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .LiteralInteger, .quantifier = .required },
-                        .{ .kind = .LiteralInteger, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "DebugTypeBasic",
                     .opcode = 2,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .@"DebugInfo.DebugBaseTypeAttributeEncoding", .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "DebugTypePointer",
                     .opcode = 3,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .StorageClass, .quantifier = .required },
-                        .{ .kind = .@"DebugInfo.DebugInfoFlags", .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "DebugTypeQualifier",
                     .opcode = 4,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .@"DebugInfo.DebugTypeQualifier", .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "DebugTypeArray",
                     .opcode = 5,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .variadic },
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .variadic },
                     },
                 },
                 .{
                     .name = "DebugTypeVector",
                     .opcode = 6,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .LiteralInteger, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "DebugTypedef",
                     .opcode = 7,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .LiteralInteger, .quantifier = .required },
-                        .{ .kind = .LiteralInteger, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "DebugTypeFunction",
                     .opcode = 8,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .variadic },
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .variadic },
                     },
                 },
                 .{
                     .name = "DebugTypeEnum",
                     .opcode = 9,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .LiteralInteger, .quantifier = .required },
-                        .{ .kind = .LiteralInteger, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .@"DebugInfo.DebugInfoFlags", .quantifier = .required },
-                        .{ .kind = .PairIdRefIdRef, .quantifier = .variadic },
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .pair_id_ref_id_ref, .quantifier = .variadic },
                     },
                 },
                 .{
                     .name = "DebugTypeComposite",
                     .opcode = 10,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .@"DebugInfo.DebugCompositeType", .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .LiteralInteger, .quantifier = .required },
-                        .{ .kind = .LiteralInteger, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .@"DebugInfo.DebugInfoFlags", .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .variadic },
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .variadic },
                     },
                 },
                 .{
                     .name = "DebugTypeMember",
                     .opcode = 11,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .LiteralInteger, .quantifier = .required },
-                        .{ .kind = .LiteralInteger, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .@"DebugInfo.DebugInfoFlags", .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .optional },
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .optional },
                     },
                 },
                 .{
                     .name = "DebugTypeInheritance",
                     .opcode = 12,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .@"DebugInfo.DebugInfoFlags", .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "DebugTypePtrToMember",
                     .opcode = 13,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "DebugTypeTemplate",
                     .opcode = 14,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .variadic },
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .variadic },
                     },
                 },
                 .{
                     .name = "DebugTypeTemplateParameter",
                     .opcode = 15,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .LiteralInteger, .quantifier = .required },
-                        .{ .kind = .LiteralInteger, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "DebugTypeTemplateTemplateParameter",
                     .opcode = 16,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .LiteralInteger, .quantifier = .required },
-                        .{ .kind = .LiteralInteger, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "DebugTypeTemplateParameterPack",
                     .opcode = 17,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .LiteralInteger, .quantifier = .required },
-                        .{ .kind = .LiteralInteger, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .variadic },
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .variadic },
                     },
                 },
                 .{
                     .name = "DebugGlobalVariable",
                     .opcode = 18,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .LiteralInteger, .quantifier = .required },
-                        .{ .kind = .LiteralInteger, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .@"DebugInfo.DebugInfoFlags", .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .optional },
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .optional },
                     },
                 },
                 .{
                     .name = "DebugFunctionDeclaration",
                     .opcode = 19,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .LiteralInteger, .quantifier = .required },
-                        .{ .kind = .LiteralInteger, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .@"DebugInfo.DebugInfoFlags", .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "DebugFunction",
                     .opcode = 20,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .LiteralInteger, .quantifier = .required },
-                        .{ .kind = .LiteralInteger, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .@"DebugInfo.DebugInfoFlags", .quantifier = .required },
-                        .{ .kind = .LiteralInteger, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .optional },
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .optional },
                     },
                 },
                 .{
                     .name = "DebugLexicalBlock",
                     .opcode = 21,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .LiteralInteger, .quantifier = .required },
-                        .{ .kind = .LiteralInteger, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .optional },
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .optional },
                     },
                 },
                 .{
                     .name = "DebugLexicalBlockDiscriminator",
                     .opcode = 22,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .LiteralInteger, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "DebugScope",
                     .opcode = 23,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .optional },
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .optional },
                     },
                 },
                 .{
                     .name = "DebugNoScope",
                     .opcode = 24,
-                    .operands = &[_]Operand{},
+                    .operands = &.{},
                 },
                 .{
                     .name = "DebugInlinedAt",
                     .opcode = 25,
-                    .operands = &[_]Operand{
-                        .{ .kind = .LiteralInteger, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .optional },
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .optional },
                     },
                 },
                 .{
                     .name = "DebugLocalVariable",
                     .opcode = 26,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .LiteralInteger, .quantifier = .required },
-                        .{ .kind = .LiteralInteger, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .LiteralInteger, .quantifier = .optional },
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .optional },
                     },
                 },
                 .{
                     .name = "DebugInlinedVariable",
                     .opcode = 27,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
                 .{
                     .name = "DebugDeclare",
                     .opcode = 28,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .variadic },
                     },
                 },
                 .{
                     .name = "DebugValue",
                     .opcode = 29,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .variadic },
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .variadic },
                     },
                 },
                 .{
                     .name = "DebugOperation",
                     .opcode = 30,
-                    .operands = &[_]Operand{
-                        .{ .kind = .@"DebugInfo.DebugOperation", .quantifier = .required },
-                        .{ .kind = .LiteralInteger, .quantifier = .variadic },
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .variadic },
                     },
                 },
                 .{
                     .name = "DebugExpression",
                     .opcode = 31,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdRef, .quantifier = .variadic },
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .variadic },
                     },
                 },
                 .{
                     .name = "DebugMacroDef",
                     .opcode = 32,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .LiteralInteger, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .optional },
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .optional },
                     },
                 },
                 .{
                     .name = "DebugMacroUndef",
                     .opcode = 33,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .LiteralInteger, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
-            },
-            .@"NonSemantic.DebugPrintf" => &[_]Instruction{
                 .{
-                    .name = "DebugPrintf",
-                    .opcode = 1,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .variadic },
+                    .name = "DebugImportedEntity",
+                    .opcode = 34,
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
-            },
-            .SPV_AMD_shader_explicit_vertex_parameter => &[_]Instruction{
                 .{
-                    .name = "InterpolateAtVertexAMD",
-                    .opcode = 1,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdRef, .quantifier = .required },
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .name = "DebugSource",
+                    .opcode = 35,
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .optional },
                     },
                 },
-            },
-            .@"NonSemantic.DebugBreak" => &[_]Instruction{
                 .{
-                    .name = "DebugBreak",
-                    .opcode = 1,
-                    .operands = &[_]Operand{},
+                    .name = "DebugFunctionDefinition",
+                    .opcode = 101,
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                    },
+                },
+                .{
+                    .name = "DebugSourceContinued",
+                    .opcode = 102,
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
+                    },
+                },
+                .{
+                    .name = "DebugLine",
+                    .opcode = 103,
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                    },
+                },
+                .{
+                    .name = "DebugNoLine",
+                    .opcode = 104,
+                    .operands = &.{},
+                },
+                .{
+                    .name = "DebugBuildIdentifier",
+                    .opcode = 105,
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                    },
+                },
+                .{
+                    .name = "DebugStoragePath",
+                    .opcode = 106,
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
+                    },
+                },
+                .{
+                    .name = "DebugEntryPoint",
+                    .opcode = 107,
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                    },
+                },
+                .{
+                    .name = "DebugTypeMatrix",
+                    .opcode = 108,
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                        .{ .kind = .id_ref, .quantifier = .required },
+                    },
                 },
             },
-            .zig => &[_]Instruction{
+            .zig => &.{
                 .{
                     .name = "InvocationGlobal",
                     .opcode = 0,
-                    .operands = &[_]Operand{
-                        .{ .kind = .IdRef, .quantifier = .required },
+                    .operands = &.{
+                        .{ .kind = .id_ref, .quantifier = .required },
                     },
                 },
             },
src/codegen/spirv.zig
@@ -15,9 +15,7 @@ const InternPool = @import("../InternPool.zig");
 const spec = @import("spirv/spec.zig");
 const Opcode = spec.Opcode;
 const Word = spec.Word;
-const IdRef = spec.IdRef;
-const IdResult = spec.IdResult;
-const IdResultType = spec.IdResultType;
+const Id = spec.Id;
 const StorageClass = spec.StorageClass;
 
 const SpvModule = @import("spirv/Module.zig");
@@ -26,7 +24,7 @@ const IdRange = SpvModule.IdRange;
 const SpvSection = @import("spirv/Section.zig");
 const SpvAssembler = @import("spirv/Assembler.zig");
 
-const InstMap = std.AutoHashMapUnmanaged(Air.Inst.Index, IdRef);
+const InstMap = std.AutoHashMapUnmanaged(Air.Inst.Index, Id);
 
 pub fn legalizeFeatures(_: *const std.Target) *const Air.Legalize.Features {
     return comptime &.initMany(&.{
@@ -42,10 +40,10 @@ pub fn legalizeFeatures(_: *const std.Target) *const Air.Legalize.Features {
 pub const zig_call_abi_ver = 3;
 pub const big_int_bits = 32;
 
-const InternMap = std.AutoHashMapUnmanaged(struct { InternPool.Index, NavGen.Repr }, IdResult);
+const InternMap = std.AutoHashMapUnmanaged(struct { InternPool.Index, NavGen.Repr }, Id);
 const PtrTypeMap = std.AutoHashMapUnmanaged(
     struct { InternPool.Index, StorageClass, NavGen.Repr },
-    struct { ty_id: IdRef, fwd_emitted: bool },
+    struct { ty_id: Id, fwd_emitted: bool },
 );
 
 const ControlFlow = union(enum) {
@@ -55,10 +53,10 @@ const ControlFlow = union(enum) {
         /// inside the block must reach the outside.
         const Block = union(enum) {
             const Incoming = struct {
-                src_label: IdRef,
+                src_label: Id,
                 /// Instruction that returns an u32 value of the
                 /// `Air.Inst.Index` that control flow should jump to.
-                next_block: IdRef,
+                next_block: Id,
             };
 
             const SelectionMerge = struct {
@@ -69,7 +67,7 @@ const ControlFlow = union(enum) {
                 /// The label id of the cond_br's merge block.
                 /// For the top-most element in the stack, this
                 /// value is undefined.
-                merge_block: IdRef,
+                merge_block: Id,
             };
 
             /// For a `selection` type block, we cannot use early exits, and we
@@ -100,7 +98,7 @@ const ControlFlow = union(enum) {
                 /// of conditions that jump to the loop exit.
                 merges: std.ArrayListUnmanaged(Incoming) = .empty,
                 /// The label id of the loop's merge block.
-                merge_block: IdRef,
+                merge_block: Id,
             },
 
             fn deinit(self: *Structured.Block, a: Allocator) void {
@@ -116,17 +114,17 @@ const ControlFlow = union(enum) {
         block_stack: std.ArrayListUnmanaged(*Structured.Block) = .empty,
         /// Maps `block` inst indices to the variable that the block's result
         /// value must be written to.
-        block_results: std.AutoHashMapUnmanaged(Air.Inst.Index, IdRef) = .empty,
+        block_results: std.AutoHashMapUnmanaged(Air.Inst.Index, Id) = .empty,
     };
 
     const Unstructured = struct {
         const Incoming = struct {
-            src_label: IdRef,
-            break_value_id: IdRef,
+            src_label: Id,
+            break_value_id: Id,
         };
 
         const Block = struct {
-            label: ?IdRef = null,
+            label: ?Id = null,
             incoming_blocks: std.ArrayListUnmanaged(Incoming) = .empty,
         };
 
@@ -318,7 +316,7 @@ const NavGen = struct {
 
     /// An array of function argument result-ids. Each index corresponds with the
     /// function argument of the same index.
-    args: std.ArrayListUnmanaged(IdRef) = .empty,
+    args: std.ArrayListUnmanaged(Id) = .empty,
 
     /// A counter to keep track of how many `arg` instructions we've seen yet.
     next_arg_index: u32 = 0,
@@ -337,7 +335,7 @@ const NavGen = struct {
     control_flow: ControlFlow,
 
     /// The label of the SPIR-V block we are currently generating.
-    current_block_label: IdRef,
+    current_block_label: Id,
 
     /// The code (prologue and body) for the function we are currently generating code for.
     func: SpvModule.Fn = .{},
@@ -436,17 +434,17 @@ const NavGen = struct {
 
     /// This imports the "default" extended instruction set for the target
     /// For OpenCL, OpenCL.std.100. For Vulkan and OpenGL, GLSL.std.450.
-    fn importExtendedSet(self: *NavGen) !IdResult {
+    fn importExtendedSet(self: *NavGen) !Id {
         const target = self.spv.target;
         return switch (target.os.tag) {
-            .opencl, .amdhsa => try self.spv.importInstructionSet(.@"OpenCL.std"),
-            .vulkan, .opengl => try self.spv.importInstructionSet(.@"GLSL.std.450"),
+            .opencl, .amdhsa => try self.spv.importInstructionSet(.open_cl_std),
+            .vulkan, .opengl => try self.spv.importInstructionSet(.glsl_std_450),
             else => unreachable,
         };
     }
 
     /// Fetch the result-id for a previously generated instruction or constant.
-    fn resolve(self: *NavGen, inst: Air.Inst.Ref) !IdRef {
+    fn resolve(self: *NavGen, inst: Air.Inst.Ref) !Id {
         const pt = self.pt;
         const zcu = pt.zcu;
         if (try self.air.value(inst, pt)) |val| {
@@ -468,7 +466,7 @@ const NavGen = struct {
         return self.inst_results.get(index).?; // Assertion means instruction does not dominate usage.
     }
 
-    fn resolveUav(self: *NavGen, val: InternPool.Index) !IdRef {
+    fn resolveUav(self: *NavGen, val: InternPool.Index) !Id {
         // TODO: This cannot be a function at this point, but it should probably be handled anyway.
 
         const zcu = self.pt.zcu;
@@ -476,16 +474,16 @@ const NavGen = struct {
         const decl_ptr_ty_id = try self.ptrType(ty, self.spvStorageClass(.generic), .indirect);
 
         const spv_decl_index = blk: {
-            const entry = try self.object.uav_link.getOrPut(self.object.gpa, .{ val, .Function });
+            const entry = try self.object.uav_link.getOrPut(self.object.gpa, .{ val, .function });
             if (entry.found_existing) {
-                try self.addFunctionDep(entry.value_ptr.*, .Function);
+                try self.addFunctionDep(entry.value_ptr.*, .function);
 
                 const result_id = self.spv.declPtr(entry.value_ptr.*).result_id;
                 return try self.castToGeneric(decl_ptr_ty_id, result_id);
             }
 
             const spv_decl_index = try self.spv.allocDecl(.invocation_global);
-            try self.addFunctionDep(spv_decl_index, .Function);
+            try self.addFunctionDep(spv_decl_index, .function);
             entry.value_ptr.* = spv_decl_index;
             break :blk spv_decl_index;
         };
@@ -536,7 +534,7 @@ const NavGen = struct {
 
             try self.spv.debugNameFmt(initializer_id, "initializer of __anon_{d}", .{@intFromEnum(val)});
 
-            const fn_decl_ptr_ty_id = try self.ptrType(ty, .Function, .indirect);
+            const fn_decl_ptr_ty_id = try self.ptrType(ty, .function, .indirect);
             try self.spv.sections.types_globals_constants.emit(self.spv.gpa, .OpExtInst, .{
                 .id_result_type = fn_decl_ptr_ty_id,
                 .id_result = result_id,
@@ -552,7 +550,7 @@ const NavGen = struct {
     fn addFunctionDep(self: *NavGen, decl_index: SpvModule.Decl.Index, storage_class: StorageClass) !void {
         if (self.spv.version.minor < 4) {
             // Before version 1.4, the interface’s storage classes are limited to the Input and Output
-            if (storage_class == .Input or storage_class == .Output) {
+            if (storage_class == .input or storage_class == .output) {
                 try self.func.decl_deps.put(self.spv.gpa, decl_index, {});
             }
         } else {
@@ -560,7 +558,7 @@ const NavGen = struct {
         }
     }
 
-    fn castToGeneric(self: *NavGen, type_id: IdRef, ptr_id: IdRef) !IdRef {
+    fn castToGeneric(self: *NavGen, type_id: Id, ptr_id: Id) !Id {
         if (self.spv.hasFeature(.generic_pointer)) {
             const result_id = self.spv.allocId();
             try self.func.body.emit(self.spv.gpa, .OpPtrCastToGeneric, .{
@@ -578,7 +576,7 @@ const NavGen = struct {
     /// block we are currently generating.
     /// Note that there is no such thing as nested blocks like in ZIR or AIR, so we don't need to
     /// keep track of the previous block.
-    fn beginSpvBlock(self: *NavGen, label: IdResult) !void {
+    fn beginSpvBlock(self: *NavGen, label: Id) !void {
         try self.func.body.emit(self.spv.gpa, .OpLabel, .{ .id_result = label });
         self.current_block_label = label;
     }
@@ -705,7 +703,7 @@ const NavGen = struct {
     }
 
     /// Emits a bool constant in a particular representation.
-    fn constBool(self: *NavGen, value: bool, repr: Repr) !IdRef {
+    fn constBool(self: *NavGen, value: bool, repr: Repr) !Id {
         return switch (repr) {
             .indirect => self.constInt(Type.u1, @intFromBool(value)),
             .direct => self.spv.constBool(value),
@@ -715,7 +713,7 @@ const NavGen = struct {
     /// Emits an integer constant.
     /// This function, unlike SpvModule.constInt, takes care to bitcast
     /// the value to an unsigned int first for Kernels.
-    fn constInt(self: *NavGen, ty: Type, value: anytype) !IdRef {
+    fn constInt(self: *NavGen, ty: Type, value: anytype) !Id {
         const zcu = self.pt.zcu;
         const scalar_ty = ty.scalarType(zcu);
         const int_info = scalar_ty.intInfo(zcu);
@@ -773,7 +771,7 @@ const NavGen = struct {
         return self.constructCompositeSplat(ty, result_id);
     }
 
-    pub fn constructComposite(self: *NavGen, result_ty_id: IdRef, constituents: []const IdRef) !IdRef {
+    pub fn constructComposite(self: *NavGen, result_ty_id: Id, constituents: []const Id) !Id {
         const result_id = self.spv.allocId();
         try self.func.body.emit(self.gpa, .OpCompositeConstruct, .{
             .id_result_type = result_ty_id,
@@ -785,11 +783,11 @@ const NavGen = struct {
 
     /// Construct a composite at runtime with all lanes set to the same value.
     /// ty must be an aggregate type.
-    fn constructCompositeSplat(self: *NavGen, ty: Type, constituent: IdRef) !IdRef {
+    fn constructCompositeSplat(self: *NavGen, ty: Type, constituent: Id) !Id {
         const zcu = self.pt.zcu;
         const n: usize = @intCast(ty.arrayLen(zcu));
 
-        const constituents = try self.gpa.alloc(IdRef, n);
+        const constituents = try self.gpa.alloc(Id, n);
         defer self.gpa.free(constituents);
         @memset(constituents, constituent);
 
@@ -803,7 +801,7 @@ const NavGen = struct {
     /// is done by emitting a sequence of instructions that initialize the value.
     //
     /// This function should only be called during function code generation.
-    fn constant(self: *NavGen, ty: Type, val: Value, repr: Repr) !IdRef {
+    fn constant(self: *NavGen, ty: Type, val: Value, repr: Repr) !Id {
         // Note: Using intern_map can only be used with constants that DO NOT generate any runtime code!!
         // Ideally that should be all constants in the future, or it should be cleaned up somehow. For
         // now, only use the intern_map on case-by-case basis by breaking to :cache.
@@ -909,7 +907,7 @@ const NavGen = struct {
                         .payload => |payload| payload,
                     });
 
-                    var constituents: [2]IdRef = undefined;
+                    var constituents: [2]Id = undefined;
                     var types: [2]Type = undefined;
                     if (eu_layout.error_first) {
                         constituents[0] = try self.constant(err_ty, err_val, .indirect);
@@ -967,7 +965,7 @@ const NavGen = struct {
                     inline .array_type, .vector_type => |array_type, tag| {
                         const elem_ty = Type.fromInterned(array_type.child);
 
-                        const constituents = try self.gpa.alloc(IdRef, @intCast(ty.arrayLenIncludingSentinel(zcu)));
+                        const constituents = try self.gpa.alloc(Id, @intCast(ty.arrayLenIncludingSentinel(zcu)));
                         defer self.gpa.free(constituents);
 
                         const child_repr: Repr = switch (tag) {
@@ -1015,7 +1013,7 @@ const NavGen = struct {
                         var types = std.ArrayList(Type).init(self.gpa);
                         defer types.deinit();
 
-                        var constituents = std.ArrayList(IdRef).init(self.gpa);
+                        var constituents = std.ArrayList(Id).init(self.gpa);
                         defer constituents.deinit();
 
                         var it = struct_type.iterateRuntimeOrder(ip);
@@ -1064,7 +1062,7 @@ const NavGen = struct {
         return cacheable_id;
     }
 
-    fn constantPtr(self: *NavGen, ptr_val: Value) Error!IdRef {
+    fn constantPtr(self: *NavGen, ptr_val: Value) Error!Id {
         const pt = self.pt;
 
         if (ptr_val.isUndef(pt.zcu)) {
@@ -1080,7 +1078,7 @@ const NavGen = struct {
         return self.derivePtr(derivation);
     }
 
-    fn derivePtr(self: *NavGen, derivation: Value.PointerDeriveStep) Error!IdRef {
+    fn derivePtr(self: *NavGen, derivation: Value.PointerDeriveStep) Error!Id {
         const pt = self.pt;
         const zcu = pt.zcu;
         switch (derivation) {
@@ -1159,7 +1157,7 @@ const NavGen = struct {
         self: *NavGen,
         ty: Type,
         uav: InternPool.Key.Ptr.BaseAddr.Uav,
-    ) !IdRef {
+    ) !Id {
         // TODO: Merge this function with constantDeclRef.
 
         const pt = self.pt;
@@ -1182,7 +1180,7 @@ const NavGen = struct {
 
         // Uav refs are always generic.
         assert(ty.ptrAddressSpace(zcu) == .generic);
-        const decl_ptr_ty_id = try self.ptrType(uav_ty, .Generic, .indirect);
+        const decl_ptr_ty_id = try self.ptrType(uav_ty, .generic, .indirect);
         const ptr_id = try self.resolveUav(uav.val);
 
         if (decl_ptr_ty_id != ty_id) {
@@ -1199,7 +1197,7 @@ const NavGen = struct {
         }
     }
 
-    fn constantNavRef(self: *NavGen, ty: Type, nav_index: InternPool.Nav.Index) !IdRef {
+    fn constantNavRef(self: *NavGen, ty: Type, nav_index: InternPool.Nav.Index) !Id {
         const pt = self.pt;
         const zcu = pt.zcu;
         const ip = &zcu.intern_pool;
@@ -1240,7 +1238,7 @@ const NavGen = struct {
         const decl_ptr_ty_id = try self.ptrType(nav_ty, storage_class, .indirect);
 
         const ptr_id = switch (storage_class) {
-            .Generic => try self.castToGeneric(decl_ptr_ty_id, decl_id),
+            .generic => try self.castToGeneric(decl_ptr_ty_id, decl_id),
             else => decl_id,
         };
 
@@ -1272,7 +1270,7 @@ const NavGen = struct {
     /// The integer type that is returned by this function is the type that is used to perform
     /// actual operations (as well as store) a Zig type of a particular number of bits. To create
     /// a type with an exact size, use SpvModule.intType.
-    fn intType(self: *NavGen, signedness: std.builtin.Signedness, bits: u16) !IdRef {
+    fn intType(self: *NavGen, signedness: std.builtin.Signedness, bits: u16) !Id {
         const backing_bits, const big_int = self.backingIntBits(bits);
         if (big_int) {
             if (backing_bits > 64) {
@@ -1289,12 +1287,12 @@ const NavGen = struct {
         };
     }
 
-    fn arrayType(self: *NavGen, len: u32, child_ty: IdRef) !IdRef {
+    fn arrayType(self: *NavGen, len: u32, child_ty: Id) !Id {
         const len_id = try self.constInt(Type.u32, len);
         return self.spv.arrayType(len_id, child_ty);
     }
 
-    fn ptrType(self: *NavGen, child_ty: Type, storage_class: StorageClass, child_repr: Repr) !IdRef {
+    fn ptrType(self: *NavGen, child_ty: Type, storage_class: StorageClass, child_repr: Repr) !Id {
         const zcu = self.pt.zcu;
         const ip = &zcu.intern_pool;
         const key = .{ child_ty.toIntern(), storage_class, child_repr };
@@ -1323,7 +1321,7 @@ const NavGen = struct {
             .vulkan, .opengl => {
                 if (child_ty.zigTypeTag(zcu) == .@"struct") {
                     switch (storage_class) {
-                        .Uniform, .PushConstant => try self.spv.decorate(child_ty_id, .Block),
+                        .uniform, .push_constant => try self.spv.decorate(child_ty_id, .block),
                         else => {},
                     }
                 }
@@ -1331,7 +1329,7 @@ const NavGen = struct {
                 switch (ip.indexToKey(child_ty.toIntern())) {
                     .func_type, .opaque_type => {},
                     else => {
-                        try self.spv.decorate(result_id, .{ .ArrayStride = .{ .array_stride = @intCast(child_ty.abiSize(zcu)) } });
+                        try self.spv.decorate(result_id, .{ .array_stride = .{ .array_stride = @intCast(child_ty.abiSize(zcu)) } });
                     },
                 }
             },
@@ -1349,9 +1347,9 @@ const NavGen = struct {
         return result_id;
     }
 
-    fn functionType(self: *NavGen, return_ty: Type, param_types: []const Type) !IdRef {
+    fn functionType(self: *NavGen, return_ty: Type, param_types: []const Type) !Id {
         const return_ty_id = try self.resolveFnReturnType(return_ty);
-        const param_ids = try self.gpa.alloc(IdRef, param_types.len);
+        const param_ids = try self.gpa.alloc(Id, param_types.len);
         defer self.gpa.free(param_ids);
 
         for (param_types, param_ids) |param_ty, *param_id| {
@@ -1379,7 +1377,7 @@ const NavGen = struct {
     ///    padding: [padding_size]u8,
     ///  }
     /// If any of the fields' size is 0, it will be omitted.
-    fn resolveUnionType(self: *NavGen, ty: Type) !IdRef {
+    fn resolveUnionType(self: *NavGen, ty: Type) !Id {
         const zcu = self.pt.zcu;
         const ip = &zcu.intern_pool;
         const union_obj = zcu.typeToUnion(ty).?;
@@ -1394,7 +1392,7 @@ const NavGen = struct {
             return try self.resolveType(Type.fromInterned(union_obj.enum_tag_ty), .indirect);
         }
 
-        var member_types: [4]IdRef = undefined;
+        var member_types: [4]Id = undefined;
         var member_names: [4][]const u8 = undefined;
 
         const u8_ty_id = try self.resolveType(Type.u8, .direct);
@@ -1433,7 +1431,7 @@ const NavGen = struct {
         return result_id;
     }
 
-    fn resolveFnReturnType(self: *NavGen, ret_ty: Type) !IdRef {
+    fn resolveFnReturnType(self: *NavGen, ret_ty: Type) !Id {
         const zcu = self.pt.zcu;
         if (!ret_ty.hasRuntimeBitsIgnoreComptime(zcu)) {
             // If the return type is an error set or an error union, then we make this
@@ -1450,7 +1448,7 @@ const NavGen = struct {
     }
 
     /// Turn a Zig type into a SPIR-V Type, and return a reference to it.
-    fn resolveType(self: *NavGen, ty: Type, repr: Repr) Error!IdRef {
+    fn resolveType(self: *NavGen, ty: Type, repr: Repr) Error!Id {
         if (self.intern_map.get(.{ ty.toIntern(), repr })) |id| {
             return id;
         }
@@ -1460,7 +1458,7 @@ const NavGen = struct {
         return id;
     }
 
-    fn resolveTypeInner(self: *NavGen, ty: Type, repr: Repr) Error!IdRef {
+    fn resolveTypeInner(self: *NavGen, ty: Type, repr: Repr) Error!Id {
         const pt = self.pt;
         const zcu = pt.zcu;
         const ip = &zcu.intern_pool;
@@ -1564,7 +1562,7 @@ const NavGen = struct {
                     const result_id = try self.arrayType(total_len, elem_ty_id);
                     switch (self.spv.target.os.tag) {
                         .vulkan, .opengl => {
-                            try self.spv.decorate(result_id, .{ .ArrayStride = .{
+                            try self.spv.decorate(result_id, .{ .array_stride = .{
                                 .array_stride = @intCast(elem_ty.abiSize(zcu)),
                             } });
                         },
@@ -1604,7 +1602,7 @@ const NavGen = struct {
                     assert(!fn_info.is_var_args);
 
                     // Note: Logic is different from functionType().
-                    const param_ty_ids = try self.gpa.alloc(IdRef, fn_info.param_types.len);
+                    const param_ty_ids = try self.gpa.alloc(Id, fn_info.param_types.len);
                     defer self.gpa.free(param_ty_ids);
                     var param_index: usize = 0;
                     for (fn_info.param_types.get(ip)) |param_ty_index| {
@@ -1655,7 +1653,7 @@ const NavGen = struct {
             .@"struct" => {
                 const struct_type = switch (ip.indexToKey(ty.toIntern())) {
                     .tuple_type => |tuple| {
-                        const member_types = try self.gpa.alloc(IdRef, tuple.values.len);
+                        const member_types = try self.gpa.alloc(Id, tuple.values.len);
                         defer self.gpa.free(member_types);
 
                         var member_index: usize = 0;
@@ -1683,7 +1681,7 @@ const NavGen = struct {
                     return try self.resolveType(Type.fromInterned(struct_type.backingIntTypeUnordered(ip)), .direct);
                 }
 
-                var member_types = std.ArrayList(IdRef).init(self.gpa);
+                var member_types = std.ArrayList(Id).init(self.gpa);
                 defer member_types.deinit();
 
                 var member_names = std.ArrayList([]const u8).init(self.gpa);
@@ -1701,7 +1699,7 @@ const NavGen = struct {
 
                     switch (self.spv.target.os.tag) {
                         .vulkan, .opengl => {
-                            try self.spv.decorateMember(result_id, index, .{ .Offset = .{
+                            try self.spv.decorateMember(result_id, index, .{ .offset = .{
                                 .byte_offset = @intCast(ty.structFieldOffset(field_index, zcu)),
                             } });
                         },
@@ -1765,7 +1763,7 @@ const NavGen = struct {
 
                 const payload_ty_id = try self.resolveType(payload_ty, .indirect);
 
-                var member_types: [2]IdRef = undefined;
+                var member_types: [2]Id = undefined;
                 var member_names: [2][]const u8 = undefined;
                 if (eu_layout.error_first) {
                     // Put the error first
@@ -1809,30 +1807,30 @@ const NavGen = struct {
 
     fn spvStorageClass(self: *NavGen, as: std.builtin.AddressSpace) StorageClass {
         return switch (as) {
-            .generic => if (self.spv.hasFeature(.generic_pointer)) .Generic else .Function,
+            .generic => if (self.spv.hasFeature(.generic_pointer)) .generic else .function,
             .global => switch (self.spv.target.os.tag) {
-                .opencl, .amdhsa => .CrossWorkgroup,
-                else => .StorageBuffer,
+                .opencl, .amdhsa => .cross_workgroup,
+                else => .storage_buffer,
             },
             .push_constant => {
-                return .PushConstant;
+                return .push_constant;
             },
             .output => {
-                return .Output;
+                return .output;
             },
             .uniform => {
-                return .Uniform;
+                return .uniform;
             },
             .storage_buffer => {
-                return .StorageBuffer;
+                return .storage_buffer;
             },
             .physical_storage_buffer => {
-                return .PhysicalStorageBuffer;
+                return .physical_storage_buffer;
             },
-            .constant => .UniformConstant,
-            .shared => .Workgroup,
-            .local => .Function,
-            .input => .Input,
+            .constant => .uniform_constant,
+            .shared => .workgroup,
+            .local => .function,
+            .input => .input,
             .gs,
             .fs,
             .ss,
@@ -1980,22 +1978,22 @@ const NavGen = struct {
         value: Temporary.Value,
 
         const Value = union(enum) {
-            singleton: IdResult,
+            singleton: Id,
             exploded_vector: IdRange,
         };
 
-        fn init(ty: Type, singleton: IdResult) Temporary {
+        fn init(ty: Type, singleton: Id) Temporary {
             return .{ .ty = ty, .value = .{ .singleton = singleton } };
         }
 
-        fn materialize(self: Temporary, ng: *NavGen) !IdResult {
+        fn materialize(self: Temporary, ng: *NavGen) !Id {
             const zcu = ng.pt.zcu;
             switch (self.value) {
                 .singleton => |id| return id,
                 .exploded_vector => |range| {
                     assert(self.ty.isVector(zcu));
                     assert(self.ty.vectorLen(zcu) == range.len);
-                    const constituents = try ng.gpa.alloc(IdRef, range.len);
+                    const constituents = try ng.gpa.alloc(Id, range.len);
                     defer ng.gpa.free(constituents);
                     for (constituents, 0..range.len) |*id, i| {
                         id.* = range.at(i);
@@ -2170,16 +2168,16 @@ const NavGen = struct {
             /// on the operation and input value.
             const Value = union(enum) {
                 /// A single scalar value that is used by a scalar operation.
-                scalar: IdResult,
+                scalar: Id,
                 /// A single scalar that is broadcasted in an unrolled operation.
-                scalar_broadcast: IdResult,
+                scalar_broadcast: Id,
                 /// A vector represented by a consecutive list of IDs that is used in an unrolled operation.
                 vector_exploded: IdRange,
             };
 
             /// Query the value at a particular index of the operation. Note that
             /// the index is *not* the component/lane, but the index of the *operation*.
-            fn at(self: PreparedOperand, i: usize) IdResult {
+            fn at(self: PreparedOperand, i: usize) Id {
                 switch (self.value) {
                     .scalar => |id| {
                         assert(i == 0);
@@ -2253,9 +2251,9 @@ const NavGen = struct {
 
         for (0..ops) |i| {
             try self.func.body.emitRaw(self.spv.gpa, opcode, 3);
-            self.func.body.writeOperand(spec.IdResultType, op_result_ty_id);
-            self.func.body.writeOperand(IdResult, results.at(i));
-            self.func.body.writeOperand(IdResult, op_src.at(i));
+            self.func.body.writeOperand(spec.Id, op_result_ty_id);
+            self.func.body.writeOperand(Id, results.at(i));
+            self.func.body.writeOperand(Id, op_src.at(i));
         }
 
         return v.finalize(result_ty, results);
@@ -2388,10 +2386,10 @@ const NavGen = struct {
 
         for (0..ops) |i| {
             try self.func.body.emitRaw(self.spv.gpa, opcode, 4);
-            self.func.body.writeOperand(spec.IdResultType, op_result_ty_id);
-            self.func.body.writeOperand(IdResult, results.at(i));
-            self.func.body.writeOperand(IdResult, op_lhs.at(i));
-            self.func.body.writeOperand(IdResult, op_rhs.at(i));
+            self.func.body.writeOperand(spec.Id, op_result_ty_id);
+            self.func.body.writeOperand(Id, results.at(i));
+            self.func.body.writeOperand(Id, op_lhs.at(i));
+            self.func.body.writeOperand(Id, op_rhs.at(i));
         }
 
         return v.finalize(result_ty, results);
@@ -2442,9 +2440,9 @@ const NavGen = struct {
         }) |opcode| {
             for (0..ops) |i| {
                 try self.func.body.emitRaw(self.spv.gpa, opcode, 3);
-                self.func.body.writeOperand(spec.IdResultType, op_result_ty_id);
-                self.func.body.writeOperand(IdResult, results.at(i));
-                self.func.body.writeOperand(IdResult, op_operand.at(i));
+                self.func.body.writeOperand(spec.Id, op_result_ty_id);
+                self.func.body.writeOperand(Id, results.at(i));
+                self.func.body.writeOperand(Id, op_operand.at(i));
             }
         } else {
             const set = try self.importExtendedSet();
@@ -2583,10 +2581,10 @@ const NavGen = struct {
         }) |opcode| {
             for (0..ops) |i| {
                 try self.func.body.emitRaw(self.spv.gpa, opcode, 4);
-                self.func.body.writeOperand(spec.IdResultType, op_result_ty_id);
-                self.func.body.writeOperand(IdResult, results.at(i));
-                self.func.body.writeOperand(IdResult, op_lhs.at(i));
-                self.func.body.writeOperand(IdResult, op_rhs.at(i));
+                self.func.body.writeOperand(spec.Id, op_result_ty_id);
+                self.func.body.writeOperand(Id, results.at(i));
+                self.func.body.writeOperand(Id, op_lhs.at(i));
+                self.func.body.writeOperand(Id, op_rhs.at(i));
             }
         } else {
             const set = try self.importExtendedSet();
@@ -2702,10 +2700,10 @@ const NavGen = struct {
                     const op_result = self.spv.allocId();
 
                     try self.func.body.emitRaw(self.spv.gpa, opcode, 4);
-                    self.func.body.writeOperand(spec.IdResultType, op_result_ty_id);
-                    self.func.body.writeOperand(IdResult, op_result);
-                    self.func.body.writeOperand(IdResult, lhs_op.at(i));
-                    self.func.body.writeOperand(IdResult, rhs_op.at(i));
+                    self.func.body.writeOperand(spec.Id, op_result_ty_id);
+                    self.func.body.writeOperand(Id, op_result);
+                    self.func.body.writeOperand(Id, lhs_op.at(i));
+                    self.func.body.writeOperand(Id, rhs_op.at(i));
 
                     // The above operation returns a struct. We might want to expand
                     // Temporary to deal with the fact that these are structs eventually,
@@ -2804,8 +2802,8 @@ const NavGen = struct {
 
                     const buffer_struct_ty_id = self.spv.allocId();
                     try self.spv.structType(buffer_struct_ty_id, &.{anyerror_ty_id}, &.{"error_out"});
-                    try self.spv.decorate(buffer_struct_ty_id, .Block);
-                    try self.spv.decorateMember(buffer_struct_ty_id, 0, .{ .Offset = .{ .byte_offset = 0 } });
+                    try self.spv.decorate(buffer_struct_ty_id, .block);
+                    try self.spv.decorateMember(buffer_struct_ty_id, 0, .{ .offset = .{ .byte_offset = 0 } });
 
                     const ptr_buffer_struct_ty_id = self.spv.allocId();
                     try self.spv.sections.types_globals_constants.emit(self.spv.gpa, .OpTypePointer, .{
@@ -2820,15 +2818,15 @@ const NavGen = struct {
                         .id_result = buffer_struct_id,
                         .storage_class = self.spvStorageClass(.global),
                     });
-                    try self.spv.decorate(buffer_struct_id, .{ .DescriptorSet = .{ .descriptor_set = 0 } });
-                    try self.spv.decorate(buffer_struct_id, .{ .Binding = .{ .binding_point = 0 } });
+                    try self.spv.decorate(buffer_struct_id, .{ .descriptor_set = .{ .descriptor_set = 0 } });
+                    try self.spv.decorate(buffer_struct_id, .{ .binding = .{ .binding_point = 0 } });
 
                     self.object.error_buffer = spv_err_decl_index;
                 }
 
                 try self.spv.sections.execution_modes.emit(self.spv.gpa, .OpExecutionMode, .{
                     .entry_point = kernel_id,
-                    .mode = .{ .LocalSize = .{
+                    .mode = .{ .local_size = .{
                         .x_size = 1,
                         .y_size = 1,
                         .z_size = 1,
@@ -2873,7 +2871,7 @@ const NavGen = struct {
             .pointer = p_error_id,
             .object = error_id,
             .memory_access = .{
-                .Aligned = .{ .literal_integer = @intCast(Type.abiAlignment(.anyerror, zcu).toByteUnits().?) },
+                .aligned = .{ .literal_integer = @intCast(Type.abiAlignment(.anyerror, zcu).toByteUnits().?) },
             },
         });
         try section.emit(self.spv.gpa, .OpReturn, {});
@@ -2885,8 +2883,8 @@ const NavGen = struct {
         defer self.gpa.free(test_name);
 
         const execution_mode: spec.ExecutionModel = switch (target.os.tag) {
-            .vulkan, .opengl => .GLCompute,
-            .opencl, .amdhsa => .Kernel,
+            .vulkan, .opengl => .gl_compute,
+            .opencl, .amdhsa => .kernel,
             else => unreachable,
         };
 
@@ -2983,7 +2981,7 @@ const NavGen = struct {
                 assert(maybe_init_val == null); // TODO
 
                 const storage_class = self.spvStorageClass(nav.getAddrspace());
-                assert(storage_class != .Generic); // These should be instance globals
+                assert(storage_class != .generic); // These should be instance globals
 
                 const ptr_ty_id = try self.ptrType(ty, storage_class, .indirect);
 
@@ -2993,38 +2991,8 @@ const NavGen = struct {
                     .storage_class = storage_class,
                 });
 
-                if (nav.fqn.eqlSlice("position", ip)) {
-                    try self.spv.decorate(result_id, .{ .BuiltIn = .{ .built_in = .Position } });
-                } else if (nav.fqn.eqlSlice("point_size", ip)) {
-                    try self.spv.decorate(result_id, .{ .BuiltIn = .{ .built_in = .PointSize } });
-                } else if (nav.fqn.eqlSlice("invocation_id", ip)) {
-                    try self.spv.decorate(result_id, .{ .BuiltIn = .{ .built_in = .InvocationId } });
-                } else if (nav.fqn.eqlSlice("frag_coord", ip)) {
-                    try self.spv.decorate(result_id, .{ .BuiltIn = .{ .built_in = .FragCoord } });
-                } else if (nav.fqn.eqlSlice("point_coord", ip)) {
-                    try self.spv.decorate(result_id, .{ .BuiltIn = .{ .built_in = .PointCoord } });
-                } else if (nav.fqn.eqlSlice("front_facing", ip)) {
-                    try self.spv.decorate(result_id, .{ .BuiltIn = .{ .built_in = .FrontFacing } });
-                } else if (nav.fqn.eqlSlice("sample_mask", ip)) {
-                    try self.spv.decorate(result_id, .{ .BuiltIn = .{ .built_in = .SampleMask } });
-                } else if (nav.fqn.eqlSlice("frag_depth", ip)) {
-                    try self.spv.decorate(result_id, .{ .BuiltIn = .{ .built_in = .FragDepth } });
-                } else if (nav.fqn.eqlSlice("num_workgroups", ip)) {
-                    try self.spv.decorate(result_id, .{ .BuiltIn = .{ .built_in = .NumWorkgroups } });
-                } else if (nav.fqn.eqlSlice("workgroup_size", ip)) {
-                    try self.spv.decorate(result_id, .{ .BuiltIn = .{ .built_in = .WorkgroupSize } });
-                } else if (nav.fqn.eqlSlice("workgroup_id", ip)) {
-                    try self.spv.decorate(result_id, .{ .BuiltIn = .{ .built_in = .WorkgroupId } });
-                } else if (nav.fqn.eqlSlice("local_invocation_id", ip)) {
-                    try self.spv.decorate(result_id, .{ .BuiltIn = .{ .built_in = .LocalInvocationId } });
-                } else if (nav.fqn.eqlSlice("global_invocation_id", ip)) {
-                    try self.spv.decorate(result_id, .{ .BuiltIn = .{ .built_in = .GlobalInvocationId } });
-                } else if (nav.fqn.eqlSlice("local_invocation_index", ip)) {
-                    try self.spv.decorate(result_id, .{ .BuiltIn = .{ .built_in = .LocalInvocationIndex } });
-                } else if (nav.fqn.eqlSlice("vertex_index", ip)) {
-                    try self.spv.decorate(result_id, .{ .BuiltIn = .{ .built_in = .VertexIndex } });
-                } else if (nav.fqn.eqlSlice("instance_index", ip)) {
-                    try self.spv.decorate(result_id, .{ .BuiltIn = .{ .built_in = .InstanceIndex } });
+                if (std.meta.stringToEnum(spec.BuiltIn, nav.fqn.toSlice(ip))) |builtin| {
+                    try self.spv.decorate(result_id, .{ .built_in = .{ .built_in = builtin } });
                 }
 
                 try self.spv.debugName(result_id, nav.fqn.toSlice(ip));
@@ -3040,7 +3008,7 @@ const NavGen = struct {
 
                 try self.spv.declareDeclDeps(spv_decl_index, &.{});
 
-                const ptr_ty_id = try self.ptrType(ty, .Function, .indirect);
+                const ptr_ty_id = try self.ptrType(ty, .function, .indirect);
 
                 if (maybe_init_val) |init_val| {
                     // TODO: Combine with resolveAnonDecl?
@@ -3109,7 +3077,7 @@ const NavGen = struct {
 
     /// Convert representation from indirect (in memory) to direct (in 'register')
     /// This converts the argument type from resolveType(ty, .indirect) to resolveType(ty, .direct).
-    fn convertToDirect(self: *NavGen, ty: Type, operand_id: IdRef) !IdRef {
+    fn convertToDirect(self: *NavGen, ty: Type, operand_id: Id) !Id {
         const pt = self.pt;
         const zcu = pt.zcu;
         switch (ty.scalarType(zcu).zigTypeTag(zcu)) {
@@ -3136,7 +3104,7 @@ const NavGen = struct {
 
     /// Convert representation from direct (in 'register) to direct (in memory)
     /// This converts the argument type from resolveType(ty, .direct) to resolveType(ty, .indirect).
-    fn convertToIndirect(self: *NavGen, ty: Type, operand_id: IdRef) !IdRef {
+    fn convertToIndirect(self: *NavGen, ty: Type, operand_id: Id) !Id {
         const zcu = self.pt.zcu;
         switch (ty.scalarType(zcu).zigTypeTag(zcu)) {
             .bool => {
@@ -3147,7 +3115,7 @@ const NavGen = struct {
         }
     }
 
-    fn extractField(self: *NavGen, result_ty: Type, object: IdRef, field: u32) !IdRef {
+    fn extractField(self: *NavGen, result_ty: Type, object: Id, field: u32) !Id {
         const result_ty_id = try self.resolveType(result_ty, .indirect);
         const result_id = self.spv.allocId();
         const indexes = [_]u32{field};
@@ -3161,7 +3129,7 @@ const NavGen = struct {
         return try self.convertToDirect(result_ty, result_id);
     }
 
-    fn extractVectorComponent(self: *NavGen, result_ty: Type, vector_id: IdRef, field: u32) !IdRef {
+    fn extractVectorComponent(self: *NavGen, result_ty: Type, vector_id: Id, field: u32) !Id {
         const result_ty_id = try self.resolveType(result_ty, .direct);
         const result_id = self.spv.allocId();
         const indexes = [_]u32{field};
@@ -3179,14 +3147,14 @@ const NavGen = struct {
         is_volatile: bool = false,
     };
 
-    fn load(self: *NavGen, value_ty: Type, ptr_id: IdRef, options: MemoryOptions) !IdRef {
+    fn load(self: *NavGen, value_ty: Type, ptr_id: Id, options: MemoryOptions) !Id {
         const zcu = self.pt.zcu;
         const alignment: u32 = @intCast(value_ty.abiAlignment(zcu).toByteUnits().?);
         const indirect_value_ty_id = try self.resolveType(value_ty, .indirect);
         const result_id = self.spv.allocId();
-        const access = spec.MemoryAccess.Extended{
-            .Volatile = options.is_volatile,
-            .Aligned = .{ .literal_integer = alignment },
+        const access: spec.MemoryAccess.Extended = .{
+            .@"volatile" = options.is_volatile,
+            .aligned = .{ .literal_integer = alignment },
         };
         try self.func.body.emit(self.spv.gpa, .OpLoad, .{
             .id_result_type = indirect_value_ty_id,
@@ -3197,11 +3165,9 @@ const NavGen = struct {
         return try self.convertToDirect(value_ty, result_id);
     }
 
-    fn store(self: *NavGen, value_ty: Type, ptr_id: IdRef, value_id: IdRef, options: MemoryOptions) !void {
+    fn store(self: *NavGen, value_ty: Type, ptr_id: Id, value_id: Id, options: MemoryOptions) !void {
         const indirect_value_id = try self.convertToIndirect(value_ty, value_id);
-        const access = spec.MemoryAccess.Extended{
-            .Volatile = options.is_volatile,
-        };
+        const access: spec.MemoryAccess.Extended = .{ .@"volatile" = options.is_volatile };
         try self.func.body.emit(self.spv.gpa, .OpStore, .{
             .pointer = ptr_id,
             .object = indirect_value_id,
@@ -3222,7 +3188,7 @@ const NavGen = struct {
             return;
 
         const air_tags = self.air.instructions.items(.tag);
-        const maybe_result_id: ?IdRef = switch (air_tags[@intFromEnum(inst)]) {
+        const maybe_result_id: ?Id = switch (air_tags[@intFromEnum(inst)]) {
             // zig fmt: off
             .add, .add_wrap, .add_optimized => try self.airArithOp(inst, .f_add, .i_add, .i_add),
             .sub, .sub_wrap, .sub_optimized => try self.airArithOp(inst, .f_sub, .i_sub, .i_sub),
@@ -3390,7 +3356,7 @@ const NavGen = struct {
         try self.inst_results.putNoClobber(self.gpa, inst, result_id);
     }
 
-    fn airBinOpSimple(self: *NavGen, inst: Air.Inst.Index, op: BinaryOp) !?IdRef {
+    fn airBinOpSimple(self: *NavGen, inst: Air.Inst.Index, op: BinaryOp) !?Id {
         const bin_op = self.air.instructions.items(.data)[@intFromEnum(inst)].bin_op;
         const lhs = try self.temporary(bin_op.lhs);
         const rhs = try self.temporary(bin_op.rhs);
@@ -3399,7 +3365,7 @@ const NavGen = struct {
         return try result.materialize(self);
     }
 
-    fn airShift(self: *NavGen, inst: Air.Inst.Index, unsigned: BinaryOp, signed: BinaryOp) !?IdRef {
+    fn airShift(self: *NavGen, inst: Air.Inst.Index, unsigned: BinaryOp, signed: BinaryOp) !?Id {
         const zcu = self.pt.zcu;
         const bin_op = self.air.instructions.items(.data)[@intFromEnum(inst)].bin_op;
 
@@ -3438,7 +3404,7 @@ const NavGen = struct {
 
     const MinMax = enum { min, max };
 
-    fn airMinMax(self: *NavGen, inst: Air.Inst.Index, op: MinMax) !?IdRef {
+    fn airMinMax(self: *NavGen, inst: Air.Inst.Index, op: MinMax) !?Id {
         const bin_op = self.air.instructions.items(.data)[@intFromEnum(inst)].bin_op;
 
         const lhs = try self.temporary(bin_op.lhs);
@@ -3503,7 +3469,7 @@ const NavGen = struct {
         }
     }
 
-    fn airDivFloor(self: *NavGen, inst: Air.Inst.Index) !?IdRef {
+    fn airDivFloor(self: *NavGen, inst: Air.Inst.Index) !?Id {
         const bin_op = self.air.instructions.items(.data)[@intFromEnum(inst)].bin_op;
 
         const lhs = try self.temporary(bin_op.lhs);
@@ -3560,7 +3526,7 @@ const NavGen = struct {
         }
     }
 
-    fn airDivTrunc(self: *NavGen, inst: Air.Inst.Index) !?IdRef {
+    fn airDivTrunc(self: *NavGen, inst: Air.Inst.Index) !?Id {
         const bin_op = self.air.instructions.items(.data)[@intFromEnum(inst)].bin_op;
 
         const lhs = try self.temporary(bin_op.lhs);
@@ -3588,7 +3554,7 @@ const NavGen = struct {
         }
     }
 
-    fn airUnOpSimple(self: *NavGen, inst: Air.Inst.Index, op: UnaryOp) !?IdRef {
+    fn airUnOpSimple(self: *NavGen, inst: Air.Inst.Index, op: UnaryOp) !?Id {
         const un_op = self.air.instructions.items(.data)[@intFromEnum(inst)].un_op;
         const operand = try self.temporary(un_op);
         const result = try self.buildUnary(op, operand);
@@ -3601,7 +3567,7 @@ const NavGen = struct {
         comptime fop: BinaryOp,
         comptime sop: BinaryOp,
         comptime uop: BinaryOp,
-    ) !?IdRef {
+    ) !?Id {
         const bin_op = self.air.instructions.items(.data)[@intFromEnum(inst)].bin_op;
 
         const lhs = try self.temporary(bin_op.lhs);
@@ -3622,7 +3588,7 @@ const NavGen = struct {
         return try result.materialize(self);
     }
 
-    fn airAbs(self: *NavGen, inst: Air.Inst.Index) !?IdRef {
+    fn airAbs(self: *NavGen, inst: Air.Inst.Index) !?Id {
         const ty_op = self.air.instructions.items(.data)[@intFromEnum(inst)].ty_op;
         const operand = try self.temporary(ty_op.operand);
         // Note: operand_ty may be signed, while ty is always unsigned!
@@ -3662,7 +3628,7 @@ const NavGen = struct {
         comptime add: BinaryOp,
         comptime ucmp: CmpPredicate,
         comptime scmp: CmpPredicate,
-    ) !?IdRef {
+    ) !?Id {
         _ = scmp;
         // Note: OpIAddCarry and OpISubBorrow are not really useful here: For unsigned numbers,
         // there is in both cases only one extra operation required. For signed operations,
@@ -3725,7 +3691,7 @@ const NavGen = struct {
         return try self.constructComposite(result_ty_id, &.{ try result.materialize(self), try ov.materialize(self) });
     }
 
-    fn airMulOverflow(self: *NavGen, inst: Air.Inst.Index) !?IdRef {
+    fn airMulOverflow(self: *NavGen, inst: Air.Inst.Index) !?Id {
         const pt = self.pt;
 
         const ty_pl = self.air.instructions.items(.data)[@intFromEnum(inst)].ty_pl;
@@ -3897,7 +3863,7 @@ const NavGen = struct {
         return try self.constructComposite(result_ty_id, &.{ try result.materialize(self), try ov.materialize(self) });
     }
 
-    fn airShlOverflow(self: *NavGen, inst: Air.Inst.Index) !?IdRef {
+    fn airShlOverflow(self: *NavGen, inst: Air.Inst.Index) !?Id {
         const zcu = self.pt.zcu;
 
         const ty_pl = self.air.instructions.items(.data)[@intFromEnum(inst)].ty_pl;
@@ -3938,7 +3904,7 @@ const NavGen = struct {
         return try self.constructComposite(result_ty_id, &.{ try result.materialize(self), try ov.materialize(self) });
     }
 
-    fn airMulAdd(self: *NavGen, inst: Air.Inst.Index) !?IdRef {
+    fn airMulAdd(self: *NavGen, inst: Air.Inst.Index) !?Id {
         const pl_op = self.air.instructions.items(.data)[@intFromEnum(inst)].pl_op;
         const extra = self.air.extraData(Air.Bin, pl_op.payload).data;
 
@@ -3954,7 +3920,7 @@ const NavGen = struct {
         return try result.materialize(self);
     }
 
-    fn airClzCtz(self: *NavGen, inst: Air.Inst.Index, op: UnaryOp) !?IdRef {
+    fn airClzCtz(self: *NavGen, inst: Air.Inst.Index, op: UnaryOp) !?Id {
         if (self.liveness.isUnused(inst)) return null;
 
         const zcu = self.pt.zcu;
@@ -3979,7 +3945,7 @@ const NavGen = struct {
         return try result.materialize(self);
     }
 
-    fn airSelect(self: *NavGen, inst: Air.Inst.Index) !?IdRef {
+    fn airSelect(self: *NavGen, inst: Air.Inst.Index) !?Id {
         const pl_op = self.air.instructions.items(.data)[@intFromEnum(inst)].pl_op;
         const extra = self.air.extraData(Air.Bin, pl_op.payload).data;
         const pred = try self.temporary(pl_op.operand);
@@ -3990,7 +3956,7 @@ const NavGen = struct {
         return try result.materialize(self);
     }
 
-    fn airSplat(self: *NavGen, inst: Air.Inst.Index) !?IdRef {
+    fn airSplat(self: *NavGen, inst: Air.Inst.Index) !?Id {
         const ty_op = self.air.instructions.items(.data)[@intFromEnum(inst)].ty_op;
 
         const operand_id = try self.resolve(ty_op.operand);
@@ -3999,7 +3965,7 @@ const NavGen = struct {
         return try self.constructCompositeSplat(result_ty, operand_id);
     }
 
-    fn airReduce(self: *NavGen, inst: Air.Inst.Index) !?IdRef {
+    fn airReduce(self: *NavGen, inst: Air.Inst.Index) !?Id {
         const zcu = self.pt.zcu;
         const reduce = self.air.instructions.items(.data)[@intFromEnum(inst)].reduce;
         const operand = try self.resolve(reduce.operand);
@@ -4062,16 +4028,16 @@ const NavGen = struct {
             result_id = self.spv.allocId();
 
             try self.func.body.emitRaw(self.spv.gpa, opcode, 4);
-            self.func.body.writeOperand(spec.IdResultType, scalar_ty_id);
-            self.func.body.writeOperand(spec.IdResult, result_id);
-            self.func.body.writeOperand(spec.IdResultType, lhs);
-            self.func.body.writeOperand(spec.IdResultType, rhs);
+            self.func.body.writeOperand(spec.Id, scalar_ty_id);
+            self.func.body.writeOperand(spec.Id, result_id);
+            self.func.body.writeOperand(spec.Id, lhs);
+            self.func.body.writeOperand(spec.Id, rhs);
         }
 
         return result_id;
     }
 
-    fn airShuffleOne(ng: *NavGen, inst: Air.Inst.Index) !?IdRef {
+    fn airShuffleOne(ng: *NavGen, inst: Air.Inst.Index) !?Id {
         const pt = ng.pt;
         const zcu = pt.zcu;
         const gpa = zcu.gpa;
@@ -4082,7 +4048,7 @@ const NavGen = struct {
         const elem_ty = result_ty.childType(zcu);
         const operand = try ng.resolve(unwrapped.operand);
 
-        const constituents = try gpa.alloc(IdRef, mask.len);
+        const constituents = try gpa.alloc(Id, mask.len);
         defer gpa.free(constituents);
 
         for (constituents, mask) |*id, mask_elem| {
@@ -4096,7 +4062,7 @@ const NavGen = struct {
         return try ng.constructComposite(result_ty_id, constituents);
     }
 
-    fn airShuffleTwo(ng: *NavGen, inst: Air.Inst.Index) !?IdRef {
+    fn airShuffleTwo(ng: *NavGen, inst: Air.Inst.Index) !?Id {
         const pt = ng.pt;
         const zcu = pt.zcu;
         const gpa = zcu.gpa;
@@ -4109,7 +4075,7 @@ const NavGen = struct {
         const operand_a = try ng.resolve(unwrapped.operand_a);
         const operand_b = try ng.resolve(unwrapped.operand_b);
 
-        const constituents = try gpa.alloc(IdRef, mask.len);
+        const constituents = try gpa.alloc(Id, mask.len);
         defer gpa.free(constituents);
 
         for (constituents, mask) |*id, mask_elem| {
@@ -4124,8 +4090,8 @@ const NavGen = struct {
         return try ng.constructComposite(result_ty_id, constituents);
     }
 
-    fn indicesToIds(self: *NavGen, indices: []const u32) ![]IdRef {
-        const ids = try self.gpa.alloc(IdRef, indices.len);
+    fn indicesToIds(self: *NavGen, indices: []const u32) ![]Id {
+        const ids = try self.gpa.alloc(Id, indices.len);
         errdefer self.gpa.free(ids);
         for (indices, ids) |index, *id| {
             id.* = try self.constInt(Type.u32, index);
@@ -4136,10 +4102,10 @@ const NavGen = struct {
 
     fn accessChainId(
         self: *NavGen,
-        result_ty_id: IdRef,
-        base: IdRef,
-        indices: []const IdRef,
-    ) !IdRef {
+        result_ty_id: Id,
+        base: Id,
+        indices: []const Id,
+    ) !Id {
         const result_id = self.spv.allocId();
         try self.func.body.emit(self.spv.gpa, .OpInBoundsAccessChain, .{
             .id_result_type = result_ty_id,
@@ -4156,10 +4122,10 @@ const NavGen = struct {
     /// is the latter and PtrAccessChain is the former.
     fn accessChain(
         self: *NavGen,
-        result_ty_id: IdRef,
-        base: IdRef,
+        result_ty_id: Id,
+        base: Id,
         indices: []const u32,
-    ) !IdRef {
+    ) !Id {
         const ids = try self.indicesToIds(indices);
         defer self.gpa.free(ids);
         return try self.accessChainId(result_ty_id, base, ids);
@@ -4167,11 +4133,11 @@ const NavGen = struct {
 
     fn ptrAccessChain(
         self: *NavGen,
-        result_ty_id: IdRef,
-        base: IdRef,
-        element: IdRef,
+        result_ty_id: Id,
+        base: Id,
+        element: Id,
         indices: []const u32,
-    ) !IdRef {
+    ) !Id {
         const ids = try self.indicesToIds(indices);
         defer self.gpa.free(ids);
 
@@ -4199,7 +4165,7 @@ const NavGen = struct {
         return result_id;
     }
 
-    fn ptrAdd(self: *NavGen, result_ty: Type, ptr_ty: Type, ptr_id: IdRef, offset_id: IdRef) !IdRef {
+    fn ptrAdd(self: *NavGen, result_ty: Type, ptr_ty: Type, ptr_id: Id, offset_id: Id) !Id {
         const zcu = self.pt.zcu;
         const result_ty_id = try self.resolveType(result_ty, .direct);
 
@@ -4220,7 +4186,7 @@ const NavGen = struct {
         }
     }
 
-    fn airPtrAdd(self: *NavGen, inst: Air.Inst.Index) !?IdRef {
+    fn airPtrAdd(self: *NavGen, inst: Air.Inst.Index) !?Id {
         const ty_pl = self.air.instructions.items(.data)[@intFromEnum(inst)].ty_pl;
         const bin_op = self.air.extraData(Air.Bin, ty_pl.payload).data;
         const ptr_id = try self.resolve(bin_op.lhs);
@@ -4231,7 +4197,7 @@ const NavGen = struct {
         return try self.ptrAdd(result_ty, ptr_ty, ptr_id, offset_id);
     }
 
-    fn airPtrSub(self: *NavGen, inst: Air.Inst.Index) !?IdRef {
+    fn airPtrSub(self: *NavGen, inst: Air.Inst.Index) !?Id {
         const ty_pl = self.air.instructions.items(.data)[@intFromEnum(inst)].ty_pl;
         const bin_op = self.air.extraData(Air.Bin, ty_pl.payload).data;
         const ptr_id = try self.resolve(bin_op.lhs);
@@ -4427,7 +4393,7 @@ const NavGen = struct {
         self: *NavGen,
         inst: Air.Inst.Index,
         comptime op: std.math.CompareOperator,
-    ) !?IdRef {
+    ) !?Id {
         const bin_op = self.air.instructions.items(.data)[@intFromEnum(inst)].bin_op;
         const lhs = try self.temporary(bin_op.lhs);
         const rhs = try self.temporary(bin_op.rhs);
@@ -4436,7 +4402,7 @@ const NavGen = struct {
         return try result.materialize(self);
     }
 
-    fn airVectorCmp(self: *NavGen, inst: Air.Inst.Index) !?IdRef {
+    fn airVectorCmp(self: *NavGen, inst: Air.Inst.Index) !?Id {
         const ty_pl = self.air.instructions.items(.data)[@intFromEnum(inst)].ty_pl;
         const vec_cmp = self.air.extraData(Air.VectorCmp, ty_pl.payload).data;
         const lhs = try self.temporary(vec_cmp.lhs);
@@ -4452,8 +4418,8 @@ const NavGen = struct {
         self: *NavGen,
         dst_ty: Type,
         src_ty: Type,
-        src_id: IdRef,
-    ) !IdRef {
+        src_id: Id,
+    ) !Id {
         const zcu = self.pt.zcu;
         const src_ty_id = try self.resolveType(src_ty, .direct);
         const dst_ty_id = try self.resolveType(dst_ty, .direct);
@@ -4489,9 +4455,9 @@ const NavGen = struct {
                 break :blk result_id;
             }
 
-            const dst_ptr_ty_id = try self.ptrType(dst_ty, .Function, .indirect);
+            const dst_ptr_ty_id = try self.ptrType(dst_ty, .function, .indirect);
 
-            const tmp_id = try self.alloc(src_ty, .{ .storage_class = .Function });
+            const tmp_id = try self.alloc(src_ty, .{ .storage_class = .function });
             try self.store(src_ty, tmp_id, src_id, .{});
             const casted_ptr_id = self.spv.allocId();
             try self.func.body.emit(self.spv.gpa, .OpBitcast, .{
@@ -4515,7 +4481,7 @@ const NavGen = struct {
         return result_id;
     }
 
-    fn airBitCast(self: *NavGen, inst: Air.Inst.Index) !?IdRef {
+    fn airBitCast(self: *NavGen, inst: Air.Inst.Index) !?Id {
         const ty_op = self.air.instructions.items(.data)[@intFromEnum(inst)].ty_op;
         const operand_ty = self.typeOf(ty_op.operand);
         const result_ty = self.typeOfIndex(inst);
@@ -4528,7 +4494,7 @@ const NavGen = struct {
         return try self.bitCast(result_ty, operand_ty, operand_id);
     }
 
-    fn airIntCast(self: *NavGen, inst: Air.Inst.Index) !?IdRef {
+    fn airIntCast(self: *NavGen, inst: Air.Inst.Index) !?Id {
         const ty_op = self.air.instructions.items(.data)[@intFromEnum(inst)].ty_op;
         const src = try self.temporary(ty_op.operand);
         const dst_ty = self.typeOfIndex(inst);
@@ -4554,7 +4520,7 @@ const NavGen = struct {
         return try result.materialize(self);
     }
 
-    fn intFromPtr(self: *NavGen, operand_id: IdRef) !IdRef {
+    fn intFromPtr(self: *NavGen, operand_id: Id) !Id {
         const result_type_id = try self.resolveType(Type.usize, .direct);
         const result_id = self.spv.allocId();
         try self.func.body.emit(self.spv.gpa, .OpConvertPtrToU, .{
@@ -4565,7 +4531,7 @@ const NavGen = struct {
         return result_id;
     }
 
-    fn airFloatFromInt(self: *NavGen, inst: Air.Inst.Index) !?IdRef {
+    fn airFloatFromInt(self: *NavGen, inst: Air.Inst.Index) !?Id {
         const ty_op = self.air.instructions.items(.data)[@intFromEnum(inst)].ty_op;
         const operand_ty = self.typeOf(ty_op.operand);
         const operand_id = try self.resolve(ty_op.operand);
@@ -4573,7 +4539,7 @@ const NavGen = struct {
         return try self.floatFromInt(result_ty, operand_ty, operand_id);
     }
 
-    fn floatFromInt(self: *NavGen, result_ty: Type, operand_ty: Type, operand_id: IdRef) !IdRef {
+    fn floatFromInt(self: *NavGen, result_ty: Type, operand_ty: Type, operand_id: Id) !Id {
         const operand_info = self.arithmeticTypeInfo(operand_ty);
         const result_id = self.spv.allocId();
         const result_ty_id = try self.resolveType(result_ty, .direct);
@@ -4592,14 +4558,14 @@ const NavGen = struct {
         return result_id;
     }
 
-    fn airIntFromFloat(self: *NavGen, inst: Air.Inst.Index) !?IdRef {
+    fn airIntFromFloat(self: *NavGen, inst: Air.Inst.Index) !?Id {
         const ty_op = self.air.instructions.items(.data)[@intFromEnum(inst)].ty_op;
         const operand_id = try self.resolve(ty_op.operand);
         const result_ty = self.typeOfIndex(inst);
         return try self.intFromFloat(result_ty, operand_id);
     }
 
-    fn intFromFloat(self: *NavGen, result_ty: Type, operand_id: IdRef) !IdRef {
+    fn intFromFloat(self: *NavGen, result_ty: Type, operand_id: Id) !Id {
         const result_info = self.arithmeticTypeInfo(result_ty);
         const result_ty_id = try self.resolveType(result_ty, .direct);
         const result_id = self.spv.allocId();
@@ -4618,7 +4584,7 @@ const NavGen = struct {
         return result_id;
     }
 
-    fn airFloatCast(self: *NavGen, inst: Air.Inst.Index) !?IdRef {
+    fn airFloatCast(self: *NavGen, inst: Air.Inst.Index) !?Id {
         const ty_op = self.air.instructions.items(.data)[@intFromEnum(inst)].ty_op;
         const operand = try self.temporary(ty_op.operand);
         const dest_ty = self.typeOfIndex(inst);
@@ -4626,7 +4592,7 @@ const NavGen = struct {
         return try result.materialize(self);
     }
 
-    fn airNot(self: *NavGen, inst: Air.Inst.Index) !?IdRef {
+    fn airNot(self: *NavGen, inst: Air.Inst.Index) !?Id {
         const ty_op = self.air.instructions.items(.data)[@intFromEnum(inst)].ty_op;
         const operand = try self.temporary(ty_op.operand);
         const result_ty = self.typeOfIndex(inst);
@@ -4645,7 +4611,7 @@ const NavGen = struct {
         return try result.materialize(self);
     }
 
-    fn airArrayToSlice(self: *NavGen, inst: Air.Inst.Index) !?IdRef {
+    fn airArrayToSlice(self: *NavGen, inst: Air.Inst.Index) !?Id {
         const pt = self.pt;
         const zcu = pt.zcu;
         const ty_op = self.air.instructions.items(.data)[@intFromEnum(inst)].ty_op;
@@ -4670,7 +4636,7 @@ const NavGen = struct {
         return try self.constructComposite(slice_ty_id, &.{ elem_ptr_id, len_id });
     }
 
-    fn airSlice(self: *NavGen, inst: Air.Inst.Index) !?IdRef {
+    fn airSlice(self: *NavGen, inst: Air.Inst.Index) !?Id {
         const ty_pl = self.air.instructions.items(.data)[@intFromEnum(inst)].ty_pl;
         const bin_op = self.air.extraData(Air.Bin, ty_pl.payload).data;
         const ptr_id = try self.resolve(bin_op.lhs);
@@ -4680,7 +4646,7 @@ const NavGen = struct {
         return try self.constructComposite(slice_ty_id, &.{ ptr_id, len_id });
     }
 
-    fn airAggregateInit(self: *NavGen, inst: Air.Inst.Index) !?IdRef {
+    fn airAggregateInit(self: *NavGen, inst: Air.Inst.Index) !?Id {
         const pt = self.pt;
         const zcu = pt.zcu;
         const ip = &zcu.intern_pool;
@@ -4732,7 +4698,7 @@ const NavGen = struct {
 
                 const types = try self.gpa.alloc(Type, elements.len);
                 defer self.gpa.free(types);
-                const constituents = try self.gpa.alloc(IdRef, elements.len);
+                const constituents = try self.gpa.alloc(Id, elements.len);
                 defer self.gpa.free(constituents);
                 var index: usize = 0;
 
@@ -4771,7 +4737,7 @@ const NavGen = struct {
             },
             .vector => {
                 const n_elems = result_ty.vectorLen(zcu);
-                const elem_ids = try self.gpa.alloc(IdRef, n_elems);
+                const elem_ids = try self.gpa.alloc(Id, n_elems);
                 defer self.gpa.free(elem_ids);
 
                 for (elements, 0..) |element, i| {
@@ -4784,7 +4750,7 @@ const NavGen = struct {
             .array => {
                 const array_info = result_ty.arrayInfo(zcu);
                 const n_elems: usize = @intCast(result_ty.arrayLenIncludingSentinel(zcu));
-                const elem_ids = try self.gpa.alloc(IdRef, n_elems);
+                const elem_ids = try self.gpa.alloc(Id, n_elems);
                 defer self.gpa.free(elem_ids);
 
                 for (elements, 0..) |element, i| {
@@ -4803,7 +4769,7 @@ const NavGen = struct {
         }
     }
 
-    fn sliceOrArrayLen(self: *NavGen, operand_id: IdRef, ty: Type) !IdRef {
+    fn sliceOrArrayLen(self: *NavGen, operand_id: Id, ty: Type) !Id {
         const pt = self.pt;
         const zcu = pt.zcu;
         switch (ty.ptrSize(zcu)) {
@@ -4819,7 +4785,7 @@ const NavGen = struct {
         }
     }
 
-    fn sliceOrArrayPtr(self: *NavGen, operand_id: IdRef, ty: Type) !IdRef {
+    fn sliceOrArrayPtr(self: *NavGen, operand_id: Id, ty: Type) !Id {
         const zcu = self.pt.zcu;
         if (ty.isSlice(zcu)) {
             const ptr_ty = ty.slicePtrFieldType(zcu);
@@ -4849,14 +4815,14 @@ const NavGen = struct {
         return self.fail("TODO implement airMemcpy for spirv", .{});
     }
 
-    fn airSliceField(self: *NavGen, inst: Air.Inst.Index, field: u32) !?IdRef {
+    fn airSliceField(self: *NavGen, inst: Air.Inst.Index, field: u32) !?Id {
         const ty_op = self.air.instructions.items(.data)[@intFromEnum(inst)].ty_op;
         const field_ty = self.typeOfIndex(inst);
         const operand_id = try self.resolve(ty_op.operand);
         return try self.extractField(field_ty, operand_id, field);
     }
 
-    fn airSliceElemPtr(self: *NavGen, inst: Air.Inst.Index) !?IdRef {
+    fn airSliceElemPtr(self: *NavGen, inst: Air.Inst.Index) !?Id {
         const zcu = self.pt.zcu;
         const ty_pl = self.air.instructions.items(.data)[@intFromEnum(inst)].ty_pl;
         const bin_op = self.air.extraData(Air.Bin, ty_pl.payload).data;
@@ -4873,7 +4839,7 @@ const NavGen = struct {
         return try self.ptrAccessChain(ptr_ty_id, slice_ptr, index_id, &.{});
     }
 
-    fn airSliceElemVal(self: *NavGen, inst: Air.Inst.Index) !?IdRef {
+    fn airSliceElemVal(self: *NavGen, inst: Air.Inst.Index) !?Id {
         const zcu = self.pt.zcu;
         const bin_op = self.air.instructions.items(.data)[@intFromEnum(inst)].bin_op;
         const slice_ty = self.typeOf(bin_op.lhs);
@@ -4890,7 +4856,7 @@ const NavGen = struct {
         return try self.load(slice_ty.childType(zcu), elem_ptr, .{ .is_volatile = slice_ty.isVolatilePtr(zcu) });
     }
 
-    fn ptrElemPtr(self: *NavGen, ptr_ty: Type, ptr_id: IdRef, index_id: IdRef) !IdRef {
+    fn ptrElemPtr(self: *NavGen, ptr_ty: Type, ptr_id: Id, index_id: Id) !Id {
         const zcu = self.pt.zcu;
         // Construct new pointer type for the resulting pointer
         const elem_ty = ptr_ty.elemType2(zcu); // use elemType() so that we get T for *[N]T.
@@ -4905,7 +4871,7 @@ const NavGen = struct {
         }
     }
 
-    fn airPtrElemPtr(self: *NavGen, inst: Air.Inst.Index) !?IdRef {
+    fn airPtrElemPtr(self: *NavGen, inst: Air.Inst.Index) !?Id {
         const pt = self.pt;
         const zcu = pt.zcu;
         const ty_pl = self.air.instructions.items(.data)[@intFromEnum(inst)].ty_pl;
@@ -4923,7 +4889,7 @@ const NavGen = struct {
         return try self.ptrElemPtr(src_ptr_ty, ptr_id, index_id);
     }
 
-    fn airArrayElemVal(self: *NavGen, inst: Air.Inst.Index) !?IdRef {
+    fn airArrayElemVal(self: *NavGen, inst: Air.Inst.Index) !?Id {
         const zcu = self.pt.zcu;
         const bin_op = self.air.instructions.items(.data)[@intFromEnum(inst)].bin_op;
         const array_ty = self.typeOf(bin_op.lhs);
@@ -4938,14 +4904,14 @@ const NavGen = struct {
         const is_vector = array_ty.isVector(zcu);
 
         const elem_repr: Repr = if (is_vector) .direct else .indirect;
-        const ptr_array_ty_id = try self.ptrType(array_ty, .Function, .direct);
-        const ptr_elem_ty_id = try self.ptrType(elem_ty, .Function, elem_repr);
+        const ptr_array_ty_id = try self.ptrType(array_ty, .function, .direct);
+        const ptr_elem_ty_id = try self.ptrType(elem_ty, .function, elem_repr);
 
         const tmp_id = self.spv.allocId();
         try self.func.prologue.emit(self.spv.gpa, .OpVariable, .{
             .id_result_type = ptr_array_ty_id,
             .id_result = tmp_id,
-            .storage_class = .Function,
+            .storage_class = .function,
         });
 
         try self.func.body.emit(self.spv.gpa, .OpStore, .{
@@ -4973,7 +4939,7 @@ const NavGen = struct {
         return try self.convertToDirect(elem_ty, result_id);
     }
 
-    fn airPtrElemVal(self: *NavGen, inst: Air.Inst.Index) !?IdRef {
+    fn airPtrElemVal(self: *NavGen, inst: Air.Inst.Index) !?Id {
         const zcu = self.pt.zcu;
         const bin_op = self.air.instructions.items(.data)[@intFromEnum(inst)].bin_op;
         const ptr_ty = self.typeOf(bin_op.lhs);
@@ -5029,7 +4995,7 @@ const NavGen = struct {
         }
     }
 
-    fn airGetUnionTag(self: *NavGen, inst: Air.Inst.Index) !?IdRef {
+    fn airGetUnionTag(self: *NavGen, inst: Air.Inst.Index) !?Id {
         const ty_op = self.air.instructions.items(.data)[@intFromEnum(inst)].ty_op;
         const un_ty = self.typeOf(ty_op.operand);
 
@@ -5048,8 +5014,8 @@ const NavGen = struct {
         self: *NavGen,
         ty: Type,
         active_field: u32,
-        payload: ?IdRef,
-    ) !IdRef {
+        payload: ?Id,
+    ) !Id {
         // To initialize a union, generate a temporary variable with the
         // union type, then get the field pointer and pointer-cast it to the
         // right type to store it. Finally load the entire union.
@@ -5100,20 +5066,20 @@ const NavGen = struct {
             return try self.constInt(tag_ty, tag_int);
         }
 
-        const tmp_id = try self.alloc(ty, .{ .storage_class = .Function });
+        const tmp_id = try self.alloc(ty, .{ .storage_class = .function });
 
         if (layout.tag_size != 0) {
-            const tag_ptr_ty_id = try self.ptrType(tag_ty, .Function, .indirect);
+            const tag_ptr_ty_id = try self.ptrType(tag_ty, .function, .indirect);
             const ptr_id = try self.accessChain(tag_ptr_ty_id, tmp_id, &.{@as(u32, @intCast(layout.tag_index))});
             const tag_id = try self.constInt(tag_ty, tag_int);
             try self.store(tag_ty, ptr_id, tag_id, .{});
         }
 
         if (payload_ty.hasRuntimeBitsIgnoreComptime(zcu)) {
-            const pl_ptr_ty_id = try self.ptrType(layout.payload_ty, .Function, .indirect);
+            const pl_ptr_ty_id = try self.ptrType(layout.payload_ty, .function, .indirect);
             const pl_ptr_id = try self.accessChain(pl_ptr_ty_id, tmp_id, &.{layout.payload_index});
             const active_pl_ptr_id = if (!layout.payload_ty.eql(payload_ty, zcu)) blk: {
-                const active_pl_ptr_ty_id = try self.ptrType(payload_ty, .Function, .indirect);
+                const active_pl_ptr_ty_id = try self.ptrType(payload_ty, .function, .indirect);
                 const active_pl_ptr_id = self.spv.allocId();
                 try self.func.body.emit(self.spv.gpa, .OpBitcast, .{
                     .id_result_type = active_pl_ptr_ty_id,
@@ -5134,7 +5100,7 @@ const NavGen = struct {
         return try self.load(ty, tmp_id, .{});
     }
 
-    fn airUnionInit(self: *NavGen, inst: Air.Inst.Index) !?IdRef {
+    fn airUnionInit(self: *NavGen, inst: Air.Inst.Index) !?Id {
         const pt = self.pt;
         const zcu = pt.zcu;
         const ip = &zcu.intern_pool;
@@ -5151,7 +5117,7 @@ const NavGen = struct {
         return try self.unionInit(ty, extra.field_index, payload);
     }
 
-    fn airStructFieldVal(self: *NavGen, inst: Air.Inst.Index) !?IdRef {
+    fn airStructFieldVal(self: *NavGen, inst: Air.Inst.Index) !?Id {
         const pt = self.pt;
         const zcu = pt.zcu;
         const ty_pl = self.air.instructions.items(.data)[@intFromEnum(inst)].ty_pl;
@@ -5216,13 +5182,13 @@ const NavGen = struct {
                     const layout = self.unionLayout(object_ty);
                     assert(layout.has_payload);
 
-                    const tmp_id = try self.alloc(object_ty, .{ .storage_class = .Function });
+                    const tmp_id = try self.alloc(object_ty, .{ .storage_class = .function });
                     try self.store(object_ty, tmp_id, object_id, .{});
 
-                    const pl_ptr_ty_id = try self.ptrType(layout.payload_ty, .Function, .indirect);
+                    const pl_ptr_ty_id = try self.ptrType(layout.payload_ty, .function, .indirect);
                     const pl_ptr_id = try self.accessChain(pl_ptr_ty_id, tmp_id, &.{layout.payload_index});
 
-                    const active_pl_ptr_ty_id = try self.ptrType(field_ty, .Function, .indirect);
+                    const active_pl_ptr_ty_id = try self.ptrType(field_ty, .function, .indirect);
                     const active_pl_ptr_id = self.spv.allocId();
                     try self.func.body.emit(self.spv.gpa, .OpBitcast, .{
                         .id_result_type = active_pl_ptr_ty_id,
@@ -5236,7 +5202,7 @@ const NavGen = struct {
         }
     }
 
-    fn airFieldParentPtr(self: *NavGen, inst: Air.Inst.Index) !?IdRef {
+    fn airFieldParentPtr(self: *NavGen, inst: Air.Inst.Index) !?Id {
         const pt = self.pt;
         const zcu = pt.zcu;
         const ty_pl = self.air.instructions.items(.data)[@intFromEnum(inst)].ty_pl;
@@ -5273,9 +5239,9 @@ const NavGen = struct {
         self: *NavGen,
         result_ptr_ty: Type,
         object_ptr_ty: Type,
-        object_ptr: IdRef,
+        object_ptr: Id,
         field_index: u32,
-    ) !IdRef {
+    ) !Id {
         const result_ty_id = try self.resolveType(result_ptr_ty, .direct);
 
         const zcu = self.pt.zcu;
@@ -5318,7 +5284,7 @@ const NavGen = struct {
         }
     }
 
-    fn airStructFieldPtrIndex(self: *NavGen, inst: Air.Inst.Index, field_index: u32) !?IdRef {
+    fn airStructFieldPtrIndex(self: *NavGen, inst: Air.Inst.Index, field_index: u32) !?Id {
         const ty_op = self.air.instructions.items(.data)[@intFromEnum(inst)].ty_op;
         const struct_ptr = try self.resolve(ty_op.operand);
         const struct_ptr_ty = self.typeOf(ty_op.operand);
@@ -5327,7 +5293,7 @@ const NavGen = struct {
     }
 
     const AllocOptions = struct {
-        initializer: ?IdRef = null,
+        initializer: ?Id = null,
         /// The final storage class of the pointer. This may be either `.Generic` or `.Function`.
         /// In either case, the local is allocated in the `.Function` storage class, and optionally
         /// cast back to `.Generic`.
@@ -5342,8 +5308,8 @@ const NavGen = struct {
         self: *NavGen,
         ty: Type,
         options: AllocOptions,
-    ) !IdRef {
-        const ptr_fn_ty_id = try self.ptrType(ty, .Function, .indirect);
+    ) !Id {
+        const ptr_fn_ty_id = try self.ptrType(ty, .function, .indirect);
 
         // SPIR-V requires that OpVariable declarations for locals go into the first block, so we are just going to
         // directly generate them into func.prologue instead of the body.
@@ -5351,7 +5317,7 @@ const NavGen = struct {
         try self.func.prologue.emit(self.spv.gpa, .OpVariable, .{
             .id_result_type = ptr_fn_ty_id,
             .id_result = var_id,
-            .storage_class = .Function,
+            .storage_class = .function,
             .initializer = options.initializer,
         });
 
@@ -5361,17 +5327,17 @@ const NavGen = struct {
         }
 
         switch (options.storage_class) {
-            .Generic => {
-                const ptr_gn_ty_id = try self.ptrType(ty, .Generic, .indirect);
+            .generic => {
+                const ptr_gn_ty_id = try self.ptrType(ty, .generic, .indirect);
                 // Convert to a generic pointer
                 return self.castToGeneric(ptr_gn_ty_id, var_id);
             },
-            .Function => return var_id,
+            .function => return var_id,
             else => unreachable,
         }
     }
 
-    fn airAlloc(self: *NavGen, inst: Air.Inst.Index) !?IdRef {
+    fn airAlloc(self: *NavGen, inst: Air.Inst.Index) !?Id {
         const zcu = self.pt.zcu;
         const ptr_ty = self.typeOfIndex(inst);
         const child_ty = ptr_ty.childType(zcu);
@@ -5380,7 +5346,7 @@ const NavGen = struct {
         });
     }
 
-    fn airArg(self: *NavGen) IdRef {
+    fn airArg(self: *NavGen) Id {
         defer self.next_arg_index += 1;
         return self.args.items[self.next_arg_index];
     }
@@ -5389,14 +5355,14 @@ const NavGen = struct {
     /// block to jump to. This function emits instructions, so it should be emitted
     /// inside the merge block of the block.
     /// This function should only be called with structured control flow generation.
-    fn structuredNextBlock(self: *NavGen, incoming: []const ControlFlow.Structured.Block.Incoming) !IdRef {
+    fn structuredNextBlock(self: *NavGen, incoming: []const ControlFlow.Structured.Block.Incoming) !Id {
         assert(self.control_flow == .structured);
 
         const result_id = self.spv.allocId();
         const block_id_ty_id = try self.resolveType(Type.u32, .direct);
         try self.func.body.emitRaw(self.spv.gpa, .OpPhi, @intCast(2 + incoming.len * 2)); // result type + result + variable/parent...
-        self.func.body.writeOperand(spec.IdResultType, block_id_ty_id);
-        self.func.body.writeOperand(spec.IdRef, result_id);
+        self.func.body.writeOperand(spec.Id, block_id_ty_id);
+        self.func.body.writeOperand(spec.Id, result_id);
 
         for (incoming) |incoming_block| {
             self.func.body.writeOperand(spec.PairIdRefIdRef, .{ incoming_block.next_block, incoming_block.src_label });
@@ -5408,7 +5374,7 @@ const NavGen = struct {
     /// Jumps to the block with the target block-id. This function must only be called when
     /// terminating a body, there should be no instructions after it.
     /// This function should only be called with structured control flow generation.
-    fn structuredBreak(self: *NavGen, target_block: IdRef) !void {
+    fn structuredBreak(self: *NavGen, target_block: Id) !void {
         assert(self.control_flow == .structured);
 
         const sblock = self.control_flow.structured.block_stack.getLast();
@@ -5448,12 +5414,12 @@ const NavGen = struct {
             /// Using loops; loops can be early exited by jumping to the merge block at
             /// any time.
             loop: struct {
-                merge_label: IdRef,
-                continue_label: IdRef,
+                merge_label: Id,
+                continue_label: Id,
             },
         },
         body: []const Air.Inst.Index,
-    ) !IdRef {
+    ) !Id {
         assert(self.control_flow == .structured);
 
         var sblock: ControlFlow.Structured.Block = switch (block_merge_type) {
@@ -5533,13 +5499,13 @@ const NavGen = struct {
         }
     }
 
-    fn airBlock(self: *NavGen, inst: Air.Inst.Index) !?IdRef {
+    fn airBlock(self: *NavGen, inst: Air.Inst.Index) !?Id {
         const inst_datas = self.air.instructions.items(.data);
         const extra = self.air.extraData(Air.Block, inst_datas[@intFromEnum(inst)].ty_pl.payload);
         return self.lowerBlock(inst, @ptrCast(self.air.extra.items[extra.end..][0..extra.data.body_len]));
     }
 
-    fn lowerBlock(self: *NavGen, inst: Air.Inst.Index, body: []const Air.Inst.Index) !?IdRef {
+    fn lowerBlock(self: *NavGen, inst: Air.Inst.Index, body: []const Air.Inst.Index) !?Id {
         // In AIR, a block doesn't really define an entry point like a block, but
         // more like a scope that breaks can jump out of and "return" a value from.
         // This cannot be directly modelled in SPIR-V, so in a block instruction,
@@ -5584,8 +5550,8 @@ const NavGen = struct {
                     // result type + result + variable/parent...
                     2 + @as(u16, @intCast(block.incoming_blocks.items.len * 2)),
                 );
-                self.func.body.writeOperand(spec.IdResultType, result_type_id);
-                self.func.body.writeOperand(spec.IdRef, result_id);
+                self.func.body.writeOperand(spec.Id, result_type_id);
+                self.func.body.writeOperand(spec.Id, result_id);
 
                 for (block.incoming_blocks.items) |incoming| {
                     self.func.body.writeOperand(
@@ -5599,7 +5565,7 @@ const NavGen = struct {
         };
 
         const maybe_block_result_var_id = if (have_block_result) blk: {
-            const block_result_var_id = try self.alloc(ty, .{ .storage_class = .Function });
+            const block_result_var_id = try self.alloc(ty, .{ .storage_class = .function });
             try cf.block_results.putNoClobber(self.gpa, inst, block_result_var_id);
             break :blk block_result_var_id;
         } else null;
@@ -5823,7 +5789,7 @@ const NavGen = struct {
         }
     }
 
-    fn airLoad(self: *NavGen, inst: Air.Inst.Index) !?IdRef {
+    fn airLoad(self: *NavGen, inst: Air.Inst.Index) !?Id {
         const zcu = self.pt.zcu;
         const ty_op = self.air.instructions.items(.data)[@intFromEnum(inst)].ty_op;
         const ptr_ty = self.typeOf(ty_op.operand);
@@ -5894,7 +5860,7 @@ const NavGen = struct {
         });
     }
 
-    fn airTry(self: *NavGen, inst: Air.Inst.Index) !?IdRef {
+    fn airTry(self: *NavGen, inst: Air.Inst.Index) !?Id {
         const zcu = self.pt.zcu;
         const pl_op = self.air.instructions.items(.data)[@intFromEnum(inst)].pl_op;
         const err_union_id = try self.resolve(pl_op.operand);
@@ -5964,7 +5930,7 @@ const NavGen = struct {
         return try self.extractField(payload_ty, err_union_id, eu_layout.payloadFieldIndex());
     }
 
-    fn airErrUnionErr(self: *NavGen, inst: Air.Inst.Index) !?IdRef {
+    fn airErrUnionErr(self: *NavGen, inst: Air.Inst.Index) !?Id {
         const zcu = self.pt.zcu;
         const ty_op = self.air.instructions.items(.data)[@intFromEnum(inst)].ty_op;
         const operand_id = try self.resolve(ty_op.operand);
@@ -5987,7 +5953,7 @@ const NavGen = struct {
         return try self.extractField(Type.anyerror, operand_id, eu_layout.errorFieldIndex());
     }
 
-    fn airErrUnionPayload(self: *NavGen, inst: Air.Inst.Index) !?IdRef {
+    fn airErrUnionPayload(self: *NavGen, inst: Air.Inst.Index) !?Id {
         const ty_op = self.air.instructions.items(.data)[@intFromEnum(inst)].ty_op;
         const operand_id = try self.resolve(ty_op.operand);
         const payload_ty = self.typeOfIndex(inst);
@@ -6000,7 +5966,7 @@ const NavGen = struct {
         return try self.extractField(payload_ty, operand_id, eu_layout.payloadFieldIndex());
     }
 
-    fn airWrapErrUnionErr(self: *NavGen, inst: Air.Inst.Index) !?IdRef {
+    fn airWrapErrUnionErr(self: *NavGen, inst: Air.Inst.Index) !?Id {
         const zcu = self.pt.zcu;
         const ty_op = self.air.instructions.items(.data)[@intFromEnum(inst)].ty_op;
         const err_union_ty = self.typeOfIndex(inst);
@@ -6014,7 +5980,7 @@ const NavGen = struct {
 
         const payload_ty_id = try self.resolveType(payload_ty, .indirect);
 
-        var members: [2]IdRef = undefined;
+        var members: [2]Id = undefined;
         members[eu_layout.errorFieldIndex()] = operand_id;
         members[eu_layout.payloadFieldIndex()] = try self.spv.constUndef(payload_ty_id);
 
@@ -6026,7 +5992,7 @@ const NavGen = struct {
         return try self.constructComposite(err_union_ty_id, &members);
     }
 
-    fn airWrapErrUnionPayload(self: *NavGen, inst: Air.Inst.Index) !?IdRef {
+    fn airWrapErrUnionPayload(self: *NavGen, inst: Air.Inst.Index) !?Id {
         const ty_op = self.air.instructions.items(.data)[@intFromEnum(inst)].ty_op;
         const err_union_ty = self.typeOfIndex(inst);
         const operand_id = try self.resolve(ty_op.operand);
@@ -6037,7 +6003,7 @@ const NavGen = struct {
             return try self.constInt(Type.anyerror, 0);
         }
 
-        var members: [2]IdRef = undefined;
+        var members: [2]Id = undefined;
         members[eu_layout.errorFieldIndex()] = try self.constInt(Type.anyerror, 0);
         members[eu_layout.payloadFieldIndex()] = try self.convertToIndirect(payload_ty, operand_id);
 
@@ -6049,7 +6015,7 @@ const NavGen = struct {
         return try self.constructComposite(err_union_ty_id, &members);
     }
 
-    fn airIsNull(self: *NavGen, inst: Air.Inst.Index, is_pointer: bool, pred: enum { is_null, is_non_null }) !?IdRef {
+    fn airIsNull(self: *NavGen, inst: Air.Inst.Index, is_pointer: bool, pred: enum { is_null, is_non_null }) !?Id {
         const pt = self.pt;
         const zcu = pt.zcu;
         const un_op = self.air.instructions.items(.data)[@intFromEnum(inst)].un_op;
@@ -6126,7 +6092,7 @@ const NavGen = struct {
         };
     }
 
-    fn airIsErr(self: *NavGen, inst: Air.Inst.Index, pred: enum { is_err, is_non_err }) !?IdRef {
+    fn airIsErr(self: *NavGen, inst: Air.Inst.Index, pred: enum { is_err, is_non_err }) !?Id {
         const zcu = self.pt.zcu;
         const un_op = self.air.instructions.items(.data)[@intFromEnum(inst)].un_op;
         const operand_id = try self.resolve(un_op);
@@ -6164,7 +6130,7 @@ const NavGen = struct {
         return result_id;
     }
 
-    fn airUnwrapOptional(self: *NavGen, inst: Air.Inst.Index) !?IdRef {
+    fn airUnwrapOptional(self: *NavGen, inst: Air.Inst.Index) !?Id {
         const pt = self.pt;
         const zcu = pt.zcu;
         const ty_op = self.air.instructions.items(.data)[@intFromEnum(inst)].ty_op;
@@ -6181,7 +6147,7 @@ const NavGen = struct {
         return try self.extractField(payload_ty, operand_id, 0);
     }
 
-    fn airUnwrapOptionalPtr(self: *NavGen, inst: Air.Inst.Index) !?IdRef {
+    fn airUnwrapOptionalPtr(self: *NavGen, inst: Air.Inst.Index) !?Id {
         const pt = self.pt;
         const zcu = pt.zcu;
         const ty_op = self.air.instructions.items(.data)[@intFromEnum(inst)].ty_op;
@@ -6206,7 +6172,7 @@ const NavGen = struct {
         return try self.accessChain(result_ty_id, operand_id, &.{0});
     }
 
-    fn airWrapOptional(self: *NavGen, inst: Air.Inst.Index) !?IdRef {
+    fn airWrapOptional(self: *NavGen, inst: Air.Inst.Index) !?Id {
         const pt = self.pt;
         const zcu = pt.zcu;
         const ty_op = self.air.instructions.items(.data)[@intFromEnum(inst)].ty_op;
@@ -6224,7 +6190,7 @@ const NavGen = struct {
         }
 
         const payload_id = try self.convertToIndirect(payload_ty, operand_id);
-        const members = [_]IdRef{ payload_id, try self.constBool(true, .indirect) };
+        const members = [_]Id{ payload_id, try self.constBool(true, .indirect) };
         const optional_ty_id = try self.resolveType(optional_ty, .direct);
         return try self.constructComposite(optional_ty_id, &members);
     }
@@ -6294,8 +6260,8 @@ const NavGen = struct {
 
         // Emit the instruction before generating the blocks.
         try self.func.body.emitRaw(self.spv.gpa, .OpSwitch, 2 + (cond_words + 1) * num_conditions);
-        self.func.body.writeOperand(IdRef, cond_indirect);
-        self.func.body.writeOperand(IdRef, default);
+        self.func.body.writeOperand(Id, cond_indirect);
+        self.func.body.writeOperand(Id, default);
 
         // Emit each of the cases
         {
@@ -6322,7 +6288,7 @@ const NavGen = struct {
                         else => unreachable,
                     };
                     self.func.body.writeOperand(spec.LiteralContextDependentNumber, int_lit);
-                    self.func.body.writeOperand(IdRef, label);
+                    self.func.body.writeOperand(Id, label);
                 }
             }
         }
@@ -6399,7 +6365,7 @@ const NavGen = struct {
         });
     }
 
-    fn airDbgInlineBlock(self: *NavGen, inst: Air.Inst.Index) !?IdRef {
+    fn airDbgInlineBlock(self: *NavGen, inst: Air.Inst.Index) !?Id {
         const zcu = self.pt.zcu;
         const inst_datas = self.air.instructions.items(.data);
         const extra = self.air.extraData(Air.DbgInlineBlock, inst_datas[@intFromEnum(inst)].ty_pl.payload);
@@ -6416,7 +6382,7 @@ const NavGen = struct {
         try self.spv.debugName(target_id, name.toSlice(self.air));
     }
 
-    fn airAssembly(self: *NavGen, inst: Air.Inst.Index) !?IdRef {
+    fn airAssembly(self: *NavGen, inst: Air.Inst.Index) !?Id {
         const zcu = self.pt.zcu;
         const ty_pl = self.air.instructions.items(.data)[@intFromEnum(inst)].ty_pl;
         const extra = self.air.extraData(Air.Asm, ty_pl.payload);
@@ -6586,7 +6552,7 @@ const NavGen = struct {
         return null;
     }
 
-    fn airCall(self: *NavGen, inst: Air.Inst.Index, modifier: std.builtin.CallModifier) !?IdRef {
+    fn airCall(self: *NavGen, inst: Air.Inst.Index, modifier: std.builtin.CallModifier) !?Id {
         _ = modifier;
 
         const pt = self.pt;
@@ -6608,7 +6574,7 @@ const NavGen = struct {
         const callee_id = try self.resolve(pl_op.operand);
 
         comptime assert(zig_call_abi_ver == 3);
-        const params = try self.gpa.alloc(spec.IdRef, args.len);
+        const params = try self.gpa.alloc(spec.Id, args.len);
         defer self.gpa.free(params);
         var n_params: usize = 0;
         for (args) |arg| {
@@ -6637,7 +6603,7 @@ const NavGen = struct {
         return result_id;
     }
 
-    fn builtin3D(self: *NavGen, result_ty: Type, builtin: spec.BuiltIn, dimension: u32, out_of_range_value: anytype) !IdRef {
+    fn builtin3D(self: *NavGen, result_ty: Type, builtin: spec.BuiltIn, dimension: u32, out_of_range_value: anytype) !Id {
         if (dimension >= 3) {
             return try self.constInt(result_ty, out_of_range_value);
         }
@@ -6645,7 +6611,7 @@ const NavGen = struct {
             .len = 3,
             .child = result_ty.toIntern(),
         });
-        const ptr_ty_id = try self.ptrType(vec_ty, .Input, .indirect);
+        const ptr_ty_id = try self.ptrType(vec_ty, .input, .indirect);
         const spv_decl_index = try self.spv.builtin(ptr_ty_id, builtin);
         try self.func.decl_deps.put(self.spv.gpa, spv_decl_index, {});
         const ptr = self.spv.declPtr(spv_decl_index).result_id;
@@ -6653,34 +6619,34 @@ const NavGen = struct {
         return try self.extractVectorComponent(result_ty, vec, dimension);
     }
 
-    fn airWorkItemId(self: *NavGen, inst: Air.Inst.Index) !?IdRef {
+    fn airWorkItemId(self: *NavGen, inst: Air.Inst.Index) !?Id {
         if (self.liveness.isUnused(inst)) return null;
         const pl_op = self.air.instructions.items(.data)[@intFromEnum(inst)].pl_op;
         const dimension = pl_op.payload;
         // TODO: Should we make these builtins return usize?
-        const result_id = try self.builtin3D(Type.u64, .LocalInvocationId, dimension, 0);
+        const result_id = try self.builtin3D(Type.u64, .local_invocation_id, dimension, 0);
         const tmp = Temporary.init(Type.u64, result_id);
         const result = try self.buildConvert(Type.u32, tmp);
         return try result.materialize(self);
     }
 
-    fn airWorkGroupSize(self: *NavGen, inst: Air.Inst.Index) !?IdRef {
+    fn airWorkGroupSize(self: *NavGen, inst: Air.Inst.Index) !?Id {
         if (self.liveness.isUnused(inst)) return null;
         const pl_op = self.air.instructions.items(.data)[@intFromEnum(inst)].pl_op;
         const dimension = pl_op.payload;
         // TODO: Should we make these builtins return usize?
-        const result_id = try self.builtin3D(Type.u64, .WorkgroupSize, dimension, 0);
+        const result_id = try self.builtin3D(Type.u64, .workgroup_size, dimension, 0);
         const tmp = Temporary.init(Type.u64, result_id);
         const result = try self.buildConvert(Type.u32, tmp);
         return try result.materialize(self);
     }
 
-    fn airWorkGroupId(self: *NavGen, inst: Air.Inst.Index) !?IdRef {
+    fn airWorkGroupId(self: *NavGen, inst: Air.Inst.Index) !?Id {
         if (self.liveness.isUnused(inst)) return null;
         const pl_op = self.air.instructions.items(.data)[@intFromEnum(inst)].pl_op;
         const dimension = pl_op.payload;
         // TODO: Should we make these builtins return usize?
-        const result_id = try self.builtin3D(Type.u64, .WorkgroupId, dimension, 0);
+        const result_id = try self.builtin3D(Type.u64, .workgroup_id, dimension, 0);
         const tmp = Temporary.init(Type.u64, result_id);
         const result = try self.buildConvert(Type.u32, tmp);
         return try result.materialize(self);
src/link/SpirV/BinaryModule.zig
@@ -7,7 +7,7 @@ const spec = @import("../../codegen/spirv/spec.zig");
 const Opcode = spec.Opcode;
 const Word = spec.Word;
 const InstructionSet = spec.InstructionSet;
-const ResultId = spec.IdResult;
+const ResultId = spec.Id;
 
 const BinaryModule = @This();
 
@@ -254,8 +254,8 @@ pub const Parser = struct {
             // with ALL operations that return an int or float.
             const spec_operands = inst_spec.operands;
             if (spec_operands.len >= 2 and
-                spec_operands[0].kind == .IdResultType and
-                spec_operands[1].kind == .IdResult)
+                spec_operands[0].kind == .id_result_type and
+                spec_operands[1].kind == .id_result)
             {
                 if (operands.len < 2) return error.InvalidOperands;
                 if (binary.arith_type_width.get(@enumFromInt(operands[0]))) |width| {
@@ -288,8 +288,8 @@ pub const Parser = struct {
         var offset: usize = 0;
         switch (inst.opcode) {
             .OpSpecConstantOp => {
-                assert(operands[0].kind == .IdResultType);
-                assert(operands[1].kind == .IdResult);
+                assert(operands[0].kind == .id_result_type);
+                assert(operands[1].kind == .id_result);
                 offset = try self.parseOperandsResultIds(binary, inst, operands[0..2], offset, offsets);
 
                 if (offset >= inst.operands.len) return error.InvalidPhysicalFormat;
@@ -297,13 +297,13 @@ pub const Parser = struct {
                 const spec_index = self.opcode_table.get(mapSetAndOpcode(.core, spec_opcode)) orelse
                     return error.InvalidPhysicalFormat;
                 const spec_operands = InstructionSet.core.instructions()[spec_index].operands;
-                assert(spec_operands[0].kind == .IdResultType);
-                assert(spec_operands[1].kind == .IdResult);
+                assert(spec_operands[0].kind == .id_result_type);
+                assert(spec_operands[1].kind == .id_result);
                 offset = try self.parseOperandsResultIds(binary, inst, spec_operands[2..], offset + 1, offsets);
             },
             .OpExtInst => {
-                assert(operands[0].kind == .IdResultType);
-                assert(operands[1].kind == .IdResult);
+                assert(operands[0].kind == .id_result_type);
+                assert(operands[1].kind == .id_result);
                 offset = try self.parseOperandsResultIds(binary, inst, operands[0..2], offset, offsets);
 
                 if (offset + 1 >= inst.operands.len) return error.InvalidPhysicalFormat;
@@ -405,8 +405,8 @@ pub const Parser = struct {
                 offset += 1;
             },
             else => switch (kind) {
-                .LiteralInteger, .LiteralFloat => offset += 1,
-                .LiteralString => while (true) {
+                .literal_integer, .literal_float => offset += 1,
+                .literal_string => while (true) {
                     if (offset >= inst.operands.len) return error.InvalidPhysicalFormat;
                     const word = inst.operands[offset];
                     offset += 1;
@@ -419,7 +419,7 @@ pub const Parser = struct {
                         break;
                     }
                 },
-                .LiteralContextDependentNumber => {
+                .literal_context_dependent_number => {
                     assert(inst.opcode == .OpConstant or inst.opcode == .OpSpecConstantOp);
                     const bit_width = binary.arith_type_width.get(@enumFromInt(inst.operands[0])) orelse {
                         log.err("invalid LiteralContextDependentNumber type {}", .{inst.operands[0]});
@@ -431,9 +431,9 @@ pub const Parser = struct {
                         else => unreachable,
                     };
                 },
-                .LiteralExtInstInteger => unreachable,
-                .LiteralSpecConstantOpInteger => unreachable,
-                .PairLiteralIntegerIdRef => { // Switch case
+                .literal_ext_inst_integer => unreachable,
+                .literal_spec_constant_op_integer => unreachable,
+                .pair_literal_integer_id_ref => { // Switch case
                     assert(inst.opcode == .OpSwitch);
                     const bit_width = binary.arith_type_width.get(@enumFromInt(inst.operands[0])) orelse {
                         log.err("invalid OpSwitch type {}", .{inst.operands[0]});
@@ -447,11 +447,11 @@ pub const Parser = struct {
                     try offsets.append(@intCast(offset));
                     offset += 1;
                 },
-                .PairIdRefLiteralInteger => {
+                .pair_id_ref_literal_integer => {
                     try offsets.append(@intCast(offset));
                     offset += 2;
                 },
-                .PairIdRefIdRef => {
+                .pair_id_ref_id_ref => {
                     try offsets.append(@intCast(offset));
                     try offsets.append(@intCast(offset + 1));
                     offset += 2;
src/link/SpirV/deduplicate.zig
@@ -7,7 +7,7 @@ const BinaryModule = @import("BinaryModule.zig");
 const Section = @import("../../codegen/spirv/Section.zig");
 const spec = @import("../../codegen/spirv/spec.zig");
 const Opcode = spec.Opcode;
-const ResultId = spec.IdResult;
+const ResultId = spec.Id;
 const Word = spec.Word;
 
 fn canDeduplicate(opcode: Opcode) bool {
@@ -20,9 +20,9 @@ fn canDeduplicate(opcode: Opcode) bool {
         // Debug decoration-style instructions
         .OpName, .OpMemberName => true,
         else => switch (opcode.class()) {
-            .TypeDeclaration,
-            .ConstantCreation,
-            .Annotation,
+            .type_declaration,
+            .constant_creation,
+            .annotation,
             => true,
             else => false,
         },
@@ -86,8 +86,8 @@ const ModuleInfo = struct {
             if (!canDeduplicate(inst.opcode)) continue;
 
             const result_id_index: u16 = switch (inst.opcode.class()) {
-                .TypeDeclaration, .Annotation, .Debug => 0,
-                .ConstantCreation => 1,
+                .type_declaration, .annotation, .debug => 0,
+                .constant_creation => 1,
                 else => unreachable,
             };
 
@@ -101,13 +101,13 @@ const ModuleInfo = struct {
             };
 
             switch (inst.opcode.class()) {
-                .Annotation, .Debug => {
+                .annotation, .debug => {
                     try decorations.append(arena, .{
                         .target_id = result_id,
                         .entity = entity,
                     });
                 },
-                .TypeDeclaration, .ConstantCreation => {
+                .type_declaration, .constant_creation => {
                     const entry = try entities.getOrPut(result_id);
                     if (entry.found_existing) {
                         log.err("type or constant {f} has duplicate definition", .{result_id});
@@ -469,7 +469,7 @@ pub fn run(parser: *BinaryModule.Parser, binary: *BinaryModule, progress: std.Pr
         const inst_spec = parser.getInstSpec(inst.opcode).?;
 
         const maybe_result_id_offset: ?u16 = for (0..2) |i| {
-            if (inst_spec.operands.len > i and inst_spec.operands[i].kind == .IdResult) {
+            if (inst_spec.operands.len > i and inst_spec.operands[i].kind == .id_result) {
                 break @intCast(i);
             }
         } else null;
@@ -488,7 +488,7 @@ pub fn run(parser: *BinaryModule.Parser, binary: *BinaryModule, progress: std.Pr
         }
 
         switch (inst.opcode.class()) {
-            .Annotation, .Debug => {
+            .annotation, .debug => {
                 // For decoration-style instructions, only emit them
                 // if the target is not removed.
                 const target: ResultId = @enumFromInt(inst.operands[0]);
@@ -515,7 +515,7 @@ pub fn run(parser: *BinaryModule.Parser, binary: *BinaryModule, progress: std.Pr
                 // Debug and Annotation instructions don't need the forward pointer, and it
                 // messes up the logical layout of the module.
                 switch (inst.opcode.class()) {
-                    .TypeDeclaration, .ConstantCreation, .Memory => {},
+                    .type_declaration, .constant_creation, .memory => {},
                     else => continue,
                 }
 
src/link/SpirV/lower_invocation_globals.zig
@@ -6,7 +6,7 @@ const log = std.log.scoped(.spirv_link);
 const BinaryModule = @import("BinaryModule.zig");
 const Section = @import("../../codegen/spirv/Section.zig");
 const spec = @import("../../codegen/spirv/spec.zig");
-const ResultId = spec.IdResult;
+const ResultId = spec.Id;
 const Word = spec.Word;
 
 /// This structure contains all the stuff that we need to parse from the module in
@@ -626,7 +626,7 @@ const ModuleBuilder = struct {
                 try self.section.emit(self.arena, .OpVariable, .{
                     .id_result_type = global_info.ty,
                     .id_result = id,
-                    .storage_class = .Function,
+                    .storage_class = .function,
                     .initializer = null,
                 });
             }
src/link/SpirV/prune_unused.zig
@@ -15,14 +15,14 @@ const BinaryModule = @import("BinaryModule.zig");
 const Section = @import("../../codegen/spirv/Section.zig");
 const spec = @import("../../codegen/spirv/spec.zig");
 const Opcode = spec.Opcode;
-const ResultId = spec.IdResult;
+const ResultId = spec.Id;
 const Word = spec.Word;
 
 /// Return whether a particular opcode's instruction can be pruned.
 /// These are idempotent instructions at globals scope and instructions
 /// within functions that do not have any side effects.
 /// The opcodes that return true here do not necessarily need to
-/// have an .IdResult. If they don't, then they are regarded
+/// have an .Id. If they don't, then they are regarded
 /// as 'decoration'-style instructions that don't keep their
 /// operands alive, but will be emitted if they are.
 fn canPrune(op: Opcode) bool {
@@ -34,12 +34,12 @@ fn canPrune(op: Opcode) bool {
     // instruction has any non-trivial side effects (like OpLoad
     // with the Volatile memory semantics).
     return switch (op.class()) {
-        .TypeDeclaration,
-        .Conversion,
-        .Arithmetic,
-        .RelationalAndLogical,
-        .Bit,
-        .Annotation,
+        .type_declaration,
+        .conversion,
+        .arithmetic,
+        .relational_and_logical,
+        .bit,
+        .annotation,
         => true,
         else => switch (op) {
             .OpFunction,
@@ -111,7 +111,7 @@ const ModuleInfo = struct {
 
             // Result-id can only be the first or second operand
             const maybe_result_id: ?ResultId = for (0..2) |i| {
-                if (inst_spec.operands.len > i and inst_spec.operands[i].kind == .IdResult) {
+                if (inst_spec.operands.len > i and inst_spec.operands[i].kind == .id_result) {
                     break @enumFromInt(inst.operands[i]);
                 }
             } else null;
@@ -305,7 +305,7 @@ pub fn run(parser: *BinaryModule.Parser, binary: *BinaryModule, progress: std.Pr
 
             // Result-id can only be the first or second operand
             const result_id: ResultId = for (0..2) |i| {
-                if (inst_spec.operands.len > i and inst_spec.operands[i].kind == .IdResult) {
+                if (inst_spec.operands.len > i and inst_spec.operands[i].kind == .id_result) {
                     break @enumFromInt(inst.operands[i]);
                 }
             } else {
src/link/SpirV.zig
@@ -42,7 +42,7 @@ const Value = @import("../Value.zig");
 const SpvModule = @import("../codegen/spirv/Module.zig");
 const Section = @import("../codegen/spirv/Section.zig");
 const spec = @import("../codegen/spirv/spec.zig");
-const IdResult = spec.IdResult;
+const Id = spec.Id;
 const Word = spec.Word;
 
 const BinaryModule = @import("SpirV/BinaryModule.zig");
@@ -144,15 +144,15 @@ pub fn updateExports(
         const cc = Type.fromInterned(nav_ty).fnCallingConvention(zcu);
         const exec_model: spec.ExecutionModel = switch (target.os.tag) {
             .vulkan, .opengl => switch (cc) {
-                .spirv_vertex => .Vertex,
-                .spirv_fragment => .Fragment,
-                .spirv_kernel => .GLCompute,
+                .spirv_vertex => .vertex,
+                .spirv_fragment => .fragment,
+                .spirv_kernel => .gl_compute,
                 // TODO: We should integrate with the Linkage capability and export this function
                 .spirv_device => return,
                 else => unreachable,
             },
             .opencl => switch (cc) {
-                .spirv_kernel => .Kernel,
+                .spirv_kernel => .kernel,
                 // TODO: We should integrate with the Linkage capability and export this function
                 .spirv_device => return,
                 else => unreachable,
tools/spirv/grammar.zig
@@ -37,9 +37,11 @@ pub const InstructionPrintingClass = struct {
 pub const Instruction = struct {
     opname: []const u8,
     class: ?[]const u8 = null, // Note: Only available in the core registry.
+    aliases: [][]const u8 = &[_][]const u8{},
     opcode: u32,
     operands: []Operand = &[_]Operand{},
     capabilities: [][]const u8 = &[_][]const u8{},
+    provisional: bool = false,
     // DebugModuleINTEL has this...
     capability: ?[]const u8 = null,
     extensions: [][]const u8 = &[_][]const u8{},
@@ -81,6 +83,7 @@ pub const OperandKind = struct {
 
 pub const Enumerant = struct {
     enumerant: []const u8,
+    aliases: [][]const u8 = &[_][]const u8{},
     value: union(enum) {
         bitflag: []const u8, // Hexadecimal representation of the value
         int: u31,
@@ -100,6 +103,7 @@ pub const Enumerant = struct {
         pub const jsonStringify = @compileError("not supported");
     },
     capabilities: [][]const u8 = &[_][]const u8{},
+    provisional: bool = false,
     /// Valid for .ValueEnum and .BitEnum
     extensions: [][]const u8 = &[_][]const u8{},
     /// `quantifier` will always be `null`.
tools/gen_spirv_spec.zig
@@ -59,26 +59,28 @@ const set_names = std.StaticStringMap([]const u8).initComptime(.{
     .{ "nonsemantic.debugprintf", "NonSemantic.DebugPrintf" },
     .{ "spv-amd-shader-explicit-vertex-parameter", "SPV_AMD_shader_explicit_vertex_parameter" },
     .{ "nonsemantic.debugbreak", "NonSemantic.DebugBreak" },
+    .{ "tosa.001000.1", "SPV_EXT_INST_TYPE_TOSA_001000_1" },
     .{ "zig", "zig" },
 });
 
+var arena = std.heap.ArenaAllocator.init(std.heap.smp_allocator);
+const allocator = arena.allocator();
+
 pub fn main() !void {
-    var arena = std.heap.ArenaAllocator.init(std.heap.page_allocator);
     defer arena.deinit();
-    const a = arena.allocator();
 
-    const args = try std.process.argsAlloc(a);
+    const args = try std.process.argsAlloc(allocator);
     if (args.len != 3) {
         usageAndExit(args[0], 1);
     }
 
-    const json_path = try std.fs.path.join(a, &.{ args[1], "include/spirv/unified1/" });
+    const json_path = try std.fs.path.join(allocator, &.{ args[1], "include/spirv/unified1/" });
     const dir = try std.fs.cwd().openDir(json_path, .{ .iterate = true });
 
-    const core_spec = try readRegistry(CoreRegistry, a, dir, "spirv.core.grammar.json");
+    const core_spec = try readRegistry(CoreRegistry, dir, "spirv.core.grammar.json");
     std.sort.block(Instruction, core_spec.instructions, CmpInst{}, CmpInst.lt);
 
-    var exts = std.ArrayList(Extension).init(a);
+    var exts = std.ArrayList(Extension).init(allocator);
 
     var it = dir.iterate();
     while (try it.next()) |entry| {
@@ -86,18 +88,43 @@ pub fn main() !void {
             continue;
         }
 
-        try readExtRegistry(&exts, a, dir, entry.name);
+        try readExtRegistry(&exts, dir, entry.name);
     }
 
-    try readExtRegistry(&exts, a, std.fs.cwd(), args[2]);
+    try readExtRegistry(&exts, std.fs.cwd(), args[2]);
+
+    const output_buf = try allocator.alloc(u8, 1024 * 1024);
+    var fbs = std.io.fixedBufferStream(output_buf);
+    var adapter = fbs.writer().adaptToNewApi();
+    const w = &adapter.new_interface;
+    try render(w, core_spec, exts.items);
+    var output: [:0]u8 = @ptrCast(fbs.getWritten());
+    output[output.len] = 0;
+
+    var tree = try std.zig.Ast.parse(allocator, output, .zig);
+    var color: std.zig.Color = .on;
 
-    var buffer: [4000]u8 = undefined;
-    var w = std.fs.File.stdout().writerStreaming(&buffer);
-    try render(&w, a, core_spec, exts.items);
-    try w.flush();
+    if (tree.errors.len != 0) {
+        try std.zig.printAstErrorsToStderr(allocator, tree, "", color);
+        return;
+    }
+
+    var zir = try std.zig.AstGen.generate(allocator, tree);
+    if (zir.hasCompileErrors()) {
+        var wip_errors: std.zig.ErrorBundle.Wip = undefined;
+        try wip_errors.init(allocator);
+        defer wip_errors.deinit();
+        try wip_errors.addZirErrorMessages(zir, tree, output, "");
+        var error_bundle = try wip_errors.toOwnedBundle("");
+        defer error_bundle.deinit(allocator);
+        error_bundle.renderToStdErr(color.renderOptions());
+    }
+
+    const formatted_output = try tree.render(allocator);
+    _ = try std.fs.File.stdout().write(formatted_output);
 }
 
-fn readExtRegistry(exts: *std.ArrayList(Extension), a: Allocator, dir: std.fs.Dir, sub_path: []const u8) !void {
+fn readExtRegistry(exts: *std.ArrayList(Extension), dir: std.fs.Dir, sub_path: []const u8) !void {
     const filename = std.fs.path.basename(sub_path);
     if (!std.mem.startsWith(u8, filename, "extinst.")) {
         return;
@@ -105,22 +132,22 @@ fn readExtRegistry(exts: *std.ArrayList(Extension), a: Allocator, dir: std.fs.Di
 
     std.debug.assert(std.mem.endsWith(u8, filename, ".grammar.json"));
     const name = filename["extinst.".len .. filename.len - ".grammar.json".len];
-    const spec = try readRegistry(ExtensionRegistry, a, dir, sub_path);
+    const spec = try readRegistry(ExtensionRegistry, dir, sub_path);
 
     std.sort.block(Instruction, spec.instructions, CmpInst{}, CmpInst.lt);
 
     try exts.append(.{ .name = set_names.get(name).?, .spec = spec });
 }
 
-fn readRegistry(comptime RegistryType: type, a: Allocator, dir: std.fs.Dir, path: []const u8) !RegistryType {
-    const spec = try dir.readFileAlloc(a, path, std.math.maxInt(usize));
+fn readRegistry(comptime RegistryType: type, dir: std.fs.Dir, path: []const u8) !RegistryType {
+    const spec = try dir.readFileAlloc(allocator, path, std.math.maxInt(usize));
     // Required for json parsing.
     @setEvalBranchQuota(10000);
 
-    var scanner = std.json.Scanner.initCompleteInput(a, spec);
+    var scanner = std.json.Scanner.initCompleteInput(allocator, spec);
     var diagnostics = std.json.Diagnostics{};
     scanner.enableDiagnostics(&diagnostics);
-    const parsed = std.json.parseFromTokenSource(RegistryType, a, &scanner, .{}) catch |err| {
+    const parsed = std.json.parseFromTokenSource(RegistryType, allocator, &scanner, .{}) catch |err| {
         std.debug.print("{s}:{}:{}:\n", .{ path, diagnostics.getLine(), diagnostics.getColumn() });
         return err;
     };
@@ -129,11 +156,8 @@ fn readRegistry(comptime RegistryType: type, a: Allocator, dir: std.fs.Dir, path
 
 /// Returns a set with types that require an extra struct for the `Instruction` interface
 /// to the spir-v spec, or whether the original type can be used.
-fn extendedStructs(
-    a: Allocator,
-    kinds: []const OperandKind,
-) !ExtendedStructSet {
-    var map = ExtendedStructSet.init(a);
+fn extendedStructs(kinds: []const OperandKind) !ExtendedStructSet {
+    var map = ExtendedStructSet.init(allocator);
     try map.ensureTotalCapacity(@as(u32, @intCast(kinds.len)));
 
     for (kinds) |kind| {
@@ -167,7 +191,7 @@ fn tagPriorityScore(tag: []const u8) usize {
     }
 }
 
-fn render(writer: *std.io.Writer, a: Allocator, registry: CoreRegistry, extensions: []const Extension) !void {
+fn render(writer: *std.io.Writer, registry: CoreRegistry, extensions: []const Extension) !void {
     try writer.writeAll(
         \\//! This file is auto-generated by tools/gen_spirv_spec.zig.
         \\
@@ -185,22 +209,17 @@ fn render(writer: *std.io.Writer, a: Allocator, registry: CoreRegistry, extensio
         \\};
         \\
         \\pub const Word = u32;
-        \\pub const IdResult = enum(Word) {
+        \\pub const Id = enum(Word) {
         \\    none,
         \\    _,
         \\
-        \\    pub fn format(self: IdResult, writer: *std.io.Writer) std.io.Writer.Error!void {
+        \\    pub fn format(self: Id, writer: *std.io.Writer) std.io.Writer.Error!void {
         \\        switch (self) {
         \\            .none => try writer.writeAll("(none)"),
         \\            else => try writer.print("%{d}", .{@intFromEnum(self)}),
         \\        }
         \\    }
         \\};
-        \\pub const IdResultType = IdResult;
-        \\pub const IdRef = IdResult;
-        \\
-        \\pub const IdMemorySemantics = IdRef;
-        \\pub const IdScope = IdRef;
         \\
         \\pub const LiteralInteger = Word;
         \\pub const LiteralFloat = Word;
@@ -215,9 +234,9 @@ fn render(writer: *std.io.Writer, a: Allocator, registry: CoreRegistry, extensio
         \\};
         \\pub const LiteralExtInstInteger = struct{ inst: Word };
         \\pub const LiteralSpecConstantOpInteger = struct { opcode: Opcode };
-        \\pub const PairLiteralIntegerIdRef = struct { value: LiteralInteger, label: IdRef };
-        \\pub const PairIdRefLiteralInteger = struct { target: IdRef, member: LiteralInteger };
-        \\pub const PairIdRefIdRef = [2]IdRef;
+        \\pub const PairLiteralIntegerIdRef = struct { value: LiteralInteger, label: Id };
+        \\pub const PairIdRefLiteralInteger = struct { target: Id, member: LiteralInteger };
+        \\pub const PairIdRefIdRef = [2]Id;
         \\
         \\pub const Quantifier = enum {
         \\    required,
@@ -255,7 +274,7 @@ fn render(writer: *std.io.Writer, a: Allocator, registry: CoreRegistry, extensio
     );
 
     try writer.print(
-        \\pub const version = Version{{ .major = {}, .minor = {}, .patch = {} }};
+        \\pub const version: Version = .{{ .major = {}, .minor = {}, .patch = {} }};
         \\pub const magic_number: Word = {s};
         \\
         \\
@@ -266,7 +285,7 @@ fn render(writer: *std.io.Writer, a: Allocator, registry: CoreRegistry, extensio
     // Merge the operand kinds from all extensions together.
     // var all_operand_kinds = std.ArrayList(OperandKind).init(a);
     // try all_operand_kinds.appendSlice(registry.operand_kinds);
-    var all_operand_kinds = OperandKindMap.init(a);
+    var all_operand_kinds = OperandKindMap.init(allocator);
     for (registry.operand_kinds) |kind| {
         try all_operand_kinds.putNoClobber(.{ "core", kind.kind }, kind);
     }
@@ -279,35 +298,33 @@ fn render(writer: *std.io.Writer, a: Allocator, registry: CoreRegistry, extensio
         try all_operand_kinds.ensureUnusedCapacity(ext.spec.operand_kinds.len);
         for (ext.spec.operand_kinds) |kind| {
             var new_kind = kind;
-            new_kind.kind = try std.mem.join(a, ".", &.{ ext.name, kind.kind });
+            new_kind.kind = try std.mem.join(allocator, ".", &.{ ext.name, kind.kind });
             try all_operand_kinds.putNoClobber(.{ ext.name, kind.kind }, new_kind);
         }
     }
 
-    const extended_structs = try extendedStructs(a, all_operand_kinds.values());
+    const extended_structs = try extendedStructs(all_operand_kinds.values());
     // Note: extensions don't seem to have class.
-    try renderClass(writer, a, registry.instructions);
+    try renderClass(writer, registry.instructions);
     try renderOperandKind(writer, all_operand_kinds.values());
-    try renderOpcodes(writer, a, registry.instructions, extended_structs);
-    try renderOperandKinds(writer, a, all_operand_kinds.values(), extended_structs);
-    try renderInstructionSet(writer, a, registry, extensions, all_operand_kinds);
+    try renderOpcodes(writer, registry.instructions, extended_structs);
+    try renderOperandKinds(writer, all_operand_kinds.values(), extended_structs);
+    try renderInstructionSet(writer, registry, extensions, all_operand_kinds);
 }
 
 fn renderInstructionSet(
     writer: anytype,
-    a: Allocator,
     core: CoreRegistry,
     extensions: []const Extension,
     all_operand_kinds: OperandKindMap,
 ) !void {
-    _ = a;
     try writer.writeAll(
         \\pub const InstructionSet = enum {
         \\    core,
     );
 
     for (extensions) |ext| {
-        try writer.print("{p},\n", .{std.zig.fmtId(ext.name)});
+        try writer.print("{f},\n", .{formatId(ext.name)});
     }
 
     try writer.writeAll(
@@ -340,14 +357,14 @@ fn renderInstructionsCase(
     // but there aren't so many total aliases and that would add more overhead in total. We will
     // just filter those out when needed.
 
-    try writer.print(".{p_} => &[_]Instruction{{\n", .{std.zig.fmtId(set_name)});
+    try writer.print(".{f} => &.{{\n", .{formatId(set_name)});
 
     for (instructions) |inst| {
         try writer.print(
             \\.{{
             \\    .name = "{s}",
             \\    .opcode = {},
-            \\    .operands = &[_]Operand{{
+            \\    .operands = &.{{
             \\
         , .{ inst.opname, inst.opcode });
 
@@ -362,7 +379,7 @@ fn renderInstructionsCase(
 
             const kind = all_operand_kinds.get(.{ set_name, operand.kind }) orelse
                 all_operand_kinds.get(.{ "core", operand.kind }).?;
-            try writer.print(".{{.kind = .{p_}, .quantifier = .{s}}},\n", .{ std.zig.fmtId(kind.kind), quantifier });
+            try writer.print(".{{.kind = .{f}, .quantifier = .{s}}},\n", .{ formatId(kind.kind), quantifier });
         }
 
         try writer.writeAll(
@@ -378,54 +395,69 @@ fn renderInstructionsCase(
     );
 }
 
-fn renderClass(writer: anytype, a: Allocator, instructions: []const Instruction) !void {
-    var class_map = std.StringArrayHashMap(void).init(a);
+fn renderClass(writer: anytype, instructions: []const Instruction) !void {
+    var class_map = std.StringArrayHashMap(void).init(allocator);
 
     for (instructions) |inst| {
-        if (std.mem.eql(u8, inst.class.?, "@exclude")) {
-            continue;
-        }
+        if (std.mem.eql(u8, inst.class.?, "@exclude")) continue;
         try class_map.put(inst.class.?, {});
     }
 
     try writer.writeAll("pub const Class = enum {\n");
     for (class_map.keys()) |class| {
-        try renderInstructionClass(writer, class);
-        try writer.writeAll(",\n");
+        try writer.print("{f},\n", .{formatId(class)});
     }
     try writer.writeAll("};\n\n");
 }
 
-fn renderInstructionClass(writer: anytype, class: []const u8) !void {
-    // Just assume that these wont clobber zig builtin types.
-    var prev_was_sep = true;
-    for (class) |c| {
-        switch (c) {
-            '-', '_' => prev_was_sep = true,
-            else => if (prev_was_sep) {
-                try writer.writeByte(std.ascii.toUpper(c));
-                prev_was_sep = false;
-            } else {
-                try writer.writeByte(std.ascii.toLower(c));
-            },
+const Formatter = struct {
+    data: []const u8,
+
+    fn format(f: Formatter, writer: *std.io.Writer) std.io.Writer.Error!void {
+        var id_buf: [128]u8 = undefined;
+        var fbs = std.io.fixedBufferStream(&id_buf);
+        const fw = fbs.writer();
+        for (f.data, 0..) |c, i| {
+            switch (c) {
+                '-', '_', '.', '~', ' ' => fw.writeByte('_') catch return error.WriteFailed,
+                'a'...'z', '0'...'9' => fw.writeByte(c) catch return error.WriteFailed,
+                'A'...'Z' => {
+                    if ((i > 0 and std.ascii.isLower(f.data[i - 1])) or
+                        (i > 0 and std.ascii.isUpper(f.data[i - 1]) and
+                            i + 1 < f.data.len and std.ascii.isLower(f.data[i + 1])))
+                    {
+                        _ = fw.write(&.{ '_', std.ascii.toLower(c) }) catch return error.WriteFailed;
+                    } else {
+                        fw.writeByte(std.ascii.toLower(c)) catch return error.WriteFailed;
+                    }
+                },
+                else => unreachable,
+            }
         }
+
+        // make sure that this won't clobber with zig keywords
+        try writer.print("{f}", .{std.zig.fmtId(fbs.getWritten())});
     }
+};
+
+fn formatId(identifier: []const u8) std.fmt.Alt(Formatter, Formatter.format) {
+    return .{ .data = .{ .data = identifier } };
 }
 
 fn renderOperandKind(writer: anytype, operands: []const OperandKind) !void {
     try writer.writeAll(
         \\pub const OperandKind = enum {
-        \\    Opcode,
+        \\    opcode,
         \\
     );
     for (operands) |operand| {
-        try writer.print("{p},\n", .{std.zig.fmtId(operand.kind)});
+        try writer.print("{f},\n", .{formatId(operand.kind)});
     }
     try writer.writeAll(
         \\
         \\pub fn category(self: OperandKind) OperandCategory {
         \\    return switch (self) {
-        \\        .Opcode => .literal,
+        \\        .opcode => .literal,
         \\
     );
     for (operands) |operand| {
@@ -436,26 +468,26 @@ fn renderOperandKind(writer: anytype, operands: []const OperandKind) !void {
             .Literal => "literal",
             .Composite => "composite",
         };
-        try writer.print(".{p_} => .{s},\n", .{ std.zig.fmtId(operand.kind), cat });
+        try writer.print(".{f} => .{s},\n", .{ formatId(operand.kind), cat });
     }
     try writer.writeAll(
         \\    };
         \\}
         \\pub fn enumerants(self: OperandKind) []const Enumerant {
         \\    return switch (self) {
-        \\        .Opcode => unreachable,
+        \\        .opcode => unreachable,
         \\
     );
     for (operands) |operand| {
         switch (operand.category) {
             .BitEnum, .ValueEnum => {},
             else => {
-                try writer.print(".{p_} => unreachable,\n", .{std.zig.fmtId(operand.kind)});
+                try writer.print(".{f} => unreachable,\n", .{formatId(operand.kind)});
                 continue;
             },
         }
 
-        try writer.print(".{p_} => &[_]Enumerant{{", .{std.zig.fmtId(operand.kind)});
+        try writer.print(".{f} => &.{{", .{formatId(operand.kind)});
         for (operand.enumerants.?) |enumerant| {
             if (enumerant.value == .bitflag and std.mem.eql(u8, enumerant.enumerant, "None")) {
                 continue;
@@ -474,32 +506,30 @@ fn renderEnumerant(writer: anytype, enumerant: Enumerant) !void {
         .bitflag => |flag| try writer.writeAll(flag),
         .int => |int| try writer.print("{}", .{int}),
     }
-    try writer.writeAll(", .parameters = &[_]OperandKind{");
+    try writer.writeAll(", .parameters = &.{");
     for (enumerant.parameters, 0..) |param, i| {
         if (i != 0)
             try writer.writeAll(", ");
         // Note, param.quantifier will always be one.
-        try writer.print(".{p_}", .{std.zig.fmtId(param.kind)});
+        try writer.print(".{f}", .{formatId(param.kind)});
     }
     try writer.writeAll("}}");
 }
 
 fn renderOpcodes(
     writer: anytype,
-    a: Allocator,
     instructions: []const Instruction,
     extended_structs: ExtendedStructSet,
 ) !void {
-    var inst_map = std.AutoArrayHashMap(u32, usize).init(a);
+    var inst_map = std.AutoArrayHashMap(u32, usize).init(allocator);
     try inst_map.ensureTotalCapacity(instructions.len);
 
-    var aliases = std.ArrayList(struct { inst: usize, alias: usize }).init(a);
+    var aliases = std.ArrayList(struct { inst: usize, alias: usize }).init(allocator);
     try aliases.ensureTotalCapacity(instructions.len);
 
     for (instructions, 0..) |inst, i| {
-        if (std.mem.eql(u8, inst.class.?, "@exclude")) {
-            continue;
-        }
+        if (std.mem.eql(u8, inst.class.?, "@exclude")) continue;
+
         const result = inst_map.getOrPutAssumeCapacity(inst.opcode);
         if (!result.found_existing) {
             result.value_ptr.* = i;
@@ -525,7 +555,7 @@ fn renderOpcodes(
     try writer.writeAll("pub const Opcode = enum(u16) {\n");
     for (instructions_indices) |i| {
         const inst = instructions[i];
-        try writer.print("{p} = {},\n", .{ std.zig.fmtId(inst.opname), inst.opcode });
+        try writer.print("{f} = {},\n", .{ std.zig.fmtId(inst.opname), inst.opcode });
     }
 
     try writer.writeAll(
@@ -533,9 +563,9 @@ fn renderOpcodes(
     );
 
     for (aliases.items) |alias| {
-        try writer.print("pub const {} = Opcode.{p_};\n", .{
-            std.zig.fmtId(instructions[alias.inst].opname),
-            std.zig.fmtId(instructions[alias.alias].opname),
+        try writer.print("pub const {f} = Opcode.{f};\n", .{
+            formatId(instructions[alias.inst].opname),
+            formatId(instructions[alias.alias].opname),
         });
     }
 
@@ -548,7 +578,7 @@ fn renderOpcodes(
 
     for (instructions_indices) |i| {
         const inst = instructions[i];
-        try renderOperand(writer, .instruction, inst.opname, inst.operands, extended_structs);
+        try renderOperand(writer, .instruction, inst.opname, inst.operands, extended_structs, false);
     }
 
     try writer.writeAll(
@@ -561,9 +591,7 @@ fn renderOpcodes(
 
     for (instructions_indices) |i| {
         const inst = instructions[i];
-        try writer.print(".{p_} => .", .{std.zig.fmtId(inst.opname)});
-        try renderInstructionClass(writer, inst.class.?);
-        try writer.writeAll(",\n");
+        try writer.print(".{f} => .{f},\n", .{ std.zig.fmtId(inst.opname), formatId(inst.class.?) });
     }
 
     try writer.writeAll(
@@ -576,14 +604,13 @@ fn renderOpcodes(
 
 fn renderOperandKinds(
     writer: anytype,
-    a: Allocator,
     kinds: []const OperandKind,
     extended_structs: ExtendedStructSet,
 ) !void {
     for (kinds) |kind| {
         switch (kind.category) {
-            .ValueEnum => try renderValueEnum(writer, a, kind, extended_structs),
-            .BitEnum => try renderBitEnum(writer, a, kind, extended_structs),
+            .ValueEnum => try renderValueEnum(writer, kind, extended_structs),
+            .BitEnum => try renderBitEnum(writer, kind, extended_structs),
             else => {},
         }
     }
@@ -591,20 +618,18 @@ fn renderOperandKinds(
 
 fn renderValueEnum(
     writer: anytype,
-    a: Allocator,
     enumeration: OperandKind,
     extended_structs: ExtendedStructSet,
 ) !void {
     const enumerants = enumeration.enumerants orelse return error.InvalidRegistry;
 
-    var enum_map = std.AutoArrayHashMap(u32, usize).init(a);
+    var enum_map = std.AutoArrayHashMap(u32, usize).init(allocator);
     try enum_map.ensureTotalCapacity(enumerants.len);
 
-    var aliases = std.ArrayList(struct { enumerant: usize, alias: usize }).init(a);
+    var aliases = std.ArrayList(struct { enumerant: usize, alias: usize }).init(allocator);
     try aliases.ensureTotalCapacity(enumerants.len);
 
     for (enumerants, 0..) |enumerant, i| {
-        try writer.context.flush();
         const value: u31 = switch (enumerant.value) {
             .int => |value| value,
             // Some extensions declare ints as string
@@ -632,25 +657,25 @@ fn renderValueEnum(
 
     const enum_indices = enum_map.values();
 
-    try writer.print("pub const {} = enum(u32) {{\n", .{std.zig.fmtId(enumeration.kind)});
+    try writer.print("pub const {f} = enum(u32) {{\n", .{std.zig.fmtId(enumeration.kind)});
 
     for (enum_indices) |i| {
         const enumerant = enumerants[i];
         // if (enumerant.value != .int) return error.InvalidRegistry;
 
         switch (enumerant.value) {
-            .int => |value| try writer.print("{p} = {},\n", .{ std.zig.fmtId(enumerant.enumerant), value }),
-            .bitflag => |value| try writer.print("{p} = {s},\n", .{ std.zig.fmtId(enumerant.enumerant), value }),
+            .int => |value| try writer.print("{f} = {},\n", .{ formatId(enumerant.enumerant), value }),
+            .bitflag => |value| try writer.print("{f} = {s},\n", .{ formatId(enumerant.enumerant), value }),
         }
     }
 
     try writer.writeByte('\n');
 
     for (aliases.items) |alias| {
-        try writer.print("pub const {} = {}.{p_};\n", .{
-            std.zig.fmtId(enumerants[alias.enumerant].enumerant),
+        try writer.print("pub const {f} = {f}.{f};\n", .{
+            formatId(enumerants[alias.enumerant].enumerant),
             std.zig.fmtId(enumeration.kind),
-            std.zig.fmtId(enumerants[alias.alias].enumerant),
+            formatId(enumerants[alias.alias].enumerant),
         });
     }
 
@@ -659,11 +684,11 @@ fn renderValueEnum(
         return;
     }
 
-    try writer.print("\npub const Extended = union({}) {{\n", .{std.zig.fmtId(enumeration.kind)});
+    try writer.print("\npub const Extended = union({f}) {{\n", .{std.zig.fmtId(enumeration.kind)});
 
     for (enum_indices) |i| {
         const enumerant = enumerants[i];
-        try renderOperand(writer, .@"union", enumerant.enumerant, enumerant.parameters, extended_structs);
+        try renderOperand(writer, .@"union", enumerant.enumerant, enumerant.parameters, extended_structs, true);
     }
 
     try writer.writeAll("};\n};\n");
@@ -671,16 +696,15 @@ fn renderValueEnum(
 
 fn renderBitEnum(
     writer: anytype,
-    a: Allocator,
     enumeration: OperandKind,
     extended_structs: ExtendedStructSet,
 ) !void {
-    try writer.print("pub const {} = packed struct {{\n", .{std.zig.fmtId(enumeration.kind)});
+    try writer.print("pub const {f} = packed struct {{\n", .{std.zig.fmtId(enumeration.kind)});
 
     var flags_by_bitpos = [_]?usize{null} ** 32;
     const enumerants = enumeration.enumerants orelse return error.InvalidRegistry;
 
-    var aliases = std.ArrayList(struct { flag: usize, alias: u5 }).init(a);
+    var aliases = std.ArrayList(struct { flag: usize, alias: u5 }).init(allocator);
     try aliases.ensureTotalCapacity(enumerants.len);
 
     for (enumerants, 0..) |enumerant, i| {
@@ -715,7 +739,7 @@ fn renderBitEnum(
 
     for (flags_by_bitpos, 0..) |maybe_flag_index, bitpos| {
         if (maybe_flag_index) |flag_index| {
-            try writer.print("{p_}", .{std.zig.fmtId(enumerants[flag_index].enumerant)});
+            try writer.print("{f}", .{formatId(enumerants[flag_index].enumerant)});
         } else {
             try writer.print("_reserved_bit_{}", .{bitpos});
         }
@@ -726,10 +750,10 @@ fn renderBitEnum(
     try writer.writeByte('\n');
 
     for (aliases.items) |alias| {
-        try writer.print("pub const {}: {} = .{{.{p_} = true}};\n", .{
-            std.zig.fmtId(enumerants[alias.flag].enumerant),
+        try writer.print("pub const {f}: {f} = .{{.{f} = true}};\n", .{
+            formatId(enumerants[alias.flag].enumerant),
             std.zig.fmtId(enumeration.kind),
-            std.zig.fmtId(enumerants[flags_by_bitpos[alias.alias].?].enumerant),
+            formatId(enumerants[flags_by_bitpos[alias.alias].?].enumerant),
         });
     }
 
@@ -747,7 +771,7 @@ fn renderBitEnum(
         };
         const enumerant = enumerants[flag_index];
 
-        try renderOperand(writer, .mask, enumerant.enumerant, enumerant.parameters, extended_structs);
+        try renderOperand(writer, .mask, enumerant.enumerant, enumerant.parameters, extended_structs, true);
     }
 
     try writer.writeAll("};\n};\n");
@@ -763,11 +787,18 @@ fn renderOperand(
     field_name: []const u8,
     parameters: []const Operand,
     extended_structs: ExtendedStructSet,
+    snake_case: bool,
 ) !void {
     if (kind == .instruction) {
         try writer.writeByte('.');
     }
-    try writer.print("{}", .{std.zig.fmtId(field_name)});
+
+    if (snake_case) {
+        try writer.print("{f}", .{formatId(field_name)});
+    } else {
+        try writer.print("{f}", .{std.zig.fmtId(field_name)});
+    }
+
     if (parameters.len == 0) {
         switch (kind) {
             .@"union" => try writer.writeAll(",\n"),
@@ -787,7 +818,7 @@ fn renderOperand(
         try writer.writeByte('?');
     }
 
-    try writer.writeAll("struct{");
+    try writer.writeAll("struct {");
 
     for (parameters, 0..) |param, j| {
         if (j != 0) {
@@ -804,7 +835,11 @@ fn renderOperand(
             }
         }
 
-        try writer.print("{}", .{std.zig.fmtId(param.kind)});
+        if (std.mem.startsWith(u8, param.kind, "Id")) {
+            _ = try writer.write("Id");
+        } else {
+            try writer.print("{f}", .{std.zig.fmtId(param.kind)});
+        }
 
         if (extended_structs.contains(param.kind)) {
             try writer.writeAll(".Extended");
@@ -830,49 +865,24 @@ fn renderOperand(
 fn renderFieldName(writer: anytype, operands: []const Operand, field_index: usize) !void {
     const operand = operands[field_index];
 
-    // Should be enough for all names - adjust as needed.
-    var name_backing_buffer: [64]u8 = undefined;
-    var name_buffer = std.ArrayListUnmanaged(u8).initBuffer(&name_backing_buffer);
-
     derive_from_kind: {
         // Operand names are often in the json encoded as "'Name'" (with two sets of quotes).
         // Additionally, some operands have ~ in them at the end (D~ref~).
         const name = std.mem.trim(u8, operand.name, "'~");
-        if (name.len == 0) {
-            break :derive_from_kind;
-        }
+        if (name.len == 0) break :derive_from_kind;
 
-        // Some names have weird characters in them (like newlines) - skip any such ones.
-        // Use the same loop to transform to snake-case.
         for (name) |c| {
             switch (c) {
-                'a'...'z', '0'...'9' => name_buffer.appendAssumeCapacity(c),
-                'A'...'Z' => name_buffer.appendAssumeCapacity(std.ascii.toLower(c)),
-                ' ', '~' => name_buffer.appendAssumeCapacity('_'),
+                'a'...'z', '0'...'9', 'A'...'Z', ' ', '~' => continue,
                 else => break :derive_from_kind,
             }
         }
 
-        // Assume there are no duplicate 'name' fields.
-        try writer.print("{p_}", .{std.zig.fmtId(name_buffer.items)});
+        try writer.print("{f}", .{formatId(name)});
         return;
     }
 
-    // Translate to snake case.
-    name_buffer.items.len = 0;
-    for (operand.kind, 0..) |c, i| {
-        switch (c) {
-            'a'...'z', '0'...'9' => name_buffer.appendAssumeCapacity(c),
-            'A'...'Z' => if (i > 0 and std.ascii.isLower(operand.kind[i - 1])) {
-                name_buffer.appendSliceAssumeCapacity(&[_]u8{ '_', std.ascii.toLower(c) });
-            } else {
-                name_buffer.appendAssumeCapacity(std.ascii.toLower(c));
-            },
-            else => unreachable, // Assume that the name is valid C-syntax (and contains no underscores).
-        }
-    }
-
-    try writer.print("{p_}", .{std.zig.fmtId(name_buffer.items)});
+    try writer.print("{f}", .{formatId(operand.kind)});
 
     // For fields derived from type name, there could be any amount.
     // Simply check against all other fields, and if another similar one exists, add a number.