| ... | ... | @@ -190,6 +190,13 @@ pub const OperandKind = enum { |
| 190 | 190 | pair_id_ref_literal_integer, |
| 191 | 191 | pair_id_ref_id_ref, |
| 192 | 192 | tensor_operands, |
| 193 | non_semantic_shader_debug_info_100_debug_info_flags, |
| 194 | non_semantic_shader_debug_info_100_build_identifier_flags, |
| 195 | non_semantic_shader_debug_info_100_debug_base_type_attribute_encoding, |
| 196 | non_semantic_shader_debug_info_100_debug_composite_type, |
| 197 | non_semantic_shader_debug_info_100_debug_type_qualifier, |
| 198 | non_semantic_shader_debug_info_100_debug_operation, |
| 199 | non_semantic_shader_debug_info_100_debug_imported_entity, |
| 193 | 200 | |
| 194 | 201 | pub fn category(operand_kind: OperandKind) OperandCategory { |
| 195 | 202 | return switch (operand_kind) { |
| ... | ... | @@ -265,6 +272,13 @@ pub const OperandKind = enum { |
| 265 | 272 | .pair_id_ref_literal_integer => .composite, |
| 266 | 273 | .pair_id_ref_id_ref => .composite, |
| 267 | 274 | .tensor_operands => .bit_enum, |
| 275 | .non_semantic_shader_debug_info_100_debug_info_flags => .bit_enum, |
| 276 | .non_semantic_shader_debug_info_100_build_identifier_flags => .bit_enum, |
| 277 | .non_semantic_shader_debug_info_100_debug_base_type_attribute_encoding => .value_enum, |
| 278 | .non_semantic_shader_debug_info_100_debug_composite_type => .value_enum, |
| 279 | .non_semantic_shader_debug_info_100_debug_type_qualifier => .value_enum, |
| 280 | .non_semantic_shader_debug_info_100_debug_operation => .value_enum, |
| 281 | .non_semantic_shader_debug_info_100_debug_imported_entity => .value_enum, |
| 268 | 282 | }; |
| 269 | 283 | } |
| 270 | 284 | pub fn enumerants(operand_kind: OperandKind) []const Enumerant { |
| ... | ... | @@ -1112,6 +1126,67 @@ pub const OperandKind = enum { |
| 1112 | 1126 | .pair_id_ref_literal_integer => unreachable, |
| 1113 | 1127 | .pair_id_ref_id_ref => unreachable, |
| 1114 | 1128 | .tensor_operands => &.{}, |
| 1129 | .non_semantic_shader_debug_info_100_debug_info_flags => &.{ |
| 1130 | .{ .name = "FlagIsProtected", .value = 0x01, .parameters = &.{} }, |
| 1131 | .{ .name = "FlagIsPrivate", .value = 0x02, .parameters = &.{} }, |
| 1132 | .{ .name = "FlagIsPublic", .value = 0x03, .parameters = &.{} }, |
| 1133 | .{ .name = "FlagIsLocal", .value = 0x04, .parameters = &.{} }, |
| 1134 | .{ .name = "FlagIsDefinition", .value = 0x08, .parameters = &.{} }, |
| 1135 | .{ .name = "FlagFwdDecl", .value = 0x10, .parameters = &.{} }, |
| 1136 | .{ .name = "FlagArtificial", .value = 0x20, .parameters = &.{} }, |
| 1137 | .{ .name = "FlagExplicit", .value = 0x40, .parameters = &.{} }, |
| 1138 | .{ .name = "FlagPrototyped", .value = 0x80, .parameters = &.{} }, |
| 1139 | .{ .name = "FlagObjectPointer", .value = 0x100, .parameters = &.{} }, |
| 1140 | .{ .name = "FlagStaticMember", .value = 0x200, .parameters = &.{} }, |
| 1141 | .{ .name = "FlagIndirectVariable", .value = 0x400, .parameters = &.{} }, |
| 1142 | .{ .name = "FlagLValueReference", .value = 0x800, .parameters = &.{} }, |
| 1143 | .{ .name = "FlagRValueReference", .value = 0x1000, .parameters = &.{} }, |
| 1144 | .{ .name = "FlagIsOptimized", .value = 0x2000, .parameters = &.{} }, |
| 1145 | .{ .name = "FlagIsEnumClass", .value = 0x4000, .parameters = &.{} }, |
| 1146 | .{ .name = "FlagTypePassByValue", .value = 0x8000, .parameters = &.{} }, |
| 1147 | .{ .name = "FlagTypePassByReference", .value = 0x10000, .parameters = &.{} }, |
| 1148 | .{ .name = "FlagUnknownPhysicalLayout", .value = 0x20000, .parameters = &.{} }, |
| 1149 | }, |
| 1150 | .non_semantic_shader_debug_info_100_build_identifier_flags => &.{ |
| 1151 | .{ .name = "IdentifierPossibleDuplicates", .value = 0x01, .parameters = &.{} }, |
| 1152 | }, |
| 1153 | .non_semantic_shader_debug_info_100_debug_base_type_attribute_encoding => &.{ |
| 1154 | .{ .name = "Unspecified", .value = 0, .parameters = &.{} }, |
| 1155 | .{ .name = "Address", .value = 1, .parameters = &.{} }, |
| 1156 | .{ .name = "Boolean", .value = 2, .parameters = &.{} }, |
| 1157 | .{ .name = "Float", .value = 3, .parameters = &.{} }, |
| 1158 | .{ .name = "Signed", .value = 4, .parameters = &.{} }, |
| 1159 | .{ .name = "SignedChar", .value = 5, .parameters = &.{} }, |
| 1160 | .{ .name = "Unsigned", .value = 6, .parameters = &.{} }, |
| 1161 | .{ .name = "UnsignedChar", .value = 7, .parameters = &.{} }, |
| 1162 | }, |
| 1163 | .non_semantic_shader_debug_info_100_debug_composite_type => &.{ |
| 1164 | .{ .name = "Class", .value = 0, .parameters = &.{} }, |
| 1165 | .{ .name = "Structure", .value = 1, .parameters = &.{} }, |
| 1166 | .{ .name = "Union", .value = 2, .parameters = &.{} }, |
| 1167 | }, |
| 1168 | .non_semantic_shader_debug_info_100_debug_type_qualifier => &.{ |
| 1169 | .{ .name = "ConstType", .value = 0, .parameters = &.{} }, |
| 1170 | .{ .name = "VolatileType", .value = 1, .parameters = &.{} }, |
| 1171 | .{ .name = "RestrictType", .value = 2, .parameters = &.{} }, |
| 1172 | .{ .name = "AtomicType", .value = 3, .parameters = &.{} }, |
| 1173 | }, |
| 1174 | .non_semantic_shader_debug_info_100_debug_operation => &.{ |
| 1175 | .{ .name = "Deref", .value = 0, .parameters = &.{} }, |
| 1176 | .{ .name = "Plus", .value = 1, .parameters = &.{} }, |
| 1177 | .{ .name = "Minus", .value = 2, .parameters = &.{} }, |
| 1178 | .{ .name = "PlusUconst", .value = 3, .parameters = &.{.{ .kind = .id_ref }} }, |
| 1179 | .{ .name = "BitPiece", .value = 4, .parameters = &.{ .{ .kind = .id_ref }, .{ .kind = .id_ref } } }, |
| 1180 | .{ .name = "Swap", .value = 5, .parameters = &.{} }, |
| 1181 | .{ .name = "Xderef", .value = 6, .parameters = &.{} }, |
| 1182 | .{ .name = "StackValue", .value = 7, .parameters = &.{} }, |
| 1183 | .{ .name = "Constu", .value = 8, .parameters = &.{.{ .kind = .id_ref }} }, |
| 1184 | .{ .name = "Fragment", .value = 9, .parameters = &.{ .{ .kind = .id_ref }, .{ .kind = .id_ref } } }, |
| 1185 | }, |
| 1186 | .non_semantic_shader_debug_info_100_debug_imported_entity => &.{ |
| 1187 | .{ .name = "ImportedModule", .value = 0, .parameters = &.{} }, |
| 1188 | .{ .name = "ImportedDeclaration", .value = 1, .parameters = &.{} }, |
| 1189 | }, |
| 1115 | 1190 | }; |
| 1116 | 1191 | } |
| 1117 | 1192 | |
| ... | ... | @@ -3256,6 +3331,102 @@ pub const GlslOpcode = enum(u16) { |
| 3256 | 3331 | }; |
| 3257 | 3332 | } |
| 3258 | 3333 | }; |
| 3334 | |
| 3335 | pub const ShaderDebugInfoOpCode = enum(u16) { |
| 3336 | DebugInfoNone = 0, |
| 3337 | DebugCompilationUnit = 1, |
| 3338 | DebugTypeBasic = 2, |
| 3339 | DebugTypePointer = 3, |
| 3340 | DebugTypeQualifier = 4, |
| 3341 | DebugTypeArray = 5, |
| 3342 | DebugTypeVector = 6, |
| 3343 | DebugTypedef = 7, |
| 3344 | DebugTypeFunction = 8, |
| 3345 | DebugTypeEnum = 9, |
| 3346 | DebugTypeComposite = 10, |
| 3347 | DebugTypeMember = 11, |
| 3348 | DebugTypeInheritance = 12, |
| 3349 | DebugTypePtrToMember = 13, |
| 3350 | DebugTypeTemplate = 14, |
| 3351 | DebugTypeTemplateParameter = 15, |
| 3352 | DebugTypeTemplateTemplateParameter = 16, |
| 3353 | DebugTypeTemplateParameterPack = 17, |
| 3354 | DebugGlobalVariable = 18, |
| 3355 | DebugFunctionDeclaration = 19, |
| 3356 | DebugFunction = 20, |
| 3357 | DebugLexicalBlock = 21, |
| 3358 | DebugLexicalBlockDiscriminator = 22, |
| 3359 | DebugScope = 23, |
| 3360 | DebugNoScope = 24, |
| 3361 | DebugInlinedAt = 25, |
| 3362 | DebugLocalVariable = 26, |
| 3363 | DebugInlinedVariable = 27, |
| 3364 | DebugDeclare = 28, |
| 3365 | DebugValue = 29, |
| 3366 | DebugOperation = 30, |
| 3367 | DebugExpression = 31, |
| 3368 | DebugMacroDef = 32, |
| 3369 | DebugMacroUndef = 33, |
| 3370 | DebugImportedEntity = 34, |
| 3371 | DebugSource = 35, |
| 3372 | DebugFunctionDefinition = 101, |
| 3373 | DebugSourceContinued = 102, |
| 3374 | DebugLine = 103, |
| 3375 | DebugNoLine = 104, |
| 3376 | DebugBuildIdentifier = 105, |
| 3377 | DebugStoragePath = 106, |
| 3378 | DebugEntryPoint = 107, |
| 3379 | DebugTypeMatrix = 108, |
| 3380 | |
| 3381 | pub fn operands(opcode: ShaderDebugInfoOpCode) []const Operand { |
| 3382 | return switch (opcode) { |
| 3383 | .DebugInfoNone => &.{}, |
| 3384 | .DebugCompilationUnit => &.{ .{ .kind = .id_ref }, .{ .kind = .id_ref }, .{ .kind = .id_ref }, .{ .kind = .id_ref } }, |
| 3385 | .DebugTypeBasic => &.{ .{ .kind = .id_ref }, .{ .kind = .id_ref }, .{ .kind = .id_ref }, .{ .kind = .id_ref } }, |
| 3386 | .DebugTypePointer => &.{ .{ .kind = .id_ref }, .{ .kind = .id_ref }, .{ .kind = .id_ref } }, |
| 3387 | .DebugTypeQualifier => &.{ .{ .kind = .id_ref }, .{ .kind = .id_ref } }, |
| 3388 | .DebugTypeArray => &.{ .{ .kind = .id_ref }, .{ .kind = .id_ref, .quantifier = .variadic } }, |
| 3389 | .DebugTypeVector => &.{ .{ .kind = .id_ref }, .{ .kind = .id_ref } }, |
| 3390 | .DebugTypedef => &.{ .{ .kind = .id_ref }, .{ .kind = .id_ref }, .{ .kind = .id_ref }, .{ .kind = .id_ref }, .{ .kind = .id_ref }, .{ .kind = .id_ref } }, |
| 3391 | .DebugTypeFunction => &.{ .{ .kind = .id_ref }, .{ .kind = .id_ref }, .{ .kind = .id_ref, .quantifier = .variadic } }, |
| 3392 | .DebugTypeEnum => &.{ .{ .kind = .id_ref }, .{ .kind = .id_ref }, .{ .kind = .id_ref }, .{ .kind = .id_ref }, .{ .kind = .id_ref }, .{ .kind = .id_ref }, .{ .kind = .id_ref }, .{ .kind = .id_ref }, .{ .kind = .pair_id_ref_id_ref, .quantifier = .variadic } }, |
| 3393 | .DebugTypeComposite => &.{ .{ .kind = .id_ref }, .{ .kind = .id_ref }, .{ .kind = .id_ref }, .{ .kind = .id_ref }, .{ .kind = .id_ref }, .{ .kind = .id_ref }, .{ .kind = .id_ref }, .{ .kind = .id_ref }, .{ .kind = .id_ref }, .{ .kind = .id_ref, .quantifier = .variadic } }, |
| 3394 | .DebugTypeMember => &.{ .{ .kind = .id_ref }, .{ .kind = .id_ref }, .{ .kind = .id_ref }, .{ .kind = .id_ref }, .{ .kind = .id_ref }, .{ .kind = .id_ref }, .{ .kind = .id_ref }, .{ .kind = .id_ref }, .{ .kind = .id_ref, .quantifier = .optional } }, |
| 3395 | .DebugTypeInheritance => &.{ .{ .kind = .id_ref }, .{ .kind = .id_ref }, .{ .kind = .id_ref }, .{ .kind = .id_ref } }, |
| 3396 | .DebugTypePtrToMember => &.{ .{ .kind = .id_ref }, .{ .kind = .id_ref } }, |
| 3397 | .DebugTypeTemplate => &.{ .{ .kind = .id_ref }, .{ .kind = .id_ref, .quantifier = .variadic } }, |
| 3398 | .DebugTypeTemplateParameter => &.{ .{ .kind = .id_ref }, .{ .kind = .id_ref }, .{ .kind = .id_ref }, .{ .kind = .id_ref }, .{ .kind = .id_ref }, .{ .kind = .id_ref } }, |
| 3399 | .DebugTypeTemplateTemplateParameter => &.{ .{ .kind = .id_ref }, .{ .kind = .id_ref }, .{ .kind = .id_ref }, .{ .kind = .id_ref }, .{ .kind = .id_ref } }, |
| 3400 | .DebugTypeTemplateParameterPack => &.{ .{ .kind = .id_ref }, .{ .kind = .id_ref }, .{ .kind = .id_ref }, .{ .kind = .id_ref }, .{ .kind = .id_ref, .quantifier = .variadic } }, |
| 3401 | .DebugGlobalVariable => &.{ .{ .kind = .id_ref }, .{ .kind = .id_ref }, .{ .kind = .id_ref }, .{ .kind = .id_ref }, .{ .kind = .id_ref }, .{ .kind = .id_ref }, .{ .kind = .id_ref }, .{ .kind = .id_ref }, .{ .kind = .id_ref }, .{ .kind = .id_ref, .quantifier = .optional } }, |
| 3402 | .DebugFunctionDeclaration => &.{ .{ .kind = .id_ref }, .{ .kind = .id_ref }, .{ .kind = .id_ref }, .{ .kind = .id_ref }, .{ .kind = .id_ref }, .{ .kind = .id_ref }, .{ .kind = .id_ref }, .{ .kind = .id_ref } }, |
| 3403 | .DebugFunction => &.{ .{ .kind = .id_ref }, .{ .kind = .id_ref }, .{ .kind = .id_ref }, .{ .kind = .id_ref }, .{ .kind = .id_ref }, .{ .kind = .id_ref }, .{ .kind = .id_ref }, .{ .kind = .id_ref }, .{ .kind = .id_ref }, .{ .kind = .id_ref, .quantifier = .optional } }, |
| 3404 | .DebugLexicalBlock => &.{ .{ .kind = .id_ref }, .{ .kind = .id_ref }, .{ .kind = .id_ref }, .{ .kind = .id_ref }, .{ .kind = .id_ref, .quantifier = .optional } }, |
| 3405 | .DebugLexicalBlockDiscriminator => &.{ .{ .kind = .id_ref }, .{ .kind = .id_ref }, .{ .kind = .id_ref } }, |
| 3406 | .DebugScope => &.{ .{ .kind = .id_ref }, .{ .kind = .id_ref, .quantifier = .optional } }, |
| 3407 | .DebugNoScope => &.{}, |
| 3408 | .DebugInlinedAt => &.{ .{ .kind = .id_ref }, .{ .kind = .id_ref }, .{ .kind = .id_ref, .quantifier = .optional } }, |
| 3409 | .DebugLocalVariable => &.{ .{ .kind = .id_ref }, .{ .kind = .id_ref }, .{ .kind = .id_ref }, .{ .kind = .id_ref }, .{ .kind = .id_ref }, .{ .kind = .id_ref }, .{ .kind = .id_ref }, .{ .kind = .id_ref, .quantifier = .optional } }, |
| 3410 | .DebugInlinedVariable => &.{ .{ .kind = .id_ref }, .{ .kind = .id_ref } }, |
| 3411 | .DebugDeclare => &.{ .{ .kind = .id_ref }, .{ .kind = .id_ref }, .{ .kind = .id_ref }, .{ .kind = .id_ref, .quantifier = .variadic } }, |
| 3412 | .DebugValue => &.{ .{ .kind = .id_ref }, .{ .kind = .id_ref }, .{ .kind = .id_ref }, .{ .kind = .id_ref, .quantifier = .variadic } }, |
| 3413 | .DebugOperation => &.{ .{ .kind = .id_ref }, .{ .kind = .id_ref, .quantifier = .variadic } }, |
| 3414 | .DebugExpression => &.{.{ .kind = .id_ref, .quantifier = .variadic }}, |
| 3415 | .DebugMacroDef => &.{ .{ .kind = .id_ref }, .{ .kind = .id_ref }, .{ .kind = .id_ref }, .{ .kind = .id_ref, .quantifier = .optional } }, |
| 3416 | .DebugMacroUndef => &.{ .{ .kind = .id_ref }, .{ .kind = .id_ref }, .{ .kind = .id_ref } }, |
| 3417 | .DebugImportedEntity => &.{ .{ .kind = .id_ref }, .{ .kind = .id_ref }, .{ .kind = .id_ref }, .{ .kind = .id_ref }, .{ .kind = .id_ref }, .{ .kind = .id_ref }, .{ .kind = .id_ref } }, |
| 3418 | .DebugSource => &.{ .{ .kind = .id_ref }, .{ .kind = .id_ref, .quantifier = .optional } }, |
| 3419 | .DebugFunctionDefinition => &.{ .{ .kind = .id_ref }, .{ .kind = .id_ref } }, |
| 3420 | .DebugSourceContinued => &.{.{ .kind = .id_ref }}, |
| 3421 | .DebugLine => &.{ .{ .kind = .id_ref }, .{ .kind = .id_ref }, .{ .kind = .id_ref }, .{ .kind = .id_ref }, .{ .kind = .id_ref } }, |
| 3422 | .DebugNoLine => &.{}, |
| 3423 | .DebugBuildIdentifier => &.{ .{ .kind = .id_ref }, .{ .kind = .id_ref } }, |
| 3424 | .DebugStoragePath => &.{.{ .kind = .id_ref }}, |
| 3425 | .DebugEntryPoint => &.{ .{ .kind = .id_ref }, .{ .kind = .id_ref }, .{ .kind = .id_ref }, .{ .kind = .id_ref } }, |
| 3426 | .DebugTypeMatrix => &.{ .{ .kind = .id_ref }, .{ .kind = .id_ref }, .{ .kind = .id_ref } }, |
| 3427 | }; |
| 3428 | } |
| 3429 | }; |
| 3259 | 3430 | pub const ImageOperands = packed struct(Word) { |
| 3260 | 3431 | bias: bool = false, |
| 3261 | 3432 | lod: bool = false, |
| ... | ... | @@ -4460,16 +4631,93 @@ pub const ComponentType = enum(u32) { |
| 4460 | 4631 | pub const TensorOperands = packed struct(Word) { |
| 4461 | 4632 | _reserved_bits_0_to_31: u32 = 0, |
| 4462 | 4633 | }; |
| 4634 | pub const @"NonSemantic.Shader.DebugInfo.100.DebugInfoFlags" = packed struct(Word) { |
| 4635 | flag_is_protected: bool = false, |
| 4636 | flag_is_private: bool = false, |
| 4637 | flag_is_local: bool = false, |
| 4638 | flag_is_definition: bool = false, |
| 4639 | flag_fwd_decl: bool = false, |
| 4640 | flag_artificial: bool = false, |
| 4641 | flag_explicit: bool = false, |
| 4642 | flag_prototyped: bool = false, |
| 4643 | flag_object_pointer: bool = false, |
| 4644 | flag_static_member: bool = false, |
| 4645 | flag_indirect_variable: bool = false, |
| 4646 | flag_l_value_reference: bool = false, |
| 4647 | flag_r_value_reference: bool = false, |
| 4648 | flag_is_optimized: bool = false, |
| 4649 | flag_is_enum_class: bool = false, |
| 4650 | flag_type_pass_by_value: bool = false, |
| 4651 | flag_type_pass_by_reference: bool = false, |
| 4652 | flag_unknown_physical_layout: bool = false, |
| 4653 | _reserved_bits_18_to_31: u14 = 0, |
| 4654 | }; |
| 4655 | pub const @"NonSemantic.Shader.DebugInfo.100.BuildIdentifierFlags" = packed struct(Word) { |
| 4656 | identifier_possible_duplicates: bool = false, |
| 4657 | _reserved_bits_1_to_31: u31 = 0, |
| 4658 | }; |
| 4659 | pub const @"NonSemantic.Shader.DebugInfo.100.DebugBaseTypeAttributeEncoding" = enum(u32) { |
| 4660 | unspecified = 0, |
| 4661 | address = 1, |
| 4662 | boolean = 2, |
| 4663 | float = 3, |
| 4664 | signed = 4, |
| 4665 | signed_char = 5, |
| 4666 | unsigned = 6, |
| 4667 | unsigned_char = 7, |
| 4668 | }; |
| 4669 | pub const @"NonSemantic.Shader.DebugInfo.100.DebugCompositeType" = enum(u32) { |
| 4670 | class = 0, |
| 4671 | structure = 1, |
| 4672 | @"union" = 2, |
| 4673 | }; |
| 4674 | pub const @"NonSemantic.Shader.DebugInfo.100.DebugTypeQualifier" = enum(u32) { |
| 4675 | const_type = 0, |
| 4676 | volatile_type = 1, |
| 4677 | restrict_type = 2, |
| 4678 | atomic_type = 3, |
| 4679 | }; |
| 4680 | pub const @"NonSemantic.Shader.DebugInfo.100.DebugOperation" = enum(u32) { |
| 4681 | deref = 0, |
| 4682 | plus = 1, |
| 4683 | minus = 2, |
| 4684 | plus_uconst = 3, |
| 4685 | bit_piece = 4, |
| 4686 | swap = 5, |
| 4687 | xderef = 6, |
| 4688 | stack_value = 7, |
| 4689 | constu = 8, |
| 4690 | fragment = 9, |
| 4691 | |
| 4692 | pub const Extended = union(@"NonSemantic.Shader.DebugInfo.100.DebugOperation") { |
| 4693 | deref, |
| 4694 | plus, |
| 4695 | minus, |
| 4696 | plus_uconst: struct { id_ref: Id }, |
| 4697 | bit_piece: struct { id_ref_0: Id, id_ref_1: Id }, |
| 4698 | swap, |
| 4699 | xderef, |
| 4700 | stack_value, |
| 4701 | constu: struct { id_ref: Id }, |
| 4702 | fragment: struct { id_ref_0: Id, id_ref_1: Id }, |
| 4703 | }; |
| 4704 | }; |
| 4705 | pub const @"NonSemantic.Shader.DebugInfo.100.DebugImportedEntity" = enum(u32) { |
| 4706 | imported_module = 0, |
| 4707 | imported_declaration = 1, |
| 4708 | }; |
| 4463 | 4709 | pub const InstructionSet = enum { |
| 4464 | 4710 | core, |
| 4465 | 4711 | @"OpenCL.std", |
| 4466 | 4712 | @"GLSL.std.450", |
| 4713 | @"NonSemantic.Shader.DebugInfo.100", |
| 4467 | 4714 | |
| 4468 | 4715 | pub fn operands(inst_set: InstructionSet, opcode: Word) ?[]const Operand { |
| 4469 | 4716 | return switch (inst_set) { |
| 4470 | 4717 | .core => if (std.enums.fromInt(Opcode, opcode)) |op| op.operands() else null, |
| 4471 | 4718 | .@"OpenCL.std" => if (std.enums.fromInt(OpenClOpcode, opcode)) |op| op.operands() else null, |
| 4472 | 4719 | .@"GLSL.std.450" => if (std.enums.fromInt(GlslOpcode, opcode)) |op| op.operands() else null, |
| 4720 | .@"NonSemantic.Shader.DebugInfo.100" => if (std.enums.fromInt(ShaderDebugInfoOpCode, opcode)) |op| op.operands() else null, |
| 4473 | 4721 | }; |
| 4474 | 4722 | } |
| 4475 | 4723 | }; |