spirv/subgroups: Stop incrementing w
[mesa.git] / src / compiler / spirv / spirv.core.grammar.json
index 285f0a2933114ddf347f5333e39b1c79ab387e2c..3fd7da51bbde5eaa061012e9c7d12ec1d293d20d 100644 (file)
@@ -1,6 +1,6 @@
 {
   "copyright" : [
-    "Copyright (c) 2014-2016 The Khronos Group Inc.",
+    "Copyright (c) 2014-2020 The Khronos Group Inc.",
     "",
     "Permission is hereby granted, free of charge, to any person obtaining a copy",
     "of this software and/or associated documentation files (the \"Materials\"),",
   ],
   "magic_number" : "0x07230203",
   "major_version" : 1,
-  "minor_version" : 4,
-  "revision" : 1,
+  "minor_version" : 5,
+  "revision" : 3,
+  "instruction_printing_class" : [
+    {
+      "tag"     : "@exclude"
+    },
+    {
+      "tag"     : "Miscellaneous",
+      "heading" : "Miscellaneous Instructions"
+    },
+    {
+      "tag"     : "Debug",
+      "heading" : "Debug Instructions"
+    },
+    {
+      "tag"     : "Annotation",
+      "heading" : "Annotation Instructions"
+    },
+    {
+      "tag"     : "Extension",
+      "heading" : "Extension Instructions"
+    },
+    {
+      "tag"     : "Mode-Setting",
+      "heading" : "Mode-Setting Instructions"
+    },
+    {
+      "tag"     : "Type-Declaration",
+      "heading" : "Type-Declaration Instructions"
+    },
+    {
+      "tag"     : "Constant-Creation",
+      "heading" : "Constant-Creation Instructions"
+    },
+    {
+      "tag"     : "Memory",
+      "heading" : "Memory Instructions"
+    },
+    {
+      "tag"     : "Function",
+      "heading" : "Function Instructions"
+    },
+    {
+      "tag"     : "Image",
+      "heading" : "Image Instructions"
+    },
+    {
+      "tag"     : "Conversion",
+      "heading" : "Conversion Instructions"
+    },
+    {
+      "tag"     : "Composite",
+      "heading" : "Composite Instructions"
+    },
+    {
+      "tag"     : "Arithmetic",
+      "heading" : "Arithmetic Instructions"
+    },
+    {
+      "tag"     : "Bit",
+      "heading" : "Bit Instructions"
+    },
+    {
+      "tag"     : "Relational_and_Logical",
+      "heading" : "Relational and Logical Instructions"
+    },
+    {
+      "tag"     : "Derivative",
+      "heading" : "Derivative Instructions"
+    },
+    {
+      "tag"     : "Control-Flow",
+      "heading" : "Control-Flow Instructions"
+    },
+    {
+      "tag"     : "Atomic",
+      "heading" : "Atomic Instructions"
+    },
+    {
+      "tag"     : "Primitive",
+      "heading" : "Primitive Instructions"
+    },
+    {
+      "tag"     : "Barrier",
+      "heading" : "Barrier Instructions"
+    },
+    {
+      "tag"     : "Group",
+      "heading" : "Group and Subgroup Instructions"
+    },
+    {
+      "tag"     : "Device-Side_Enqueue",
+      "heading" : "Device-Side Enqueue Instructions"
+    },
+    {
+      "tag"     : "Pipe",
+      "heading" : "Pipe Instructions"
+    },
+    {
+      "tag"     : "Non-Uniform",
+      "heading" : "Non-Uniform Instructions"
+    },
+    {
+      "tag"     : "Reserved",
+      "heading" : "Reserved Instructions"
+    }
+  ],
   "instructions" : [
     {
       "opname" : "OpNop",
+      "class"  : "Miscellaneous",
       "opcode" : 0
     },
     {
       "opname" : "OpUndef",
+      "class"  : "Miscellaneous",
       "opcode" : 1,
       "operands" : [
         { "kind" : "IdResultType" },
     },
     {
       "opname" : "OpSourceContinued",
+      "class"  : "Debug",
       "opcode" : 2,
       "operands" : [
         { "kind" : "LiteralString", "name" : "'Continued Source'" }
     },
     {
       "opname" : "OpSource",
+      "class"  : "Debug",
       "opcode" : 3,
       "operands" : [
         { "kind" : "SourceLanguage" },
     },
     {
       "opname" : "OpSourceExtension",
+      "class"  : "Debug",
       "opcode" : 4,
       "operands" : [
         { "kind" : "LiteralString", "name" : "'Extension'" }
     },
     {
       "opname" : "OpName",
+      "class"  : "Debug",
       "opcode" : 5,
       "operands" : [
         { "kind" : "IdRef",         "name" : "'Target'" },
     },
     {
       "opname" : "OpMemberName",
+      "class"  : "Debug",
       "opcode" : 6,
       "operands" : [
         { "kind" : "IdRef",          "name" : "'Type'" },
     },
     {
       "opname" : "OpString",
+      "class"  : "Debug",
       "opcode" : 7,
       "operands" : [
         { "kind" : "IdResult" },
     },
     {
       "opname" : "OpLine",
+      "class"  : "Debug",
       "opcode" : 8,
       "operands" : [
         { "kind" : "IdRef",          "name" : "'File'" },
     },
     {
       "opname" : "OpExtension",
+      "class"  : "Extension",
       "opcode" : 10,
       "operands" : [
         { "kind" : "LiteralString", "name" : "'Name'" }
     },
     {
       "opname" : "OpExtInstImport",
+      "class"  : "Extension",
       "opcode" : 11,
       "operands" : [
         { "kind" : "IdResult" },
     },
     {
       "opname" : "OpExtInst",
+      "class"  : "Extension",
       "opcode" : 12,
       "operands" : [
         { "kind" : "IdResultType" },
     },
     {
       "opname" : "OpMemoryModel",
+      "class"  : "Mode-Setting",
       "opcode" : 14,
       "operands" : [
         { "kind" : "AddressingModel" },
     },
     {
       "opname" : "OpEntryPoint",
+      "class"  : "Mode-Setting",
       "opcode" : 15,
       "operands" : [
         { "kind" : "ExecutionModel" },
     },
     {
       "opname" : "OpExecutionMode",
+      "class"  : "Mode-Setting",
       "opcode" : 16,
       "operands" : [
         { "kind" : "IdRef",         "name" : "'Entry Point'" },
     },
     {
       "opname" : "OpCapability",
+      "class"  : "Mode-Setting",
       "opcode" : 17,
       "operands" : [
         { "kind" : "Capability", "name" : "'Capability'" }
     },
     {
       "opname" : "OpTypeVoid",
+      "class"  : "Type-Declaration",
       "opcode" : 19,
       "operands" : [
         { "kind" : "IdResult" }
     },
     {
       "opname" : "OpTypeBool",
+      "class"  : "Type-Declaration",
       "opcode" : 20,
       "operands" : [
         { "kind" : "IdResult" }
     },
     {
       "opname" : "OpTypeInt",
+      "class"  : "Type-Declaration",
       "opcode" : 21,
       "operands" : [
         { "kind" : "IdResult" },
     },
     {
       "opname" : "OpTypeFloat",
+      "class"  : "Type-Declaration",
       "opcode" : 22,
       "operands" : [
         { "kind" : "IdResult" },
     },
     {
       "opname" : "OpTypeVector",
+      "class"  : "Type-Declaration",
       "opcode" : 23,
       "operands" : [
         { "kind" : "IdResult" },
     },
     {
       "opname" : "OpTypeMatrix",
+      "class"  : "Type-Declaration",
       "opcode" : 24,
       "operands" : [
         { "kind" : "IdResult" },
     },
     {
       "opname" : "OpTypeImage",
+      "class"  : "Type-Declaration",
       "opcode" : 25,
       "operands" : [
         { "kind" : "IdResult" },
     },
     {
       "opname" : "OpTypeSampler",
+      "class"  : "Type-Declaration",
       "opcode" : 26,
       "operands" : [
         { "kind" : "IdResult" }
     },
     {
       "opname" : "OpTypeSampledImage",
+      "class"  : "Type-Declaration",
       "opcode" : 27,
       "operands" : [
         { "kind" : "IdResult" },
     },
     {
       "opname" : "OpTypeArray",
+      "class"  : "Type-Declaration",
       "opcode" : 28,
       "operands" : [
         { "kind" : "IdResult" },
     },
     {
       "opname" : "OpTypeRuntimeArray",
+      "class"  : "Type-Declaration",
       "opcode" : 29,
       "operands" : [
         { "kind" : "IdResult" },
     },
     {
       "opname" : "OpTypeStruct",
+      "class"  : "Type-Declaration",
       "opcode" : 30,
       "operands" : [
         { "kind" : "IdResult" },
     },
     {
       "opname" : "OpTypeOpaque",
+      "class"  : "Type-Declaration",
       "opcode" : 31,
       "operands" : [
         { "kind" : "IdResult" },
     },
     {
       "opname" : "OpTypePointer",
+      "class"  : "Type-Declaration",
       "opcode" : 32,
       "operands" : [
         { "kind" : "IdResult" },
     },
     {
       "opname" : "OpTypeFunction",
+      "class"  : "Type-Declaration",
       "opcode" : 33,
       "operands" : [
         { "kind" : "IdResult" },
     },
     {
       "opname" : "OpTypeEvent",
+      "class"  : "Type-Declaration",
       "opcode" : 34,
       "operands" : [
         { "kind" : "IdResult" }
     },
     {
       "opname" : "OpTypeDeviceEvent",
+      "class"  : "Type-Declaration",
       "opcode" : 35,
       "operands" : [
         { "kind" : "IdResult" }
     },
     {
       "opname" : "OpTypeReserveId",
+      "class"  : "Type-Declaration",
       "opcode" : 36,
       "operands" : [
         { "kind" : "IdResult" }
     },
     {
       "opname" : "OpTypeQueue",
+      "class"  : "Type-Declaration",
       "opcode" : 37,
       "operands" : [
         { "kind" : "IdResult" }
     },
     {
       "opname" : "OpTypePipe",
+      "class"  : "Type-Declaration",
       "opcode" : 38,
       "operands" : [
         { "kind" : "IdResult" },
     },
     {
       "opname" : "OpTypeForwardPointer",
+      "class"  : "Type-Declaration",
       "opcode" : 39,
       "operands" : [
         { "kind" : "IdRef",        "name" : "'Pointer Type'" },
       ],
       "capabilities" : [
         "Addresses",
-        "PhysicalStorageBufferAddressesEXT"
+        "PhysicalStorageBufferAddresses"
       ]
     },
     {
       "opname" : "OpConstantTrue",
+      "class"  : "Constant-Creation",
       "opcode" : 41,
       "operands" : [
         { "kind" : "IdResultType" },
     },
     {
       "opname" : "OpConstantFalse",
+      "class"  : "Constant-Creation",
       "opcode" : 42,
       "operands" : [
         { "kind" : "IdResultType" },
     },
     {
       "opname" : "OpConstant",
+      "class"  : "Constant-Creation",
       "opcode" : 43,
       "operands" : [
         { "kind" : "IdResultType" },
     },
     {
       "opname" : "OpConstantComposite",
+      "class"  : "Constant-Creation",
       "opcode" : 44,
       "operands" : [
         { "kind" : "IdResultType" },
     },
     {
       "opname" : "OpConstantSampler",
+      "class"  : "Constant-Creation",
       "opcode" : 45,
       "operands" : [
         { "kind" : "IdResultType" },
     },
     {
       "opname" : "OpConstantNull",
+      "class"  : "Constant-Creation",
       "opcode" : 46,
       "operands" : [
         { "kind" : "IdResultType" },
     },
     {
       "opname" : "OpSpecConstantTrue",
+      "class"  : "Constant-Creation",
       "opcode" : 48,
       "operands" : [
         { "kind" : "IdResultType" },
     },
     {
       "opname" : "OpSpecConstantFalse",
+      "class"  : "Constant-Creation",
       "opcode" : 49,
       "operands" : [
         { "kind" : "IdResultType" },
     },
     {
       "opname" : "OpSpecConstant",
+      "class"  : "Constant-Creation",
       "opcode" : 50,
       "operands" : [
         { "kind" : "IdResultType" },
     },
     {
       "opname" : "OpSpecConstantComposite",
+      "class"  : "Constant-Creation",
       "opcode" : 51,
       "operands" : [
         { "kind" : "IdResultType" },
     },
     {
       "opname" : "OpSpecConstantOp",
+      "class"  : "Constant-Creation",
       "opcode" : 52,
       "operands" : [
         { "kind" : "IdResultType" },
     },
     {
       "opname" : "OpFunction",
+      "class"  : "Function",
       "opcode" : 54,
       "operands" : [
         { "kind" : "IdResultType" },
     },
     {
       "opname" : "OpFunctionParameter",
+      "class"  : "Function",
       "opcode" : 55,
       "operands" : [
         { "kind" : "IdResultType" },
     },
     {
       "opname" : "OpFunctionEnd",
+      "class"  : "Function",
       "opcode" : 56
     },
     {
       "opname" : "OpFunctionCall",
+      "class"  : "Function",
       "opcode" : 57,
       "operands" : [
         { "kind" : "IdResultType" },
     },
     {
       "opname" : "OpVariable",
+      "class"  : "Memory",
       "opcode" : 59,
       "operands" : [
         { "kind" : "IdResultType" },
     },
     {
       "opname" : "OpImageTexelPointer",
+      "class"  : "Memory",
       "opcode" : 60,
       "operands" : [
         { "kind" : "IdResultType" },
     },
     {
       "opname" : "OpLoad",
+      "class"  : "Memory",
       "opcode" : 61,
       "operands" : [
         { "kind" : "IdResultType" },
     },
     {
       "opname" : "OpStore",
+      "class"  : "Memory",
       "opcode" : 62,
       "operands" : [
         { "kind" : "IdRef",                            "name" : "'Pointer'" },
     },
     {
       "opname" : "OpCopyMemory",
+      "class"  : "Memory",
       "opcode" : 63,
       "operands" : [
         { "kind" : "IdRef",                            "name" : "'Target'" },
     },
     {
       "opname" : "OpCopyMemorySized",
+      "class"  : "Memory",
       "opcode" : 64,
       "operands" : [
         { "kind" : "IdRef",                            "name" : "'Target'" },
     },
     {
       "opname" : "OpAccessChain",
+      "class"  : "Memory",
       "opcode" : 65,
       "operands" : [
         { "kind" : "IdResultType" },
     },
     {
       "opname" : "OpInBoundsAccessChain",
+      "class"  : "Memory",
       "opcode" : 66,
       "operands" : [
         { "kind" : "IdResultType" },
     },
     {
       "opname" : "OpPtrAccessChain",
+      "class"  : "Memory",
       "opcode" : 67,
       "operands" : [
         { "kind" : "IdResultType" },
         "Addresses",
         "VariablePointers",
         "VariablePointersStorageBuffer",
-        "PhysicalStorageBufferAddressesEXT"
+        "PhysicalStorageBufferAddresses"
       ]
     },
     {
       "opname" : "OpArrayLength",
+      "class"  : "Memory",
       "opcode" : 68,
       "operands" : [
         { "kind" : "IdResultType" },
     },
     {
       "opname" : "OpGenericPtrMemSemantics",
+      "class"  : "Memory",
       "opcode" : 69,
       "operands" : [
         { "kind" : "IdResultType" },
     },
     {
       "opname" : "OpInBoundsPtrAccessChain",
+      "class"  : "Memory",
       "opcode" : 70,
       "operands" : [
         { "kind" : "IdResultType" },
     },
     {
       "opname" : "OpDecorate",
+      "class"  : "Annotation",
       "opcode" : 71,
       "operands" : [
         { "kind" : "IdRef",      "name" : "'Target'" },
     },
     {
       "opname" : "OpMemberDecorate",
+      "class"  : "Annotation",
       "opcode" : 72,
       "operands" : [
         { "kind" : "IdRef",          "name" : "'Structure Type'" },
     },
     {
       "opname" : "OpDecorationGroup",
+      "class"  : "Annotation",
       "opcode" : 73,
       "operands" : [
         { "kind" : "IdResult" }
     },
     {
       "opname" : "OpGroupDecorate",
+      "class"  : "Annotation",
       "opcode" : 74,
       "operands" : [
         { "kind" : "IdRef",                     "name" : "'Decoration Group'" },
     },
     {
       "opname" : "OpGroupMemberDecorate",
+      "class"  : "Annotation",
       "opcode" : 75,
       "operands" : [
         { "kind" : "IdRef",                                       "name" : "'Decoration Group'" },
     },
     {
       "opname" : "OpVectorExtractDynamic",
+      "class"  : "Composite",
       "opcode" : 77,
       "operands" : [
         { "kind" : "IdResultType" },
     },
     {
       "opname" : "OpVectorInsertDynamic",
+      "class"  : "Composite",
       "opcode" : 78,
       "operands" : [
         { "kind" : "IdResultType" },
     },
     {
       "opname" : "OpVectorShuffle",
+      "class"  : "Composite",
       "opcode" : 79,
       "operands" : [
         { "kind" : "IdResultType" },
     },
     {
       "opname" : "OpCompositeConstruct",
+      "class"  : "Composite",
       "opcode" : 80,
       "operands" : [
         { "kind" : "IdResultType" },
     },
     {
       "opname" : "OpCompositeExtract",
+      "class"  : "Composite",
       "opcode" : 81,
       "operands" : [
         { "kind" : "IdResultType" },
     },
     {
       "opname" : "OpCompositeInsert",
+      "class"  : "Composite",
       "opcode" : 82,
       "operands" : [
         { "kind" : "IdResultType" },
     },
     {
       "opname" : "OpCopyObject",
+      "class"  : "Composite",
       "opcode" : 83,
       "operands" : [
         { "kind" : "IdResultType" },
     },
     {
       "opname" : "OpTranspose",
+      "class"  : "Composite",
       "opcode" : 84,
       "operands" : [
         { "kind" : "IdResultType" },
     },
     {
       "opname" : "OpSampledImage",
+      "class"  : "Image",
       "opcode" : 86,
       "operands" : [
         { "kind" : "IdResultType" },
     },
     {
       "opname" : "OpImageSampleImplicitLod",
+      "class"  : "Image",
       "opcode" : 87,
       "operands" : [
         { "kind" : "IdResultType" },
     },
     {
       "opname" : "OpImageSampleExplicitLod",
+      "class"  : "Image",
       "opcode" : 88,
       "operands" : [
         { "kind" : "IdResultType" },
     },
     {
       "opname" : "OpImageSampleDrefImplicitLod",
+      "class"  : "Image",
       "opcode" : 89,
       "operands" : [
         { "kind" : "IdResultType" },
     },
     {
       "opname" : "OpImageSampleDrefExplicitLod",
+      "class"  : "Image",
       "opcode" : 90,
       "operands" : [
         { "kind" : "IdResultType" },
     },
     {
       "opname" : "OpImageSampleProjImplicitLod",
+      "class"  : "Image",
       "opcode" : 91,
       "operands" : [
         { "kind" : "IdResultType" },
     },
     {
       "opname" : "OpImageSampleProjExplicitLod",
+      "class"  : "Image",
       "opcode" : 92,
       "operands" : [
         { "kind" : "IdResultType" },
     },
     {
       "opname" : "OpImageSampleProjDrefImplicitLod",
+      "class"  : "Image",
       "opcode" : 93,
       "operands" : [
         { "kind" : "IdResultType" },
     },
     {
       "opname" : "OpImageSampleProjDrefExplicitLod",
+      "class"  : "Image",
       "opcode" : 94,
       "operands" : [
         { "kind" : "IdResultType" },
     },
     {
       "opname" : "OpImageFetch",
+      "class"  : "Image",
       "opcode" : 95,
       "operands" : [
         { "kind" : "IdResultType" },
     },
     {
       "opname" : "OpImageGather",
+      "class"  : "Image",
       "opcode" : 96,
       "operands" : [
         { "kind" : "IdResultType" },
     },
     {
       "opname" : "OpImageDrefGather",
+      "class"  : "Image",
       "opcode" : 97,
       "operands" : [
         { "kind" : "IdResultType" },
     },
     {
       "opname" : "OpImageRead",
+      "class"  : "Image",
       "opcode" : 98,
       "operands" : [
         { "kind" : "IdResultType" },
     },
     {
       "opname" : "OpImageWrite",
+      "class"  : "Image",
       "opcode" : 99,
       "operands" : [
         { "kind" : "IdRef",                             "name" : "'Image'" },
     },
     {
       "opname" : "OpImage",
+      "class"  : "Image",
       "opcode" : 100,
       "operands" : [
         { "kind" : "IdResultType" },
     },
     {
       "opname" : "OpImageQueryFormat",
+      "class"  : "Image",
       "opcode" : 101,
       "operands" : [
         { "kind" : "IdResultType" },
     },
     {
       "opname" : "OpImageQueryOrder",
+      "class"  : "Image",
       "opcode" : 102,
       "operands" : [
         { "kind" : "IdResultType" },
     },
     {
       "opname" : "OpImageQuerySizeLod",
+      "class"  : "Image",
       "opcode" : 103,
       "operands" : [
         { "kind" : "IdResultType" },
     },
     {
       "opname" : "OpImageQuerySize",
+      "class"  : "Image",
       "opcode" : 104,
       "operands" : [
         { "kind" : "IdResultType" },
     },
     {
       "opname" : "OpImageQueryLod",
+      "class"  : "Image",
       "opcode" : 105,
       "operands" : [
         { "kind" : "IdResultType" },
     },
     {
       "opname" : "OpImageQueryLevels",
+      "class"  : "Image",
       "opcode" : 106,
       "operands" : [
         { "kind" : "IdResultType" },
     },
     {
       "opname" : "OpImageQuerySamples",
+      "class"  : "Image",
       "opcode" : 107,
       "operands" : [
         { "kind" : "IdResultType" },
     },
     {
       "opname" : "OpConvertFToU",
+      "class"  : "Conversion",
       "opcode" : 109,
       "operands" : [
         { "kind" : "IdResultType" },
     },
     {
       "opname" : "OpConvertFToS",
+      "class"  : "Conversion",
       "opcode" : 110,
       "operands" : [
         { "kind" : "IdResultType" },
     },
     {
       "opname" : "OpConvertSToF",
+      "class"  : "Conversion",
       "opcode" : 111,
       "operands" : [
         { "kind" : "IdResultType" },
     },
     {
       "opname" : "OpConvertUToF",
+      "class"  : "Conversion",
       "opcode" : 112,
       "operands" : [
         { "kind" : "IdResultType" },
     },
     {
       "opname" : "OpUConvert",
+      "class"  : "Conversion",
       "opcode" : 113,
       "operands" : [
         { "kind" : "IdResultType" },
     },
     {
       "opname" : "OpSConvert",
+      "class"  : "Conversion",
       "opcode" : 114,
       "operands" : [
         { "kind" : "IdResultType" },
     },
     {
       "opname" : "OpFConvert",
+      "class"  : "Conversion",
       "opcode" : 115,
       "operands" : [
         { "kind" : "IdResultType" },
     },
     {
       "opname" : "OpQuantizeToF16",
+      "class"  : "Conversion",
       "opcode" : 116,
       "operands" : [
         { "kind" : "IdResultType" },
     },
     {
       "opname" : "OpConvertPtrToU",
+      "class"  : "Conversion",
       "opcode" : 117,
       "operands" : [
         { "kind" : "IdResultType" },
       ],
       "capabilities" : [
         "Addresses",
-        "PhysicalStorageBufferAddressesEXT"
+        "PhysicalStorageBufferAddresses"
       ]
     },
     {
       "opname" : "OpSatConvertSToU",
+      "class"  : "Conversion",
       "opcode" : 118,
       "operands" : [
         { "kind" : "IdResultType" },
     },
     {
       "opname" : "OpSatConvertUToS",
+      "class"  : "Conversion",
       "opcode" : 119,
       "operands" : [
         { "kind" : "IdResultType" },
     },
     {
       "opname" : "OpConvertUToPtr",
+      "class"  : "Conversion",
       "opcode" : 120,
       "operands" : [
         { "kind" : "IdResultType" },
       ],
       "capabilities" : [
         "Addresses",
-        "PhysicalStorageBufferAddressesEXT"
+        "PhysicalStorageBufferAddresses"
       ]
     },
     {
       "opname" : "OpPtrCastToGeneric",
+      "class"  : "Conversion",
       "opcode" : 121,
       "operands" : [
         { "kind" : "IdResultType" },
     },
     {
       "opname" : "OpGenericCastToPtr",
+      "class"  : "Conversion",
       "opcode" : 122,
       "operands" : [
         { "kind" : "IdResultType" },
     },
     {
       "opname" : "OpGenericCastToPtrExplicit",
+      "class"  : "Conversion",
       "opcode" : 123,
       "operands" : [
         { "kind" : "IdResultType" },
     },
     {
       "opname" : "OpBitcast",
+      "class"  : "Conversion",
       "opcode" : 124,
       "operands" : [
         { "kind" : "IdResultType" },
     },
     {
       "opname" : "OpSNegate",
+      "class"  : "Arithmetic",
       "opcode" : 126,
       "operands" : [
         { "kind" : "IdResultType" },
     },
     {
       "opname" : "OpFNegate",
+      "class"  : "Arithmetic",
       "opcode" : 127,
       "operands" : [
         { "kind" : "IdResultType" },
     },
     {
       "opname" : "OpIAdd",
+      "class"  : "Arithmetic",
       "opcode" : 128,
       "operands" : [
         { "kind" : "IdResultType" },
     },
     {
       "opname" : "OpFAdd",
+      "class"  : "Arithmetic",
       "opcode" : 129,
       "operands" : [
         { "kind" : "IdResultType" },
     },
     {
       "opname" : "OpISub",
+      "class"  : "Arithmetic",
       "opcode" : 130,
       "operands" : [
         { "kind" : "IdResultType" },
     },
     {
       "opname" : "OpFSub",
+      "class"  : "Arithmetic",
       "opcode" : 131,
       "operands" : [
         { "kind" : "IdResultType" },
     },
     {
       "opname" : "OpIMul",
+      "class"  : "Arithmetic",
       "opcode" : 132,
       "operands" : [
         { "kind" : "IdResultType" },
     },
     {
       "opname" : "OpFMul",
+      "class"  : "Arithmetic",
       "opcode" : 133,
       "operands" : [
         { "kind" : "IdResultType" },
     },
     {
       "opname" : "OpUDiv",
+      "class"  : "Arithmetic",
       "opcode" : 134,
       "operands" : [
         { "kind" : "IdResultType" },
     },
     {
       "opname" : "OpSDiv",
+      "class"  : "Arithmetic",
       "opcode" : 135,
       "operands" : [
         { "kind" : "IdResultType" },
     },
     {
       "opname" : "OpFDiv",
+      "class"  : "Arithmetic",
       "opcode" : 136,
       "operands" : [
         { "kind" : "IdResultType" },
     },
     {
       "opname" : "OpUMod",
+      "class"  : "Arithmetic",
       "opcode" : 137,
       "operands" : [
         { "kind" : "IdResultType" },
     },
     {
       "opname" : "OpSRem",
+      "class"  : "Arithmetic",
       "opcode" : 138,
       "operands" : [
         { "kind" : "IdResultType" },
     },
     {
       "opname" : "OpSMod",
+      "class"  : "Arithmetic",
       "opcode" : 139,
       "operands" : [
         { "kind" : "IdResultType" },
     },
     {
       "opname" : "OpFRem",
+      "class"  : "Arithmetic",
       "opcode" : 140,
       "operands" : [
         { "kind" : "IdResultType" },
     },
     {
       "opname" : "OpFMod",
+      "class"  : "Arithmetic",
       "opcode" : 141,
       "operands" : [
         { "kind" : "IdResultType" },
     },
     {
       "opname" : "OpVectorTimesScalar",
+      "class"  : "Arithmetic",
       "opcode" : 142,
       "operands" : [
         { "kind" : "IdResultType" },
     },
     {
       "opname" : "OpMatrixTimesScalar",
+      "class"  : "Arithmetic",
       "opcode" : 143,
       "operands" : [
         { "kind" : "IdResultType" },
     },
     {
       "opname" : "OpVectorTimesMatrix",
+      "class"  : "Arithmetic",
       "opcode" : 144,
       "operands" : [
         { "kind" : "IdResultType" },
     },
     {
       "opname" : "OpMatrixTimesVector",
+      "class"  : "Arithmetic",
       "opcode" : 145,
       "operands" : [
         { "kind" : "IdResultType" },
     },
     {
       "opname" : "OpMatrixTimesMatrix",
+      "class"  : "Arithmetic",
       "opcode" : 146,
       "operands" : [
         { "kind" : "IdResultType" },
     },
     {
       "opname" : "OpOuterProduct",
+      "class"  : "Arithmetic",
       "opcode" : 147,
       "operands" : [
         { "kind" : "IdResultType" },
     },
     {
       "opname" : "OpDot",
+      "class"  : "Arithmetic",
       "opcode" : 148,
       "operands" : [
         { "kind" : "IdResultType" },
     },
     {
       "opname" : "OpIAddCarry",
+      "class"  : "Arithmetic",
       "opcode" : 149,
       "operands" : [
         { "kind" : "IdResultType" },
     },
     {
       "opname" : "OpISubBorrow",
+      "class"  : "Arithmetic",
       "opcode" : 150,
       "operands" : [
         { "kind" : "IdResultType" },
     },
     {
       "opname" : "OpUMulExtended",
+      "class"  : "Arithmetic",
       "opcode" : 151,
       "operands" : [
         { "kind" : "IdResultType" },
     },
     {
       "opname" : "OpSMulExtended",
+      "class"  : "Arithmetic",
       "opcode" : 152,
       "operands" : [
         { "kind" : "IdResultType" },
     },
     {
       "opname" : "OpAny",
+      "class"  : "Relational_and_Logical",
       "opcode" : 154,
       "operands" : [
         { "kind" : "IdResultType" },
     },
     {
       "opname" : "OpAll",
+      "class"  : "Relational_and_Logical",
       "opcode" : 155,
       "operands" : [
         { "kind" : "IdResultType" },
     },
     {
       "opname" : "OpIsNan",
+      "class"  : "Relational_and_Logical",
       "opcode" : 156,
       "operands" : [
         { "kind" : "IdResultType" },
     },
     {
       "opname" : "OpIsInf",
+      "class"  : "Relational_and_Logical",
       "opcode" : 157,
       "operands" : [
         { "kind" : "IdResultType" },
     },
     {
       "opname" : "OpIsFinite",
+      "class"  : "Relational_and_Logical",
       "opcode" : 158,
       "operands" : [
         { "kind" : "IdResultType" },
     },
     {
       "opname" : "OpIsNormal",
+      "class"  : "Relational_and_Logical",
       "opcode" : 159,
       "operands" : [
         { "kind" : "IdResultType" },
     },
     {
       "opname" : "OpSignBitSet",
+      "class"  : "Relational_and_Logical",
       "opcode" : 160,
       "operands" : [
         { "kind" : "IdResultType" },
     },
     {
       "opname" : "OpLessOrGreater",
+      "class"  : "Relational_and_Logical",
       "opcode" : 161,
       "operands" : [
         { "kind" : "IdResultType" },
     },
     {
       "opname" : "OpOrdered",
+      "class"  : "Relational_and_Logical",
       "opcode" : 162,
       "operands" : [
         { "kind" : "IdResultType" },
     },
     {
       "opname" : "OpUnordered",
+      "class"  : "Relational_and_Logical",
       "opcode" : 163,
       "operands" : [
         { "kind" : "IdResultType" },
     },
     {
       "opname" : "OpLogicalEqual",
+      "class"  : "Relational_and_Logical",
       "opcode" : 164,
       "operands" : [
         { "kind" : "IdResultType" },
     },
     {
       "opname" : "OpLogicalNotEqual",
+      "class"  : "Relational_and_Logical",
       "opcode" : 165,
       "operands" : [
         { "kind" : "IdResultType" },
     },
     {
       "opname" : "OpLogicalOr",
+      "class"  : "Relational_and_Logical",
       "opcode" : 166,
       "operands" : [
         { "kind" : "IdResultType" },
     },
     {
       "opname" : "OpLogicalAnd",
+      "class"  : "Relational_and_Logical",
       "opcode" : 167,
       "operands" : [
         { "kind" : "IdResultType" },
     },
     {
       "opname" : "OpLogicalNot",
+      "class"  : "Relational_and_Logical",
       "opcode" : 168,
       "operands" : [
         { "kind" : "IdResultType" },
     },
     {
       "opname" : "OpSelect",
+      "class"  : "Relational_and_Logical",
       "opcode" : 169,
       "operands" : [
         { "kind" : "IdResultType" },
     },
     {
       "opname" : "OpIEqual",
+      "class"  : "Relational_and_Logical",
       "opcode" : 170,
       "operands" : [
         { "kind" : "IdResultType" },
     },
     {
       "opname" : "OpINotEqual",
+      "class"  : "Relational_and_Logical",
       "opcode" : 171,
       "operands" : [
         { "kind" : "IdResultType" },
     },
     {
       "opname" : "OpUGreaterThan",
+      "class"  : "Relational_and_Logical",
       "opcode" : 172,
       "operands" : [
         { "kind" : "IdResultType" },
     },
     {
       "opname" : "OpSGreaterThan",
+      "class"  : "Relational_and_Logical",
       "opcode" : 173,
       "operands" : [
         { "kind" : "IdResultType" },
     },
     {
       "opname" : "OpUGreaterThanEqual",
+      "class"  : "Relational_and_Logical",
       "opcode" : 174,
       "operands" : [
         { "kind" : "IdResultType" },
     },
     {
       "opname" : "OpSGreaterThanEqual",
+      "class"  : "Relational_and_Logical",
       "opcode" : 175,
       "operands" : [
         { "kind" : "IdResultType" },
     },
     {
       "opname" : "OpULessThan",
+      "class"  : "Relational_and_Logical",
       "opcode" : 176,
       "operands" : [
         { "kind" : "IdResultType" },
     },
     {
       "opname" : "OpSLessThan",
+      "class"  : "Relational_and_Logical",
       "opcode" : 177,
       "operands" : [
         { "kind" : "IdResultType" },
     },
     {
       "opname" : "OpULessThanEqual",
+      "class"  : "Relational_and_Logical",
       "opcode" : 178,
       "operands" : [
         { "kind" : "IdResultType" },
     },
     {
       "opname" : "OpSLessThanEqual",
+      "class"  : "Relational_and_Logical",
       "opcode" : 179,
       "operands" : [
         { "kind" : "IdResultType" },
     },
     {
       "opname" : "OpFOrdEqual",
+      "class"  : "Relational_and_Logical",
       "opcode" : 180,
       "operands" : [
         { "kind" : "IdResultType" },
     },
     {
       "opname" : "OpFUnordEqual",
+      "class"  : "Relational_and_Logical",
       "opcode" : 181,
       "operands" : [
         { "kind" : "IdResultType" },
     },
     {
       "opname" : "OpFOrdNotEqual",
+      "class"  : "Relational_and_Logical",
       "opcode" : 182,
       "operands" : [
         { "kind" : "IdResultType" },
     },
     {
       "opname" : "OpFUnordNotEqual",
+      "class"  : "Relational_and_Logical",
       "opcode" : 183,
       "operands" : [
         { "kind" : "IdResultType" },
     },
     {
       "opname" : "OpFOrdLessThan",
+      "class"  : "Relational_and_Logical",
       "opcode" : 184,
       "operands" : [
         { "kind" : "IdResultType" },
     },
     {
       "opname" : "OpFUnordLessThan",
+      "class"  : "Relational_and_Logical",
       "opcode" : 185,
       "operands" : [
         { "kind" : "IdResultType" },
     },
     {
       "opname" : "OpFOrdGreaterThan",
+      "class"  : "Relational_and_Logical",
       "opcode" : 186,
       "operands" : [
         { "kind" : "IdResultType" },
     },
     {
       "opname" : "OpFUnordGreaterThan",
+      "class"  : "Relational_and_Logical",
       "opcode" : 187,
       "operands" : [
         { "kind" : "IdResultType" },
     },
     {
       "opname" : "OpFOrdLessThanEqual",
+      "class"  : "Relational_and_Logical",
       "opcode" : 188,
       "operands" : [
         { "kind" : "IdResultType" },
     },
     {
       "opname" : "OpFUnordLessThanEqual",
+      "class"  : "Relational_and_Logical",
       "opcode" : 189,
       "operands" : [
         { "kind" : "IdResultType" },
     },
     {
       "opname" : "OpFOrdGreaterThanEqual",
+      "class"  : "Relational_and_Logical",
       "opcode" : 190,
       "operands" : [
         { "kind" : "IdResultType" },
     },
     {
       "opname" : "OpFUnordGreaterThanEqual",
+      "class"  : "Relational_and_Logical",
       "opcode" : 191,
       "operands" : [
         { "kind" : "IdResultType" },
     },
     {
       "opname" : "OpShiftRightLogical",
+      "class"  : "Bit",
       "opcode" : 194,
       "operands" : [
         { "kind" : "IdResultType" },
     },
     {
       "opname" : "OpShiftRightArithmetic",
+      "class"  : "Bit",
       "opcode" : 195,
       "operands" : [
         { "kind" : "IdResultType" },
     },
     {
       "opname" : "OpShiftLeftLogical",
+      "class"  : "Bit",
       "opcode" : 196,
       "operands" : [
         { "kind" : "IdResultType" },
     },
     {
       "opname" : "OpBitwiseOr",
+      "class"  : "Bit",
       "opcode" : 197,
       "operands" : [
         { "kind" : "IdResultType" },
     },
     {
       "opname" : "OpBitwiseXor",
+      "class"  : "Bit",
       "opcode" : 198,
       "operands" : [
         { "kind" : "IdResultType" },
     },
     {
       "opname" : "OpBitwiseAnd",
+      "class"  : "Bit",
       "opcode" : 199,
       "operands" : [
         { "kind" : "IdResultType" },
     },
     {
       "opname" : "OpNot",
+      "class"  : "Bit",
       "opcode" : 200,
       "operands" : [
         { "kind" : "IdResultType" },
     },
     {
       "opname" : "OpBitFieldInsert",
+      "class"  : "Bit",
       "opcode" : 201,
       "operands" : [
         { "kind" : "IdResultType" },
     },
     {
       "opname" : "OpBitFieldSExtract",
+      "class"  : "Bit",
       "opcode" : 202,
       "operands" : [
         { "kind" : "IdResultType" },
     },
     {
       "opname" : "OpBitFieldUExtract",
+      "class"  : "Bit",
       "opcode" : 203,
       "operands" : [
         { "kind" : "IdResultType" },
     },
     {
       "opname" : "OpBitReverse",
+      "class"  : "Bit",
       "opcode" : 204,
       "operands" : [
         { "kind" : "IdResultType" },
     },
     {
       "opname" : "OpBitCount",
+      "class"  : "Bit",
       "opcode" : 205,
       "operands" : [
         { "kind" : "IdResultType" },
     },
     {
       "opname" : "OpDPdx",
+      "class"  : "Derivative",
       "opcode" : 207,
       "operands" : [
         { "kind" : "IdResultType" },
     },
     {
       "opname" : "OpDPdy",
+      "class"  : "Derivative",
       "opcode" : 208,
       "operands" : [
         { "kind" : "IdResultType" },
     },
     {
       "opname" : "OpFwidth",
+      "class"  : "Derivative",
       "opcode" : 209,
       "operands" : [
         { "kind" : "IdResultType" },
     },
     {
       "opname" : "OpDPdxFine",
+      "class"  : "Derivative",
       "opcode" : 210,
       "operands" : [
         { "kind" : "IdResultType" },
     },
     {
       "opname" : "OpDPdyFine",
+      "class"  : "Derivative",
       "opcode" : 211,
       "operands" : [
         { "kind" : "IdResultType" },
     },
     {
       "opname" : "OpFwidthFine",
+      "class"  : "Derivative",
       "opcode" : 212,
       "operands" : [
         { "kind" : "IdResultType" },
     },
     {
       "opname" : "OpDPdxCoarse",
+      "class"  : "Derivative",
       "opcode" : 213,
       "operands" : [
         { "kind" : "IdResultType" },
     },
     {
       "opname" : "OpDPdyCoarse",
+      "class"  : "Derivative",
       "opcode" : 214,
       "operands" : [
         { "kind" : "IdResultType" },
     },
     {
       "opname" : "OpFwidthCoarse",
+      "class"  : "Derivative",
       "opcode" : 215,
       "operands" : [
         { "kind" : "IdResultType" },
     },
     {
       "opname" : "OpEmitVertex",
+      "class"  : "Primitive",
       "opcode" : 218,
       "capabilities" : [ "Geometry" ]
     },
     {
       "opname" : "OpEndPrimitive",
+      "class"  : "Primitive",
       "opcode" : 219,
       "capabilities" : [ "Geometry" ]
     },
     {
       "opname" : "OpEmitStreamVertex",
+      "class"  : "Primitive",
       "opcode" : 220,
       "operands" : [
         { "kind" : "IdRef", "name" : "'Stream'" }
     },
     {
       "opname" : "OpEndStreamPrimitive",
+      "class"  : "Primitive",
       "opcode" : 221,
       "operands" : [
         { "kind" : "IdRef", "name" : "'Stream'" }
     },
     {
       "opname" : "OpControlBarrier",
+      "class"  : "Barrier",
       "opcode" : 224,
       "operands" : [
         { "kind" : "IdScope",           "name" : "'Execution'" },
     },
     {
       "opname" : "OpMemoryBarrier",
+      "class"  : "Barrier",
       "opcode" : 225,
       "operands" : [
         { "kind" : "IdScope",           "name" : "'Memory'" },
     },
     {
       "opname" : "OpAtomicLoad",
+      "class"  : "Atomic",
       "opcode" : 227,
       "operands" : [
         { "kind" : "IdResultType" },
     },
     {
       "opname" : "OpAtomicStore",
+      "class"  : "Atomic",
       "opcode" : 228,
       "operands" : [
         { "kind" : "IdRef",             "name" : "'Pointer'" },
     },
     {
       "opname" : "OpAtomicExchange",
+      "class"  : "Atomic",
       "opcode" : 229,
       "operands" : [
         { "kind" : "IdResultType" },
     },
     {
       "opname" : "OpAtomicCompareExchange",
+      "class"  : "Atomic",
       "opcode" : 230,
       "operands" : [
         { "kind" : "IdResultType" },
     },
     {
       "opname" : "OpAtomicCompareExchangeWeak",
+      "class"  : "Atomic",
       "opcode" : 231,
       "operands" : [
         { "kind" : "IdResultType" },
     },
     {
       "opname" : "OpAtomicIIncrement",
+      "class"  : "Atomic",
       "opcode" : 232,
       "operands" : [
         { "kind" : "IdResultType" },
     },
     {
       "opname" : "OpAtomicIDecrement",
+      "class"  : "Atomic",
       "opcode" : 233,
       "operands" : [
         { "kind" : "IdResultType" },
     },
     {
       "opname" : "OpAtomicIAdd",
+      "class"  : "Atomic",
       "opcode" : 234,
       "operands" : [
         { "kind" : "IdResultType" },
     },
     {
       "opname" : "OpAtomicISub",
+      "class"  : "Atomic",
       "opcode" : 235,
       "operands" : [
         { "kind" : "IdResultType" },
     },
     {
       "opname" : "OpAtomicSMin",
+      "class"  : "Atomic",
       "opcode" : 236,
       "operands" : [
         { "kind" : "IdResultType" },
     },
     {
       "opname" : "OpAtomicUMin",
+      "class"  : "Atomic",
       "opcode" : 237,
       "operands" : [
         { "kind" : "IdResultType" },
     },
     {
       "opname" : "OpAtomicSMax",
+      "class"  : "Atomic",
       "opcode" : 238,
       "operands" : [
         { "kind" : "IdResultType" },
     },
     {
       "opname" : "OpAtomicUMax",
+      "class"  : "Atomic",
       "opcode" : 239,
       "operands" : [
         { "kind" : "IdResultType" },
     },
     {
       "opname" : "OpAtomicAnd",
+      "class"  : "Atomic",
       "opcode" : 240,
       "operands" : [
         { "kind" : "IdResultType" },
     },
     {
       "opname" : "OpAtomicOr",
+      "class"  : "Atomic",
       "opcode" : 241,
       "operands" : [
         { "kind" : "IdResultType" },
     },
     {
       "opname" : "OpAtomicXor",
+      "class"  : "Atomic",
       "opcode" : 242,
       "operands" : [
         { "kind" : "IdResultType" },
     },
     {
       "opname" : "OpPhi",
+      "class"  : "Control-Flow",
       "opcode" : 245,
       "operands" : [
         { "kind" : "IdResultType" },
     },
     {
       "opname" : "OpLoopMerge",
+      "class"  : "Control-Flow",
       "opcode" : 246,
       "operands" : [
         { "kind" : "IdRef",       "name" : "'Merge Block'" },
     },
     {
       "opname" : "OpSelectionMerge",
+      "class"  : "Control-Flow",
       "opcode" : 247,
       "operands" : [
         { "kind" : "IdRef",            "name" : "'Merge Block'" },
     },
     {
       "opname" : "OpLabel",
+      "class"  : "Control-Flow",
       "opcode" : 248,
       "operands" : [
         { "kind" : "IdResult" }
     },
     {
       "opname" : "OpBranch",
+      "class"  : "Control-Flow",
       "opcode" : 249,
       "operands" : [
         { "kind" : "IdRef", "name" : "'Target Label'" }
     },
     {
       "opname" : "OpBranchConditional",
+      "class"  : "Control-Flow",
       "opcode" : 250,
       "operands" : [
         { "kind" : "IdRef",                              "name" : "'Condition'" },
     },
     {
       "opname" : "OpSwitch",
+      "class"  : "Control-Flow",
       "opcode" : 251,
       "operands" : [
         { "kind" : "IdRef",                                       "name" : "'Selector'" },
     },
     {
       "opname" : "OpKill",
+      "class"  : "Control-Flow",
       "opcode" : 252,
       "capabilities" : [ "Shader" ]
     },
     {
       "opname" : "OpReturn",
+      "class"  : "Control-Flow",
       "opcode" : 253
     },
     {
       "opname" : "OpReturnValue",
+      "class"  : "Control-Flow",
       "opcode" : 254,
       "operands" : [
         { "kind" : "IdRef", "name" : "'Value'" }
     },
     {
       "opname" : "OpUnreachable",
+      "class"  : "Control-Flow",
       "opcode" : 255
     },
     {
       "opname" : "OpLifetimeStart",
+      "class"  : "Control-Flow",
       "opcode" : 256,
       "operands" : [
         { "kind" : "IdRef",          "name" : "'Pointer'" },
     },
     {
       "opname" : "OpLifetimeStop",
+      "class"  : "Control-Flow",
       "opcode" : 257,
       "operands" : [
         { "kind" : "IdRef",          "name" : "'Pointer'" },
     },
     {
       "opname" : "OpGroupAsyncCopy",
+      "class"  : "Group",
       "opcode" : 259,
       "operands" : [
         { "kind" : "IdResultType" },
     },
     {
       "opname" : "OpGroupWaitEvents",
+      "class"  : "Group",
       "opcode" : 260,
       "operands" : [
         { "kind" : "IdScope", "name" : "'Execution'" },
     },
     {
       "opname" : "OpGroupAll",
+      "class"  : "Group",
       "opcode" : 261,
       "operands" : [
         { "kind" : "IdResultType" },
     },
     {
       "opname" : "OpGroupAny",
+      "class"  : "Group",
       "opcode" : 262,
       "operands" : [
         { "kind" : "IdResultType" },
     },
     {
       "opname" : "OpGroupBroadcast",
+      "class"  : "Group",
       "opcode" : 263,
       "operands" : [
         { "kind" : "IdResultType" },
     },
     {
       "opname" : "OpGroupIAdd",
+      "class"  : "Group",
       "opcode" : 264,
       "operands" : [
         { "kind" : "IdResultType" },
     },
     {
       "opname" : "OpGroupFAdd",
+      "class"  : "Group",
       "opcode" : 265,
       "operands" : [
         { "kind" : "IdResultType" },
     },
     {
       "opname" : "OpGroupFMin",
+      "class"  : "Group",
       "opcode" : 266,
       "operands" : [
         { "kind" : "IdResultType" },
     },
     {
       "opname" : "OpGroupUMin",
+      "class"  : "Group",
       "opcode" : 267,
       "operands" : [
         { "kind" : "IdResultType" },
     },
     {
       "opname" : "OpGroupSMin",
+      "class"  : "Group",
       "opcode" : 268,
       "operands" : [
         { "kind" : "IdResultType" },
     },
     {
       "opname" : "OpGroupFMax",
+      "class"  : "Group",
       "opcode" : 269,
       "operands" : [
         { "kind" : "IdResultType" },
     },
     {
       "opname" : "OpGroupUMax",
+      "class"  : "Group",
       "opcode" : 270,
       "operands" : [
         { "kind" : "IdResultType" },
     },
     {
       "opname" : "OpGroupSMax",
+      "class"  : "Group",
       "opcode" : 271,
       "operands" : [
         { "kind" : "IdResultType" },
     },
     {
       "opname" : "OpReadPipe",
+      "class"  : "Pipe",
       "opcode" : 274,
       "operands" : [
         { "kind" : "IdResultType" },
     },
     {
       "opname" : "OpWritePipe",
+      "class"  : "Pipe",
       "opcode" : 275,
       "operands" : [
         { "kind" : "IdResultType" },
     },
     {
       "opname" : "OpReservedReadPipe",
+      "class"  : "Pipe",
       "opcode" : 276,
       "operands" : [
         { "kind" : "IdResultType" },
     },
     {
       "opname" : "OpReservedWritePipe",
+      "class"  : "Pipe",
       "opcode" : 277,
       "operands" : [
         { "kind" : "IdResultType" },
     },
     {
       "opname" : "OpReserveReadPipePackets",
+      "class"  : "Pipe",
       "opcode" : 278,
       "operands" : [
         { "kind" : "IdResultType" },
     },
     {
       "opname" : "OpReserveWritePipePackets",
+      "class"  : "Pipe",
       "opcode" : 279,
       "operands" : [
         { "kind" : "IdResultType" },
     },
     {
       "opname" : "OpCommitReadPipe",
+      "class"  : "Pipe",
       "opcode" : 280,
       "operands" : [
         { "kind" : "IdRef", "name" : "'Pipe'" },
     },
     {
       "opname" : "OpCommitWritePipe",
+      "class"  : "Pipe",
       "opcode" : 281,
       "operands" : [
         { "kind" : "IdRef", "name" : "'Pipe'" },
     },
     {
       "opname" : "OpIsValidReserveId",
+      "class"  : "Pipe",
       "opcode" : 282,
       "operands" : [
         { "kind" : "IdResultType" },
     },
     {
       "opname" : "OpGetNumPipePackets",
+      "class"  : "Pipe",
       "opcode" : 283,
       "operands" : [
         { "kind" : "IdResultType" },
     },
     {
       "opname" : "OpGetMaxPipePackets",
+      "class"  : "Pipe",
       "opcode" : 284,
       "operands" : [
         { "kind" : "IdResultType" },
     },
     {
       "opname" : "OpGroupReserveReadPipePackets",
+      "class"  : "Pipe",
       "opcode" : 285,
       "operands" : [
         { "kind" : "IdResultType" },
     },
     {
       "opname" : "OpGroupReserveWritePipePackets",
+      "class"  : "Pipe",
       "opcode" : 286,
       "operands" : [
         { "kind" : "IdResultType" },
     },
     {
       "opname" : "OpGroupCommitReadPipe",
+      "class"  : "Pipe",
       "opcode" : 287,
       "operands" : [
         { "kind" : "IdScope", "name" : "'Execution'" },
     },
     {
       "opname" : "OpGroupCommitWritePipe",
+      "class"  : "Pipe",
       "opcode" : 288,
       "operands" : [
         { "kind" : "IdScope", "name" : "'Execution'" },
     },
     {
       "opname" : "OpEnqueueMarker",
+      "class"  : "Device-Side_Enqueue",
       "opcode" : 291,
       "operands" : [
         { "kind" : "IdResultType" },
     },
     {
       "opname" : "OpEnqueueKernel",
+      "class"  : "Device-Side_Enqueue",
       "opcode" : 292,
       "operands" : [
         { "kind" : "IdResultType" },
     },
     {
       "opname" : "OpGetKernelNDrangeSubGroupCount",
+      "class"  : "Device-Side_Enqueue",
       "opcode" : 293,
       "operands" : [
         { "kind" : "IdResultType" },
     },
     {
       "opname" : "OpGetKernelNDrangeMaxSubGroupSize",
+      "class"  : "Device-Side_Enqueue",
       "opcode" : 294,
       "operands" : [
         { "kind" : "IdResultType" },
     },
     {
       "opname" : "OpGetKernelWorkGroupSize",
+      "class"  : "Device-Side_Enqueue",
       "opcode" : 295,
       "operands" : [
         { "kind" : "IdResultType" },
     },
     {
       "opname" : "OpGetKernelPreferredWorkGroupSizeMultiple",
+      "class"  : "Device-Side_Enqueue",
       "opcode" : 296,
       "operands" : [
         { "kind" : "IdResultType" },
     },
     {
       "opname" : "OpRetainEvent",
+      "class"  : "Device-Side_Enqueue",
       "opcode" : 297,
       "operands" : [
         { "kind" : "IdRef", "name" : "'Event'" }
     },
     {
       "opname" : "OpReleaseEvent",
+      "class"  : "Device-Side_Enqueue",
       "opcode" : 298,
       "operands" : [
         { "kind" : "IdRef", "name" : "'Event'" }
     },
     {
       "opname" : "OpCreateUserEvent",
+      "class"  : "Device-Side_Enqueue",
       "opcode" : 299,
       "operands" : [
         { "kind" : "IdResultType" },
     },
     {
       "opname" : "OpIsValidEvent",
+      "class"  : "Device-Side_Enqueue",
       "opcode" : 300,
       "operands" : [
         { "kind" : "IdResultType" },
     },
     {
       "opname" : "OpSetUserEventStatus",
+      "class"  : "Device-Side_Enqueue",
       "opcode" : 301,
       "operands" : [
         { "kind" : "IdRef", "name" : "'Event'" },
     },
     {
       "opname" : "OpCaptureEventProfilingInfo",
+      "class"  : "Device-Side_Enqueue",
       "opcode" : 302,
       "operands" : [
         { "kind" : "IdRef", "name" : "'Event'" },
     },
     {
       "opname" : "OpGetDefaultQueue",
+      "class"  : "Device-Side_Enqueue",
       "opcode" : 303,
       "operands" : [
         { "kind" : "IdResultType" },
     },
     {
       "opname" : "OpBuildNDRange",
+      "class"  : "Device-Side_Enqueue",
       "opcode" : 304,
       "operands" : [
         { "kind" : "IdResultType" },
     },
     {
       "opname" : "OpImageSparseSampleImplicitLod",
+      "class"  : "Image",
       "opcode" : 305,
       "operands" : [
         { "kind" : "IdResultType" },
     },
     {
       "opname" : "OpImageSparseSampleExplicitLod",
+      "class"  : "Image",
       "opcode" : 306,
       "operands" : [
         { "kind" : "IdResultType" },
     },
     {
       "opname" : "OpImageSparseSampleDrefImplicitLod",
+      "class"  : "Image",
       "opcode" : 307,
       "operands" : [
         { "kind" : "IdResultType" },
     },
     {
       "opname" : "OpImageSparseSampleDrefExplicitLod",
+      "class"  : "Image",
       "opcode" : 308,
       "operands" : [
         { "kind" : "IdResultType" },
     },
     {
       "opname" : "OpImageSparseSampleProjImplicitLod",
+      "class"  : "Image",
       "opcode" : 309,
       "operands" : [
         { "kind" : "IdResultType" },
     },
     {
       "opname" : "OpImageSparseSampleProjExplicitLod",
+      "class"  : "Image",
       "opcode" : 310,
       "operands" : [
         { "kind" : "IdResultType" },
     },
     {
       "opname" : "OpImageSparseSampleProjDrefImplicitLod",
+      "class"  : "Image",
       "opcode" : 311,
       "operands" : [
         { "kind" : "IdResultType" },
     },
     {
       "opname" : "OpImageSparseSampleProjDrefExplicitLod",
+      "class"  : "Image",
       "opcode" : 312,
       "operands" : [
         { "kind" : "IdResultType" },
     },
     {
       "opname" : "OpImageSparseFetch",
+      "class"  : "Image",
       "opcode" : 313,
       "operands" : [
         { "kind" : "IdResultType" },
     },
     {
       "opname" : "OpImageSparseGather",
+      "class"  : "Image",
       "opcode" : 314,
       "operands" : [
         { "kind" : "IdResultType" },
     },
     {
       "opname" : "OpImageSparseDrefGather",
+      "class"  : "Image",
       "opcode" : 315,
       "operands" : [
         { "kind" : "IdResultType" },
     },
     {
       "opname" : "OpImageSparseTexelsResident",
+      "class"  : "Image",
       "opcode" : 316,
       "operands" : [
         { "kind" : "IdResultType" },
     },
     {
       "opname" : "OpNoLine",
+      "class"  : "Debug",
       "opcode" : 317
     },
     {
       "opname" : "OpAtomicFlagTestAndSet",
+      "class"  : "Atomic",
       "opcode" : 318,
       "operands" : [
         { "kind" : "IdResultType" },
     },
     {
       "opname" : "OpAtomicFlagClear",
+      "class"  : "Atomic",
       "opcode" : 319,
       "operands" : [
         { "kind" : "IdRef",             "name" : "'Pointer'" },
     },
     {
       "opname" : "OpImageSparseRead",
+      "class"  : "Image",
       "opcode" : 320,
       "operands" : [
         { "kind" : "IdResultType" },
     },
     {
       "opname" : "OpSizeOf",
+      "class"  : "Miscellaneous",
       "opcode" : 321,
       "operands" : [
         { "kind" : "IdResultType" },
     },
     {
       "opname" : "OpTypePipeStorage",
+      "class"  : "Type-Declaration",
       "opcode" : 322,
       "operands" : [
         { "kind" : "IdResult" }
     },
     {
       "opname" : "OpConstantPipeStorage",
+      "class"  : "Pipe",
       "opcode" : 323,
       "operands" : [
         { "kind" : "IdResultType" },
     },
     {
       "opname" : "OpCreatePipeFromPipeStorage",
+      "class"  : "Pipe",
       "opcode" : 324,
       "operands" : [
         { "kind" : "IdResultType" },
     },
     {
       "opname" : "OpGetKernelLocalSizeForSubgroupCount",
+      "class"  : "Device-Side_Enqueue",
       "opcode" : 325,
       "operands" : [
         { "kind" : "IdResultType" },
     },
     {
       "opname" : "OpGetKernelMaxNumSubgroups",
+      "class"  : "Device-Side_Enqueue",
       "opcode" : 326,
       "operands" : [
         { "kind" : "IdResultType" },
     },
     {
       "opname" : "OpTypeNamedBarrier",
+      "class"  : "Type-Declaration",
       "opcode" : 327,
       "operands" : [
         { "kind" : "IdResult" }
     },
     {
       "opname" : "OpNamedBarrierInitialize",
+      "class"  : "Barrier",
       "opcode" : 328,
       "operands" : [
         { "kind" : "IdResultType" },
     },
     {
       "opname" : "OpMemoryNamedBarrier",
+      "class"  : "Barrier",
       "opcode" : 329,
       "operands" : [
         { "kind" : "IdRef", "name" : "'Named Barrier'" },
     },
     {
       "opname" : "OpModuleProcessed",
+      "class"  : "Debug",
       "opcode" : 330,
       "operands" : [
         { "kind" : "LiteralString", "name" : "'Process'" }
     },
     {
       "opname" : "OpExecutionModeId",
+      "class"  : "Mode-Setting",
       "opcode" : 331,
       "operands" : [
         { "kind" : "IdRef", "name" : "'Entry Point'" },
     },
     {
       "opname" : "OpDecorateId",
+      "class"  : "Annotation",
       "opcode" : 332,
       "operands" : [
         { "kind" : "IdRef", "name" : "'Target'" },
     },
     {
       "opname" : "OpGroupNonUniformElect",
+      "class"  : "Non-Uniform",
       "opcode" : 333,
       "operands" : [
         { "kind" : "IdResultType" },
     },
     {
       "opname" : "OpGroupNonUniformAll",
+      "class"  : "Non-Uniform",
       "opcode" : 334,
       "operands" : [
         { "kind" : "IdResultType" },
     },
     {
       "opname" : "OpGroupNonUniformAny",
+      "class"  : "Non-Uniform",
       "opcode" : 335,
       "operands" : [
         { "kind" : "IdResultType" },
     },
     {
       "opname" : "OpGroupNonUniformAllEqual",
+      "class"  : "Non-Uniform",
       "opcode" : 336,
       "operands" : [
         { "kind" : "IdResultType" },
     },
     {
       "opname" : "OpGroupNonUniformBroadcast",
+      "class"  : "Non-Uniform",
       "opcode" : 337,
       "operands" : [
         { "kind" : "IdResultType" },
     },
     {
       "opname" : "OpGroupNonUniformBroadcastFirst",
+      "class"  : "Non-Uniform",
       "opcode" : 338,
       "operands" : [
         { "kind" : "IdResultType" },
     },
     {
       "opname" : "OpGroupNonUniformBallot",
+      "class"  : "Non-Uniform",
       "opcode" : 339,
       "operands" : [
         { "kind" : "IdResultType" },
     },
     {
       "opname" : "OpGroupNonUniformInverseBallot",
+      "class"  : "Non-Uniform",
       "opcode" : 340,
       "operands" : [
         { "kind" : "IdResultType" },
     },
     {
       "opname" : "OpGroupNonUniformBallotBitExtract",
+      "class"  : "Non-Uniform",
       "opcode" : 341,
       "operands" : [
         { "kind" : "IdResultType" },
     },
     {
       "opname" : "OpGroupNonUniformBallotBitCount",
+      "class"  : "Non-Uniform",
       "opcode" : 342,
       "operands" : [
         { "kind" : "IdResultType" },
     },
     {
       "opname" : "OpGroupNonUniformBallotFindLSB",
+      "class"  : "Non-Uniform",
       "opcode" : 343,
       "operands" : [
         { "kind" : "IdResultType" },
     },
     {
       "opname" : "OpGroupNonUniformBallotFindMSB",
+      "class"  : "Non-Uniform",
       "opcode" : 344,
       "operands" : [
         { "kind" : "IdResultType" },
     },
     {
       "opname" : "OpGroupNonUniformShuffle",
+      "class"  : "Non-Uniform",
       "opcode" : 345,
       "operands" : [
         { "kind" : "IdResultType" },
     },
     {
       "opname" : "OpGroupNonUniformShuffleXor",
+      "class"  : "Non-Uniform",
       "opcode" : 346,
       "operands" : [
         { "kind" : "IdResultType" },
     },
     {
       "opname" : "OpGroupNonUniformShuffleUp",
+      "class"  : "Non-Uniform",
       "opcode" : 347,
       "operands" : [
         { "kind" : "IdResultType" },
     },
     {
       "opname" : "OpGroupNonUniformShuffleDown",
+      "class"  : "Non-Uniform",
       "opcode" : 348,
       "operands" : [
         { "kind" : "IdResultType" },
     },
     {
       "opname" : "OpGroupNonUniformIAdd",
+      "class"  : "Non-Uniform",
       "opcode" : 349,
       "operands" : [
         { "kind" : "IdResultType" },
     },
     {
       "opname" : "OpGroupNonUniformFAdd",
+      "class"  : "Non-Uniform",
       "opcode" : 350,
       "operands" : [
         { "kind" : "IdResultType" },
     },
     {
       "opname" : "OpGroupNonUniformIMul",
+      "class"  : "Non-Uniform",
       "opcode" : 351,
       "operands" : [
         { "kind" : "IdResultType" },
     },
     {
       "opname" : "OpGroupNonUniformFMul",
+      "class"  : "Non-Uniform",
       "opcode" : 352,
       "operands" : [
         { "kind" : "IdResultType" },
     },
     {
       "opname" : "OpGroupNonUniformSMin",
+      "class"  : "Non-Uniform",
       "opcode" : 353,
       "operands" : [
         { "kind" : "IdResultType" },
     },
     {
       "opname" : "OpGroupNonUniformUMin",
+      "class"  : "Non-Uniform",
       "opcode" : 354,
       "operands" : [
         { "kind" : "IdResultType" },
     },
     {
       "opname" : "OpGroupNonUniformFMin",
+      "class"  : "Non-Uniform",
       "opcode" : 355,
       "operands" : [
         { "kind" : "IdResultType" },
     },
     {
       "opname" : "OpGroupNonUniformSMax",
+      "class"  : "Non-Uniform",
       "opcode" : 356,
       "operands" : [
         { "kind" : "IdResultType" },
     },
     {
       "opname" : "OpGroupNonUniformUMax",
+      "class"  : "Non-Uniform",
       "opcode" : 357,
       "operands" : [
         { "kind" : "IdResultType" },
     },
     {
       "opname" : "OpGroupNonUniformFMax",
+      "class"  : "Non-Uniform",
       "opcode" : 358,
       "operands" : [
         { "kind" : "IdResultType" },
     },
     {
       "opname" : "OpGroupNonUniformBitwiseAnd",
+      "class"  : "Non-Uniform",
       "opcode" : 359,
       "operands" : [
         { "kind" : "IdResultType" },
     },
     {
       "opname" : "OpGroupNonUniformBitwiseOr",
+      "class"  : "Non-Uniform",
       "opcode" : 360,
       "operands" : [
         { "kind" : "IdResultType" },
     },
     {
       "opname" : "OpGroupNonUniformBitwiseXor",
+      "class"  : "Non-Uniform",
       "opcode" : 361,
       "operands" : [
         { "kind" : "IdResultType" },
     },
     {
       "opname" : "OpGroupNonUniformLogicalAnd",
+      "class"  : "Non-Uniform",
       "opcode" : 362,
       "operands" : [
         { "kind" : "IdResultType" },
     },
     {
       "opname" : "OpGroupNonUniformLogicalOr",
+      "class"  : "Non-Uniform",
       "opcode" : 363,
       "operands" : [
         { "kind" : "IdResultType" },
     },
     {
       "opname" : "OpGroupNonUniformLogicalXor",
+      "class"  : "Non-Uniform",
       "opcode" : 364,
       "operands" : [
         { "kind" : "IdResultType" },
     },
     {
       "opname" : "OpGroupNonUniformQuadBroadcast",
+      "class"  : "Non-Uniform",
       "opcode" : 365,
       "operands" : [
         { "kind" : "IdResultType" },
     },
     {
       "opname" : "OpGroupNonUniformQuadSwap",
+      "class"  : "Non-Uniform",
       "opcode" : 366,
       "operands" : [
         { "kind" : "IdResultType" },
     },
     {
       "opname" : "OpCopyLogical",
+      "class"  : "Composite",
       "opcode" : 400,
       "operands" : [
         { "kind" : "IdResultType" },
     },
     {
       "opname" : "OpPtrEqual",
+      "class"  : "Memory",
       "opcode" : 401,
       "operands" : [
         { "kind" : "IdResultType" },
     },
     {
       "opname" : "OpPtrNotEqual",
+      "class"  : "Memory",
       "opcode" : 402,
       "operands" : [
         { "kind" : "IdResultType" },
     },
     {
       "opname" : "OpPtrDiff",
+      "class"  : "Memory",
       "opcode" : 403,
       "operands" : [
         { "kind" : "IdResultType" },
     },
     {
       "opname" : "OpSubgroupBallotKHR",
+      "class"  : "Group",
       "opcode" : 4421,
       "operands" : [
         { "kind" : "IdResultType" },
     },
     {
       "opname" : "OpSubgroupFirstInvocationKHR",
+      "class"  : "Group",
       "opcode" : 4422,
       "operands" : [
         { "kind" : "IdResultType" },
     },
     {
       "opname" : "OpSubgroupAllKHR",
+      "class"  : "Group",
       "opcode" : 4428,
       "operands" : [
         { "kind" : "IdResultType" },
     },
     {
       "opname" : "OpSubgroupAnyKHR",
+      "class"  : "Group",
       "opcode" : 4429,
       "operands" : [
         { "kind" : "IdResultType" },
     },
     {
       "opname" : "OpSubgroupAllEqualKHR",
+      "class"  : "Group",
       "opcode" : 4430,
       "operands" : [
         { "kind" : "IdResultType" },
     },
     {
       "opname" : "OpSubgroupReadInvocationKHR",
+      "class"  : "Group",
       "opcode" : 4432,
       "operands" : [
         { "kind" : "IdResultType" },
       "extensions" : [ "SPV_KHR_shader_ballot" ],
       "version" : "None"
     },
+    {
+        "opname" : "OpTypeRayQueryProvisionalKHR",
+        "class" : "Reserved",
+        "opcode" : 4472,
+        "operands" : [
+            { "kind" : "IdResult" }
+        ],
+        "capabilities" : [ "RayQueryProvisionalKHR" ],
+        "extensions" : [ "SPV_KHR_ray_query" ],
+        "version" : "None"
+    },
+    {
+        "opname" : "OpRayQueryInitializeKHR",
+        "class" : "Reserved",
+        "opcode" : 4473,
+        "operands" : [
+            {
+                "kind" : "IdRef",
+                "name" : "'RayQuery'"
+            },
+            {
+                "kind" : "IdRef",
+                "name" : "'Accel'"
+            },
+            {
+                "kind" : "IdRef",
+                "name" : "'RayFlags'"
+            },
+            {
+                "kind" : "IdRef",
+                "name" : "'CullMask'"
+            },
+            {
+                "kind" : "IdRef",
+                "name" : "'RayOrigin'"
+            },
+            {
+                "kind" : "IdRef",
+                "name" : "'RayTMin'"
+            },
+            {
+                "kind" : "IdRef",
+                "name" : "'RayDirection'"
+            },
+            {
+                "kind" : "IdRef",
+                "name" : "'RayTMax'"
+            }
+
+        ],
+        "capabilities" : [ "RayQueryProvisionalKHR" ],
+        "extensions" : [ "SPV_KHR_ray_query" ],
+        "version" : "None"
+    },
+    {
+        "opname" : "OpRayQueryTerminateKHR",
+        "class" : "Reserved",
+        "opcode" : 4474,
+        "operands" : [
+            {
+                "kind" : "IdRef",
+                "name" : "'RayQuery'"
+            }
+        ],
+        "capabilities" : [ "RayQueryProvisionalKHR" ],
+        "extensions" : [ "SPV_KHR_ray_query" ],
+        "version" : "None"
+    },
+    {
+        "opname" : "OpRayQueryGenerateIntersectionKHR",
+        "class" : "Reserved",
+        "opcode" : 4475,
+        "operands" : [
+            {
+                "kind" : "IdRef",
+                "name" : "'RayQuery'"
+            },
+            {
+                "kind" : "IdRef",
+                "name" : "'HitT'"
+            }
+        ],
+        "capabilities" : [ "RayQueryProvisionalKHR" ],
+        "extensions" : [ "SPV_KHR_ray_query" ],
+        "version" : "None"
+    },
+    {
+        "opname" : "OpRayQueryConfirmIntersectionKHR",
+        "class" : "Reserved",
+        "opcode" : 4476,
+        "operands" : [
+            {
+                "kind" : "IdRef",
+                "name" : "'RayQuery'"
+            }
+        ],
+        "capabilities" : [ "RayQueryProvisionalKHR" ],
+        "extensions" : [ "SPV_KHR_ray_query" ],
+        "version" : "None"
+    },
+    {
+        "opname" : "OpRayQueryProceedKHR",
+        "class" : "Reserved",
+        "opcode" : 4477,
+        "operands" : [
+            { "kind" : "IdResultType" },
+            { "kind" : "IdResult" },
+            {
+                "kind" : "IdRef",
+                "name" : "'RayQuery'"
+            }
+        ],
+        "capabilities" : [ "RayQueryProvisionalKHR" ],
+        "extensions" : [ "SPV_KHR_ray_query" ],
+        "version" : "None"
+    },
+    {
+        "opname" : "OpRayQueryGetIntersectionTypeKHR",
+        "class" : "Reserved",
+        "opcode" : 4479,
+        "operands" : [
+            { "kind" : "IdResultType" },
+            { "kind" : "IdResult" },
+            {
+                "kind" : "IdRef",
+                "name" : "'RayQuery'"
+            },
+            {
+                "kind" : "IdRef",
+                "name" : "'Intersection'"
+            }
+        ],
+        "capabilities" : [ "RayQueryProvisionalKHR" ],
+        "extensions" : [ "SPV_KHR_ray_query" ],
+        "version" : "None"
+    },
     {
       "opname" : "OpGroupIAddNonUniformAMD",
+      "class"  : "Group",
       "opcode" : 5000,
       "operands" : [
         { "kind" : "IdResultType" },
     },
     {
       "opname" : "OpGroupFAddNonUniformAMD",
+      "class"  : "Group",
       "opcode" : 5001,
       "operands" : [
         { "kind" : "IdResultType" },
     },
     {
       "opname" : "OpGroupFMinNonUniformAMD",
+      "class"  : "Group",
       "opcode" : 5002,
       "operands" : [
         { "kind" : "IdResultType" },
     },
     {
       "opname" : "OpGroupUMinNonUniformAMD",
+      "class"  : "Group",
       "opcode" : 5003,
       "operands" : [
         { "kind" : "IdResultType" },
     },
     {
       "opname" : "OpGroupSMinNonUniformAMD",
+      "class"  : "Group",
       "opcode" : 5004,
       "operands" : [
         { "kind" : "IdResultType" },
     },
     {
       "opname" : "OpGroupFMaxNonUniformAMD",
+      "class"  : "Group",
       "opcode" : 5005,
       "operands" : [
         { "kind" : "IdResultType" },
     },
     {
       "opname" : "OpGroupUMaxNonUniformAMD",
+      "class"  : "Group",
       "opcode" : 5006,
       "operands" : [
         { "kind" : "IdResultType" },
     },
     {
       "opname" : "OpGroupSMaxNonUniformAMD",
+      "class"  : "Group",
       "opcode" : 5007,
       "operands" : [
         { "kind" : "IdResultType" },
     },
     {
       "opname" : "OpFragmentMaskFetchAMD",
+      "class"  : "Reserved",
       "opcode" : 5011,
       "operands" : [
         { "kind" : "IdResultType" },
     },
     {
       "opname" : "OpFragmentFetchAMD",
+      "class"  : "Reserved",
       "opcode" : 5012,
       "operands" : [
         { "kind" : "IdResultType" },
       "extensions" : [ "SPV_AMD_shader_fragment_mask" ],
       "version" : "None"
     },
+    {
+      "opname" : "OpReadClockKHR",
+      "class"  : "Reserved",
+      "opcode" : 5056,
+      "operands" : [
+        { "kind" : "IdResultType" },
+        { "kind" : "IdResult" },
+        { "kind" : "IdScope", "name" : "'Execution'" }
+      ],
+      "capabilities" : [ "ShaderClockKHR" ],
+      "extensions" : [ "SPV_KHR_shader_clock" ],
+      "version" : "None"
+    },
     {
       "opname" : "OpImageSampleFootprintNV",
+      "class"  : "Image",
       "opcode" : 5283,
       "operands" : [
         { "kind" : "IdResultType" },
     },
     {
       "opname" : "OpGroupNonUniformPartitionNV",
+      "class"  : "Non-Uniform",
       "opcode" : 5296,
       "operands" : [
         { "kind" : "IdResultType" },
     },
     {
       "opname" : "OpWritePackedPrimitiveIndices4x8NV",
+      "class"  : "Reserved",
       "opcode" : 5299,
       "operands" : [
         { "kind" : "IdRef", "name" : "'Index Offset'" },
     },
     {
       "opname" : "OpReportIntersectionNV",
+      "class"  : "Reserved",
       "opcode" : 5334,
       "operands" : [
         { "kind" : "IdResultType" },
         { "kind" : "IdRef", "name" : "'Hit'" },
         { "kind" : "IdRef", "name" : "'HitKind'" }
       ],
-      "capabilities" : [ "RayTracingNV" ],
-      "extensions" : [ "SPV_NV_ray_tracing" ]
+      "capabilities" : [ "RayTracingNV" , "RayTracingProvisionalKHR" ],
+      "extensions" : [ "SPV_NV_ray_tracing" , "SPV_KHR_ray_tracing" ],
+      "version" : "None"
+    },
+    {
+      "opname" : "OpReportIntersectionKHR",
+      "class"  : "Reserved",
+      "opcode" : 5334,
+      "operands" : [
+        { "kind" : "IdResultType" },
+        { "kind" : "IdResult" },
+        { "kind" : "IdRef", "name" : "'Hit'" },
+        { "kind" : "IdRef", "name" : "'HitKind'" }
+      ],
+      "capabilities" : [ "RayTracingNV" , "RayTracingProvisionalKHR" ],
+      "extensions" : [ "SPV_NV_ray_tracing" , "SPV_KHR_ray_tracing" ],
+      "version" : "None"
     },
     {
       "opname" : "OpIgnoreIntersectionNV",
+      "class"  : "Reserved",
       "opcode" : 5335,
-
-      "capabilities" : [ "RayTracingNV" ],
-      "extensions" : [ "SPV_NV_ray_tracing" ]
+      "capabilities" : [ "RayTracingNV" , "RayTracingProvisionalKHR" ],
+      "extensions" : [ "SPV_NV_ray_tracing" , "SPV_KHR_ray_tracing" ],
+      "version" : "None"
+    },
+    {
+      "opname" : "OpIgnoreIntersectionKHR",
+      "class"  : "Reserved",
+      "opcode" : 5335,
+      "capabilities" : [ "RayTracingNV" , "RayTracingProvisionalKHR" ],
+      "extensions" : [ "SPV_NV_ray_tracing" , "SPV_KHR_ray_tracing" ],
+      "version" : "None"
     },
     {
       "opname" : "OpTerminateRayNV",
+      "class"  : "Reserved",
       "opcode" : 5336,
-
-      "capabilities" : [ "RayTracingNV" ],
-      "extensions" : [ "SPV_NV_ray_tracing" ]
+      "capabilities" : [ "RayTracingNV" , "RayTracingProvisionalKHR" ],
+      "extensions" : [ "SPV_NV_ray_tracing" , "SPV_KHR_ray_tracing" ],
+      "version" : "None"
+    },
+    {
+      "opname" : "OpTerminateRayKHR",
+      "class"  : "Reserved",
+      "opcode" : 5336,
+      "capabilities" : [ "RayTracingNV" , "RayTracingProvisionalKHR" ],
+      "extensions" : [ "SPV_NV_ray_tracing" , "SPV_KHR_ray_tracing" ],
+      "version" : "None"
     },
     {
       "opname" : "OpTraceNV",
+      "class"  : "Reserved",
+      "opcode" : 5337,
+      "operands" : [
+
+        { "kind" : "IdRef", "name" : "'Accel'" },
+        { "kind" : "IdRef", "name" : "'Ray Flags'" },
+        { "kind" : "IdRef", "name" : "'Cull Mask'" },
+        { "kind" : "IdRef", "name" : "'SBT Offset'" },
+        { "kind" : "IdRef", "name" : "'SBT Stride'" },
+        { "kind" : "IdRef", "name" : "'Miss Index'" },
+        { "kind" : "IdRef", "name" : "'Ray Origin'" },
+        { "kind" : "IdRef", "name" : "'Ray Tmin'" },
+        { "kind" : "IdRef", "name" : "'Ray Direction'" },
+        { "kind" : "IdRef", "name" : "'Ray Tmax'" },
+        { "kind" : "IdRef", "name" : "'PayloadId'" }
+      ],
+      "capabilities" : [ "RayTracingNV" , "RayTracingProvisionalKHR" ],
+      "extensions" : [ "SPV_NV_ray_tracing" , "SPV_KHR_ray_tracing" ],
+      "version" : "None"
+    },
+    {
+      "opname" : "OpTraceRayKHR",
+      "class"  : "Reserved",
       "opcode" : 5337,
       "operands" : [
 
         { "kind" : "IdRef", "name" : "'Ray Tmax'" },
         { "kind" : "IdRef", "name" : "'PayloadId'" }
       ],
-      "capabilities" : [ "RayTracingNV" ],
-      "extensions" : [ "SPV_NV_ray_tracing" ]
+      "capabilities" : [ "RayTracingNV" , "RayTracingProvisionalKHR" ],
+      "extensions" : [ "SPV_NV_ray_tracing" , "SPV_KHR_ray_tracing" ],
+      "version" : "None"
     },
     {
       "opname" : "OpTypeAccelerationStructureNV",
+      "class"  : "Reserved",
+      "opcode" : 5341,
+      "operands" : [
+        { "kind" : "IdResult" }
+      ],
+      "capabilities" : [ "RayTracingNV" , "RayTracingProvisionalKHR", "RayQueryProvisionalKHR" ],
+      "extensions" : [ "SPV_NV_ray_tracing" , "SPV_KHR_ray_tracing", "SPV_KHR_ray_query" ],
+      "version" : "None"
+    },
+    {
+      "opname" : "OpTypeAccelerationStructureKHR",
+      "class"  : "Reserved",
       "opcode" : 5341,
       "operands" : [
         { "kind" : "IdResult" }
       ],
-      "capabilities" : [ "RayTracingNV" ],
-      "extensions" : [ "SPV_NV_ray_tracing" ]
+      "capabilities" : [ "RayTracingNV" , "RayTracingProvisionalKHR", "RayQueryProvisionalKHR" ],
+      "extensions" : [ "SPV_NV_ray_tracing" , "SPV_KHR_ray_tracing", "SPV_KHR_ray_query" ],
+      "version" : "None"
     },
     {
       "opname" : "OpExecuteCallableNV",
+      "class"  : "Reserved",
+      "opcode" : 5344,
+      "operands" : [
+
+        { "kind" : "IdRef", "name" : "'SBT Index'" },
+        { "kind" : "IdRef", "name" : "'Callable DataId'" }
+      ],
+      "capabilities" : [ "RayTracingNV" , "RayTracingProvisionalKHR" ],
+      "extensions" : [ "SPV_NV_ray_tracing" , "SPV_KHR_ray_tracing" ],
+      "version" : "None"
+    },
+    {
+      "opname" : "OpExecuteCallableKHR",
+      "class"  : "Reserved",
       "opcode" : 5344,
       "operands" : [
 
         { "kind" : "IdRef", "name" : "'SBT Index'" },
         { "kind" : "IdRef", "name" : "'Callable DataId'" }
       ],
-      "capabilities" : [ "RayTracingNV" ],
-      "extensions" : [ "SPV_NV_ray_tracing" ]
+      "capabilities" : [ "RayTracingNV" , "RayTracingProvisionalKHR" ],
+      "extensions" : [ "SPV_NV_ray_tracing" , "SPV_KHR_ray_tracing" ],
+      "version" : "None"
     },
     {
       "opname" : "OpTypeCooperativeMatrixNV",
+      "class"  : "Reserved",
       "opcode" : 5358,
       "operands" : [
         { "kind" : "IdResult" },
     },
     {
       "opname" : "OpCooperativeMatrixLoadNV",
+      "class"  : "Reserved",
       "opcode" : 5359,
       "operands" : [
         { "kind" : "IdResultType" },
     },
     {
       "opname" : "OpCooperativeMatrixStoreNV",
+      "class"  : "Reserved",
       "opcode" : 5360,
       "operands" : [
         { "kind" : "IdRef",             "name" : "'Pointer'" },
     },
     {
       "opname" : "OpCooperativeMatrixMulAddNV",
+      "class"  : "Reserved",
       "opcode" : 5361,
       "operands" : [
         { "kind" : "IdResultType" },
     },
     {
       "opname" : "OpCooperativeMatrixLengthNV",
+      "class"  : "Reserved",
       "opcode" : 5362,
       "operands" : [
         { "kind" : "IdResultType" },
       "extensions" : [ "SPV_NV_cooperative_matrix" ],
       "version" : "None"
     },
+    {
+      "opname" : "OpBeginInvocationInterlockEXT",
+      "class"  : "Reserved",
+      "opcode" : 5364,
+      "capabilities" : [ "FragmentShaderSampleInterlockEXT", "FragmentShaderPixelInterlockEXT", "FragmentShaderShadingRateInterlockEXT" ],
+      "extensions" : [ "SPV_EXT_fragment_shader_interlock" ],
+      "version" : "None"
+    },
+    {
+      "opname" : "OpEndInvocationInterlockEXT",
+      "class"  : "Reserved",
+      "opcode" : 5365,
+      "capabilities" : [ "FragmentShaderSampleInterlockEXT", "FragmentShaderPixelInterlockEXT", "FragmentShaderShadingRateInterlockEXT" ],
+      "extensions" : [ "SPV_EXT_fragment_shader_interlock" ],
+      "version" : "None"
+    },
+    {
+      "opname" : "OpDemoteToHelperInvocationEXT",
+      "class"  : "Reserved",
+      "opcode" : 5380,
+      "capabilities" : [ "DemoteToHelperInvocationEXT" ],
+      "extensions" : [ "SPV_EXT_demote_to_helper_invocation" ],
+      "version" : "None"
+    },
+    {
+      "opname" : "OpIsHelperInvocationEXT",
+      "class"  : "Reserved",
+      "opcode" : 5381,
+      "operands" : [
+        { "kind" : "IdResultType" },
+        { "kind" : "IdResult" }
+      ],
+      "capabilities" : [ "DemoteToHelperInvocationEXT" ],
+      "extensions" : [ "SPV_EXT_demote_to_helper_invocation" ],
+      "version" : "None"
+    },
     {
       "opname" : "OpSubgroupShuffleINTEL",
+      "class"  : "Group",
       "opcode" : 5571,
       "operands" : [
         { "kind" : "IdResultType" },
     },
     {
       "opname" : "OpSubgroupShuffleDownINTEL",
+      "class"  : "Group",
       "opcode" : 5572,
       "operands" : [
         { "kind" : "IdResultType" },
     },
     {
       "opname" : "OpSubgroupShuffleUpINTEL",
+      "class"  : "Group",
       "opcode" : 5573,
       "operands" : [
         { "kind" : "IdResultType" },
     },
     {
       "opname" : "OpSubgroupShuffleXorINTEL",
+      "class"  : "Group",
       "opcode" : 5574,
       "operands" : [
         { "kind" : "IdResultType" },
     },
     {
       "opname" : "OpSubgroupBlockReadINTEL",
+      "class"  : "Group",
       "opcode" : 5575,
       "operands" : [
         { "kind" : "IdResultType" },
     },
     {
       "opname" : "OpSubgroupBlockWriteINTEL",
+      "class"  : "Group",
       "opcode" : 5576,
       "operands" : [
         { "kind" : "IdRef", "name" : "'Ptr'" },
     },
     {
       "opname" : "OpSubgroupImageBlockReadINTEL",
+      "class"  : "Group",
       "opcode" : 5577,
       "operands" : [
         { "kind" : "IdResultType" },
     },
     {
       "opname" : "OpSubgroupImageBlockWriteINTEL",
+      "class"  : "Group",
       "opcode" : 5578,
       "operands" : [
         { "kind" : "IdRef", "name" : "'Image'" },
     },
     {
       "opname" : "OpSubgroupImageMediaBlockReadINTEL",
+      "class"  : "Group",
       "opcode" : 5580,
       "operands" : [
         { "kind" : "IdResultType" },
     },
     {
       "opname" : "OpSubgroupImageMediaBlockWriteINTEL",
+      "class"  : "Group",
       "opcode" : 5581,
       "operands" : [
         { "kind" : "IdRef", "name" : "'Image'" },
     },
     {
       "opname" : "OpUCountLeadingZerosINTEL",
+      "class"  : "Reserved",
       "opcode" : 5585,
       "operands" : [
         { "kind" : "IdResultType" },
     },
     {
       "opname" : "OpUCountTrailingZerosINTEL",
+      "class"  : "Reserved",
       "opcode" : 5586,
       "operands" : [
         { "kind" : "IdResultType" },
     },
     {
       "opname" : "OpAbsISubINTEL",
+      "class"  : "Reserved",
       "opcode" : 5587,
       "operands" : [
         { "kind" : "IdResultType" },
     },
     {
       "opname" : "OpAbsUSubINTEL",
+      "class"  : "Reserved",
       "opcode" : 5588,
       "operands" : [
         { "kind" : "IdResultType" },
     },
     {
       "opname" : "OpIAddSatINTEL",
+      "class"  : "Reserved",
       "opcode" : 5589,
       "operands" : [
         { "kind" : "IdResultType" },
     },
     {
       "opname" : "OpUAddSatINTEL",
+      "class"  : "Reserved",
       "opcode" : 5590,
       "operands" : [
         { "kind" : "IdResultType" },
     },
     {
       "opname" : "OpIAverageINTEL",
+      "class"  : "Reserved",
       "opcode" : 5591,
       "operands" : [
         { "kind" : "IdResultType" },
     },
     {
       "opname" : "OpUAverageINTEL",
+      "class"  : "Reserved",
       "opcode" : 5592,
       "operands" : [
         { "kind" : "IdResultType" },
     },
     {
       "opname" : "OpIAverageRoundedINTEL",
+      "class"  : "Reserved",
       "opcode" : 5593,
       "operands" : [
         { "kind" : "IdResultType" },
     },
     {
       "opname" : "OpUAverageRoundedINTEL",
+      "class"  : "Reserved",
       "opcode" : 5594,
       "operands" : [
         { "kind" : "IdResultType" },
     },
     {
       "opname" : "OpISubSatINTEL",
+      "class"  : "Reserved",
       "opcode" : 5595,
       "operands" : [
         { "kind" : "IdResultType" },
     },
     {
       "opname" : "OpUSubSatINTEL",
+      "class"  : "Reserved",
       "opcode" : 5596,
       "operands" : [
         { "kind" : "IdResultType" },
     },
     {
       "opname" : "OpIMul32x16INTEL",
+      "class"  : "Reserved",
       "opcode" : 5597,
       "operands" : [
         { "kind" : "IdResultType" },
     },
     {
       "opname" : "OpUMul32x16INTEL",
+      "class"  : "Reserved",
       "opcode" : 5598,
       "operands" : [
         { "kind" : "IdResultType" },
       "capabilities" : [ "IntegerFunctions2INTEL" ],
       "version" : "None"
     },
+    {
+      "opname" : "OpFunctionPointerINTEL",
+      "class"  : "@exclude",
+      "opcode" : 5600,
+      "operands" : [
+        { "kind" : "IdResultType" },
+        { "kind" : "IdResult" },
+        { "kind" : "IdRef",        "name" : "'Function'" }
+      ],
+      "capabilities" : [ "FunctionPointersINTEL" ],
+      "extensions" : [ "SPV_INTEL_function_pointers" ],
+      "version" : "None"
+    },
+    {
+      "opname" : "OpFunctionPointerCallINTEL",
+      "class"  : "@exclude",
+      "opcode" : 5601,
+      "operands" : [
+        { "kind" : "IdResultType" },
+        { "kind" : "IdResult" },
+        { "kind" : "IdRef", "quantifier" : "*", "name" : "'Operand 1'" }
+      ],
+      "capabilities" : [ "FunctionPointersINTEL" ],
+      "extensions" : [ "SPV_INTEL_function_pointers" ],
+      "version" : "None"
+    },
     {
       "opname" : "OpDecorateString",
+      "class"  : "Annotation",
       "opcode" : 5632,
       "operands" : [
         { "kind" : "IdRef",         "name" : "'Target'" },
     },
     {
       "opname" : "OpDecorateStringGOOGLE",
+      "class"  : "Annotation",
       "opcode" : 5632,
       "operands" : [
         { "kind" : "IdRef",         "name" : "'Target'" },
     },
     {
       "opname" : "OpMemberDecorateString",
+      "class"  : "Annotation",
       "opcode" : 5633,
       "operands" : [
         { "kind" : "IdRef",          "name" : "'Struct Type'" },
     },
     {
       "opname" : "OpMemberDecorateStringGOOGLE",
+      "class"  : "Annotation",
       "opcode" : 5633,
       "operands" : [
         { "kind" : "IdRef",          "name" : "'Struct Type'" },
     },
     {
       "opname" : "OpVmeImageINTEL",
+      "class"  : "@exclude",
       "opcode" : 5699,
       "operands" : [
         { "kind" : "IdResultType" },
     },
     {
       "opname" : "OpTypeVmeImageINTEL",
+      "class"  : "@exclude",
       "opcode" : 5700,
       "operands" : [
         { "kind" : "IdResult" },
     },
     {
       "opname" : "OpTypeAvcImePayloadINTEL",
+      "class"  : "@exclude",
       "opcode" : 5701,
       "operands" : [
         { "kind" : "IdResult" }
     },
     {
       "opname" : "OpTypeAvcRefPayloadINTEL",
+      "class"  : "@exclude",
       "opcode" : 5702,
       "operands" : [
         { "kind" : "IdResult" }
     },
     {
       "opname" : "OpTypeAvcSicPayloadINTEL",
+      "class"  : "@exclude",
       "opcode" : 5703,
       "operands" : [
         { "kind" : "IdResult" }
     },
     {
       "opname" : "OpTypeAvcMcePayloadINTEL",
+      "class"  : "@exclude",
       "opcode" : 5704,
       "operands" : [
         { "kind" : "IdResult" }
     },
     {
       "opname" : "OpTypeAvcMceResultINTEL",
+      "class"  : "@exclude",
       "opcode" : 5705,
       "operands" : [
         { "kind" : "IdResult" }
     },
     {
       "opname" : "OpTypeAvcImeResultINTEL",
+      "class"  : "@exclude",
       "opcode" : 5706,
       "operands" : [
         { "kind" : "IdResult" }
     },
     {
       "opname" : "OpTypeAvcImeResultSingleReferenceStreamoutINTEL",
+      "class"  : "@exclude",
       "opcode" : 5707,
       "operands" : [
         { "kind" : "IdResult" }
     },
     {
       "opname" : "OpTypeAvcImeResultDualReferenceStreamoutINTEL",
+      "class"  : "@exclude",
       "opcode" : 5708,
       "operands" : [
         { "kind" : "IdResult" }
     },
     {
       "opname" : "OpTypeAvcImeSingleReferenceStreaminINTEL",
+      "class"  : "@exclude",
       "opcode" : 5709,
       "operands" : [
         { "kind" : "IdResult" }
     },
     {
       "opname" : "OpTypeAvcImeDualReferenceStreaminINTEL",
+      "class"  : "@exclude",
       "opcode" : 5710,
       "operands" : [
         { "kind" : "IdResult" }
     },
     {
       "opname" : "OpTypeAvcRefResultINTEL",
+      "class"  : "@exclude",
       "opcode" : 5711,
       "operands" : [
         { "kind" : "IdResult" }
     },
     {
       "opname" : "OpTypeAvcSicResultINTEL",
+      "class"  : "@exclude",
       "opcode" : 5712,
       "operands" : [
         { "kind" : "IdResult" }
     },
     {
       "opname" : "OpSubgroupAvcMceGetDefaultInterBaseMultiReferencePenaltyINTEL",
+      "class"  : "@exclude",
       "opcode" : 5713,
       "operands" : [
         { "kind" : "IdResultType" },
     },
     {
       "opname" : "OpSubgroupAvcMceSetInterBaseMultiReferencePenaltyINTEL",
+      "class"  : "@exclude",
       "opcode" : 5714,
       "operands" : [
         { "kind" : "IdResultType" },
     },
     {
       "opname" : "OpSubgroupAvcMceGetDefaultInterShapePenaltyINTEL",
+      "class"  : "@exclude",
       "opcode" : 5715,
       "operands" : [
         { "kind" : "IdResultType" },
     },
     {
       "opname" : "OpSubgroupAvcMceSetInterShapePenaltyINTEL",
+      "class"  : "@exclude",
       "opcode" : 5716,
       "operands" : [
         { "kind" : "IdResultType" },
     },
     {
       "opname" : "OpSubgroupAvcMceGetDefaultInterDirectionPenaltyINTEL",
+      "class"  : "@exclude",
       "opcode" : 5717,
       "operands" : [
         { "kind" : "IdResultType" },
     },
     {
       "opname" : "OpSubgroupAvcMceSetInterDirectionPenaltyINTEL",
+      "class"  : "@exclude",
       "opcode" : 5718,
       "operands" : [
         { "kind" : "IdResultType" },
     },
     {
       "opname" : "OpSubgroupAvcMceGetDefaultIntraLumaShapePenaltyINTEL",
+      "class"  : "@exclude",
       "opcode" : 5719,
       "operands" : [
         { "kind" : "IdResultType" },
     },
     {
       "opname" : "OpSubgroupAvcMceGetDefaultInterMotionVectorCostTableINTEL",
+      "class"  : "@exclude",
       "opcode" : 5720,
       "operands" : [
         { "kind" : "IdResultType" },
     },
     {
       "opname" : "OpSubgroupAvcMceGetDefaultHighPenaltyCostTableINTEL",
+      "class"  : "@exclude",
       "opcode" : 5721,
       "operands" : [
         { "kind" : "IdResultType" },
     },
     {
       "opname" : "OpSubgroupAvcMceGetDefaultMediumPenaltyCostTableINTEL",
+      "class"  : "@exclude",
       "opcode" : 5722,
       "operands" : [
         { "kind" : "IdResultType" },
     },
     {
       "opname" : "OpSubgroupAvcMceGetDefaultLowPenaltyCostTableINTEL",
+      "class"  : "@exclude",
       "opcode" : 5723,
       "operands" : [
         { "kind" : "IdResultType" },
     },
     {
       "opname" : "OpSubgroupAvcMceSetMotionVectorCostFunctionINTEL",
+      "class"  : "@exclude",
       "opcode" : 5724,
       "operands" : [
         { "kind" : "IdResultType" },
     },
     {
       "opname" : "OpSubgroupAvcMceGetDefaultIntraLumaModePenaltyINTEL",
+      "class"  : "@exclude",
       "opcode" : 5725,
       "operands" : [
         { "kind" : "IdResultType" },
     },
     {
       "opname" : "OpSubgroupAvcMceGetDefaultNonDcLumaIntraPenaltyINTEL",
+      "class"  : "@exclude",
       "opcode" : 5726,
       "operands" : [
         { "kind" : "IdResultType" },
     },
     {
       "opname" : "OpSubgroupAvcMceGetDefaultIntraChromaModeBasePenaltyINTEL",
+      "class"  : "@exclude",
       "opcode" : 5727,
       "operands" : [
         { "kind" : "IdResultType" },
     },
     {
       "opname" : "OpSubgroupAvcMceSetAcOnlyHaarINTEL",
+      "class"  : "@exclude",
       "opcode" : 5728,
       "operands" : [
         { "kind" : "IdResultType" },
     },
     {
       "opname" : "OpSubgroupAvcMceSetSourceInterlacedFieldPolarityINTEL",
+      "class"  : "@exclude",
       "opcode" : 5729,
       "operands" : [
         { "kind" : "IdResultType" },
     },
     {
       "opname" : "OpSubgroupAvcMceSetSingleReferenceInterlacedFieldPolarityINTEL",
+      "class"  : "@exclude",
       "opcode" : 5730,
       "operands" : [
         { "kind" : "IdResultType" },
     },
     {
       "opname" : "OpSubgroupAvcMceSetDualReferenceInterlacedFieldPolaritiesINTEL",
+      "class"  : "@exclude",
       "opcode" : 5731,
       "operands" : [
         { "kind" : "IdResultType" },
     },
     {
       "opname" : "OpSubgroupAvcMceConvertToImePayloadINTEL",
+      "class"  : "@exclude",
       "opcode" : 5732,
       "operands" : [
         { "kind" : "IdResultType" },
     },
     {
       "opname" : "OpSubgroupAvcMceConvertToImeResultINTEL",
+      "class"  : "@exclude",
       "opcode" : 5733,
       "operands" : [
         { "kind" : "IdResultType" },
     },
     {
       "opname" : "OpSubgroupAvcMceConvertToRefPayloadINTEL",
+      "class"  : "@exclude",
       "opcode" : 5734,
       "operands" : [
         { "kind" : "IdResultType" },
     },
     {
       "opname" : "OpSubgroupAvcMceConvertToRefResultINTEL",
+      "class"  : "@exclude",
       "opcode" : 5735,
       "operands" : [
         { "kind" : "IdResultType" },
     },
     {
       "opname" : "OpSubgroupAvcMceConvertToSicPayloadINTEL",
+      "class"  : "@exclude",
       "opcode" : 5736,
       "operands" : [
         { "kind" : "IdResultType" },
     },
     {
       "opname" : "OpSubgroupAvcMceConvertToSicResultINTEL",
+      "class"  : "@exclude",
       "opcode" : 5737,
       "operands" : [
         { "kind" : "IdResultType" },
     },
     {
       "opname" : "OpSubgroupAvcMceGetMotionVectorsINTEL",
+      "class"  : "@exclude",
       "opcode" : 5738,
       "operands" : [
         { "kind" : "IdResultType" },
     },
     {
       "opname" : "OpSubgroupAvcMceGetInterDistortionsINTEL",
+      "class"  : "@exclude",
       "opcode" : 5739,
       "operands" : [
         { "kind" : "IdResultType" },
     },
     {
       "opname" : "OpSubgroupAvcMceGetBestInterDistortionsINTEL",
+      "class"  : "@exclude",
       "opcode" : 5740,
       "operands" : [
         { "kind" : "IdResultType" },
     },
     {
       "opname" : "OpSubgroupAvcMceGetInterMajorShapeINTEL",
+      "class"  : "@exclude",
       "opcode" : 5741,
       "operands" : [
         { "kind" : "IdResultType" },
     },
     {
       "opname" : "OpSubgroupAvcMceGetInterMinorShapeINTEL",
+      "class"  : "@exclude",
       "opcode" : 5742,
       "operands" : [
         { "kind" : "IdResultType" },
     },
     {
       "opname" : "OpSubgroupAvcMceGetInterDirectionsINTEL",
+      "class"  : "@exclude",
       "opcode" : 5743,
       "operands" : [
         { "kind" : "IdResultType" },
     },
     {
       "opname" : "OpSubgroupAvcMceGetInterMotionVectorCountINTEL",
+      "class"  : "@exclude",
       "opcode" : 5744,
       "operands" : [
         { "kind" : "IdResultType" },
     },
     {
       "opname" : "OpSubgroupAvcMceGetInterReferenceIdsINTEL",
+      "class"  : "@exclude",
       "opcode" : 5745,
       "operands" : [
         { "kind" : "IdResultType" },
     },
     {
       "opname" : "OpSubgroupAvcMceGetInterReferenceInterlacedFieldPolaritiesINTEL",
+      "class"  : "@exclude",
       "opcode" : 5746,
       "operands" : [
         { "kind" : "IdResultType" },
     },
     {
       "opname" : "OpSubgroupAvcImeInitializeINTEL",
+      "class"  : "@exclude",
       "opcode" : 5747,
       "operands" : [
         { "kind" : "IdResultType" },
     },
     {
       "opname" : "OpSubgroupAvcImeSetSingleReferenceINTEL",
+      "class"  : "@exclude",
       "opcode" : 5748,
       "operands" : [
         { "kind" : "IdResultType" },
     },
     {
       "opname" : "OpSubgroupAvcImeSetDualReferenceINTEL",
+      "class"  : "@exclude",
       "opcode" : 5749,
       "operands" : [
         { "kind" : "IdResultType" },
     },
     {
       "opname" : "OpSubgroupAvcImeRefWindowSizeINTEL",
+      "class"  : "@exclude",
       "opcode" : 5750,
       "operands" : [
         { "kind" : "IdResultType" },
     },
     {
       "opname" : "OpSubgroupAvcImeAdjustRefOffsetINTEL",
+      "class"  : "@exclude",
       "opcode" : 5751,
       "operands" : [
         { "kind" : "IdResultType" },
     },
     {
       "opname" : "OpSubgroupAvcImeConvertToMcePayloadINTEL",
+      "class"  : "@exclude",
       "opcode" : 5752,
       "operands" : [
         { "kind" : "IdResultType" },
     },
     {
       "opname" : "OpSubgroupAvcImeSetMaxMotionVectorCountINTEL",
+      "class"  : "@exclude",
       "opcode" : 5753,
       "operands" : [
         { "kind" : "IdResultType" },
     },
     {
       "opname" : "OpSubgroupAvcImeSetUnidirectionalMixDisableINTEL",
+      "class"  : "@exclude",
       "opcode" : 5754,
       "operands" : [
         { "kind" : "IdResultType" },
     },
     {
       "opname" : "OpSubgroupAvcImeSetEarlySearchTerminationThresholdINTEL",
+      "class"  : "@exclude",
       "opcode" : 5755,
       "operands" : [
         { "kind" : "IdResultType" },
     },
     {
       "opname" : "OpSubgroupAvcImeSetWeightedSadINTEL",
+      "class"  : "@exclude",
       "opcode" : 5756,
       "operands" : [
         { "kind" : "IdResultType" },
     },
     {
       "opname" : "OpSubgroupAvcImeEvaluateWithSingleReferenceINTEL",
+      "class"  : "@exclude",
       "opcode" : 5757,
       "operands" : [
         { "kind" : "IdResultType" },
     },
     {
       "opname" : "OpSubgroupAvcImeEvaluateWithDualReferenceINTEL",
+      "class"  : "@exclude",
       "opcode" : 5758,
       "operands" : [
         { "kind" : "IdResultType" },
     },
     {
       "opname" : "OpSubgroupAvcImeEvaluateWithSingleReferenceStreaminINTEL",
+      "class"  : "@exclude",
       "opcode" : 5759,
       "operands" : [
         { "kind" : "IdResultType" },
     },
     {
       "opname" : "OpSubgroupAvcImeEvaluateWithDualReferenceStreaminINTEL",
+      "class"  : "@exclude",
       "opcode" : 5760,
       "operands" : [
         { "kind" : "IdResultType" },
     },
     {
       "opname" : "OpSubgroupAvcImeEvaluateWithSingleReferenceStreamoutINTEL",
+      "class"  : "@exclude",
       "opcode" : 5761,
       "operands" : [
         { "kind" : "IdResultType" },
     },
     {
       "opname" : "OpSubgroupAvcImeEvaluateWithDualReferenceStreamoutINTEL",
+      "class"  : "@exclude",
       "opcode" : 5762,
       "operands" : [
         { "kind" : "IdResultType" },
     },
     {
       "opname" : "OpSubgroupAvcImeEvaluateWithSingleReferenceStreaminoutINTEL",
+      "class"  : "@exclude",
       "opcode" : 5763,
       "operands" : [
         { "kind" : "IdResultType" },
     },
     {
       "opname" : "OpSubgroupAvcImeEvaluateWithDualReferenceStreaminoutINTEL",
+      "class"  : "@exclude",
       "opcode" : 5764,
       "operands" : [
         { "kind" : "IdResultType" },
     },
     {
       "opname" : "OpSubgroupAvcImeConvertToMceResultINTEL",
+      "class"  : "@exclude",
       "opcode" : 5765,
       "operands" : [
         { "kind" : "IdResultType" },
     },
     {
       "opname" : "OpSubgroupAvcImeGetSingleReferenceStreaminINTEL",
+      "class"  : "@exclude",
       "opcode" : 5766,
       "operands" : [
         { "kind" : "IdResultType" },
     },
     {
       "opname" : "OpSubgroupAvcImeGetDualReferenceStreaminINTEL",
+      "class"  : "@exclude",
       "opcode" : 5767,
       "operands" : [
         { "kind" : "IdResultType" },
     },
     {
       "opname" : "OpSubgroupAvcImeStripSingleReferenceStreamoutINTEL",
+      "class"  : "@exclude",
       "opcode" : 5768,
       "operands" : [
         { "kind" : "IdResultType" },
     },
     {
       "opname" : "OpSubgroupAvcImeStripDualReferenceStreamoutINTEL",
+      "class"  : "@exclude",
       "opcode" : 5769,
       "operands" : [
         { "kind" : "IdResultType" },
     },
     {
       "opname" : "OpSubgroupAvcImeGetStreamoutSingleReferenceMajorShapeMotionVectorsINTEL",
+      "class"  : "@exclude",
       "opcode" : 5770,
       "operands" : [
         { "kind" : "IdResultType" },
     },
     {
       "opname" : "OpSubgroupAvcImeGetStreamoutSingleReferenceMajorShapeDistortionsINTEL",
+      "class"  : "@exclude",
       "opcode" : 5771,
       "operands" : [
         { "kind" : "IdResultType" },
     },
     {
       "opname" : "OpSubgroupAvcImeGetStreamoutSingleReferenceMajorShapeReferenceIdsINTEL",
+      "class"  : "@exclude",
       "opcode" : 5772,
       "operands" : [
         { "kind" : "IdResultType" },
     },
     {
       "opname" : "OpSubgroupAvcImeGetStreamoutDualReferenceMajorShapeMotionVectorsINTEL",
+      "class"  : "@exclude",
       "opcode" : 5773,
       "operands" : [
         { "kind" : "IdResultType" },
     },
     {
       "opname" : "OpSubgroupAvcImeGetStreamoutDualReferenceMajorShapeDistortionsINTEL",
+      "class"  : "@exclude",
       "opcode" : 5774,
       "operands" : [
         { "kind" : "IdResultType" },
     },
     {
       "opname" : "OpSubgroupAvcImeGetStreamoutDualReferenceMajorShapeReferenceIdsINTEL",
+      "class"  : "@exclude",
       "opcode" : 5775,
       "operands" : [
         { "kind" : "IdResultType" },
     },
     {
       "opname" : "OpSubgroupAvcImeGetBorderReachedINTEL",
+      "class"  : "@exclude",
       "opcode" : 5776,
       "operands" : [
         { "kind" : "IdResultType" },
     },
     {
       "opname" : "OpSubgroupAvcImeGetTruncatedSearchIndicationINTEL",
+      "class"  : "@exclude",
       "opcode" : 5777,
       "operands" : [
         { "kind" : "IdResultType" },
     },
     {
       "opname" : "OpSubgroupAvcImeGetUnidirectionalEarlySearchTerminationINTEL",
+      "class"  : "@exclude",
       "opcode" : 5778,
       "operands" : [
         { "kind" : "IdResultType" },
     },
     {
       "opname" : "OpSubgroupAvcImeGetWeightingPatternMinimumMotionVectorINTEL",
+      "class"  : "@exclude",
       "opcode" : 5779,
       "operands" : [
         { "kind" : "IdResultType" },
     },
     {
       "opname" : "OpSubgroupAvcImeGetWeightingPatternMinimumDistortionINTEL",
+      "class"  : "@exclude",
       "opcode" : 5780,
       "operands" : [
         { "kind" : "IdResultType" },
     },
     {
       "opname" : "OpSubgroupAvcFmeInitializeINTEL",
+      "class"  : "@exclude",
       "opcode" : 5781,
       "operands" : [
         { "kind" : "IdResultType" },
     },
     {
       "opname" : "OpSubgroupAvcBmeInitializeINTEL",
+      "class"  : "@exclude",
       "opcode" : 5782,
       "operands" : [
         { "kind" : "IdResultType" },
     },
     {
       "opname" : "OpSubgroupAvcRefConvertToMcePayloadINTEL",
+      "class"  : "@exclude",
       "opcode" : 5783,
       "operands" : [
         { "kind" : "IdResultType" },
     },
     {
       "opname" : "OpSubgroupAvcRefSetBidirectionalMixDisableINTEL",
+      "class"  : "@exclude",
       "opcode" : 5784,
       "operands" : [
         { "kind" : "IdResultType" },
     },
     {
       "opname" : "OpSubgroupAvcRefSetBilinearFilterEnableINTEL",
+      "class"  : "@exclude",
       "opcode" : 5785,
       "operands" : [
         { "kind" : "IdResultType" },
     },
     {
       "opname" : "OpSubgroupAvcRefEvaluateWithSingleReferenceINTEL",
+      "class"  : "@exclude",
       "opcode" : 5786,
       "operands" : [
         { "kind" : "IdResultType" },
     },
     {
       "opname" : "OpSubgroupAvcRefEvaluateWithDualReferenceINTEL",
+      "class"  : "@exclude",
       "opcode" : 5787,
       "operands" : [
         { "kind" : "IdResultType" },
     },
     {
       "opname" : "OpSubgroupAvcRefEvaluateWithMultiReferenceINTEL",
+      "class"  : "@exclude",
       "opcode" : 5788,
       "operands" : [
         { "kind" : "IdResultType" },
     },
     {
       "opname" : "OpSubgroupAvcRefEvaluateWithMultiReferenceInterlacedINTEL",
+      "class"  : "@exclude",
       "opcode" : 5789,
       "operands" : [
         { "kind" : "IdResultType" },
     },
     {
       "opname" : "OpSubgroupAvcRefConvertToMceResultINTEL",
+      "class"  : "@exclude",
       "opcode" : 5790,
       "operands" : [
         { "kind" : "IdResultType" },
     },
     {
       "opname" : "OpSubgroupAvcSicInitializeINTEL",
+      "class"  : "@exclude",
       "opcode" : 5791,
       "operands" : [
         { "kind" : "IdResultType" },
     },
     {
       "opname" : "OpSubgroupAvcSicConfigureSkcINTEL",
+      "class"  : "@exclude",
       "opcode" : 5792,
       "operands" : [
         { "kind" : "IdResultType" },
     },
     {
       "opname" : "OpSubgroupAvcSicConfigureIpeLumaINTEL",
+      "class"  : "@exclude",
       "opcode" : 5793,
       "operands" : [
         { "kind" : "IdResultType" },
     },
     {
       "opname" : "OpSubgroupAvcSicConfigureIpeLumaChromaINTEL",
+      "class"  : "@exclude",
       "opcode" : 5794,
       "operands" : [
         { "kind" : "IdResultType" },
     },
     {
       "opname" : "OpSubgroupAvcSicGetMotionVectorMaskINTEL",
+      "class"  : "@exclude",
       "opcode" : 5795,
       "operands" : [
         { "kind" : "IdResultType" },
     },
     {
       "opname" : "OpSubgroupAvcSicConvertToMcePayloadINTEL",
+      "class"  : "@exclude",
       "opcode" : 5796,
       "operands" : [
         { "kind" : "IdResultType" },
     },
     {
       "opname" : "OpSubgroupAvcSicSetIntraLumaShapePenaltyINTEL",
+      "class"  : "@exclude",
       "opcode" : 5797,
       "operands" : [
         { "kind" : "IdResultType" },
     },
     {
       "opname" : "OpSubgroupAvcSicSetIntraLumaModeCostFunctionINTEL",
+      "class"  : "@exclude",
       "opcode" : 5798,
       "operands" : [
         { "kind" : "IdResultType" },
     },
     {
       "opname" : "OpSubgroupAvcSicSetIntraChromaModeCostFunctionINTEL",
+      "class"  : "@exclude",
       "opcode" : 5799,
       "operands" : [
         { "kind" : "IdResultType" },
     },
     {
       "opname" : "OpSubgroupAvcSicSetBilinearFilterEnableINTEL",
+      "class"  : "@exclude",
       "opcode" : 5800,
       "operands" : [
         { "kind" : "IdResultType" },
     },
     {
       "opname" : "OpSubgroupAvcSicSetSkcForwardTransformEnableINTEL",
+      "class"  : "@exclude",
       "opcode" : 5801,
       "operands" : [
         { "kind" : "IdResultType" },
     },
     {
       "opname" : "OpSubgroupAvcSicSetBlockBasedRawSkipSadINTEL",
+      "class"  : "@exclude",
       "opcode" : 5802,
       "operands" : [
         { "kind" : "IdResultType" },
     },
     {
       "opname" : "OpSubgroupAvcSicEvaluateIpeINTEL",
+      "class"  : "@exclude",
       "opcode" : 5803,
       "operands" : [
         { "kind" : "IdResultType" },
     },
     {
       "opname" : "OpSubgroupAvcSicEvaluateWithSingleReferenceINTEL",
+      "class"  : "@exclude",
       "opcode" : 5804,
       "operands" : [
         { "kind" : "IdResultType" },
     },
     {
       "opname" : "OpSubgroupAvcSicEvaluateWithDualReferenceINTEL",
+      "class"  : "@exclude",
       "opcode" : 5805,
       "operands" : [
         { "kind" : "IdResultType" },
     },
     {
       "opname" : "OpSubgroupAvcSicEvaluateWithMultiReferenceINTEL",
+      "class"  : "@exclude",
       "opcode" : 5806,
       "operands" : [
         { "kind" : "IdResultType" },
     },
     {
       "opname" : "OpSubgroupAvcSicEvaluateWithMultiReferenceInterlacedINTEL",
+      "class"  : "@exclude",
       "opcode" : 5807,
       "operands" : [
         { "kind" : "IdResultType" },
     },
     {
       "opname" : "OpSubgroupAvcSicConvertToMceResultINTEL",
+      "class"  : "@exclude",
       "opcode" : 5808,
       "operands" : [
         { "kind" : "IdResultType" },
     },
     {
       "opname" : "OpSubgroupAvcSicGetIpeLumaShapeINTEL",
+      "class"  : "@exclude",
       "opcode" : 5809,
       "operands" : [
         { "kind" : "IdResultType" },
     },
     {
       "opname" : "OpSubgroupAvcSicGetBestIpeLumaDistortionINTEL",
+      "class"  : "@exclude",
       "opcode" : 5810,
       "operands" : [
         { "kind" : "IdResultType" },
     },
     {
       "opname" : "OpSubgroupAvcSicGetBestIpeChromaDistortionINTEL",
+      "class"  : "@exclude",
       "opcode" : 5811,
       "operands" : [
         { "kind" : "IdResultType" },
     },
     {
       "opname" : "OpSubgroupAvcSicGetPackedIpeLumaModesINTEL",
+      "class"  : "@exclude",
       "opcode" : 5812,
       "operands" : [
         { "kind" : "IdResultType" },
     },
     {
       "opname" : "OpSubgroupAvcSicGetIpeChromaModeINTEL",
+      "class"  : "@exclude",
       "opcode" : 5813,
       "operands" : [
         { "kind" : "IdResultType" },
     },
     {
       "opname" : "OpSubgroupAvcSicGetPackedSkcLumaCountThresholdINTEL",
+      "class"  : "@exclude",
       "opcode" : 5814,
       "operands" : [
         { "kind" : "IdResultType" },
     },
     {
       "opname" : "OpSubgroupAvcSicGetPackedSkcLumaSumThresholdINTEL",
+      "class"  : "@exclude",
       "opcode" : 5815,
       "operands" : [
         { "kind" : "IdResultType" },
     },
     {
       "opname" : "OpSubgroupAvcSicGetInterRawSadsINTEL",
+      "class"  : "@exclude",
       "opcode" : 5816,
       "operands" : [
         { "kind" : "IdResultType" },
       "version" : "None"
     },
     {
-      "opname" : "OpBeginInvocationInterlockEXT",
-      "opcode" : 5364,
-      "capabilities" : [ "FragmentShaderSampleInterlockEXT", "FragmentShaderPixelInterlockEXT", "FragmentShaderShadingRateInterlockEXT" ],
-      "extensions" : [ "SPV_EXT_fragment_shader_interlock" ],
+      "opname" : "OpLoopControlINTEL",
+      "class"  : "Reserved",
+      "opcode" : 5887,
+      "operands" : [
+        { "kind" : "LiteralInteger", "quantifier" : "*", "name" : "'Loop Control Parameters'" }
+      ],
+      "capabilities" : [ "UnstructuredLoopControlsINTEL" ],
+      "extensions" : [ "SPV_INTEL_unstructured_loop_controls" ],
       "version" : "None"
     },
     {
-      "opname" : "OpEndInvocationInterlockEXT",
-      "opcode" : 5365,
-      "capabilities" : [ "FragmentShaderSampleInterlockEXT", "FragmentShaderPixelInterlockEXT", "FragmentShaderShadingRateInterlockEXT" ],
-      "extensions" : [ "SPV_EXT_fragment_shader_interlock" ],
+      "opname" : "OpReadPipeBlockingINTEL",
+      "class"  : "Pipe",
+      "opcode" : 5946,
+      "operands" : [
+        { "kind" : "IdResultType" },
+        { "kind" : "IdResult" },
+        { "kind" : "IdRef", "name" : "'Packet Size'" },
+        { "kind" : "IdRef", "name" : "'Packet Alignment'" }
+      ],
+      "capabilities" : [ "BlockingPipesINTEL" ],
+      "extensions" : [ "SPV_INTEL_blocking_pipes" ],
+      "version" : "None"
+    },
+    {
+      "opname" : "OpWritePipeBlockingINTEL",
+      "class"  : "Pipe",
+      "opcode" : 5947,
+      "operands" : [
+        { "kind" : "IdResultType" },
+        { "kind" : "IdResult" },
+        { "kind" : "IdRef", "name" : "'Packet Size'" },
+        { "kind" : "IdRef", "name" : "'Packet Alignment'" }
+      ],
+      "capabilities" : [ "BlockingPipesINTEL" ],
+      "extensions" : [ "SPV_INTEL_blocking_pipes" ],
+      "version" : "None"
+    },
+    {
+      "opname" : "OpFPGARegINTEL",
+      "class"  : "Reserved",
+      "opcode" : 5949,
+      "operands" : [
+        { "kind" : "IdResultType" },
+        { "kind" : "IdResult" },
+        { "kind" : "IdRef", "name" : "'Result'" },
+        { "kind" : "IdRef", "name" : "'Input'" }
+      ],
+      "capabilities" : [ "FPGARegINTEL" ],
+      "extensions" : [ "SPV_INTEL_fpga_reg" ],
+      "version" : "None"
+    },
+    {
+        "opname" : "OpRayQueryGetRayTMinKHR",
+        "class" : "Reserved",
+        "opcode" : 6016,
+        "operands" : [
+            { "kind" : "IdResultType" },
+            { "kind" : "IdResult" },
+            {
+                "kind" : "IdRef",
+                "name" : "'RayQuery'"
+            }
+        ],
+        "capabilities" : [ "RayQueryProvisionalKHR" ],
+        "extensions" : [ "SPV_KHR_ray_query" ],
+        "version" : "None"
+    },
+    {
+        "opname" : "OpRayQueryGetRayFlagsKHR",
+        "class" : "Reserved",
+        "opcode" : 6017,
+        "operands" : [
+            { "kind" : "IdResultType" },
+            { "kind" : "IdResult" },
+            {
+                "kind" : "IdRef",
+                "name" : "'RayQuery'"
+            }
+        ],
+        "capabilities" : [ "RayQueryProvisionalKHR" ],
+        "extensions" : [ "SPV_KHR_ray_query" ],
+        "version" : "None"
+    },
+    {
+        "opname" : "OpRayQueryGetIntersectionTKHR",
+        "class" : "Reserved",
+        "opcode" : 6018,
+        "operands" : [
+            { "kind" : "IdResultType" },
+            { "kind" : "IdResult" },
+            {
+                "kind" : "IdRef",
+                "name" : "'RayQuery'"
+            },
+            {
+                "kind" : "IdRef",
+                "name" : "'Intersection'"
+            }
+        ],
+        "capabilities" : [ "RayQueryProvisionalKHR" ],
+        "extensions" : [ "SPV_KHR_ray_query" ],
+        "version" : "None"
+    },
+    {
+        "opname" : "OpRayQueryGetIntersectionInstanceCustomIndexKHR",
+        "class" : "Reserved",
+        "opcode" : 6019,
+        "operands" : [
+            { "kind" : "IdResultType" },
+            { "kind" : "IdResult" },
+            {
+                "kind" : "IdRef",
+                "name" : "'RayQuery'"
+            },
+            {
+                "kind" : "IdRef",
+                "name" : "'Intersection'"
+            }
+        ],
+        "capabilities" : [ "RayQueryProvisionalKHR" ],
+        "extensions" : [ "SPV_KHR_ray_query" ],
+        "version" : "None"
+    },
+    {
+        "opname" : "OpRayQueryGetIntersectionInstanceIdKHR",
+        "class" : "Reserved",
+        "opcode" : 6020,
+        "operands" : [
+            { "kind" : "IdResultType" },
+            { "kind" : "IdResult" },
+            {
+                "kind" : "IdRef",
+                "name" : "'RayQuery'"
+            },
+            {
+                "kind" : "IdRef",
+                "name" : "'Intersection'"
+            }
+        ],
+        "capabilities" : [ "RayQueryProvisionalKHR" ],
+        "extensions" : [ "SPV_KHR_ray_query" ],
+        "version" : "None"
+    },
+    {
+        "opname" : "OpRayQueryGetIntersectionInstanceShaderBindingTableRecordOffsetKHR",
+        "class" : "Reserved",
+        "opcode" : 6021,
+        "operands" : [
+            { "kind" : "IdResultType" },
+            { "kind" : "IdResult" },
+            {
+                "kind" : "IdRef",
+                "name" : "'RayQuery'"
+            },
+            {
+                "kind" : "IdRef",
+                "name" : "'Intersection'"
+            }
+        ],
+        "capabilities" : [ "RayQueryProvisionalKHR" ],
+        "extensions" : [ "SPV_KHR_ray_query" ],
+        "version" : "None"
+    },
+    {
+        "opname" : "OpRayQueryGetIntersectionGeometryIndexKHR",
+        "class" : "Reserved",
+        "opcode" : 6022,
+        "operands" : [
+            { "kind" : "IdResultType" },
+            { "kind" : "IdResult" },
+            {
+                "kind" : "IdRef",
+                "name" : "'RayQuery'"
+            },
+            {
+                "kind" : "IdRef",
+                "name" : "'Intersection'"
+            }
+        ],
+        "capabilities" : [ "RayQueryProvisionalKHR" ],
+        "extensions" : [ "SPV_KHR_ray_query" ],
+        "version" : "None"
+    },
+    {
+        "opname" : "OpRayQueryGetIntersectionPrimitiveIndexKHR",
+        "class" : "Reserved",
+        "opcode" : 6023,
+        "operands" : [
+            { "kind" : "IdResultType" },
+            { "kind" : "IdResult" },
+            {
+                "kind" : "IdRef",
+                "name" : "'RayQuery'"
+            },
+            {
+                "kind" : "IdRef",
+                "name" : "'Intersection'"
+            }
+        ],
+        "capabilities" : [ "RayQueryProvisionalKHR" ],
+        "extensions" : [ "SPV_KHR_ray_query" ],
+        "version" : "None"
+    },
+    {
+        "opname" : "OpRayQueryGetIntersectionBarycentricsKHR",
+        "class" : "Reserved",
+        "opcode" : 6024,
+        "operands" : [
+            { "kind" : "IdResultType" },
+            { "kind" : "IdResult" },
+            {
+                "kind" : "IdRef",
+                "name" : "'RayQuery'"
+            },
+            {
+                "kind" : "IdRef",
+                "name" : "'Intersection'"
+            }
+        ],
+        "capabilities" : [ "RayQueryProvisionalKHR" ],
+        "extensions" : [ "SPV_KHR_ray_query" ],
+        "version" : "None"
+    },
+    {
+        "opname" : "OpRayQueryGetIntersectionFrontFaceKHR",
+        "class" : "Reserved",
+        "opcode" : 6025,
+        "operands" : [
+            { "kind" : "IdResultType" },
+            { "kind" : "IdResult" },
+            {
+                "kind" : "IdRef",
+                "name" : "'RayQuery'"
+            },
+            {
+                "kind" : "IdRef",
+                "name" : "'Intersection'"
+            }
+        ],
+        "capabilities" : [ "RayQueryProvisionalKHR" ],
+        "extensions" : [ "SPV_KHR_ray_query" ],
+        "version" : "None"
+    },
+    {
+        "opname" : "OpRayQueryGetIntersectionCandidateAABBOpaqueKHR",
+        "class" : "Reserved",
+        "opcode" : 6026,
+        "operands" : [
+            { "kind" : "IdResultType" },
+            { "kind" : "IdResult" },
+            {
+                "kind" : "IdRef",
+                "name" : "'RayQuery'"
+            }
+        ],
+        "capabilities" : [ "RayQueryProvisionalKHR" ],
+        "extensions" : [ "SPV_KHR_ray_query" ],
+        "version" : "None"
+    },
+    {
+        "opname" : "OpRayQueryGetIntersectionObjectRayDirectionKHR",
+        "class" : "Reserved",
+        "opcode" : 6027,
+        "operands" : [
+            { "kind" : "IdResultType" },
+            { "kind" : "IdResult" },
+            {
+                "kind" : "IdRef",
+                "name" : "'RayQuery'"
+            },
+            {
+                "kind" : "IdRef",
+                "name" : "'Intersection'"
+            }
+        ],
+        "capabilities" : [ "RayQueryProvisionalKHR" ],
+        "extensions" : [ "SPV_KHR_ray_query" ],
+        "version" : "None"
+    },
+    {
+        "opname" : "OpRayQueryGetIntersectionObjectRayOriginKHR",
+        "class" : "Reserved",
+        "opcode" : 6028,
+        "operands" : [
+            { "kind" : "IdResultType" },
+            { "kind" : "IdResult" },
+            {
+                "kind" : "IdRef",
+                "name" : "'RayQuery'"
+            },
+            {
+                "kind" : "IdRef",
+                "name" : "'Intersection'"
+            }
+        ],
+        "capabilities" : [ "RayQueryProvisionalKHR" ],
+        "extensions" : [ "SPV_KHR_ray_query" ],
+        "version" : "None"
+    },
+    {
+        "opname" : "OpRayQueryGetWorldRayDirectionKHR",
+        "class" : "Reserved",
+        "opcode" : 6029,
+        "operands" : [
+            { "kind" : "IdResultType" },
+            { "kind" : "IdResult" },
+            {
+                "kind" : "IdRef",
+                "name" : "'RayQuery'"
+            }
+        ],
+        "capabilities" : [ "RayQueryProvisionalKHR" ],
+        "extensions" : [ "SPV_KHR_ray_query" ],
+        "version" : "None"
+    },
+    {
+        "opname" : "OpRayQueryGetWorldRayOriginKHR",
+        "class" : "Reserved",
+        "opcode" : 6030,
+        "operands" : [
+            { "kind" : "IdResultType" },
+            { "kind" : "IdResult" },
+            {
+                "kind" : "IdRef",
+                "name" : "'RayQuery'"
+            }
+        ],
+        "capabilities" : [ "RayQueryProvisionalKHR" ],
+        "extensions" : [ "SPV_KHR_ray_query" ],
+        "version" : "None"
+    },
+    {
+        "opname" : "OpRayQueryGetIntersectionObjectToWorldKHR",
+        "class" : "Reserved",
+        "opcode" : 6031,
+        "operands" : [
+            { "kind" : "IdResultType" },
+            { "kind" : "IdResult" },
+            {
+                "kind" : "IdRef",
+                "name" : "'RayQuery'"
+            },
+            {
+                "kind" : "IdRef",
+                "name" : "'Intersection'"
+            }
+        ],
+        "capabilities" : [ "RayQueryProvisionalKHR" ],
+        "extensions" : [ "SPV_KHR_ray_query" ],
+        "version" : "None"
+    },
+    {
+        "opname" : "OpRayQueryGetIntersectionWorldToObjectKHR",
+        "class" : "Reserved",
+        "opcode" : 6032,
+        "operands" : [
+            { "kind" : "IdResultType" },
+            { "kind" : "IdResult" },
+            {
+                "kind" : "IdRef",
+                "name" : "'RayQuery'"
+            },
+             {
+                "kind" : "IdRef",
+                "name" : "'Intersection'"
+            }
+        ],
+        "capabilities" : [ "RayQueryProvisionalKHR" ],
+        "extensions" : [ "SPV_KHR_ray_query" ],
+        "version" : "None"
+    },
+    {
+      "opname" : "OpAtomicFAddEXT",
+      "class"  : "Atomic",
+      "opcode" : 6035,
+      "operands" : [
+        { "kind" : "IdResultType" },
+        { "kind" : "IdResult" },
+        { "kind" : "IdRef",             "name" : "'Pointer'" },
+        { "kind" : "IdScope",           "name" : "'Memory'" },
+        { "kind" : "IdMemorySemantics", "name" : "'Semantics'" },
+        { "kind" : "IdRef",             "name" : "'Value'" }
+      ],
+      "capabilities" : [ "AtomicFloat32AddEXT", "AtomicFloat64AddEXT" ],
+      "extensions" : [ "SPV_EXT_shader_atomic_float_add" ],
       "version" : "None"
     }
   ],
             { "kind" : "IdRef" }
           ]
         },
+        {
+          "enumerant" : "MakeTexelAvailable",
+          "value" : "0x0100",
+          "capabilities" : [ "VulkanMemoryModel" ],
+          "parameters" : [
+            { "kind" : "IdScope" }
+          ],
+          "version" : "1.5"
+        },
         {
           "enumerant" : "MakeTexelAvailableKHR",
           "value" : "0x0100",
-          "capabilities" : [ "VulkanMemoryModelKHR" ],
+          "capabilities" : [ "VulkanMemoryModel" ],
           "parameters" : [
             { "kind" : "IdScope" }
-          ]
+          ],
+          "extensions" : [ "SPV_KHR_vulkan_memory_model" ],
+          "version" : "1.5"
+        },
+        {
+          "enumerant" : "MakeTexelVisible",
+          "value" : "0x0200",
+          "capabilities" : [ "VulkanMemoryModel" ],
+          "parameters" : [
+            { "kind" : "IdScope" }
+          ],
+          "version" : "1.5"
         },
         {
           "enumerant" : "MakeTexelVisibleKHR",
           "value" : "0x0200",
-          "capabilities" : [ "VulkanMemoryModelKHR" ],
+          "capabilities" : [ "VulkanMemoryModel" ],
           "parameters" : [
             { "kind" : "IdScope" }
-          ]
+          ],
+          "extensions" : [ "SPV_KHR_vulkan_memory_model" ],
+          "version" : "1.5"
+        },
+        {
+          "enumerant" : "NonPrivateTexel",
+          "value" : "0x0400",
+          "capabilities" : [ "VulkanMemoryModel" ],
+          "version" : "1.5"
         },
         {
           "enumerant" : "NonPrivateTexelKHR",
           "value" : "0x0400",
-          "capabilities" : [ "VulkanMemoryModelKHR" ]
+          "capabilities" : [ "VulkanMemoryModel" ],
+          "extensions" : [ "SPV_KHR_vulkan_memory_model" ],
+          "version" : "1.5"
+        },
+        {
+          "enumerant" : "VolatileTexel",
+          "value" : "0x0800",
+          "capabilities" : [ "VulkanMemoryModel" ],
+          "version" : "1.5"
         },
         {
           "enumerant" : "VolatileTexelKHR",
           "value" : "0x0800",
-          "capabilities" : [ "VulkanMemoryModelKHR" ]
+          "capabilities" : [ "VulkanMemoryModel" ],
+          "extensions" : [ "SPV_KHR_vulkan_memory_model" ],
+          "version" : "1.5"
         },
         {
           "enumerant" : "SignExtend",
             { "kind" : "LiteralInteger" }
           ],
           "version" : "1.4"
-        }
-      ]
-    },
-    {
-      "category" : "BitEnum",
-      "kind" : "FunctionControl",
-      "enumerants" : [
+        },
         {
-          "enumerant" : "None",
-          "value" : "0x0000"
+          "enumerant" : "InitiationIntervalINTEL",
+          "value" : "0x10000",
+          "parameters" : [
+            { "kind" : "LiteralInteger" }
+          ],
+          "capabilities" : [ "FPGALoopControlsINTEL" ],
+          "extensions" : [ "SPV_INTEL_fpga_loop_controls" ],
+          "version" : "None"
         },
         {
-          "enumerant" : "Inline",
-          "value" : "0x0001"
+          "enumerant" : "MaxConcurrencyINTEL",
+          "value" : "0x20000",
+          "parameters" : [
+            { "kind" : "LiteralInteger" }
+          ],
+          "capabilities" : [ "FPGALoopControlsINTEL" ],
+          "extensions" : [ "SPV_INTEL_fpga_loop_controls" ],
+          "version" : "None"
         },
         {
-          "enumerant" : "DontInline",
-          "value" : "0x0002"
+          "enumerant" : "DependencyArrayINTEL",
+          "value" : "0x40000",
+          "parameters" : [
+            { "kind" : "LiteralInteger" }
+          ],
+          "capabilities" : [ "FPGALoopControlsINTEL" ],
+          "extensions" : [ "SPV_INTEL_fpga_loop_controls" ],
+          "version" : "None"
         },
         {
-          "enumerant" : "Pure",
-          "value" : "0x0004"
+          "enumerant" : "PipelineEnableINTEL",
+          "value" : "0x80000",
+          "parameters" : [
+            { "kind" : "LiteralInteger" }
+          ],
+          "capabilities" : [ "FPGALoopControlsINTEL" ],
+          "extensions" : [ "SPV_INTEL_fpga_loop_controls" ],
+          "version" : "None"
         },
         {
-          "enumerant" : "Const",
-          "value" : "0x0008"
-        }
+          "enumerant" : "LoopCoalesceINTEL",
+          "value" : "0x100000",
+          "parameters" : [
+            { "kind" : "LiteralInteger" }
+          ],
+          "capabilities" : [ "FPGALoopControlsINTEL" ],
+          "extensions" : [ "SPV_INTEL_fpga_loop_controls" ],
+          "version" : "None"
+        },
+        {
+          "enumerant" : "MaxInterleavingINTEL",
+          "value" : "0x200000",
+          "parameters" : [
+            { "kind" : "LiteralInteger" }
+          ],
+          "capabilities" : [ "FPGALoopControlsINTEL" ],
+          "extensions" : [ "SPV_INTEL_fpga_loop_controls" ],
+          "version" : "None"
+        },
+        {
+          "enumerant" : "SpeculatedIterationsINTEL",
+          "value" : "0x400000",
+          "parameters" : [
+            { "kind" : "LiteralInteger" }
+          ],
+          "capabilities" : [ "FPGALoopControlsINTEL" ],
+          "extensions" : [ "SPV_INTEL_fpga_loop_controls" ],
+          "version" : "None"
+        }
+      ]
+    },
+    {
+      "category" : "BitEnum",
+      "kind" : "FunctionControl",
+      "enumerants" : [
+        {
+          "enumerant" : "None",
+          "value" : "0x0000"
+        },
+        {
+          "enumerant" : "Inline",
+          "value" : "0x0001"
+        },
+        {
+          "enumerant" : "DontInline",
+          "value" : "0x0002"
+        },
+        {
+          "enumerant" : "Pure",
+          "value" : "0x0004"
+        },
+        {
+          "enumerant" : "Const",
+          "value" : "0x0008"
+        }
       ]
     },
     {
           "enumerant" : "ImageMemory",
           "value" : "0x0800"
         },
+        {
+          "enumerant" : "OutputMemory",
+          "value" : "0x1000",
+          "capabilities" : [ "VulkanMemoryModel" ],
+          "version" : "1.5"
+        },
         {
           "enumerant" : "OutputMemoryKHR",
           "value" : "0x1000",
-          "capabilities" : [ "VulkanMemoryModelKHR" ]
+          "capabilities" : [ "VulkanMemoryModel" ],
+          "extensions" : [ "SPV_KHR_vulkan_memory_model" ],
+          "version" : "1.5"
+        },
+        {
+          "enumerant" : "MakeAvailable",
+          "value" : "0x2000",
+          "capabilities" : [ "VulkanMemoryModel" ],
+          "version" : "1.5"
         },
         {
           "enumerant" : "MakeAvailableKHR",
           "value" : "0x2000",
-          "capabilities" : [ "VulkanMemoryModelKHR" ]
+          "capabilities" : [ "VulkanMemoryModel" ],
+          "extensions" : [ "SPV_KHR_vulkan_memory_model" ],
+          "version" : "1.5"
+        },
+        {
+          "enumerant" : "MakeVisible",
+          "value" : "0x4000",
+          "capabilities" : [ "VulkanMemoryModel" ],
+          "version" : "1.5"
         },
         {
           "enumerant" : "MakeVisibleKHR",
           "value" : "0x4000",
-          "capabilities" : [ "VulkanMemoryModelKHR" ]
+          "capabilities" : [ "VulkanMemoryModel" ],
+          "extensions" : [ "SPV_KHR_vulkan_memory_model" ],
+          "version" : "1.5"
+        },
+        {
+          "enumerant" : "Volatile",
+          "value" : "0x8000",
+          "capabilities" : [ "VulkanMemoryModel" ],
+          "extensions" : [ "SPV_KHR_vulkan_memory_model" ],
+          "version" : "1.5"
         }
       ]
     },
           "enumerant" : "Nontemporal",
           "value" : "0x0004"
         },
+        {
+          "enumerant" : "MakePointerAvailable",
+          "value" : "0x0008",
+          "parameters" : [
+            { "kind" : "IdScope" }
+          ],
+          "capabilities" : [ "VulkanMemoryModel" ],
+          "version" : "1.5"
+        },
         {
           "enumerant" : "MakePointerAvailableKHR",
           "value" : "0x0008",
           "parameters" : [
             { "kind" : "IdScope" }
           ],
-          "capabilities" : [ "VulkanMemoryModelKHR" ]
+          "capabilities" : [ "VulkanMemoryModel" ],
+          "extensions" : [ "SPV_KHR_vulkan_memory_model" ],
+          "version" : "1.5"
+        },
+        {
+          "enumerant" : "MakePointerVisible",
+          "value" : "0x0010",
+          "parameters" : [
+            { "kind" : "IdScope" }
+          ],
+          "capabilities" : [ "VulkanMemoryModel" ],
+          "version" : "1.5"
         },
         {
           "enumerant" : "MakePointerVisibleKHR",
           "parameters" : [
             { "kind" : "IdScope" }
           ],
-          "capabilities" : [ "VulkanMemoryModelKHR" ]
+          "capabilities" : [ "VulkanMemoryModel" ],
+          "extensions" : [ "SPV_KHR_vulkan_memory_model" ],
+          "version" : "1.5"
+        },
+        {
+          "enumerant" : "NonPrivatePointer",
+          "value" : "0x0020",
+          "capabilities" : [ "VulkanMemoryModel" ],
+          "version" : "1.5"
         },
         {
           "enumerant" : "NonPrivatePointerKHR",
           "value" : "0x0020",
-          "capabilities" : [ "VulkanMemoryModelKHR" ]
+          "capabilities" : [ "VulkanMemoryModel" ],
+          "extensions" : [ "SPV_KHR_vulkan_memory_model" ],
+          "version" : "1.5"
         }
       ]
     },
         }
       ]
     },
+    {
+      "category" : "BitEnum",
+      "kind" : "RayFlags",
+      "enumerants" : [
+        {
+          "enumerant" : "NoneKHR",
+          "value" : "0x0000",
+          "capabilities" : [ "RayQueryProvisionalKHR","RayTracingProvisionalKHR" ],
+          "version" : "None"
+        },
+        {
+          "enumerant" : "OpaqueKHR",
+          "value" : "0x0001",
+          "capabilities" : [ "RayQueryProvisionalKHR","RayTracingProvisionalKHR" ],
+          "version" : "None"
+        },
+        {
+          "enumerant" : "NoOpaqueKHR",
+          "value" : "0x0002",
+          "capabilities" : [ "RayQueryProvisionalKHR","RayTracingProvisionalKHR" ],
+          "version" : "None"
+        },
+        {
+          "enumerant" : "TerminateOnFirstHitKHR",
+          "value" : "0x0004",
+          "capabilities" : [ "RayQueryProvisionalKHR","RayTracingProvisionalKHR" ],
+          "version" : "None"
+        },
+        {
+          "enumerant" : "SkipClosestHitShaderKHR",
+          "value" : "0x0008",
+          "capabilities" : [ "RayQueryProvisionalKHR","RayTracingProvisionalKHR" ],
+          "version" : "None"
+        },
+        {
+          "enumerant" : "CullBackFacingTrianglesKHR",
+          "value" : "0x0010",
+          "capabilities" : [ "RayQueryProvisionalKHR","RayTracingProvisionalKHR" ],
+          "version" : "None"
+        },
+        {
+          "enumerant" : "CullFrontFacingTrianglesKHR",
+          "value" : "0x0020",
+          "capabilities" : [ "RayQueryProvisionalKHR","RayTracingProvisionalKHR" ],
+          "version" : "None"
+        },
+        {
+          "enumerant" : "CullOpaqueKHR",
+          "value" : "0x0040",
+          "capabilities" : [ "RayQueryProvisionalKHR","RayTracingProvisionalKHR" ],
+          "version" : "None"
+        },
+        {
+          "enumerant" : "CullNoOpaqueKHR",
+          "value" : "0x0080",
+          "capabilities" : [ "RayQueryProvisionalKHR","RayTracingProvisionalKHR" ],
+          "version" : "None"
+        },
+        {
+          "enumerant" : "SkipTrianglesKHR",
+          "value" : "0x0100",
+          "capabilities" : [ "RayTraversalPrimitiveCullingProvisionalKHR" ],
+          "version" : "None"
+        },
+        {
+          "enumerant" : "SkipAABBsKHR",
+          "value" : "0x0200",
+          "capabilities" : [ "RayTraversalPrimitiveCullingProvisionalKHR" ],
+          "version" : "None"
+        }
+      ]
+    },
     {
       "category" : "ValueEnum",
       "kind" : "SourceLanguage",
         {
           "enumerant" : "TaskNV",
           "value" : 5267,
-          "capabilities" : [ "MeshShadingNV" ]
+          "capabilities" : [ "MeshShadingNV" ],
+          "version" : "None"
         },
         {
           "enumerant" : "MeshNV",
           "value" : 5268,
-          "capabilities" : [ "MeshShadingNV" ]
+          "capabilities" : [ "MeshShadingNV" ],
+          "version" : "None"
         },
         {
           "enumerant" : "RayGenerationNV",
           "value" : 5313,
-          "capabilities" : [ "RayTracingNV" ]
+          "capabilities" : [ "RayTracingNV" , "RayTracingProvisionalKHR" ],
+          "version" : "None"
+        },
+        {
+          "enumerant" : "RayGenerationKHR",
+          "value" : 5313,
+          "capabilities" : [ "RayTracingNV" , "RayTracingProvisionalKHR" ],
+          "version" : "None"
         },
         {
           "enumerant" : "IntersectionNV",
           "value" : 5314,
-          "capabilities" : [ "RayTracingNV" ]
+          "capabilities" : [ "RayTracingNV" , "RayTracingProvisionalKHR" ],
+          "version" : "None"
+        },
+        {
+          "enumerant" : "IntersectionKHR",
+          "value" : 5314,
+          "capabilities" : [ "RayTracingNV" , "RayTracingProvisionalKHR" ],
+          "version" : "None"
         },
         {
           "enumerant" : "AnyHitNV",
           "value" : 5315,
-          "capabilities" : [ "RayTracingNV" ]
+          "capabilities" : [ "RayTracingNV" , "RayTracingProvisionalKHR" ],
+          "version" : "None"
+        },
+        {
+          "enumerant" : "AnyHitKHR",
+          "value" : 5315,
+          "capabilities" : [ "RayTracingNV" , "RayTracingProvisionalKHR" ],
+          "version" : "None"
         },
         {
           "enumerant" : "ClosestHitNV",
           "value" : 5316,
-          "capabilities" : [ "RayTracingNV" ]
+          "capabilities" : [ "RayTracingNV" , "RayTracingProvisionalKHR" ],
+          "version" : "None"
+        },
+        {
+          "enumerant" : "ClosestHitKHR",
+          "value" : 5316,
+          "capabilities" : [ "RayTracingNV" , "RayTracingProvisionalKHR" ],
+          "version" : "None"
         },
         {
           "enumerant" : "MissNV",
           "value" : 5317,
-          "capabilities" : [ "RayTracingNV" ]
+          "capabilities" : [ "RayTracingNV" , "RayTracingProvisionalKHR" ],
+          "version" : "None"
+        },
+        {
+          "enumerant" : "MissKHR",
+          "value" : 5317,
+          "capabilities" : [ "RayTracingNV" , "RayTracingProvisionalKHR" ],
+          "version" : "None"
         },
         {
           "enumerant" : "CallableNV",
           "value" : 5318,
-          "capabilities" : [ "RayTracingNV" ]
+          "capabilities" : [ "RayTracingNV" , "RayTracingProvisionalKHR" ],
+          "version" : "None"
+        },
+        {
+          "enumerant" : "CallableKHR",
+          "value" : 5318,
+          "capabilities" : [ "RayTracingNV" , "RayTracingProvisionalKHR" ],
+          "version" : "None"
         }
       ]
     },
           "value" : 2,
           "capabilities" : [ "Addresses" ]
         },
+        {
+          "enumerant" : "PhysicalStorageBuffer64",
+          "value" : 5348,
+          "extensions" : [ "SPV_EXT_physical_storage_buffer", "SPV_KHR_physical_storage_buffer" ],
+          "capabilities" : [ "PhysicalStorageBufferAddresses" ],
+          "version" : "1.5"
+        },
         {
           "enumerant" : "PhysicalStorageBuffer64EXT",
           "value" : 5348,
           "extensions" : [ "SPV_EXT_physical_storage_buffer" ],
-          "capabilities" : [ "PhysicalStorageBufferAddressesEXT" ]
+          "capabilities" : [ "PhysicalStorageBufferAddresses" ],
+          "version" : "1.5"
         }
       ]
     },
           "value" : 2,
           "capabilities" : [ "Kernel" ]
         },
+        {
+          "enumerant" : "Vulkan",
+          "value" : 3,
+          "capabilities" : [ "VulkanMemoryModel" ],
+          "version" : "1.5"
+        },
         {
           "enumerant" : "VulkanKHR",
           "value" : 3,
-          "capabilities" : [ "VulkanMemoryModelKHR" ]
+          "capabilities" : [ "VulkanMemoryModel" ],
+          "extensions" : [ "SPV_KHR_vulkan_memory_model" ],
+          "version" : "1.5"
         }
       ]
     },
           "capabilities" : [ "FragmentShaderShadingRateInterlockEXT" ],
           "extensions" : [ "SPV_EXT_fragment_shader_interlock" ],
           "version" : "None"
+        },
+        {
+          "enumerant" : "MaxWorkgroupSizeINTEL",
+          "value" : 5893,
+          "parameters" : [
+            { "kind" : "LiteralInteger", "name" : "'max_x_size'" },
+            { "kind" : "LiteralInteger", "name" : "'max_y_size'" },
+            { "kind" : "LiteralInteger", "name" : "'max_z_size'" }
+          ],
+          "capabilities" : [ "KernelAttributesINTEL" ],
+          "extensions" : [ "SPV_INTEL_kernel_attributes" ],
+          "version" : "None"
+        },
+        {
+          "enumerant" : "MaxWorkDimINTEL",
+          "value" : 5894,
+          "parameters" : [
+            { "kind" : "LiteralInteger", "name" : "'max_dimensions'" }
+          ],
+          "capabilities" : [ "KernelAttributesINTEL" ],
+          "extensions" : [ "SPV_INTEL_kernel_attributes" ],
+          "version" : "None"
+        },
+        {
+          "enumerant" : "NoGlobalOffsetINTEL",
+          "value" : 5895,
+          "capabilities" : [ "KernelAttributesINTEL" ],
+          "extensions" : [ "SPV_INTEL_kernel_attributes" ],
+          "version" : "None"
+        },
+        {
+          "enumerant" : "NumSIMDWorkitemsINTEL",
+          "value" : 5896,
+          "parameters" : [
+            { "kind" : "LiteralInteger", "name" : "'vector_width'" }
+          ],
+          "capabilities" : [ "FPGAKernelAttributesINTEL" ],
+          "extensions" : [ "SPV_INTEL_kernel_attributes" ],
+          "version" : "None"
         }
       ]
     },
         {
           "enumerant" : "CallableDataNV",
           "value" : 5328,
-          "extensions" : [ "SPV_NV_ray_tracing" ],
-          "capabilities" : [ "RayTracingNV" ]
+          "extensions" : [ "SPV_NV_ray_tracing" , "SPV_KHR_ray_tracing" ],
+          "capabilities" : [ "RayTracingNV" , "RayTracingProvisionalKHR" ],
+          "version" : "None"
+        },
+        {
+          "enumerant" : "CallableDataKHR",
+          "value" : 5328,
+          "extensions" : [ "SPV_NV_ray_tracing" , "SPV_KHR_ray_tracing" ],
+          "capabilities" : [ "RayTracingNV" , "RayTracingProvisionalKHR" ],
+          "version" : "None"
         },
         {
           "enumerant" : "IncomingCallableDataNV",
           "value" : 5329,
-          "extensions" : [ "SPV_NV_ray_tracing" ],
-          "capabilities" : [ "RayTracingNV" ]
+          "extensions" : [ "SPV_NV_ray_tracing" , "SPV_KHR_ray_tracing" ],
+          "capabilities" : [ "RayTracingNV" , "RayTracingProvisionalKHR" ],
+          "version" : "None"
+        },
+        {
+          "enumerant" : "IncomingCallableDataKHR",
+          "value" : 5329,
+          "extensions" : [ "SPV_NV_ray_tracing" , "SPV_KHR_ray_tracing" ],
+          "capabilities" : [ "RayTracingNV" , "RayTracingProvisionalKHR" ],
+          "version" : "None"
         },
         {
           "enumerant" : "RayPayloadNV",
           "value" : 5338,
-          "extensions" : [ "SPV_NV_ray_tracing" ],
-          "capabilities" : [ "RayTracingNV" ]
+          "extensions" : [ "SPV_NV_ray_tracing" , "SPV_KHR_ray_tracing" ],
+          "capabilities" : [ "RayTracingNV" , "RayTracingProvisionalKHR" ],
+          "version" : "None"
+        },
+        {
+          "enumerant" : "RayPayloadKHR",
+          "value" : 5338,
+          "extensions" : [ "SPV_NV_ray_tracing" , "SPV_KHR_ray_tracing" ],
+          "capabilities" : [ "RayTracingNV" , "RayTracingProvisionalKHR" ],
+          "version" : "None"
         },
         {
           "enumerant" : "HitAttributeNV",
           "value" : 5339,
-          "extensions" : [ "SPV_NV_ray_tracing" ],
-          "capabilities" : [ "RayTracingNV" ]
+          "extensions" : [ "SPV_NV_ray_tracing" , "SPV_KHR_ray_tracing" ],
+          "capabilities" : [ "RayTracingNV" , "RayTracingProvisionalKHR" ],
+          "version" : "None"
+        },
+        {
+          "enumerant" : "HitAttributeKHR",
+          "value" : 5339,
+          "extensions" : [ "SPV_NV_ray_tracing" , "SPV_KHR_ray_tracing" ],
+          "capabilities" : [ "RayTracingNV" , "RayTracingProvisionalKHR" ],
+          "version" : "None"
         },
         {
           "enumerant" : "IncomingRayPayloadNV",
           "value" : 5342,
-          "extensions" : [ "SPV_NV_ray_tracing" ],
-          "capabilities" : [ "RayTracingNV" ]
+          "extensions" : [ "SPV_NV_ray_tracing" , "SPV_KHR_ray_tracing" ],
+          "capabilities" : [ "RayTracingNV" , "RayTracingProvisionalKHR" ],
+          "version" : "None"
+        },
+        {
+          "enumerant" : "IncomingRayPayloadKHR",
+          "value" : 5342,
+          "extensions" : [ "SPV_NV_ray_tracing" , "SPV_KHR_ray_tracing" ],
+          "capabilities" : [ "RayTracingNV" , "RayTracingProvisionalKHR" ],
+          "version" : "None"
         },
         {
           "enumerant" : "ShaderRecordBufferNV",
           "value" : 5343,
-          "extensions" : [ "SPV_NV_ray_tracing" ],
-          "capabilities" : [ "RayTracingNV" ]
+          "extensions" : [ "SPV_NV_ray_tracing" , "SPV_KHR_ray_tracing" ],
+          "capabilities" : [ "RayTracingNV" , "RayTracingProvisionalKHR" ],
+          "version" : "None"
+        },
+        {
+          "enumerant" : "ShaderRecordBufferKHR",
+          "value" : 5343,
+          "extensions" : [ "SPV_NV_ray_tracing" , "SPV_KHR_ray_tracing" ],
+          "capabilities" : [ "RayTracingNV" , "RayTracingProvisionalKHR" ],
+          "version" : "None"
+        },
+        {
+          "enumerant" : "PhysicalStorageBuffer",
+          "value" : 5349,
+          "extensions" : [ "SPV_EXT_physical_storage_buffer", "SPV_KHR_physical_storage_buffer" ],
+          "capabilities" : [ "PhysicalStorageBufferAddresses" ],
+          "version" : "1.5"
         },
         {
           "enumerant" : "PhysicalStorageBufferEXT",
           "value" : 5349,
           "extensions" : [ "SPV_EXT_physical_storage_buffer" ],
-          "capabilities" : [ "PhysicalStorageBufferAddressesEXT" ]
+          "capabilities" : [ "PhysicalStorageBufferAddresses" ],
+          "version" : "1.5"
+        },
+        {
+          "enumerant" : "CodeSectionINTEL",
+          "value" : 5605,
+          "extensions" : [ "SPV_INTEL_function_pointers" ],
+          "capabilities" : [ "FunctionPointersINTEL" ],
+          "version" : "None"
         }
       ]
     },
           "extensions" : [ "SPV_NV_fragment_shader_barycentric" ],
           "version" : "None"
         },
+        {
+          "enumerant" : "NonUniform",
+          "value" : 5300,
+          "capabilities" : [ "ShaderNonUniform" ],
+          "version" : "1.5"
+        },
         {
           "enumerant" : "NonUniformEXT",
           "value" : 5300,
-          "capabilities" : [ "ShaderNonUniformEXT" ]
+          "capabilities" : [ "ShaderNonUniform" ],
+          "extensions" : [ "SPV_EXT_descriptor_indexing" ],
+          "version" : "1.5"
+        },
+        {
+          "enumerant" : "RestrictPointer",
+          "value" : 5355,
+          "capabilities" : [ "PhysicalStorageBufferAddresses" ],
+          "extensions" : [ "SPV_EXT_physical_storage_buffer", "SPV_KHR_physical_storage_buffer" ],
+          "version" : "1.5"
+        },
+        {
+          "enumerant" : "RestrictPointerEXT",
+          "value" : 5355,
+          "capabilities" : [ "PhysicalStorageBufferAddresses" ],
+          "extensions" : [ "SPV_EXT_physical_storage_buffer" ],
+          "version" : "1.5"
+        },
+        {
+          "enumerant" : "AliasedPointer",
+          "value" : 5356,
+          "capabilities" : [ "PhysicalStorageBufferAddresses" ],
+          "extensions" : [ "SPV_EXT_physical_storage_buffer", "SPV_KHR_physical_storage_buffer" ],
+          "version" : "1.5"
+        },
+        {
+          "enumerant" : "AliasedPointerEXT",
+          "value" : 5356,
+          "capabilities" : [ "PhysicalStorageBufferAddresses" ],
+          "extensions" : [ "SPV_EXT_physical_storage_buffer" ],
+          "version" : "1.5"
+        },
+        {
+          "enumerant" : "ReferencedIndirectlyINTEL",
+          "value" : 5602,
+          "capabilities" : [ "IndirectReferencesINTEL" ],
+          "extensions" : [ "SPV_INTEL_function_pointers" ],
+          "version" : "None"
         },
         {
           "enumerant" : "CounterBuffer",
           "version" : "None"
         },
         {
-          "enumerant" : "RestrictPointerEXT",
-          "value" : 5355,
-          "capabilities" : [ "PhysicalStorageBufferAddressesEXT" ],
-          "extensions" : [ "SPV_EXT_physical_storage_buffer" ],
+          "enumerant" : "UserTypeGOOGLE",
+          "value" : 5636,
+          "parameters" : [
+            { "kind" : "LiteralString", "name" : "'User Type'" }
+          ],
+          "extensions" : [ "SPV_GOOGLE_user_type" ],
           "version" : "None"
         },
         {
-          "enumerant" : "AliasedPointerEXT",
-          "value" : 5356,
-          "capabilities" : [ "PhysicalStorageBufferAddressesEXT" ],
-          "extensions" : [ "SPV_EXT_physical_storage_buffer" ],
+          "enumerant" : "RegisterINTEL",
+          "value" : 5825,
+          "capabilities" : [ "FPGAMemoryAttributesINTEL" ],
+          "extensions" : [ "SPV_INTEL_fpga_memory_attributes" ],
+          "version" : "None"
+        },
+        {
+          "enumerant" : "MemoryINTEL",
+          "value" : 5826,
+          "parameters" : [
+            { "kind" : "LiteralString", "name" : "'Memory Type'" }
+          ],
+          "capabilities" : [ "FPGAMemoryAttributesINTEL" ],
+          "extensions" : [ "SPV_INTEL_fpga_memory_attributes" ],
+          "version" : "None"
+        },
+        {
+          "enumerant" : "NumbanksINTEL",
+          "value" : 5827,
+          "parameters" : [
+            { "kind" : "LiteralInteger", "name" : "'Banks'" }
+          ],
+          "capabilities" : [ "FPGAMemoryAttributesINTEL" ],
+          "extensions" : [ "SPV_INTEL_fpga_memory_attributes" ],
+          "version" : "None"
+        },
+        {
+          "enumerant" : "BankwidthINTEL",
+          "value" : 5828,
+          "parameters" : [
+            { "kind" : "LiteralInteger", "name" : "'Bank Width'" }
+          ],
+          "capabilities" : [ "FPGAMemoryAttributesINTEL" ],
+          "extensions" : [ "SPV_INTEL_fpga_memory_attributes" ],
+          "version" : "None"
+        },
+        {
+          "enumerant" : "MaxPrivateCopiesINTEL",
+          "value" : 5829,
+          "parameters" : [
+            { "kind" : "LiteralInteger", "name" : "'Maximum Copies'" }
+          ],
+          "capabilities" : [ "FPGAMemoryAttributesINTEL" ],
+          "extensions" : [ "SPV_INTEL_fpga_memory_attributes" ],
+          "version" : "None"
+        },
+        {
+          "enumerant" : "SinglepumpINTEL",
+          "value" : 5830,
+          "capabilities" : [ "FPGAMemoryAttributesINTEL" ],
+          "extensions" : [ "SPV_INTEL_fpga_memory_attributes" ],
+          "version" : "None"
+        },
+        {
+          "enumerant" : "DoublepumpINTEL",
+          "value" : 5831,
+          "capabilities" : [ "FPGAMemoryAttributesINTEL" ],
+          "extensions" : [ "SPV_INTEL_fpga_memory_attributes" ],
+          "version" : "None"
+        },
+        {
+          "enumerant" : "MaxReplicatesINTEL",
+          "value" : 5832,
+          "parameters" : [
+            { "kind" : "LiteralInteger", "name" : "'Maximum Replicates'" }
+          ],
+          "capabilities" : [ "FPGAMemoryAttributesINTEL" ],
+          "extensions" : [ "SPV_INTEL_fpga_memory_attributes" ],
+          "version" : "None"
+        },
+        {
+          "enumerant" : "SimpleDualPortINTEL",
+          "value" : 5833,
+          "capabilities" : [ "FPGAMemoryAttributesINTEL" ],
+          "extensions" : [ "SPV_INTEL_fpga_memory_attributes" ],
+          "version" : "None"
+        },
+        {
+          "enumerant" : "MergeINTEL",
+          "value" : 5834,
+          "parameters" : [
+            { "kind" : "LiteralString", "name" : "'Merge Key'" },
+            { "kind" : "LiteralString", "name" : "'Merge Type'" }
+          ],
+          "capabilities" : [ "FPGAMemoryAttributesINTEL" ],
+          "extensions" : [ "SPV_INTEL_fpga_memory_attributes" ],
+          "version" : "None"
+        },
+        {
+          "enumerant" : "BankBitsINTEL",
+          "value" : 5835,
+          "parameters" : [
+            { "kind" : "LiteralInteger", "quantifier" : "*", "name" : "'Bank Bits'" }
+          ],
+          "capabilities" : [ "FPGAMemoryAttributesINTEL" ],
+          "extensions" : [ "SPV_INTEL_fpga_memory_attributes" ],
+          "version" : "None"
+        },
+        {
+          "enumerant" : "ForcePow2DepthINTEL",
+          "value" : 5836,
+          "parameters" : [
+            { "kind" : "LiteralInteger", "name" : "'Force Key'" }
+          ],
+          "capabilities" : [ "FPGAMemoryAttributesINTEL" ],
+          "extensions" : [ "SPV_INTEL_fpga_memory_attributes" ],
           "version" : "None"
         }
       ]
         {
           "enumerant" : "PrimitiveId",
           "value" : 7,
-          "capabilities" : [ "Geometry", "Tessellation", "RayTracingNV" ]
+          "capabilities" : [ "Geometry", "Tessellation", "RayTracingNV", "RayTracingProvisionalKHR" ]
         },
         {
           "enumerant" : "InvocationId",
         {
           "enumerant" : "Layer",
           "value" : 9,
-          "capabilities" : [ "Geometry" ]
+          "capabilities" : [ "Geometry", "ShaderLayer", "ShaderViewportIndexLayerEXT" ]
         },
         {
           "enumerant" : "ViewportIndex",
           "value" : 10,
-          "capabilities" : [ "MultiViewport" ]
+          "capabilities" : [ "MultiViewport", "ShaderViewportIndex", "ShaderViewportIndexLayerEXT" ]
         },
         {
           "enumerant" : "TessLevelOuter",
         {
           "enumerant" : "LaunchIdNV",
           "value" : 5319,
-          "capabilities" : [ "RayTracingNV" ],
-          "extensions" : [ "SPV_NV_ray_tracing" ]
+          "capabilities" : [ "RayTracingNV" , "RayTracingProvisionalKHR" ],
+          "extensions" : [ "SPV_NV_ray_tracing" , "SPV_KHR_ray_tracing" ],
+          "version" : "None"
+        },
+        {
+          "enumerant" : "LaunchIdKHR",
+          "value" : 5319,
+          "capabilities" : [ "RayTracingNV" , "RayTracingProvisionalKHR" ],
+          "extensions" : [ "SPV_NV_ray_tracing" , "SPV_KHR_ray_tracing" ],
+          "version" : "None"
         },
         {
           "enumerant" : "LaunchSizeNV",
           "value" : 5320,
-          "capabilities" : [ "RayTracingNV" ],
-          "extensions" : [ "SPV_NV_ray_tracing" ]
+          "capabilities" : [ "RayTracingNV" , "RayTracingProvisionalKHR" ],
+          "extensions" : [ "SPV_NV_ray_tracing" , "SPV_KHR_ray_tracing" ],
+          "version" : "None"
+        },
+        {
+          "enumerant" : "LaunchSizeKHR",
+          "value" : 5320,
+          "capabilities" : [ "RayTracingNV" , "RayTracingProvisionalKHR" ],
+          "extensions" : [ "SPV_NV_ray_tracing" , "SPV_KHR_ray_tracing" ],
+          "version" : "None"
         },
         {
           "enumerant" : "WorldRayOriginNV",
           "value" : 5321,
-          "capabilities" : [ "RayTracingNV" ],
-          "extensions" : [ "SPV_NV_ray_tracing" ]
+          "capabilities" : [ "RayTracingNV" , "RayTracingProvisionalKHR" ],
+          "extensions" : [ "SPV_NV_ray_tracing" , "SPV_KHR_ray_tracing" ],
+          "version" : "None"
+        },
+        {
+          "enumerant" : "WorldRayOriginKHR",
+          "value" : 5321,
+          "capabilities" : [ "RayTracingNV" , "RayTracingProvisionalKHR" ],
+          "extensions" : [ "SPV_NV_ray_tracing" , "SPV_KHR_ray_tracing" ],
+          "version" : "None"
         },
         {
           "enumerant" : "WorldRayDirectionNV",
           "value" : 5322,
-          "capabilities" : [ "RayTracingNV" ],
-          "extensions" : [ "SPV_NV_ray_tracing" ]
+          "capabilities" : [ "RayTracingNV" , "RayTracingProvisionalKHR" ],
+          "extensions" : [ "SPV_NV_ray_tracing" , "SPV_KHR_ray_tracing" ],
+          "version" : "None"
+        },
+        {
+          "enumerant" : "WorldRayDirectionKHR",
+          "value" : 5322,
+          "capabilities" : [ "RayTracingNV" , "RayTracingProvisionalKHR" ],
+          "extensions" : [ "SPV_NV_ray_tracing" , "SPV_KHR_ray_tracing" ],
+          "version" : "None"
         },
         {
           "enumerant" : "ObjectRayOriginNV",
           "value" : 5323,
-          "capabilities" : [ "RayTracingNV" ],
-          "extensions" : [ "SPV_NV_ray_tracing" ]
+          "capabilities" : [ "RayTracingNV" , "RayTracingProvisionalKHR" ],
+          "extensions" : [ "SPV_NV_ray_tracing" , "SPV_KHR_ray_tracing" ],
+          "version" : "None"
+        },
+        {
+          "enumerant" : "ObjectRayOriginKHR",
+          "value" : 5323,
+          "capabilities" : [ "RayTracingNV" , "RayTracingProvisionalKHR" ],
+          "extensions" : [ "SPV_NV_ray_tracing" , "SPV_KHR_ray_tracing" ],
+          "version" : "None"
         },
         {
           "enumerant" : "ObjectRayDirectionNV",
           "value" : 5324,
-          "capabilities" : [ "RayTracingNV" ],
-          "extensions" : [ "SPV_NV_ray_tracing" ]
+          "capabilities" : [ "RayTracingNV" , "RayTracingProvisionalKHR" ],
+          "extensions" : [ "SPV_NV_ray_tracing" , "SPV_KHR_ray_tracing" ],
+          "version" : "None"
+        },
+        {
+          "enumerant" : "ObjectRayDirectionKHR",
+          "value" : 5324,
+          "capabilities" : [ "RayTracingNV" , "RayTracingProvisionalKHR" ],
+          "extensions" : [ "SPV_NV_ray_tracing" , "SPV_KHR_ray_tracing" ],
+          "version" : "None"
         },
         {
           "enumerant" : "RayTminNV",
           "value" : 5325,
-          "capabilities" : [ "RayTracingNV" ],
-          "extensions" : [ "SPV_NV_ray_tracing" ]
+          "capabilities" : [ "RayTracingNV" , "RayTracingProvisionalKHR" ],
+          "extensions" : [ "SPV_NV_ray_tracing" , "SPV_KHR_ray_tracing" ],
+          "version" : "None"
+        },
+        {
+          "enumerant" : "RayTminKHR",
+          "value" : 5325,
+          "capabilities" : [ "RayTracingNV" , "RayTracingProvisionalKHR" ],
+          "extensions" : [ "SPV_NV_ray_tracing" , "SPV_KHR_ray_tracing" ],
+          "version" : "None"
         },
         {
           "enumerant" : "RayTmaxNV",
           "value" : 5326,
-          "capabilities" : [ "RayTracingNV" ],
-          "extensions" : [ "SPV_NV_ray_tracing" ]
+          "capabilities" : [ "RayTracingNV" , "RayTracingProvisionalKHR" ],
+          "extensions" : [ "SPV_NV_ray_tracing" , "SPV_KHR_ray_tracing" ],
+          "version" : "None"
+        },
+        {
+          "enumerant" : "RayTmaxKHR",
+          "value" : 5326,
+          "capabilities" : [ "RayTracingNV" , "RayTracingProvisionalKHR" ],
+          "extensions" : [ "SPV_NV_ray_tracing" , "SPV_KHR_ray_tracing" ],
+          "version" : "None"
         },
         {
           "enumerant" : "InstanceCustomIndexNV",
           "value" : 5327,
-          "capabilities" : [ "RayTracingNV" ],
-          "extensions" : [ "SPV_NV_ray_tracing" ]
+          "capabilities" : [ "RayTracingNV" , "RayTracingProvisionalKHR" ],
+          "extensions" : [ "SPV_NV_ray_tracing" , "SPV_KHR_ray_tracing" ],
+          "version" : "None"
+        },
+        {
+          "enumerant" : "InstanceCustomIndexKHR",
+          "value" : 5327,
+          "capabilities" : [ "RayTracingNV" , "RayTracingProvisionalKHR" ],
+          "extensions" : [ "SPV_NV_ray_tracing" , "SPV_KHR_ray_tracing" ],
+          "version" : "None"
         },
         {
           "enumerant" : "ObjectToWorldNV",
           "value" : 5330,
-          "capabilities" : [ "RayTracingNV" ],
-          "extensions" : [ "SPV_NV_ray_tracing" ]
+          "capabilities" : [ "RayTracingNV" , "RayTracingProvisionalKHR" ],
+          "extensions" : [ "SPV_NV_ray_tracing" , "SPV_KHR_ray_tracing" ],
+          "version" : "None"
+        },
+        {
+          "enumerant" : "ObjectToWorldKHR",
+          "value" : 5330,
+          "capabilities" : [ "RayTracingNV" , "RayTracingProvisionalKHR" ],
+          "extensions" : [ "SPV_NV_ray_tracing" , "SPV_KHR_ray_tracing" ],
+          "version" : "None"
         },
         {
           "enumerant" : "WorldToObjectNV",
           "value" : 5331,
-          "capabilities" : [ "RayTracingNV" ],
-          "extensions" : [ "SPV_NV_ray_tracing" ]
+          "capabilities" : [ "RayTracingNV" , "RayTracingProvisionalKHR" ],
+          "extensions" : [ "SPV_NV_ray_tracing" , "SPV_KHR_ray_tracing" ],
+          "version" : "None"
+        },
+        {
+          "enumerant" : "WorldToObjectKHR",
+          "value" : 5331,
+          "capabilities" : [ "RayTracingNV" , "RayTracingProvisionalKHR" ],
+          "extensions" : [ "SPV_NV_ray_tracing" , "SPV_KHR_ray_tracing" ],
+          "version" : "None"
         },
         {
           "enumerant" : "HitTNV",
           "value" : 5332,
-          "capabilities" : [ "RayTracingNV" ],
-          "extensions" : [ "SPV_NV_ray_tracing" ]
+          "capabilities" : [ "RayTracingNV" , "RayTracingProvisionalKHR" ],
+          "extensions" : [ "SPV_NV_ray_tracing" , "SPV_KHR_ray_tracing" ],
+          "version" : "None"
+        },
+        {
+          "enumerant" : "HitTKHR",
+          "value" : 5332,
+          "capabilities" : [ "RayTracingNV" , "RayTracingProvisionalKHR" ],
+          "extensions" : [ "SPV_NV_ray_tracing" , "SPV_KHR_ray_tracing" ],
+          "version" : "None"
         },
         {
           "enumerant" : "HitKindNV",
           "value" : 5333,
-          "capabilities" : [ "RayTracingNV" ],
-          "extensions" : [ "SPV_NV_ray_tracing" ]
+          "capabilities" : [ "RayTracingNV" , "RayTracingProvisionalKHR" ],
+          "extensions" : [ "SPV_NV_ray_tracing" , "SPV_KHR_ray_tracing" ],
+          "version" : "None"
+        },
+        {
+          "enumerant" : "HitKindKHR",
+          "value" : 5333,
+          "capabilities" : [ "RayTracingNV" , "RayTracingProvisionalKHR" ],
+          "extensions" : [ "SPV_NV_ray_tracing" , "SPV_KHR_ray_tracing" ],
+          "version" : "None"
         },
         {
           "enumerant" : "IncomingRayFlagsNV",
           "value" : 5351,
-          "capabilities" : [ "RayTracingNV" ],
-          "extensions" : [ "SPV_NV_ray_tracing" ]
+          "capabilities" : [ "RayTracingNV" , "RayTracingProvisionalKHR" ],
+          "extensions" : [ "SPV_NV_ray_tracing" , "SPV_KHR_ray_tracing" ],
+          "version" : "None"
+        },
+        {
+          "enumerant" : "IncomingRayFlagsKHR",
+          "value" : 5351,
+          "capabilities" : [ "RayTracingNV" , "RayTracingProvisionalKHR" ],
+          "extensions" : [ "SPV_NV_ray_tracing" , "SPV_KHR_ray_tracing" ],
+          "version" : "None"
+        },
+        {
+          "enumerant" : "RayGeometryIndexKHR",
+          "value" : 5352,
+          "capabilities" : [ "RayTracingProvisionalKHR" ],
+          "extensions" : [ "SPV_KHR_ray_tracing" ],
+          "version" : "None"
         },
         {
           "enumerant" : "WarpsPerSMNV",
           "value" : 5374,
           "capabilities" : [ "ShaderSMBuiltinsNV" ],
-          "extensions" : [ "SPV_NV_shader_sm_builtins" ]
+          "extensions" : [ "SPV_NV_shader_sm_builtins" ],
+          "version" : "None"
         },
         {
           "enumerant" : "SMCountNV",
           "value" : 5375,
           "capabilities" : [ "ShaderSMBuiltinsNV" ],
-          "extensions" : [ "SPV_NV_shader_sm_builtins" ]
+          "extensions" : [ "SPV_NV_shader_sm_builtins" ],
+          "version" : "None"
         },
         {
           "enumerant" : "WarpIDNV",
           "value" : 5376,
           "capabilities" : [ "ShaderSMBuiltinsNV" ],
-          "extensions" : [ "SPV_NV_shader_sm_builtins" ]
+          "extensions" : [ "SPV_NV_shader_sm_builtins" ],
+          "version" : "None"
         },
         {
           "enumerant" : "SMIDNV",
           "value" : 5377,
           "capabilities" : [ "ShaderSMBuiltinsNV" ],
-          "extensions" : [ "SPV_NV_shader_sm_builtins" ]
+          "extensions" : [ "SPV_NV_shader_sm_builtins" ],
+          "version" : "None"
         }
       ]
     },
           "enumerant" : "Invocation",
           "value" : 4
         },
+        {
+          "enumerant" : "QueueFamily",
+          "value" : 5,
+          "capabilities" : [ "VulkanMemoryModel" ],
+          "version" : "1.5"
+        },
         {
           "enumerant" : "QueueFamilyKHR",
           "value" : 5,
-          "capabilities" : [ "VulkanMemoryModelKHR" ]
+          "capabilities" : [ "VulkanMemoryModel" ],
+          "version" : "1.5"
+        },
+        {
+          "enumerant" : "ShaderCallKHR",
+          "value" : 6,
+          "capabilities" : [ "RayTracingProvisionalKHR" ],
+          "version" : "None"
         }
       ]
     },
           "capabilities" : [ "GroupNonUniform" ],
           "version" : "1.3"
         },
+        {
+          "enumerant" : "ShaderLayer",
+          "value" : 69,
+          "version" : "1.5"
+        },
+        {
+          "enumerant" : "ShaderViewportIndex",
+          "value" : 70,
+          "version" : "1.5"
+        },
         {
           "enumerant" : "SubgroupBallotKHR",
           "value" : 4423,
           "enumerant" : "StorageBuffer8BitAccess",
           "value" : 4448,
           "extensions" : [ "SPV_KHR_8bit_storage" ],
-          "version" : "None"
+          "version" : "1.5"
         },
         {
           "enumerant" : "UniformAndStorageBuffer8BitAccess",
           "value" : 4449,
           "capabilities" : [ "StorageBuffer8BitAccess" ],
           "extensions" : [ "SPV_KHR_8bit_storage" ],
-          "version" : "None"
+          "version" : "1.5"
         },
         {
           "enumerant" : "StoragePushConstant8",
           "value" : 4450,
           "extensions" : [ "SPV_KHR_8bit_storage" ],
-          "version" : "None"
+          "version" : "1.5"
         },
         {
           "enumerant" : "DenormPreserve",
           "extensions" : [ "SPV_KHR_float_controls" ],
           "version" : "1.4"
         },
+        {
+          "enumerant" : "RayQueryProvisionalKHR",
+          "value" : 4471,
+          "capabilities" : [ "Shader" ],
+          "extensions" : [ "SPV_KHR_ray_query" ],
+          "version" : "None"
+        },
+        {
+          "enumerant" : "RayTraversalPrimitiveCullingProvisionalKHR",
+          "value" : 4478,
+          "capabilities" : [ "RayQueryProvisionalKHR","RayTracingProvisionalKHR" ],
+          "extensions" : [ "SPV_KHR_ray_query","SPV_KHR_ray_tracing" ],
+          "version" : "None"
+        },
         {
           "enumerant" : "Float16ImageAMD",
           "value" : 5008,
           "extensions" : [ "SPV_AMD_shader_image_load_store_lod" ],
           "version" : "None"
         },
+        {
+          "enumerant" : "ShaderClockKHR",
+          "value" : 5055,
+          "capabilities" : [ "Shader" ],
+          "extensions" : [ "SPV_KHR_shader_clock" ],
+          "version" : "None"
+        },
         {
           "enumerant" : "SampleMaskOverrideCoverageNV",
           "value" : 5249,
           "extensions" : [ "SPV_NV_mesh_shader" ],
           "version" : "None"
         },
+        {
+          "enumerant" : "ImageFootprintNV",
+          "value" : 5282,
+          "extensions" : [ "SPV_NV_shader_image_footprint" ],
+          "version" : "None"
+        },
+        {
+          "enumerant" : "FragmentBarycentricNV",
+          "value" : 5284,
+          "extensions" : [ "SPV_NV_fragment_shader_barycentric" ],
+          "version" : "None"
+        },
+        {
+          "enumerant" : "ComputeDerivativeGroupQuadsNV",
+          "value" : 5288,
+          "extensions" : [ "SPV_NV_compute_shader_derivatives" ],
+          "version" : "None"
+        },
+        {
+          "enumerant" : "FragmentDensityEXT",
+          "value" : 5291,
+          "capabilities" : [ "Shader" ],
+          "extensions" : [ "SPV_EXT_fragment_invocation_density", "SPV_NV_shading_rate" ],
+          "version" : "None"
+        },
+        {
+          "enumerant" : "ShadingRateNV",
+          "value" : 5291,
+          "capabilities" : [ "Shader" ],
+          "extensions" : [ "SPV_NV_shading_rate", "SPV_EXT_fragment_invocation_density" ],
+          "version" : "None"
+        },
+        {
+          "enumerant" : "GroupNonUniformPartitionedNV",
+          "value" : 5297,
+          "extensions" : [ "SPV_NV_shader_subgroup_partitioned" ],
+          "version" : "None"
+        },
+        {
+          "enumerant" : "ShaderNonUniform",
+          "value" : 5301,
+          "capabilities" : [ "Shader" ],
+          "version" : "1.5"
+        },
         {
           "enumerant" : "ShaderNonUniformEXT",
           "value" : 5301,
           "capabilities" : [ "Shader" ],
           "extensions" : [ "SPV_EXT_descriptor_indexing" ],
-          "version" : "None"
+          "version" : "1.5"
+        },
+        {
+          "enumerant" : "RuntimeDescriptorArray",
+          "value" : 5302,
+          "capabilities" : [ "Shader" ],
+          "version" : "1.5"
         },
         {
           "enumerant" : "RuntimeDescriptorArrayEXT",
           "value" : 5302,
           "capabilities" : [ "Shader" ],
           "extensions" : [ "SPV_EXT_descriptor_indexing" ],
-          "version" : "None"
+          "version" : "1.5"
+        },
+        {
+          "enumerant" : "InputAttachmentArrayDynamicIndexing",
+          "value" : 5303,
+          "capabilities" : [ "InputAttachment" ],
+          "version" : "1.5"
         },
         {
           "enumerant" : "InputAttachmentArrayDynamicIndexingEXT",
           "value" : 5303,
           "capabilities" : [ "InputAttachment" ],
           "extensions" : [ "SPV_EXT_descriptor_indexing" ],
-          "version" : "None"
+          "version" : "1.5"
+        },
+        {
+          "enumerant" : "UniformTexelBufferArrayDynamicIndexing",
+          "value" : 5304,
+          "capabilities" : [ "SampledBuffer" ],
+          "version" : "1.5"
         },
         {
           "enumerant" : "UniformTexelBufferArrayDynamicIndexingEXT",
           "value" : 5304,
           "capabilities" : [ "SampledBuffer" ],
           "extensions" : [ "SPV_EXT_descriptor_indexing" ],
-          "version" : "None"
+          "version" : "1.5"
+        },
+        {
+          "enumerant" : "StorageTexelBufferArrayDynamicIndexing",
+          "value" : 5305,
+          "capabilities" : [ "ImageBuffer" ],
+          "version" : "1.5"
         },
         {
           "enumerant" : "StorageTexelBufferArrayDynamicIndexingEXT",
           "value" : 5305,
           "capabilities" : [ "ImageBuffer" ],
           "extensions" : [ "SPV_EXT_descriptor_indexing" ],
-          "version" : "None"
+          "version" : "1.5"
+        },
+        {
+          "enumerant" : "UniformBufferArrayNonUniformIndexing",
+          "value" : 5306,
+          "capabilities" : [ "ShaderNonUniform" ],
+          "version" : "1.5"
         },
         {
           "enumerant" : "UniformBufferArrayNonUniformIndexingEXT",
           "value" : 5306,
-          "capabilities" : [ "ShaderNonUniformEXT" ],
+          "capabilities" : [ "ShaderNonUniform" ],
           "extensions" : [ "SPV_EXT_descriptor_indexing" ],
-          "version" : "None"
+          "version" : "1.5"
+        },
+        {
+          "enumerant" : "SampledImageArrayNonUniformIndexing",
+          "value" : 5307,
+          "capabilities" : [ "ShaderNonUniform" ],
+          "version" : "1.5"
         },
         {
           "enumerant" : "SampledImageArrayNonUniformIndexingEXT",
           "value" : 5307,
-          "capabilities" : [ "ShaderNonUniformEXT" ],
+          "capabilities" : [ "ShaderNonUniform" ],
           "extensions" : [ "SPV_EXT_descriptor_indexing" ],
-          "version" : "None"
+          "version" : "1.5"
+        },
+        {
+          "enumerant" : "StorageBufferArrayNonUniformIndexing",
+          "value" : 5308,
+          "capabilities" : [ "ShaderNonUniform" ],
+          "version" : "1.5"
         },
         {
           "enumerant" : "StorageBufferArrayNonUniformIndexingEXT",
           "value" : 5308,
-          "capabilities" : [ "ShaderNonUniformEXT" ],
+          "capabilities" : [ "ShaderNonUniform" ],
           "extensions" : [ "SPV_EXT_descriptor_indexing" ],
-          "version" : "None"
+          "version" : "1.5"
+        },
+        {
+          "enumerant" : "StorageImageArrayNonUniformIndexing",
+          "value" : 5309,
+          "capabilities" : [ "ShaderNonUniform" ],
+          "version" : "1.5"
         },
         {
           "enumerant" : "StorageImageArrayNonUniformIndexingEXT",
           "value" : 5309,
-          "capabilities" : [ "ShaderNonUniformEXT" ],
+          "capabilities" : [ "ShaderNonUniform" ],
           "extensions" : [ "SPV_EXT_descriptor_indexing" ],
-          "version" : "None"
+          "version" : "1.5"
+        },
+        {
+          "enumerant" : "InputAttachmentArrayNonUniformIndexing",
+          "value" : 5310,
+          "capabilities" : [ "InputAttachment", "ShaderNonUniform" ],
+          "version" : "1.5"
         },
         {
           "enumerant" : "InputAttachmentArrayNonUniformIndexingEXT",
           "value" : 5310,
-          "capabilities" : [ "InputAttachment", "ShaderNonUniformEXT" ],
+          "capabilities" : [ "InputAttachment", "ShaderNonUniform" ],
           "extensions" : [ "SPV_EXT_descriptor_indexing" ],
-          "version" : "None"
+          "version" : "1.5"
+        },
+        {
+          "enumerant" : "UniformTexelBufferArrayNonUniformIndexing",
+          "value" : 5311,
+          "capabilities" : [ "SampledBuffer", "ShaderNonUniform" ],
+          "version" : "1.5"
         },
         {
           "enumerant" : "UniformTexelBufferArrayNonUniformIndexingEXT",
           "value" : 5311,
-          "capabilities" : [ "SampledBuffer", "ShaderNonUniformEXT" ],
+          "capabilities" : [ "SampledBuffer", "ShaderNonUniform" ],
           "extensions" : [ "SPV_EXT_descriptor_indexing" ],
-          "version" : "None"
+          "version" : "1.5"
+        },
+        {
+          "enumerant" : "StorageTexelBufferArrayNonUniformIndexing",
+          "value" : 5312,
+          "capabilities" : [ "ImageBuffer", "ShaderNonUniform" ],
+          "version" : "1.5"
         },
         {
           "enumerant" : "StorageTexelBufferArrayNonUniformIndexingEXT",
           "value" : 5312,
-          "capabilities" : [ "ImageBuffer", "ShaderNonUniformEXT" ],
+          "capabilities" : [ "ImageBuffer", "ShaderNonUniform" ],
           "extensions" : [ "SPV_EXT_descriptor_indexing" ],
-          "version" : "None"
+          "version" : "1.5"
         },
         {
           "enumerant" : "RayTracingNV",
           "extensions" : [ "SPV_NV_ray_tracing" ],
           "version" : "None"
         },
+        {
+          "enumerant" : "VulkanMemoryModel",
+          "value" : 5345,
+          "version" : "1.5"
+        },
+        {
+          "enumerant" : "VulkanMemoryModelKHR",
+          "value" : 5345,
+          "extensions" : [ "SPV_KHR_vulkan_memory_model" ],
+          "version" : "1.5"
+        },
+        {
+          "enumerant" : "VulkanMemoryModelDeviceScope",
+          "value" : 5346,
+          "version" : "1.5"
+        },
+        {
+          "enumerant" : "VulkanMemoryModelDeviceScopeKHR",
+          "value" : 5346,
+          "extensions" : [ "SPV_KHR_vulkan_memory_model" ],
+          "version" : "1.5"
+        },
+        {
+          "enumerant" : "PhysicalStorageBufferAddresses",
+          "value" : 5347,
+          "capabilities" : [ "Shader" ],
+          "extensions" : [ "SPV_EXT_physical_storage_buffer", "SPV_KHR_physical_storage_buffer" ],
+          "version" : "1.5"
+        },
+        {
+          "enumerant" : "PhysicalStorageBufferAddressesEXT",
+          "value" : 5347,
+          "capabilities" : [ "Shader" ],
+          "extensions" : [ "SPV_EXT_physical_storage_buffer" ],
+          "version" : "1.5"
+        },
+        {
+          "enumerant" : "ComputeDerivativeGroupLinearNV",
+          "value" : 5350,
+          "extensions" : [ "SPV_NV_compute_shader_derivatives" ],
+          "version" : "None"
+        },
+        {
+          "enumerant" : "RayTracingProvisionalKHR",
+          "value" : 5353,
+          "capabilities" : [ "Shader" ],
+          "extensions" : [ "SPV_KHR_ray_tracing" ],
+          "version" : "None"
+        },
+        {
+          "enumerant" : "CooperativeMatrixNV",
+          "value" : 5357,
+          "capabilities" : [ "Shader" ],
+          "extensions" : [ "SPV_NV_cooperative_matrix" ],
+          "version" : "None"
+        },
+        {
+          "enumerant" : "FragmentShaderSampleInterlockEXT",
+          "value" : 5363,
+          "capabilities" : [ "Shader" ],
+          "extensions" : [ "SPV_EXT_fragment_shader_interlock" ],
+          "version" : "None"
+        },
+        {
+          "enumerant" : "FragmentShaderShadingRateInterlockEXT",
+          "value" : 5372,
+          "capabilities" : [ "Shader" ],
+          "extensions" : [ "SPV_EXT_fragment_shader_interlock" ],
+          "version" : "None"
+        },
+        {
+          "enumerant" : "ShaderSMBuiltinsNV",
+          "value" : 5373,
+          "capabilities" : [ "Shader" ],
+          "extensions" : [ "SPV_NV_shader_sm_builtins" ],
+          "version" : "None"
+        },
+        {
+          "enumerant" : "FragmentShaderPixelInterlockEXT",
+          "value" : 5378,
+          "capabilities" : [ "Shader" ],
+          "extensions" : [ "SPV_EXT_fragment_shader_interlock" ],
+          "version" : "None"
+        },
+        {
+          "enumerant" : "DemoteToHelperInvocationEXT",
+          "value" : 5379,
+          "capabilities" : [ "Shader" ],
+          "extensions" : [ "SPV_EXT_demote_to_helper_invocation" ],
+          "version" : "None"
+        },
         {
           "enumerant" : "SubgroupShuffleINTEL",
           "value" : 5568,
           "extensions" : [ "SPV_INTEL_shader_integer_functions2" ],
           "version" : "None"
         },
+        {
+          "enumerant" : "FunctionPointersINTEL",
+          "value" : 5603,
+          "extensions" : [ "SPV_INTEL_function_pointers" ],
+          "version" : "None"
+        },
+        {
+          "enumerant" : "IndirectReferencesINTEL",
+          "value" : 5604,
+          "extensions" : [ "SPV_INTEL_function_pointers" ],
+          "version" : "None"
+        },
         {
           "enumerant" : "SubgroupAvcMotionEstimationINTEL",
           "value" : 5696,
           "version" : "None"
         },
         {
-          "enumerant" : "GroupNonUniformPartitionedNV",
-          "value" : 5297,
-          "extensions" : [ "SPV_NV_shader_subgroup_partitioned" ],
+          "enumerant" : "FPGAMemoryAttributesINTEL",
+          "value" : 5824,
+          "extensions" : [ "SPV_INTEL_fpga_memory_attributes" ],
           "version" : "None"
         },
         {
-          "enumerant" : "VulkanMemoryModelKHR",
-          "value" : 5345,
-          "extensions" : [ "SPV_KHR_vulkan_memory_model" ],
+          "enumerant" : "UnstructuredLoopControlsINTEL",
+          "value" : 5886,
+          "extensions" : [ "SPV_INTEL_unstructured_loop_controls" ],
           "version" : "None"
         },
         {
-          "enumerant" : "VulkanMemoryModelDeviceScopeKHR",
-          "value" : 5346,
-          "extensions" : [ "SPV_KHR_vulkan_memory_model" ],
+          "enumerant" : "FPGALoopControlsINTEL",
+          "value" : 5888,
+          "extensions" : [ "SPV_INTEL_fpga_loop_controls" ],
           "version" : "None"
         },
         {
-          "enumerant" : "ImageFootprintNV",
-          "value" : 5282,
-          "extensions" : [ "SPV_NV_shader_image_footprint" ],
+          "enumerant" : "KernelAttributesINTEL",
+          "value" : 5892,
+          "extensions" : [ "SPV_INTEL_kernel_attributes" ],
           "version" : "None"
         },
         {
-          "enumerant" : "FragmentBarycentricNV",
-          "value" : 5284,
-          "extensions" : [ "SPV_NV_fragment_shader_barycentric" ],
+          "enumerant" : "FPGAKernelAttributesINTEL",
+          "value" : 5897,
+          "extensions" : [ "SPV_INTEL_kernel_attributes" ],
           "version" : "None"
         },
         {
-          "enumerant" : "ComputeDerivativeGroupQuadsNV",
-          "value" : 5288,
-          "extensions" : [ "SPV_NV_compute_shader_derivatives" ],
+          "enumerant" : "BlockingPipesINTEL",
+          "value" : 5945,
+          "extensions" : [ "SPV_INTEL_blocking_pipes" ],
           "version" : "None"
         },
         {
-          "enumerant" : "ComputeDerivativeGroupLinearNV",
-          "value" : 5350,
-          "extensions" : [ "SPV_NV_compute_shader_derivatives" ],
+          "enumerant" : "FPGARegINTEL",
+          "value" : 5948,
+          "extensions" : [ "SPV_INTEL_fpga_reg" ],
           "version" : "None"
         },
         {
-          "enumerant" : "FragmentDensityEXT",
-          "value" : 5291,
+          "enumerant" : "AtomicFloat32AddEXT",
+          "value" : 6033,
           "capabilities" : [ "Shader" ],
-          "extensions" : [ "SPV_EXT_fragment_invocation_density", "SPV_NV_shading_rate" ],
+          "extensions" : [ "SPV_EXT_shader_atomic_float_add" ],
           "version" : "None"
         },
         {
-          "enumerant" : "ShadingRateNV",
-          "value" : 5291,
+          "enumerant" : "AtomicFloat64AddEXT",
+          "value" : 6034,
           "capabilities" : [ "Shader" ],
-          "extensions" : [ "SPV_NV_shading_rate", "SPV_EXT_fragment_invocation_density" ],
+          "extensions" : [ "SPV_EXT_shader_atomic_float_add" ],
           "version" : "None"
-        },
+        }
+      ]
+    },
+    {
+      "category" : "ValueEnum",
+      "kind" : "RayQueryIntersection",
+      "enumerants" : [
         {
-          "enumerant" : "PhysicalStorageBufferAddressesEXT",
-          "value" : 5347,
-          "capabilities" : [ "Shader" ],
-          "extensions" : [ "SPV_EXT_physical_storage_buffer" ],
+          "enumerant" : "RayQueryCandidateIntersectionKHR",
+          "value" : 0,
+          "capabilities" : [ "RayQueryProvisionalKHR" ],
           "version" : "None"
         },
         {
-          "enumerant" : "CooperativeMatrixNV",
-          "value" : 5357,
-          "capabilities" : [ "Shader" ],
-          "extensions" : [ "SPV_NV_cooperative_matrix" ],
+          "enumerant" : "RayQueryCommittedIntersectionKHR",
+          "value" : 1,
+          "capabilities" : [ "RayQueryProvisionalKHR" ],
           "version" : "None"
-        },
+        }
+      ]
+    },
+    {
+      "category" : "ValueEnum",
+      "kind" : "RayQueryCommittedIntersectionType",
+      "enumerants" : [
         {
-          "enumerant" : "FragmentShaderSampleInterlockEXT",
-          "value" : 5363,
-          "capabilities" : [ "Shader" ],
-          "extensions" : [ "SPV_EXT_fragment_shader_interlock" ],
+          "enumerant" : "RayQueryCommittedIntersectionNoneKHR",
+          "value" : 0,
+          "capabilities" : [ "RayQueryProvisionalKHR" ],
           "version" : "None"
         },
         {
-          "enumerant" : "FragmentShaderShadingRateInterlockEXT",
-          "value" : 5372,
-          "capabilities" : [ "Shader" ],
-          "extensions" : [ "SPV_EXT_fragment_shader_interlock" ],
+          "enumerant" : "RayQueryCommittedIntersectionTriangleKHR",
+          "value" : 1,
+          "capabilities" : [ "RayQueryProvisionalKHR" ],
           "version" : "None"
         },
         {
-          "enumerant" : "FragmentShaderPixelInterlockEXT",
-          "value" : 5378,
-          "capabilities" : [ "Shader" ],
-          "extensions" : [ "SPV_EXT_fragment_shader_interlock" ],
+          "enumerant" : "RayQueryCommittedIntersectionGeneratedKHR",
+          "value" : 2,
+          "capabilities" : [ "RayQueryProvisionalKHR" ],
+          "version" : "None"
+        }
+      ]
+    },
+    {
+      "category" : "ValueEnum",
+      "kind" : "RayQueryCandidateIntersectionType",
+      "enumerants" : [
+        {
+          "enumerant" : "RayQueryCandidateIntersectionTriangleKHR",
+          "value" : 0,
+          "capabilities" : [ "RayQueryProvisionalKHR" ],
           "version" : "None"
         },
         {
-          "enumerant" : "ShaderSMBuiltinsNV",
-          "value" : 5373,
-          "capabilities" : [ "Shader" ],
-          "extensions" : [ "SPV_NV_shader_sm_builtins" ],
+          "enumerant" : "RayQueryCandidateIntersectionAABBKHR",
+          "value" : 1,
+          "capabilities" : [ "RayQueryProvisionalKHR" ],
           "version" : "None"
         }
       ]