Snap for 8426163 from 5a5d05464af49430eb495f1a8c6e660ce30a358e to mainline-tzdata2-release

Change-Id: I23d57b79c1704f3e2120e6b0f031d1558a9bd6ee
diff --git a/.github/workflows/presubmit.yml b/.github/workflows/presubmit.yml
deleted file mode 100644
index d9c25fa..0000000
--- a/.github/workflows/presubmit.yml
+++ /dev/null
@@ -1,37 +0,0 @@
-name: Presubmit
-on: [push, pull_request]
-
-jobs:
-  build:
-    name: Build ${{ matrix.os }}
-    runs-on: ${{ matrix.os }}
-    strategy:
-      matrix:
-        os: [ubuntu-latest, macos-latest, windows-latest]
-    steps:
-      - uses: actions/checkout@v2
-      - name: Install Ubuntu packages
-        if: matrix.os == 'ubuntu-latest'
-        run: sudo apt install -y dos2unix
-      - name: Install macOS packages
-        if: matrix.os == 'macos-latest'
-        run: brew install dos2unix
-      - name: Build
-        run: |
-          mkdir build
-          cd build
-          cmake -DCMAKE_INSTALL_PREFIX=install ..
-          cmake --build . --target install
-      - name: Build spec tools
-        run: |
-          cd tools/buildHeaders
-          mkdir build
-          cd build
-          cmake ..
-          cmake --build . --target install
-      - name: Build headers
-        run: |
-          cd tools/buildHeaders
-          ./bin/makeHeaders
-      - name: Check generated headers
-        run: git diff --exit-code
diff --git a/Android.bp b/Android.bp
index c034672..60f5a07 100644
--- a/Android.bp
+++ b/Android.bp
@@ -1,67 +1,7 @@
-// SPIRV-Tools requires the following filegroups:
-//
-// deqp_spirv_headers_unified1_extinst.debuginfo.grammar.json
-// deqp_spirv_headers_unified1_extinst.glsl.std.450.grammar.json
-// deqp_spirv_headers_unified1_extinst.nonsemantic.clspvreflection.grammar.json
-// deqp_spirv_headers_unified1_extinst.opencl.debuginfo.100.grammar.json
-// deqp_spirv_headers_unified1_extinst.opencl.std.100.grammar.json
-// deqp_spirv_headers_unified1_extinst.spv-amd-gcn-shader.grammar.json
-// deqp_spirv_headers_unified1_extinst.spv-amd-shader-ballot.grammar.json
-// deqp_spirv_headers_unified1_extinst.spv-amd-shader-explicit-vertex-parameter.grammar.json
-// deqp_spirv_headers_unified1_extinst.spv-amd-shader-trinary-minmax.grammar.json
-// deqp_spirv_headers_unified1_spirv.core.grammar.json
-//
-// deqp_spirv_headers_spir-v.xml
-
-package {
-    default_applicable_licenses: ["external_deqp-deps_SPIRV-Headers_license"],
-}
-
-// Added automatically by a large-scale-change that took the approach of
-// 'apply every license found to every target'. While this makes sure we respect
-// every license restriction, it may not be entirely correct.
-//
-// e.g. GPL in an MIT project might only apply to the contrib/ directory.
-//
-// Please consider splitting the single license below into multiple licenses,
-// taking care not to lose any license_kind information, and overriding the
-// default license using the 'licenses: [...]' property on targets as needed.
-//
-// For unused files, consider creating a 'fileGroup' with "//visibility:private"
-// to attach the license to, and including a comment whether the files may be
-// used in the current project.
-// See: http://go/android-license-faq
-license {
-    name: "external_deqp-deps_SPIRV-Headers_license",
-    visibility: [":__subpackages__"],
-    license_kinds: [
-        "SPDX-license-identifier-BSD",
-        "SPDX-license-identifier-MIT",
-        "legacy_unencumbered",
-    ],
-    license_text: [
-        "LICENSE",
-    ],
-}
 
 filegroup {
-    name: "deqp_spirv_headers_unified1_extinst.debuginfo.grammar.json",
-    srcs: ["include/spirv/unified1/extinst.debuginfo.grammar.json"],
-}
-
-filegroup {
-    name: "deqp_spirv_headers_unified1_extinst.glsl.std.450.grammar.json",
-    srcs: ["include/spirv/unified1/extinst.glsl.std.450.grammar.json"],
-}
-
-filegroup {
-    name: "deqp_spirv_headers_unified1_extinst.nonsemantic.clspvreflection.grammar.json",
-    srcs: ["include/spirv/unified1/extinst.nonsemantic.clspvreflection.grammar.json"],
-}
-
-filegroup {
-    name: "deqp_spirv_headers_unified1_extinst.opencl.debuginfo.100.grammar.json",
-    srcs: ["include/spirv/unified1/extinst.opencl.debuginfo.100.grammar.json"],
+    name: "deqp_spirv_headers_unified1_spirv.core.grammar.json",
+    srcs: ["include/spirv/unified1/spirv.core.grammar.json"],
 }
 
 filegroup {
@@ -70,28 +10,8 @@
 }
 
 filegroup {
-    name: "deqp_spirv_headers_unified1_extinst.spv-amd-gcn-shader.grammar.json",
-    srcs: ["include/spirv/unified1/extinst.spv-amd-gcn-shader.grammar.json"],
-}
-
-filegroup {
-    name: "deqp_spirv_headers_unified1_extinst.spv-amd-shader-ballot.grammar.json",
-    srcs: ["include/spirv/unified1/extinst.spv-amd-shader-ballot.grammar.json"],
-}
-
-filegroup {
-    name: "deqp_spirv_headers_unified1_extinst.spv-amd-shader-explicit-vertex-parameter.grammar.json",
-    srcs: ["include/spirv/unified1/extinst.spv-amd-shader-explicit-vertex-parameter.grammar.json"],
-}
-
-filegroup {
-    name: "deqp_spirv_headers_unified1_extinst.spv-amd-shader-trinary-minmax.grammar.json",
-    srcs: ["include/spirv/unified1/extinst.spv-amd-shader-trinary-minmax.grammar.json"],
-}
-
-filegroup {
-    name: "deqp_spirv_headers_unified1_spirv.core.grammar.json",
-    srcs: ["include/spirv/unified1/spirv.core.grammar.json"],
+    name: "deqp_spirv_headers_unified1_extinst.glsl.std.450.grammar.json",
+    srcs: ["include/spirv/unified1/extinst.glsl.std.450.grammar.json"],
 }
 
 filegroup {
diff --git a/BUILD.bazel b/BUILD.bazel
index 9cb46bf..9c53db3 100644
--- a/BUILD.bazel
+++ b/BUILD.bazel
@@ -71,46 +71,6 @@
     srcs = ["include/spirv/spir-v.xml"],
 )
 
-filegroup(
-    name = "spirv_ext_inst_debuginfo_grammar_unified1",
-    srcs = ["include/spirv/unified1/extinst.debuginfo.grammar.json"],
-)
-
-filegroup(
-    name = "spirv_ext_inst_nonsemantic_clspvreflection_grammar_unified1",
-    srcs = ["include/spirv/unified1/extinst.nonsemantic.clspvreflection.grammar.json"],
-)
-
-filegroup(
-    name = "spirv_ext_inst_nonsemantic_debugprintf_grammar_unified1",
-    srcs = ["include/spirv/unified1/extinst.nonsemantic.debugprintf.grammar.json"],
-)
-
-filegroup(
-    name = "spirv_ext_inst_opencl_debuginfo_100_grammar_unified1",
-    srcs = ["include/spirv/unified1/extinst.opencl.debuginfo.100.grammar.json"],
-)
-
-filegroup(
-    name = "spirv_ext_inst_spv_amd_gcn_shader_grammar_unified1",
-    srcs = ["include/spirv/unified1/extinst.spv-amd-gcn-shader.grammar.json"],
-)
-
-filegroup(
-    name = "spirv_ext_inst_spv_amd_shader_ballot_grammar_unified1",
-    srcs = ["include/spirv/unified1/extinst.spv-amd-shader-ballot.grammar.json"],
-)
-
-filegroup(
-    name = "spirv_ext_inst_spv_amd_shader_explicit_vertex_parameter_grammar_unified1",
-    srcs = ["include/spirv/unified1/extinst.spv-amd-shader-explicit-vertex-parameter.grammar.json"],
-)
-
-filegroup(
-    name = "spirv_ext_inst_spv_amd_shader_trinary_minmax_grammar_unified1",
-    srcs = ["include/spirv/unified1/extinst.spv-amd-shader-trinary-minmax.grammar.json"],
-)
-
 cc_library(
     name = "spirv_common_headers",
     hdrs = [
@@ -121,7 +81,6 @@
         "include/spirv/1.2/GLSL.std.450.h",
         "include/spirv/1.2/OpenCL.std.h",
         "include/spirv/unified1/GLSL.std.450.h",
-        "include/spirv/unified1/NonSemanticClspvReflection.h",
         "include/spirv/unified1/NonSemanticDebugPrintf.h",
         "include/spirv/unified1/OpenCL.std.h",
     ],
diff --git a/BUILD.gn b/BUILD.gn
index be3f43b..57e35f0 100644
--- a/BUILD.gn
+++ b/BUILD.gn
@@ -33,7 +33,6 @@
     "include/spirv/1.2/spirv.h",
     "include/spirv/1.2/spirv.hpp",
     "include/spirv/unified1/GLSL.std.450.h",
-    "include/spirv/unified1/NonSemanticClspvReflection.h",
     "include/spirv/unified1/NonSemanticDebugPrintf.h",
     "include/spirv/unified1/OpenCL.std.h",
     "include/spirv/unified1/spirv.h",
diff --git a/CMakeLists.txt b/CMakeLists.txt
index 6f01ef0..eb46947 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -79,7 +79,7 @@
 if (SPIRV_HEADERS_ENABLE_INSTALL)
     message(STATUS "Installing SPIRV-Header")
 
-    set(config_install_dir "${CMAKE_INSTALL_DATADIR}/cmake/${PROJECT_NAME}")
+    set(config_install_dir "${CMAKE_INSTALL_LIBDIR}/cmake/${PROJECT_NAME}")
 
     set(generated_dir "${CMAKE_CURRENT_BINARY_DIR}/generated")
 
diff --git a/METADATA b/METADATA
index 59680f8..67e629f 100644
--- a/METADATA
+++ b/METADATA
@@ -8,6 +8,5 @@
     value: "https://github.com/KhronosGroup/SPIRV-Headers.git"
   }
   version: "d5b2e1255f706ce1f88812217e9a554f299848af"
-  license_type: NOTICE
   last_upgrade_date { year: 2018 month: 12 day: 17 }
 }
diff --git a/NOTICE b/NOTICE
new file mode 120000
index 0000000..7a694c9
--- /dev/null
+++ b/NOTICE
@@ -0,0 +1 @@
+LICENSE
\ No newline at end of file
diff --git a/README.md b/README.md
index 8c7039f..2ea3dc5 100644
--- a/README.md
+++ b/README.md
@@ -23,28 +23,15 @@
 the SPIR-V Working Group will push new commits onto master, updating
 the files under [include](include).
 
-[The SPIR-V XML registry file](include/spirv/spir-v.xml)
-is updated by Khronos whenever a new enum range is allocated.
+The SPIR-V XML registry file is updated by Khronos whenever a new enum range is allocated.
 
 Pull requests can be made to
 - request allocation of new enum ranges in the XML registry file
-- register a new magic number for a SPIR-V generator
 - reserve specific tokens in the JSON grammar
 
-### Registering a SPIR-V Generator Magic Number
-
-Tools that generate SPIR-V should use a magic number in the SPIR-V to help identify the
-generator.
-
-Care should be taken to follow existing precedent in populating the details of reserved tokens.
-This includes:
-- keeping generator numbers in numeric order
-- filling out all the existing fields
-
 ### Reserving tokens in the JSON grammar
 
-Care should be taken to follow existing precedent in populating the details of reserved tokens.
-This includes:
+Care should be taken to follow existing precedent in populating the details of reserved tokens. This includes:
 - pointing to what extension has more information, when possible
 - keeping enumerants in numeric order
 - when there are aliases, listing the preferred spelling first
@@ -140,21 +127,10 @@
 This is not required though.
 
 The header-generation project is under the `tools/buildHeaders` directory.
-Use CMake to build and install the project, in a `build` subdirectory (under `tools/buildHeaders`).
+Use CMake to build the project, in a `build` subdirectory (under `tools/buildHeaders`).
 There is then a bash script at `bin/makeHeaders` that shows how to use the built
 header-generator binary to generate the headers from the JSON grammar.
 (Execute `bin/makeHeaders` from the `tools/buildHeaders` directory.)
-Here's a complete example:
-
-```
-cd tools/buildHeaders
-mkdir build
-cd build
-cmake ..
-cmake --build . --target install
-cd ..
-./bin/makeHeaders
-```
 
 Notes:
 - this generator is used in a broader context within Khronos to generate the specification,
diff --git a/example/CMakeLists.txt b/example/CMakeLists.txt
index 8b22f60..dff65d9 100644
--- a/example/CMakeLists.txt
+++ b/example/CMakeLists.txt
@@ -2,3 +2,8 @@
 	${CMAKE_CURRENT_SOURCE_DIR}/example.cpp)
 target_include_directories(SPIRV-Headers-example
 	PRIVATE ${SPIRV-Headers_SOURCE_DIR}/include)
+
+add_library(SPIRV-Headers-example-1.1
+	${CMAKE_CURRENT_SOURCE_DIR}/example-1.1.cpp)
+target_include_directories(SPIRV-Headers-example-1.1
+	PRIVATE ${SPIRV-Headers_SOURCE_DIR}/include)
diff --git a/example/example-1.1.cpp b/example/example-1.1.cpp
new file mode 100644
index 0000000..989d35c
--- /dev/null
+++ b/example/example-1.1.cpp
@@ -0,0 +1,42 @@
+// Copyright (c) 2016 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"), to deal in the Materials without restriction, including
+// without limitation the rights to use, copy, modify, merge, publish,
+// distribute, sublicense, and/or sell copies of the Materials, and to
+// permit persons to whom the Materials are furnished to do so, subject to
+// the following conditions:
+// 
+// The above copyright notice and this permission notice shall be included
+// in all copies or substantial portions of the Materials.
+// 
+// MODIFICATIONS TO THIS FILE MAY MEAN IT NO LONGER ACCURATELY REFLECTS
+// KHRONOS STANDARDS. THE UNMODIFIED, NORMATIVE VERSIONS OF KHRONOS
+// SPECIFICATIONS AND HEADER INFORMATION ARE LOCATED AT
+//    https://www.khronos.org/registry/
+// 
+// THE MATERIALS ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
+// EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
+// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
+// IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY
+// CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT,
+// TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE
+// MATERIALS OR THE USE OR OTHER DEALINGS IN THE MATERIALS.
+
+// Use the SPIR-V 1.1 core instruction set, but with 1.0 versions
+// of the GLSL and OpenCL extended instruction sets.
+#include <spirv/1.0/GLSL.std.450.h>
+#include <spirv/1.0/OpenCL.std.h>
+#include <spirv/1.1/spirv.hpp>
+
+namespace {
+
+const GLSLstd450 kSin = GLSLstd450Sin;
+const OpenCLLIB::Entrypoints kNative_cos = OpenCLLIB::Native_cos;
+const spv::Op kNop = spv::OpNop;
+
+// This instruction is new in SPIR-V 1.1.
+const spv::Op kNamedBarrierInit = spv::OpNamedBarrierInitialize;
+
+}  // anonymous namespace
diff --git a/example/example.cpp b/example/example.cpp
index d79b62f..222c101 100644
--- a/example/example.cpp
+++ b/example/example.cpp
@@ -24,9 +24,9 @@
 // TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE
 // MATERIALS OR THE USE OR OTHER DEALINGS IN THE MATERIALS.
 
-#include <spirv/unified1/GLSL.std.450.h>
-#include <spirv/unified1/OpenCL.std.h>
-#include <spirv/unified1/spirv.hpp>
+#include <spirv/1.0/GLSL.std.450.h>
+#include <spirv/1.0/OpenCL.std.h>
+#include <spirv/1.0/spirv.hpp>
 
 namespace {
 
diff --git a/include/spirv/spir-v.xml b/include/spirv/spir-v.xml
index 525c97d..2fac9c5 100644
--- a/include/spirv/spir-v.xml
+++ b/include/spirv/spir-v.xml
@@ -23,11 +23,10 @@
     MATERIALS OR THE USE OR OTHER DEALINGS IN THE MATERIALS.
     -->
     <!--
-    This file, spir-v.xml, is the SPIR-V Tool ID, opcode and enumerant registry.
-    The canonical version of the registry, together with related schema and
+    This file, spir-v.xml, is the SPIR-V Tool ID and Opcode registry. The
+    canonical version of the registry, together with related schema and
     documentation, can be found in the Khronos Registry at
-    include/spirv/spir-v.xml in the master branch at
-    https://github.com/KhronosGroup/SPIRV-Headers
+        http://www.khronos.org/registry/spir-v/
     -->
 
     <!-- SECTION: SPIR-V Tool ID Definitions  -->
@@ -69,53 +68,36 @@
         <id value="16"  vendor="X-LEGEND"   tool="Mesa-IR/SPIR-V Translator" comment="Contact Metora Wang, github:metora/MesaGLSLCompiler"/>
         <id value="17"  vendor="Khronos" tool="SPIR-V Tools Linker" comment="Contact David Neto, dneto@google.com"/>
         <id value="18"  vendor="Wine" tool="VKD3D Shader Compiler" comment="Contact wine-devel@winehq.org"/>
-        <id value="19"  vendor="Tellusim" tool="Clay Shader Compiler" comment="Contact info@tellusim.com"/>
+        <id value="19"  vendor="Clay" tool="Clay Shader Compiler" comment="Contact info@clayengine.com"/>
         <id value="20"  vendor="W3C WebGPU Group" tool="WHLSL Shader Translator" comment="https://github.com/gpuweb/WHLSL"/>
         <id value="21"  vendor="Google" tool="Clspv" comment="Contact David Neto, dneto@google.com"/>
         <id value="22"  vendor="Google" tool="MLIR SPIR-V Serializer" comment="Contact Lei Zhang, antiagainst@google.com"/>
-        <id value="23"  vendor="Google" tool="Tint Compiler" comment="Contact David Neto, dneto@google.com"/>
-        <id value="24"  vendor="Google" tool="ANGLE Shader Compiler" comment="Contact Shahbaz Youssefi, syoussefi@google.com"/>
-        <id value="25"  vendor="Netease Games" tool="Messiah Shader Compiler" comment="Contact Yuwen Wu, atyuwen@gmail.com"/>
-        <id value="26"  vendor="Xenia" tool="Xenia Emulator Microcode Translator" comment="Contact Vitaliy Kuzmin, triang3l@yandex.ru, https://github.com/xenia-project/xenia"/>
-        <id value="27"  vendor="Embark Studios" tool="Rust GPU Compiler Backend" comment="https://github.com/embarkstudios/rust-gpu"/>
-        <id value="28"  vendor="gfx-rs community" tool="Naga" comment="https://github.com/gfx-rs/naga"/>
-        <id value="29"  vendor="Mikkosoft Productions" tool="MSP Shader Compiler" comment="Contact Mikko Rasa, tdb@tdb.fi"/>
-        <id value="30"  vendor="SpvGenTwo community" tool="SpvGenTwo SPIR-V IR Tools" comment="https://github.com/rAzoR8/SpvGenTwo"/>
-        <unused start="31" end="0xFFFF" comment="Tool ID range reservable for future use by vendors"/>
+        <unused start="23" end="0xFFFF" comment="Tool ID range reservable for future use by vendors"/>
     </ids>
 
     <!-- SECTION: SPIR-V Opcodes and Enumerants -->
+    <!-- Reserve new ranges for vendors in contiguous blocks of 64
+         preceding the "Future use" block below, and modify that block
+         accordingly.
 
-    <!-- Vendors reserve new ranges of:
-           - opcode enumerants in the "opcode" list below, and
-           - non-opcode enumerants in the non-opcodes "enumerant" list below.
-         Both are reserved by contiguous blocks of 64, preceding the given
-         "Future use" blocks.
-
-         SPIR-V background:
-           - SPIR-V currently has well over 30 enums, including the opcode enum
-           - each enum has its own name space, allowing reuse of enumerants
-           - SPIR-V restricts opcode enumerants to 16 bits
-           - all other enums use 32-bit enumerants
-
-         Reservation rules:
-           - opcode reservations ("opcode") are only valid for opcodes
-           - non-opcode reservations ("enumerant") are not valid for opcodes
-           - reservations in the enumerant list are valid for all non-opcode enums
-           - it is simpler to use each non-opcode enumerant for only one purpose
-             but this is left to the discretion of the vendor
-           - all enumerants in a range should be used before allocating a new range
-             (several extensions can use enumerants from the same range)
-
-         Each vendor determines the use of enumerants in the ranges they
-         reserve. Vendors are not required to disclose those uses.  If the use
-         of an enumerant is included in an extension that is adopted by a Khronos
-         extension or specification, then that enumerant's use may be permanently
+         Each vendor determines the use of values in their own ranges.
+         Vendors are not required to disclose those uses.  If the use of a
+         value is included in an extension that is adopted by a Khronos
+         extension or specification, then that value's use may be permanently
          fixed as if originally reserved in a Khronos range.
 
+         The SPIR Working Group strongly recommends:
+         - Each value is used for only one purpose.
+         - All values in a range should be used before allocating a new range.
+           For example, to avoid unused gaps in ranges, it is customary for
+           several extensions to use values from the same range.
+
+         The Id type "enum" is a synonym for "opcode".
+
+         Note that SPIR-V restricts opcode values to 16 bits.
          -->
 
-    <!-- Begin reservations of opcode enumerants -->
+    <!-- Reserved opcode & enumerant blocks -->
     <ids type="opcode" start="0" end="4095" vendor="Khronos" comment="Reserved opcodes, not available to vendors - see the SPIR-V Specification"/>
     <ids type="opcode" start="4096" end="4159" vendor="Mesa" comment="Contact TBD"/>
     <ids type="opcode" start="4160" end="4415" vendor="ARM"/>
@@ -130,45 +112,15 @@
     <ids type="opcode" start="5824" end="5951" vendor="Intel" comment="Contact michael.kinsner@intel.com"/>
     <ids type="opcode" start="5952" end="6015" vendor="Codeplay" comment="Contact victor@codeplay.com"/>
     <ids type="opcode" start="6016" end="6079" vendor="Khronos" comment="Contact @tobski"/>
-    <ids type="opcode" start="6080" end="6143" vendor="Intel" comment="Contact mariusz.merecki@intel.com"/>
-    <ids type="opcode" start="6144" end="6271" vendor="Intel" comment="Contact michael.kinsner@intel.com"/>
-    <ids type="opcode" start="6272" end="6399" vendor="Huawei" comment="Contact wanghuilong2@xunweitech.com"/>
-    <!-- Opcode enumerants to reserve for future use. To get a block, allocate
+    <!-- Opcodes & enumerants reservable for future use. To get a block, allocate
          multiples of 64 starting at the lowest available point in this
          block and add a corresponding <ids> tag immediately above. Make
          sure to fill in the vendor attribute, and preferably add a contact
          person/address in a comment attribute. -->
+
     <!-- Example new block: <ids type="opcode" start="XXXX" end="XXXX+64n-1" vendor="Add vendor" comment="Contact TBD"/> -->
-    <ids type="opcode" start="6400" end="65535" comment="Opcode range reservable for future use by vendors"/>
-    <!-- End reservations of opcodes -->
 
-
-    <!-- Begin reservations of non-opcode enumerants -->
-    <ids type="enumerant" start="0" end="4095" vendor="Khronos" comment="Reserved enumerants, not available to vendors - see the SPIR-V Specification"/>
-    <ids type="enumerant" start="4096" end="4159" vendor="Mesa" comment="Contact TBD"/>
-    <ids type="enumerant" start="4160" end="4415" vendor="ARM"/>
-    <ids type="enumerant" start="4416" end="4479" vendor="Khronos" comment="SPV_ARB_shader_ballot - contact Neil Henning, neil.henning@amd.com"/>
-    <ids type="enumerant" start="4480" end="4991" vendor="Qualcomm" comment="Contact weifengz@qti.qualcomm.com"/>
-    <ids type="enumerant" start="4992" end="5247" vendor="AMD"/>
-    <ids type="enumerant" start="5248" end="5503" vendor="NVIDIA"/>
-    <ids type="enumerant" start="5504" end="5567" vendor="Imagination"/>
-    <ids type="enumerant" start="5568" end="5631" vendor="Intel" comment="Contact ben.ashbaugh@intel.com"/>
-    <ids type="enumerant" start="5632" end="5695" vendor="Google" comment="Contact dneto@google.com"/>
-    <ids type="enumerant" start="5696" end="5823" vendor="Intel" comment="Contact ben.ashbaugh@intel.com"/>
-    <ids type="enumerant" start="5824" end="5951" vendor="Intel" comment="Contact michael.kinsner@intel.com"/>
-    <ids type="enumerant" start="5952" end="6015" vendor="Codeplay" comment="Contact victor@codeplay.com"/>
-    <ids type="enumerant" start="6016" end="6079" vendor="Khronos" comment="Contact @tobski"/>
-    <ids type="enumerant" start="6080" end="6143" vendor="Intel" comment="Contact mariusz.merecki@intel.com"/>
-    <ids type="enumerant" start="6144" end="6271" vendor="Intel" comment="Contact michael.kinsner@intel.com"/>
-    <ids type="enumerant" start="6272" end="6399" vendor="Huawei" comment="Contact wanghuilong2@xunweitech.com"/>
-    <!-- Enumerants to reserve for future use. To get a block, allocate
-         multiples of 64 starting at the lowest available point in this
-         block and add a corresponding <ids> tag immediately above. Make
-         sure to fill in the vendor attribute, and preferably add a contact
-         person/address in a comment attribute. -->
-    <!-- Example new block: <ids type="enumerant" start="XXXX" end="XXXX+64n-1" vendor="Add vendor" comment="Contact TBD"/> -->
-    <ids type="enumerant" start="6400" end="4294967295" comment="Enumerant range reservable for future use by vendors"/>
-    <!-- End reservations of enumerants -->
+    <ids type="opcode" start="6080" end="4294967295" comment="Opcode range reservable for future use by vendors"/>
 
 
     <!-- SECTION: SPIR-V Loop Control Bit Reservations -->
@@ -187,68 +139,8 @@
 
     <!-- Reserved loop control bits -->
     <ids type="LoopControl" start="0" end="15" vendor="Khronos" comment="Reserved LoopControl bits, not available to vendors - see the SPIR-V Specification"/>
-    <ids type="LoopControl" start="16" end="24" vendor="Intel" comment="Contact michael.kinsner@intel.com"/>
-    <ids type="LoopControl" start="25" end="30" comment="Unreserved bits reservable for use by vendors"/>
+    <ids type="LoopControl" start="16" end="22" vendor="Intel" comment="Contact michael.kinsner@intel.com"/>
+    <ids type="LoopControl" start="23" end="30" comment="Unreserved bits reservable for use by vendors"/>
     <ids type="LoopControl" start="31" end="31" vendor="Khronos" comment="Reserved LoopControl bit, not available to vendors"/>
 
-
-    <!-- SECTION: SPIR-V Function Control Bit Reservations -->
-    <!-- Reserve ranges of bits in the function control bitfield.
-
-         Each vendor determines the use of values in their own ranges.
-         Vendors are not required to disclose those uses.  If the use of a
-         value is included in an extension that is adopted by a Khronos
-         extension or specification, then that value's use may be permanently
-         fixed as if originally reserved in a Khronos range.
-
-         The SPIR Working Group strongly recommends:
-         - Each value is used for only one purpose.
-         - All values in a range should be used before allocating a new range.
-         -->
-
-    <!-- Reserved function control bits -->
-    <ids type="FunctionControl" start="0" end="15" vendor="Khronos" comment="Reserved FunctionControl bits, not available to vendors - see the SPIR-V Specification"/>
-    <ids type="FunctionControl" start="16" end="16" vendor="Intel" comment="Contact ben.ashbaugh@intel.com"/>
-    <ids type="FunctionControl" start="17" end="30" comment="Unreserved bits reservable for use by vendors"/>
-    <ids type="FunctionControl" start="31" end="31" vendor="Khronos" comment="Reserved FunctionControl bit, not available to vendors"/>
-
-
-    <!-- SECTION: SPIR-V FP Fast Math Mode Bit Reservations -->
-    <!-- Reserve ranges of bits in the "FP Fast Math Mode" bitfield.
-         Each vendor determines the use of values in their own ranges.
-         Vendors are not required to disclose those uses.  If the use of a
-         value is included in an extension that is adopted by a Khronos
-         extension or specification, then that value's use may be permanently
-         fixed as if originally reserved in a Khronos range.
-         The SPIR Working Group strongly recommends:
-         - Each value is used for only one purpose.
-         - All values in a range should be used before allocating a new range.
-         -->
-
-    <!-- Reserved FP fast math mode bits -->
-    <ids type="FPFastMathMode" start="0" end="15" vendor="Khronos" comment="Reserved FPFastMathMode bits, not available to vendors - see the SPIR-V Specification"/>
-    <ids type="FPFastMathMode" start="16" end="17" vendor="Intel" comment="Contact michael.kinsner@intel.com"/>
-    <ids type="FPFastMathMode" start="18" end="31" comment="Unreserved bits reservable for use by vendors"/>
-
-
-    <!-- SECTION: SPIR-V Memory Operand Bit Reservations -->
-    <!-- Reserve ranges of bits in the memory operands bitfield.
-
-         Each vendor determines the use of values in their own ranges.
-         Vendors are not required to disclose those uses.  If the use of a
-         value is included in an extension that is adopted by a Khronos
-         extension or specification, then that value's use may be permanently
-         fixed as if originally reserved in a Khronos range.
-
-         The SPIR Working Group strongly recommends:
-         - Each value is used for only one purpose.
-         - All values in a range should be used before allocating a new range.
-         -->
-
-    <!-- Reserved memory operand bits -->
-    <ids type="MemoryOperand" start="0" end="15" vendor="Khronos" comment="Reserved MemoryOperand bits, not available to vendors - see the SPIR-V Specification"/>
-    <ids type="MemoryOperand" start="16" end="17" vendor="Intel" comment="Contact michael.kinsner@intel.com"/>
-    <ids type="MemoryOperand" start="18" end="30" comment="Unreserved bits reservable for use by vendors"/>
-    <ids type="MemoryOperand" start="31" end="31" vendor="Khronos" comment="Reserved MemoryOperand bit, not available to vendors"/>
-
 </registry>
diff --git a/include/spirv/unified1/DebugInfo.h b/include/spirv/unified1/DebugInfo.h
index 4657556..c50a131 100644
--- a/include/spirv/unified1/DebugInfo.h
+++ b/include/spirv/unified1/DebugInfo.h
@@ -78,7 +78,6 @@
 
 
 enum DebugInfoDebugInfoFlags {
-    DebugInfoNone = 0x0000,
     DebugInfoFlagIsProtected = 0x01,
     DebugInfoFlagIsPrivate = 0x02,
     DebugInfoFlagIsPublic = 0x03,
diff --git a/include/spirv/unified1/NonSemanticClspvReflection.h b/include/spirv/unified1/NonSemanticClspvReflection.h
deleted file mode 100644
index fa7061d..0000000
--- a/include/spirv/unified1/NonSemanticClspvReflection.h
+++ /dev/null
@@ -1,73 +0,0 @@
-// Copyright (c) 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"), to deal in the Materials without restriction, including
-// without limitation the rights to use, copy, modify, merge, publish,
-// distribute, sublicense, and/or sell copies of the Materials, and to
-// permit persons to whom the Materials are furnished to do so, subject to
-// the following conditions:
-// 
-// The above copyright notice and this permission notice shall be included
-// in all copies or substantial portions of the Materials.
-// 
-// MODIFICATIONS TO THIS FILE MAY MEAN IT NO LONGER ACCURATELY REFLECTS
-// KHRONOS STANDARDS. THE UNMODIFIED, NORMATIVE VERSIONS OF KHRONOS
-// SPECIFICATIONS AND HEADER INFORMATION ARE LOCATED AT
-//    https://www.khronos.org/registry/
-// 
-// THE MATERIALS ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
-// EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
-// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
-// IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY
-// CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT,
-// TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE
-// MATERIALS OR THE USE OR OTHER DEALINGS IN THE MATERIALS.
-// 
-
-#ifndef SPIRV_UNIFIED1_NonSemanticClspvReflection_H_
-#define SPIRV_UNIFIED1_NonSemanticClspvReflection_H_
-
-#ifdef __cplusplus
-extern "C" {
-#endif
-
-enum {
-    NonSemanticClspvReflectionRevision = 1,
-    NonSemanticClspvReflectionRevision_BitWidthPadding = 0x7fffffff
-};
-
-enum NonSemanticClspvReflectionInstructions {
-    NonSemanticClspvReflectionKernel = 1,
-    NonSemanticClspvReflectionArgumentInfo = 2,
-    NonSemanticClspvReflectionArgumentStorageBuffer = 3,
-    NonSemanticClspvReflectionArgumentUniform = 4,
-    NonSemanticClspvReflectionArgumentPodStorageBuffer = 5,
-    NonSemanticClspvReflectionArgumentPodUniform = 6,
-    NonSemanticClspvReflectionArgumentPodPushConstant = 7,
-    NonSemanticClspvReflectionArgumentSampledImage = 8,
-    NonSemanticClspvReflectionArgumentStorageImage = 9,
-    NonSemanticClspvReflectionArgumentSampler = 10,
-    NonSemanticClspvReflectionArgumentWorkgroup = 11,
-    NonSemanticClspvReflectionSpecConstantWorkgroupSize = 12,
-    NonSemanticClspvReflectionSpecConstantGlobalOffset = 13,
-    NonSemanticClspvReflectionSpecConstantWorkDim = 14,
-    NonSemanticClspvReflectionPushConstantGlobalOffset = 15,
-    NonSemanticClspvReflectionPushConstantEnqueuedLocalSize = 16,
-    NonSemanticClspvReflectionPushConstantGlobalSize = 17,
-    NonSemanticClspvReflectionPushConstantRegionOffset = 18,
-    NonSemanticClspvReflectionPushConstantNumWorkgroups = 19,
-    NonSemanticClspvReflectionPushConstantRegionGroupOffset = 20,
-    NonSemanticClspvReflectionConstantDataStorageBuffer = 21,
-    NonSemanticClspvReflectionConstantDataUniform = 22,
-    NonSemanticClspvReflectionLiteralSampler = 23,
-    NonSemanticClspvReflectionPropertyRequiredWorkgroupSize = 24,
-    NonSemanticClspvReflectionInstructionsMax = 0x7fffffff
-};
-
-
-#ifdef __cplusplus
-}
-#endif
-
-#endif // SPIRV_UNIFIED1_NonSemanticClspvReflection_H_
diff --git a/include/spirv/unified1/NonSemanticShaderDebugInfo100.h b/include/spirv/unified1/NonSemanticShaderDebugInfo100.h
deleted file mode 100644
index c52f32f..0000000
--- a/include/spirv/unified1/NonSemanticShaderDebugInfo100.h
+++ /dev/null
@@ -1,171 +0,0 @@
-// Copyright (c) 2018 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"),
-// to deal in the Materials without restriction, including without limitation
-// the rights to use, copy, modify, merge, publish, distribute, sublicense,
-// and/or sell copies of the Materials, and to permit persons to whom the
-// Materials are furnished to do so, subject to the following conditions:
-// 
-// The above copyright notice and this permission notice shall be included in
-// all copies or substantial portions of the Materials.
-// 
-// MODIFICATIONS TO THIS FILE MAY MEAN IT NO LONGER ACCURATELY REFLECTS KHRONOS
-// STANDARDS. THE UNMODIFIED, NORMATIVE VERSIONS OF KHRONOS SPECIFICATIONS AND
-// HEADER INFORMATION ARE LOCATED AT https://www.khronos.org/registry/ 
-// 
-// THE MATERIALS ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
-// OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
-// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL
-// THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
-// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
-// FROM,OUT OF OR IN CONNECTION WITH THE MATERIALS OR THE USE OR OTHER DEALINGS
-// IN THE MATERIALS.
-
-#ifndef SPIRV_UNIFIED1_NonSemanticShaderDebugInfo100_H_
-#define SPIRV_UNIFIED1_NonSemanticShaderDebugInfo100_H_
-
-#ifdef __cplusplus
-extern "C" {
-#endif
-
-enum {
-    NonSemanticShaderDebugInfo100Version = 100,
-    NonSemanticShaderDebugInfo100Version_BitWidthPadding = 0x7fffffff
-};
-enum {
-    NonSemanticShaderDebugInfo100Revision = 6,
-    NonSemanticShaderDebugInfo100Revision_BitWidthPadding = 0x7fffffff
-};
-
-enum NonSemanticShaderDebugInfo100Instructions {
-    NonSemanticShaderDebugInfo100DebugInfoNone = 0,
-    NonSemanticShaderDebugInfo100DebugCompilationUnit = 1,
-    NonSemanticShaderDebugInfo100DebugTypeBasic = 2,
-    NonSemanticShaderDebugInfo100DebugTypePointer = 3,
-    NonSemanticShaderDebugInfo100DebugTypeQualifier = 4,
-    NonSemanticShaderDebugInfo100DebugTypeArray = 5,
-    NonSemanticShaderDebugInfo100DebugTypeVector = 6,
-    NonSemanticShaderDebugInfo100DebugTypedef = 7,
-    NonSemanticShaderDebugInfo100DebugTypeFunction = 8,
-    NonSemanticShaderDebugInfo100DebugTypeEnum = 9,
-    NonSemanticShaderDebugInfo100DebugTypeComposite = 10,
-    NonSemanticShaderDebugInfo100DebugTypeMember = 11,
-    NonSemanticShaderDebugInfo100DebugTypeInheritance = 12,
-    NonSemanticShaderDebugInfo100DebugTypePtrToMember = 13,
-    NonSemanticShaderDebugInfo100DebugTypeTemplate = 14,
-    NonSemanticShaderDebugInfo100DebugTypeTemplateParameter = 15,
-    NonSemanticShaderDebugInfo100DebugTypeTemplateTemplateParameter = 16,
-    NonSemanticShaderDebugInfo100DebugTypeTemplateParameterPack = 17,
-    NonSemanticShaderDebugInfo100DebugGlobalVariable = 18,
-    NonSemanticShaderDebugInfo100DebugFunctionDeclaration = 19,
-    NonSemanticShaderDebugInfo100DebugFunction = 20,
-    NonSemanticShaderDebugInfo100DebugLexicalBlock = 21,
-    NonSemanticShaderDebugInfo100DebugLexicalBlockDiscriminator = 22,
-    NonSemanticShaderDebugInfo100DebugScope = 23,
-    NonSemanticShaderDebugInfo100DebugNoScope = 24,
-    NonSemanticShaderDebugInfo100DebugInlinedAt = 25,
-    NonSemanticShaderDebugInfo100DebugLocalVariable = 26,
-    NonSemanticShaderDebugInfo100DebugInlinedVariable = 27,
-    NonSemanticShaderDebugInfo100DebugDeclare = 28,
-    NonSemanticShaderDebugInfo100DebugValue = 29,
-    NonSemanticShaderDebugInfo100DebugOperation = 30,
-    NonSemanticShaderDebugInfo100DebugExpression = 31,
-    NonSemanticShaderDebugInfo100DebugMacroDef = 32,
-    NonSemanticShaderDebugInfo100DebugMacroUndef = 33,
-    NonSemanticShaderDebugInfo100DebugImportedEntity = 34,
-    NonSemanticShaderDebugInfo100DebugSource = 35,
-    NonSemanticShaderDebugInfo100DebugFunctionDefinition = 101,
-    NonSemanticShaderDebugInfo100DebugSourceContinued = 102,
-    NonSemanticShaderDebugInfo100DebugLine = 103,
-    NonSemanticShaderDebugInfo100DebugNoLine = 104,
-    NonSemanticShaderDebugInfo100DebugBuildIdentifier = 105,
-    NonSemanticShaderDebugInfo100DebugStoragePath = 106,
-    NonSemanticShaderDebugInfo100DebugEntryPoint = 107,
-    NonSemanticShaderDebugInfo100DebugTypeMatrix = 108,
-    NonSemanticShaderDebugInfo100InstructionsMax = 0x7fffffff
-};
-
-
-enum NonSemanticShaderDebugInfo100DebugInfoFlags {
-    NonSemanticShaderDebugInfo100None = 0x0000,
-    NonSemanticShaderDebugInfo100FlagIsProtected = 0x01,
-    NonSemanticShaderDebugInfo100FlagIsPrivate = 0x02,
-    NonSemanticShaderDebugInfo100FlagIsPublic = 0x03,
-    NonSemanticShaderDebugInfo100FlagIsLocal = 0x04,
-    NonSemanticShaderDebugInfo100FlagIsDefinition = 0x08,
-    NonSemanticShaderDebugInfo100FlagFwdDecl = 0x10,
-    NonSemanticShaderDebugInfo100FlagArtificial = 0x20,
-    NonSemanticShaderDebugInfo100FlagExplicit = 0x40,
-    NonSemanticShaderDebugInfo100FlagPrototyped = 0x80,
-    NonSemanticShaderDebugInfo100FlagObjectPointer = 0x100,
-    NonSemanticShaderDebugInfo100FlagStaticMember = 0x200,
-    NonSemanticShaderDebugInfo100FlagIndirectVariable = 0x400,
-    NonSemanticShaderDebugInfo100FlagLValueReference = 0x800,
-    NonSemanticShaderDebugInfo100FlagRValueReference = 0x1000,
-    NonSemanticShaderDebugInfo100FlagIsOptimized = 0x2000,
-    NonSemanticShaderDebugInfo100FlagIsEnumClass = 0x4000,
-    NonSemanticShaderDebugInfo100FlagTypePassByValue = 0x8000,
-    NonSemanticShaderDebugInfo100FlagTypePassByReference = 0x10000,
-    NonSemanticShaderDebugInfo100FlagUnknownPhysicalLayout = 0x20000,
-    NonSemanticShaderDebugInfo100DebugInfoFlagsMax = 0x7fffffff
-};
-
-enum NonSemanticShaderDebugInfo100BuildIdentifierFlags {
-    NonSemanticShaderDebugInfo100IdentifierPossibleDuplicates = 0x01,
-    NonSemanticShaderDebugInfo100BuildIdentifierFlagsMax = 0x7fffffff
-};
-
-enum NonSemanticShaderDebugInfo100DebugBaseTypeAttributeEncoding {
-    NonSemanticShaderDebugInfo100Unspecified = 0,
-    NonSemanticShaderDebugInfo100Address = 1,
-    NonSemanticShaderDebugInfo100Boolean = 2,
-    NonSemanticShaderDebugInfo100Float = 3,
-    NonSemanticShaderDebugInfo100Signed = 4,
-    NonSemanticShaderDebugInfo100SignedChar = 5,
-    NonSemanticShaderDebugInfo100Unsigned = 6,
-    NonSemanticShaderDebugInfo100UnsignedChar = 7,
-    NonSemanticShaderDebugInfo100DebugBaseTypeAttributeEncodingMax = 0x7fffffff
-};
-
-enum NonSemanticShaderDebugInfo100DebugCompositeType {
-    NonSemanticShaderDebugInfo100Class = 0,
-    NonSemanticShaderDebugInfo100Structure = 1,
-    NonSemanticShaderDebugInfo100Union = 2,
-    NonSemanticShaderDebugInfo100DebugCompositeTypeMax = 0x7fffffff
-};
-
-enum NonSemanticShaderDebugInfo100DebugTypeQualifier {
-    NonSemanticShaderDebugInfo100ConstType = 0,
-    NonSemanticShaderDebugInfo100VolatileType = 1,
-    NonSemanticShaderDebugInfo100RestrictType = 2,
-    NonSemanticShaderDebugInfo100AtomicType = 3,
-    NonSemanticShaderDebugInfo100DebugTypeQualifierMax = 0x7fffffff
-};
-
-enum NonSemanticShaderDebugInfo100DebugOperation {
-    NonSemanticShaderDebugInfo100Deref = 0,
-    NonSemanticShaderDebugInfo100Plus = 1,
-    NonSemanticShaderDebugInfo100Minus = 2,
-    NonSemanticShaderDebugInfo100PlusUconst = 3,
-    NonSemanticShaderDebugInfo100BitPiece = 4,
-    NonSemanticShaderDebugInfo100Swap = 5,
-    NonSemanticShaderDebugInfo100Xderef = 6,
-    NonSemanticShaderDebugInfo100StackValue = 7,
-    NonSemanticShaderDebugInfo100Constu = 8,
-    NonSemanticShaderDebugInfo100Fragment = 9,
-    NonSemanticShaderDebugInfo100DebugOperationMax = 0x7fffffff
-};
-
-enum NonSemanticShaderDebugInfo100DebugImportedEntity {
-    NonSemanticShaderDebugInfo100ImportedModule = 0,
-    NonSemanticShaderDebugInfo100ImportedDeclaration = 1,
-    NonSemanticShaderDebugInfo100DebugImportedEntityMax = 0x7fffffff
-};
-
-
-#ifdef __cplusplus
-}
-#endif
-
-#endif // SPIRV_UNIFIED1_NonSemanticShaderDebugInfo100_H_
diff --git a/include/spirv/unified1/OpenCLDebugInfo100.h b/include/spirv/unified1/OpenCLDebugInfo100.h
index e3847c9..1149980 100644
--- a/include/spirv/unified1/OpenCLDebugInfo100.h
+++ b/include/spirv/unified1/OpenCLDebugInfo100.h
@@ -75,13 +75,11 @@
     OpenCLDebugInfo100DebugMacroUndef = 33,
     OpenCLDebugInfo100DebugImportedEntity = 34,
     OpenCLDebugInfo100DebugSource = 35,
-    OpenCLDebugInfo100DebugModuleINTEL = 36,
     OpenCLDebugInfo100InstructionsMax = 0x7fffffff
 };
 
 
 enum OpenCLDebugInfo100DebugInfoFlags {
-    OpenCLDebugInfo100None = 0x0000,
     OpenCLDebugInfo100FlagIsProtected = 0x01,
     OpenCLDebugInfo100FlagIsPrivate = 0x02,
     OpenCLDebugInfo100FlagIsPublic = 0x03,
diff --git a/include/spirv/unified1/extinst.debuginfo.grammar.json b/include/spirv/unified1/extinst.debuginfo.grammar.json
index 7d6e8e5..9212f6f 100644
--- a/include/spirv/unified1/extinst.debuginfo.grammar.json
+++ b/include/spirv/unified1/extinst.debuginfo.grammar.json
@@ -377,10 +377,6 @@
       "kind" : "DebugInfoFlags",
       "enumerants" : [
         {
-          "enumerant" : "None",
-          "value" : "0x0000"
-        },
-        {
           "enumerant" : "FlagIsProtected",
           "value" : "0x01"
         },
diff --git a/include/spirv/unified1/extinst.nonsemantic.clspvreflection.grammar.json b/include/spirv/unified1/extinst.nonsemantic.clspvreflection.grammar.json
deleted file mode 100644
index 15e5699..0000000
--- a/include/spirv/unified1/extinst.nonsemantic.clspvreflection.grammar.json
+++ /dev/null
@@ -1,237 +0,0 @@
-{
-  "revision" : 1,
-  "instructions" : [
-    {
-      "opname" : "Kernel",
-      "opcode" : 1,
-      "operands" : [
-        { "kind" : "IdRef", "name" : "Kernel" },
-        { "kind" : "IdRef", "name" : "Name" }
-      ]
-    },
-    {
-      "opname" : "ArgumentInfo",
-      "opcode" : 2,
-      "operands" : [
-        { "kind" : "IdRef", "name" : "Name" },
-        { "kind" : "IdRef", "name" : "Type Name", "quantifier" : "?" },
-        { "kind" : "IdRef", "name" : "Address Qualifier", "quantifier" : "?" },
-        { "kind" : "IdRef", "name" : "Access Qualifier", "quantifier" : "?" },
-        { "kind" : "IdRef", "name" : "Type Qualifier", "quantifier" : "?" }
-      ]
-    },
-    {
-      "opname" : "ArgumentStorageBuffer",
-      "opcode" : 3,
-      "operands" : [
-        { "kind" : "IdRef", "name" : "Decl" },
-        { "kind" : "IdRef", "name" : "Ordinal" },
-        { "kind" : "IdRef", "name" : "DescriptorSet" },
-        { "kind" : "IdRef", "name" : "Binding" },
-        { "kind" : "IdRef", "name" : "ArgInfo", "quantifier" : "?" }
-      ]
-    },
-    {
-      "opname" : "ArgumentUniform",
-      "opcode" : 4,
-      "operands" : [
-        { "kind" : "IdRef", "name" : "Decl" },
-        { "kind" : "IdRef", "name" : "Ordinal" },
-        { "kind" : "IdRef", "name" : "DescriptorSet" },
-        { "kind" : "IdRef", "name" : "Binding" },
-        { "kind" : "IdRef", "name" : "ArgInfo", "quantifier" : "?" }
-      ]
-    },
-    {
-      "opname" : "ArgumentPodStorageBuffer",
-      "opcode" : 5,
-      "operands" : [
-        { "kind" : "IdRef", "name" : "Decl" },
-        { "kind" : "IdRef", "name" : "Ordinal" },
-        { "kind" : "IdRef", "name" : "DescriptorSet" },
-        { "kind" : "IdRef", "name" : "Binding" },
-        { "kind" : "IdRef", "name" : "Offset" },
-        { "kind" : "IdRef", "name" : "Size" },
-        { "kind" : "IdRef", "name" : "ArgInfo", "quantifier" : "?" }
-      ]
-    },
-    {
-      "opname" : "ArgumentPodUniform",
-      "opcode" : 6,
-      "operands" : [
-        { "kind" : "IdRef", "name" : "Decl" },
-        { "kind" : "IdRef", "name" : "Ordinal" },
-        { "kind" : "IdRef", "name" : "DescriptorSet" },
-        { "kind" : "IdRef", "name" : "Binding" },
-        { "kind" : "IdRef", "name" : "Offset" },
-        { "kind" : "IdRef", "name" : "Size" },
-        { "kind" : "IdRef", "name" : "ArgInfo", "quantifier" : "?" }
-      ]
-    },
-    {
-      "opname" : "ArgumentPodPushConstant",
-      "opcode" : 7,
-      "operands" : [
-        { "kind" : "IdRef", "name" : "Decl" },
-        { "kind" : "IdRef", "name" : "Ordinal" },
-        { "kind" : "IdRef", "name" : "Offset" },
-        { "kind" : "IdRef", "name" : "Size" },
-        { "kind" : "IdRef", "name" : "ArgInfo", "quantifier" : "?" }
-      ]
-    },
-    {
-      "opname" : "ArgumentSampledImage",
-      "opcode" : 8,
-      "operands" : [
-        { "kind" : "IdRef", "name" : "Decl" },
-        { "kind" : "IdRef", "name" : "Ordinal" },
-        { "kind" : "IdRef", "name" : "DescriptorSet" },
-        { "kind" : "IdRef", "name" : "Binding" },
-        { "kind" : "IdRef", "name" : "ArgInfo", "quantifier" : "?" }
-      ]
-    },
-    {
-      "opname" : "ArgumentStorageImage",
-      "opcode" : 9,
-      "operands" : [
-        { "kind" : "IdRef", "name" : "Decl" },
-        { "kind" : "IdRef", "name" : "Ordinal" },
-        { "kind" : "IdRef", "name" : "DescriptorSet" },
-        { "kind" : "IdRef", "name" : "Binding" },
-        { "kind" : "IdRef", "name" : "ArgInfo", "quantifier" : "?" }
-      ]
-    },
-    {
-      "opname" : "ArgumentSampler",
-      "opcode" : 10,
-      "operands" : [
-        { "kind" : "IdRef", "name" : "Decl" },
-        { "kind" : "IdRef", "name" : "Ordinal" },
-        { "kind" : "IdRef", "name" : "DescriptorSet" },
-        { "kind" : "IdRef", "name" : "Binding" },
-        { "kind" : "IdRef", "name" : "ArgInfo", "quantifier" : "?" }
-      ]
-    },
-    {
-      "opname" : "ArgumentWorkgroup",
-      "opcode" : 11,
-      "operands" : [
-        { "kind" : "IdRef", "name" : "Decl" },
-        { "kind" : "IdRef", "name" : "Ordinal" },
-        { "kind" : "IdRef", "name" : "SpecId" },
-        { "kind" : "IdRef", "name" : "ElemSize" },
-        { "kind" : "IdRef", "name" : "ArgInfo", "quantifier" : "?" }
-      ]
-    },
-    {
-      "opname" : "SpecConstantWorkgroupSize",
-      "opcode" : 12,
-      "operands" : [
-        { "kind" : "IdRef", "name" : "X" },
-        { "kind" : "IdRef", "name" : "Y" },
-        { "kind" : "IdRef", "name" : "Z" }
-      ]
-    },
-    {
-      "opname" : "SpecConstantGlobalOffset",
-      "opcode" : 13,
-      "operands" : [
-        { "kind" : "IdRef", "name" : "X" },
-        { "kind" : "IdRef", "name" : "Y" },
-        { "kind" : "IdRef", "name" : "Z" }
-      ]
-    },
-    {
-      "opname" : "SpecConstantWorkDim",
-      "opcode" : 14,
-      "operands" : [
-        { "kind" : "IdRef", "name" : "Dim" }
-      ]
-    },
-    {
-      "opname" : "PushConstantGlobalOffset",
-      "opcode" : 15,
-      "operands" : [
-        { "kind" : "IdRef", "name" : "Offset" },
-        { "kind" : "IdRef", "name" : "Size" }
-      ]
-    },
-    {
-      "opname" : "PushConstantEnqueuedLocalSize",
-      "opcode" : 16,
-      "operands" : [
-        { "kind" : "IdRef", "name" : "Offset" },
-        { "kind" : "IdRef", "name" : "Size" }
-      ]
-    },
-    {
-      "opname" : "PushConstantGlobalSize",
-      "opcode" : 17,
-      "operands" : [
-        { "kind" : "IdRef", "name" : "Offset" },
-        { "kind" : "IdRef", "name" : "Size" }
-      ]
-    },
-    {
-      "opname" : "PushConstantRegionOffset",
-      "opcode" : 18,
-      "operands" : [
-        { "kind" : "IdRef", "name" : "Offset" },
-        { "kind" : "IdRef", "name" : "Size" }
-      ]
-    },
-    {
-      "opname" : "PushConstantNumWorkgroups",
-      "opcode" : 19,
-      "operands" : [
-        { "kind" : "IdRef", "name" : "Offset" },
-        { "kind" : "IdRef", "name" : "Size" }
-      ]
-    },
-    {
-      "opname" : "PushConstantRegionGroupOffset",
-      "opcode" : 20,
-      "operands" : [
-        { "kind" : "IdRef", "name" : "Offset" },
-        { "kind" : "IdRef", "name" : "Size" }
-      ]
-    },
-    {
-      "opname" : "ConstantDataStorageBuffer",
-      "opcode" : 21,
-      "operands" : [
-        { "kind" : "IdRef", "name" : "DescriptorSet" },
-        { "kind" : "IdRef", "name" : "Binding" },
-        { "kind" : "IdRef", "name" : "Data" }
-      ]
-    },
-    {
-      "opname" : "ConstantDataUniform",
-      "opcode" : 22,
-      "operands" : [
-        { "kind" : "IdRef", "name" : "DescriptorSet" },
-        { "kind" : "IdRef", "name" : "Binding" },
-        { "kind" : "IdRef", "name" : "Data" }
-      ]
-    },
-    {
-      "opname" : "LiteralSampler",
-      "opcode" : 23,
-      "operands" : [
-        { "kind" : "IdRef", "name" : "DescriptorSet" },
-        { "kind" : "IdRef", "name" : "Binding" },
-        { "kind" : "IdRef", "name" : "Mask" }
-      ]
-    },
-    {
-      "opname" : "PropertyRequiredWorkgroupSize",
-      "opcode" : 24,
-      "operands" : [
-        { "kind" : "IdRef", "name" : "Kernel" },
-        { "kind" : "IdRef", "name" : "X" },
-        { "kind" : "IdRef", "name" : "Y" },
-        { "kind" : "IdRef", "name" : "Z" }
-      ]
-    }
-  ]
-}
diff --git a/include/spirv/unified1/extinst.nonsemantic.shader.debuginfo.100.grammar.json b/include/spirv/unified1/extinst.nonsemantic.shader.debuginfo.100.grammar.json
deleted file mode 100644
index f3621b0..0000000
--- a/include/spirv/unified1/extinst.nonsemantic.shader.debuginfo.100.grammar.json
+++ /dev/null
@@ -1,713 +0,0 @@
-{
-  "copyright" : [
-    "Copyright (c) 2018 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\"),",
-    "to deal in the Materials without restriction, including without limitation",
-    "the rights to use, copy, modify, merge, publish, distribute, sublicense,",
-    "and/or sell copies of the Materials, and to permit persons to whom the",
-    "Materials are furnished to do so, subject to the following conditions:",
-    "",
-    "The above copyright notice and this permission notice shall be included in",
-    "all copies or substantial portions of the Materials.",
-    "",
-    "MODIFICATIONS TO THIS FILE MAY MEAN IT NO LONGER ACCURATELY REFLECTS KHRONOS",
-    "STANDARDS. THE UNMODIFIED, NORMATIVE VERSIONS OF KHRONOS SPECIFICATIONS AND",
-    "HEADER INFORMATION ARE LOCATED AT https://www.khronos.org/registry/ ",
-    "",
-    "THE MATERIALS ARE PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS",
-    "OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,",
-    "FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL",
-    "THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER",
-    "LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING",
-    "FROM,OUT OF OR IN CONNECTION WITH THE MATERIALS OR THE USE OR OTHER DEALINGS",
-    "IN THE MATERIALS."
-  ],
-  "version" : 100,
-  "revision" : 6,
-  "instructions" : [
-    {
-      "opname" : "DebugInfoNone",
-      "opcode" : 0
-    },
-    {
-      "opname" : "DebugCompilationUnit",
-      "opcode" : 1,
-      "operands" : [
-        { "kind" : "IdRef", "name" : "'Version'" },
-        { "kind" : "IdRef", "name" : "'DWARF Version'" },
-        { "kind" : "IdRef", "name" : "'Source'" },
-        { "kind" : "IdRef", "name" : "'Language'" }
-      ]
-    },
-    {
-      "opname" : "DebugTypeBasic",
-      "opcode" : 2,
-      "operands" : [
-        { "kind" : "IdRef", "name" : "'Name'" },
-        { "kind" : "IdRef", "name" : "'Size'" },
-        { "kind" : "IdRef", "name" : "'Encoding'" },
-        { "kind" : "IdRef", "name" : "'Flags'" }
-      ]
-    },
-    {
-      "opname" : "DebugTypePointer",
-      "opcode" : 3,
-      "operands" : [
-        { "kind" : "IdRef", "name" : "'Base Type'" },
-        { "kind" : "IdRef", "name" : "'Storage Class'" },
-        { "kind" : "IdRef", "name" : "'Flags'" }
-      ]
-    },
-    {
-      "opname" : "DebugTypeQualifier",
-      "opcode" : 4,
-      "operands" : [
-        { "kind" : "IdRef", "name" : "'Base Type'" },
-        { "kind" : "IdRef", "name" : "'Type Qualifier'" }
-      ]
-    },
-    {
-      "opname" : "DebugTypeArray",
-      "opcode" : 5,
-      "operands" : [
-        { "kind" : "IdRef", "name" : "'Base Type'" },
-        { "kind" : "IdRef", "name" : "'Component Counts'", "quantifier" : "*" }
-      ]
-    },
-    {
-      "opname" : "DebugTypeVector",
-      "opcode" : 6,
-      "operands" : [
-        { "kind" : "IdRef", "name" : "'Base Type'" },
-        { "kind" : "IdRef", "name" : "'Component Count'" }
-      ]
-    },
-    {
-      "opname" : "DebugTypedef",
-      "opcode" : 7,
-      "operands" : [
-        { "kind" : "IdRef", "name" : "'Name'" },
-        { "kind" : "IdRef", "name" : "'Base Type'" },
-        { "kind" : "IdRef", "name" : "'Source'" },
-        { "kind" : "IdRef", "name" : "'Line'" },
-        { "kind" : "IdRef", "name" : "'Column'" },
-        { "kind" : "IdRef", "name" : "'Parent'" }
-      ]
-    },
-    {
-      "opname" : "DebugTypeFunction",
-      "opcode" : 8,
-      "operands" : [
-        { "kind" : "IdRef", "name" : "'Flags'" },
-        { "kind" : "IdRef", "name" : "'Return Type'" },
-        { "kind" : "IdRef", "name" : "'Parameter Types'", "quantifier" : "*" }
-      ]
-    },
-    {
-      "opname" : "DebugTypeEnum",
-      "opcode" : 9,
-      "operands" : [
-        { "kind" : "IdRef", "name" : "'Name'" },
-        { "kind" : "IdRef", "name" : "'Underlying Type'" },
-        { "kind" : "IdRef", "name" : "'Source'" },
-        { "kind" : "IdRef", "name" : "'Line'" },
-        { "kind" : "IdRef", "name" : "'Column'" },
-        { "kind" : "IdRef", "name" : "'Parent'" },
-        { "kind" : "IdRef", "name" : "'Size'" },
-        { "kind" : "IdRef", "name" : "'Flags'" },
-        { "kind" : "PairIdRefIdRef", "name" : "'Value, Name, Value, Name, ...'", "quantifier" : "*" }
-      ]
-    },
-    {
-      "opname" : "DebugTypeComposite",
-      "opcode" : 10,
-      "operands" : [
-        { "kind" : "IdRef", "name" : "'Name'" },
-        { "kind" : "IdRef", "name" : "'Tag'" },
-        { "kind" : "IdRef", "name" : "'Source'" },
-        { "kind" : "IdRef", "name" : "'Line'" },
-        { "kind" : "IdRef", "name" : "'Column'" },
-        { "kind" : "IdRef", "name" : "'Parent'" },
-        { "kind" : "IdRef", "name" : "'Linkage Name'" },
-        { "kind" : "IdRef", "name" : "'Size'" },
-        { "kind" : "IdRef", "name" : "'Flags'" },
-        { "kind" : "IdRef", "name" : "'Members'", "quantifier" : "*" }
-      ]
-    },
-    {
-      "opname" : "DebugTypeMember",
-      "opcode" : 11,
-      "operands" : [
-        { "kind" : "IdRef", "name" : "'Name'" },
-        { "kind" : "IdRef", "name" : "'Type'" },
-        { "kind" : "IdRef", "name" : "'Source'" },
-        { "kind" : "IdRef", "name" : "'Line'" },
-        { "kind" : "IdRef", "name" : "'Column'" },
-        { "kind" : "IdRef", "name" : "'Offset'" },
-        { "kind" : "IdRef", "name" : "'Size'" },
-        { "kind" : "IdRef", "name" : "'Flags'" },
-        { "kind" : "IdRef", "name" : "'Value'", "quantifier" : "?" }
-      ]
-    },
-    {
-      "opname" : "DebugTypeInheritance",
-      "opcode" : 12,
-      "operands" : [
-        { "kind" : "IdRef", "name" : "'Parent'" },
-        { "kind" : "IdRef", "name" : "'Offset'" },
-        { "kind" : "IdRef", "name" : "'Size'" },
-        { "kind" : "IdRef", "name" : "'Flags'" }
-      ]
-    },
-    {
-      "opname" : "DebugTypePtrToMember",
-      "opcode" : 13,
-      "operands" : [
-        { "kind" : "IdRef", "name" : "'Member Type'" },
-        { "kind" : "IdRef", "name" : "'Parent'" }
-      ]
-    },
-    {
-      "opname" : "DebugTypeTemplate",
-      "opcode" : 14,
-      "operands" : [
-        { "kind" : "IdRef", "name" : "'Target'" },
-        { "kind" : "IdRef", "name" : "'Parameters'", "quantifier" : "*" }
-      ]
-    },
-    {
-      "opname" : "DebugTypeTemplateParameter",
-      "opcode" : 15,
-      "operands" : [
-        { "kind" : "IdRef", "name" : "'Name'" },
-        { "kind" : "IdRef", "name" : "'Actual Type'" },
-        { "kind" : "IdRef", "name" : "'Value'" },
-        { "kind" : "IdRef", "name" : "'Source'" },
-        { "kind" : "IdRef", "name" : "'Line'" },
-        { "kind" : "IdRef", "name" : "'Column'" }
-      ]
-    },
-    {
-      "opname" : "DebugTypeTemplateTemplateParameter",
-      "opcode" : 16,
-      "operands" : [
-        { "kind" : "IdRef", "name" : "'Name'" },
-        { "kind" : "IdRef", "name" : "'Template Name'" },
-        { "kind" : "IdRef", "name" : "'Source'" },
-        { "kind" : "IdRef", "name" : "'Line'" },
-        { "kind" : "IdRef", "name" : "'Column'" }
-      ]
-    },
-    {
-      "opname" : "DebugTypeTemplateParameterPack",
-      "opcode" : 17,
-      "operands" : [
-        { "kind" : "IdRef", "name" : "'Name'" },
-        { "kind" : "IdRef", "name" : "'Source'" },
-        { "kind" : "IdRef", "name" : "'Line'" },
-        { "kind" : "IdRef", "name" : "'Column'" },
-        { "kind" : "IdRef", "name" : "'Template Parameters'", "quantifier" : "*" }
-      ]
-    },
-    {
-      "opname" : "DebugGlobalVariable",
-      "opcode" : 18,
-      "operands" : [
-        { "kind" : "IdRef", "name" : "'Name'" },
-        { "kind" : "IdRef", "name" : "'Type'" },
-        { "kind" : "IdRef", "name" : "'Source'" },
-        { "kind" : "IdRef", "name" : "'Line'" },
-        { "kind" : "IdRef", "name" : "'Column'" },
-        { "kind" : "IdRef", "name" : "'Parent'" },
-        { "kind" : "IdRef", "name" : "'Linkage Name'" },
-        { "kind" : "IdRef", "name" : "'Variable'" },
-        { "kind" : "IdRef", "name" : "'Flags'" },
-        { "kind" : "IdRef", "name" : "'Static Member Declaration'", "quantifier" : "?" }
-      ]
-    },
-    {
-      "opname" : "DebugFunctionDeclaration",
-      "opcode" : 19,
-      "operands" : [
-        { "kind" : "IdRef", "name" : "'Name'" },
-        { "kind" : "IdRef", "name" : "'Type'" },
-        { "kind" : "IdRef", "name" : "'Source'" },
-        { "kind" : "IdRef", "name" : "'Line'" },
-        { "kind" : "IdRef", "name" : "'Column'" },
-        { "kind" : "IdRef", "name" : "'Parent'" },
-        { "kind" : "IdRef", "name" : "'Linkage Name'" },
-        { "kind" : "IdRef", "name" : "'Flags'" }
-      ]
-    },
-    {
-      "opname" : "DebugFunction",
-      "opcode" : 20,
-      "operands" : [
-        { "kind" : "IdRef", "name" : "'Name'" },
-        { "kind" : "IdRef", "name" : "'Type'" },
-        { "kind" : "IdRef", "name" : "'Source'" },
-        { "kind" : "IdRef", "name" : "'Line'" },
-        { "kind" : "IdRef", "name" : "'Column'" },
-        { "kind" : "IdRef", "name" : "'Parent'" },
-        { "kind" : "IdRef", "name" : "'Linkage Name'" },
-        { "kind" : "IdRef", "name" : "'Flags'" },
-        { "kind" : "IdRef", "name" : "'Scope Line'" },
-        { "kind" : "IdRef", "name" : "'Declaration'", "quantifier" : "?" }
-      ]
-    },
-    {
-      "opname" : "DebugLexicalBlock",
-      "opcode" : 21,
-      "operands" : [
-        { "kind" : "IdRef", "name" : "'Source'" },
-        { "kind" : "IdRef", "name" : "'Line'" },
-        { "kind" : "IdRef", "name" : "'Column'" },
-        { "kind" : "IdRef", "name" : "'Parent'" },
-        { "kind" : "IdRef", "name" : "'Name'", "quantifier" : "?" }
-      ]
-    },
-    {
-      "opname" : "DebugLexicalBlockDiscriminator",
-      "opcode" : 22,
-      "operands" : [
-        { "kind" : "IdRef", "name" : "'Source'" },
-        { "kind" : "IdRef", "name" : "'Discriminator'" },
-        { "kind" : "IdRef", "name" : "'Parent'" }
-      ]
-    },
-    {
-      "opname" : "DebugScope",
-      "opcode" : 23,
-      "operands" : [
-        { "kind" : "IdRef", "name" : "'Scope'" },
-        { "kind" : "IdRef", "name" : "'Inlined At'", "quantifier" : "?" }
-      ]
-    },
-    {
-      "opname" : "DebugNoScope",
-      "opcode" : 24
-    },
-    {
-      "opname" : "DebugInlinedAt",
-      "opcode" : 25,
-      "operands" : [
-        { "kind" : "IdRef", "name" : "'Line'" },
-        { "kind" : "IdRef", "name" : "'Scope'" },
-        { "kind" : "IdRef", "name" : "'Inlined'", "quantifier" : "?" }
-      ]
-    },
-    {
-      "opname" : "DebugLocalVariable",
-      "opcode" : 26,
-      "operands" : [
-        { "kind" : "IdRef", "name" : "'Name'" },
-        { "kind" : "IdRef", "name" : "'Type'" },
-        { "kind" : "IdRef", "name" : "'Source'" },
-        { "kind" : "IdRef", "name" : "'Line'" },
-        { "kind" : "IdRef", "name" : "'Column'" },
-        { "kind" : "IdRef", "name" : "'Parent'" },
-        { "kind" : "IdRef", "name" : "'Flags'" },
-        { "kind" : "IdRef", "name" : "'Arg Number'", "quantifier" : "?" }
-      ]
-    },
-    {
-      "opname" : "DebugInlinedVariable",
-      "opcode" : 27,
-      "operands" : [
-        { "kind" : "IdRef", "name" : "'Variable'" },
-        { "kind" : "IdRef", "name" : "'Inlined'" }
-      ]
-    },
-    {
-      "opname" : "DebugDeclare",
-      "opcode" : 28,
-      "operands" : [
-        { "kind" : "IdRef", "name" : "'Local Variable'" },
-        { "kind" : "IdRef", "name" : "'Variable'" },
-        { "kind" : "IdRef", "name" : "'Expression'" },
-        { "kind" : "IdRef", "name" : "'Indexes'", "quantifier" : "*" }
-      ]
-    },
-    {
-      "opname" : "DebugValue",
-      "opcode" : 29,
-      "operands" : [
-        { "kind" : "IdRef", "name" : "'Local Variable'" },
-        { "kind" : "IdRef", "name" : "'Value'" },
-        { "kind" : "IdRef", "name" : "'Expression'" },
-        { "kind" : "IdRef", "name" : "'Indexes'", "quantifier" : "*" }
-      ]
-    },
-    {
-      "opname" : "DebugOperation",
-      "opcode" : 30,
-      "operands" : [
-        { "kind" : "IdRef", "name" : "'OpCode'" },
-        { "kind" : "IdRef", "name" : "'Operands ...'", "quantifier" : "*" }
-      ]
-    },
-    {
-      "opname" : "DebugExpression",
-      "opcode" : 31,
-      "operands" : [
-        { "kind" : "IdRef", "name" : "'Operands ...'", "quantifier" : "*" }
-      ]
-    },
-    {
-      "opname" : "DebugMacroDef",
-      "opcode" : 32,
-      "operands" : [
-        { "kind" : "IdRef", "name" : "'Source'" },
-        { "kind" : "IdRef", "name" : "'Line'" },
-        { "kind" : "IdRef", "name" : "'Name'" },
-        { "kind" : "IdRef", "name" : "'Value'", "quantifier" : "?" }
-      ]
-    },
-    {
-      "opname" : "DebugMacroUndef",
-      "opcode" : 33,
-      "operands" : [
-        { "kind" : "IdRef", "name" : "'Source'" },
-        { "kind" : "IdRef", "name" : "'Line'" },
-        { "kind" : "IdRef", "name" : "'Macro'" }
-      ]
-    },
-    {
-      "opname" : "DebugImportedEntity",
-      "opcode" : 34,
-      "operands" : [
-        { "kind" : "IdRef", "name" : "'Name'" },
-        { "kind" : "IdRef", "name" : "'Tag'" },
-        { "kind" : "IdRef", "name" : "'Source'" },
-        { "kind" : "IdRef", "name" : "'Entity'" },
-        { "kind" : "IdRef", "name" : "'Line'" },
-        { "kind" : "IdRef", "name" : "'Column'" },
-        { "kind" : "IdRef", "name" : "'Parent'" }
-      ]
-    },
-    {
-      "opname" : "DebugSource",
-      "opcode" : 35,
-      "operands" : [
-        { "kind" : "IdRef", "name" : "'File'" },
-        { "kind" : "IdRef", "name" : "'Text'", "quantifier" : "?" }
-      ]
-    },
-    {
-      "opname" : "DebugFunctionDefinition",
-      "opcode" : 101,
-      "operands" : [
-        { "kind" : "IdRef", "name" : "'Function'" },
-        { "kind" : "IdRef", "name" : "'Definition'" }
-      ]
-    },
-    {
-      "opname" : "DebugSourceContinued",
-      "opcode" : 102,
-      "operands" : [
-        { "kind" : "IdRef", "name" : "'Text'" }
-      ]
-    },
-    {
-      "opname" : "DebugLine",
-      "opcode" : 103,
-      "operands" : [
-        { "kind" : "IdRef", "name" : "'Source'" },
-        { "kind" : "IdRef", "name" : "'Line Start'" },
-        { "kind" : "IdRef", "name" : "'Line End'" },
-        { "kind" : "IdRef", "name" : "'Column Start'" },
-        { "kind" : "IdRef", "name" : "'Column End'" }
-      ]
-    },
-    {
-      "opname" : "DebugNoLine",
-      "opcode" : 104
-    },
-    {
-      "opname" : "DebugBuildIdentifier",
-      "opcode" : 105,
-      "operands" : [
-        { "kind" : "IdRef", "name" : "'Identifier'" },
-        { "kind" : "IdRef", "name" : "'Flags'" }
-      ]
-    },
-    {
-      "opname" : "DebugStoragePath",
-      "opcode" : 106,
-      "operands" : [
-        { "kind" : "IdRef", "name" : "'Path'" }
-      ]
-    },
-    {
-      "opname" : "DebugEntryPoint",
-      "opcode" : 107,
-      "operands" : [
-        { "kind" : "IdRef", "name" : "'Entry Point'" },
-        { "kind" : "IdRef", "name" : "'Compilation Unit'" },
-        { "kind" : "IdRef", "name" : "'Compiler Signature'" },
-        { "kind" : "IdRef", "name" : "'Command-line Arguments'" }
-      ]
-    },
-    {
-      "opname" : "DebugTypeMatrix",
-      "opcode" : 108,
-      "operands" : [
-        { "kind" : "IdRef", "name" : "'Vector Type'" },
-        { "kind" : "IdRef", "name" : "'Vector Count'" },
-        { "kind" : "IdRef", "name" : "'Column Major'" }
-      ]
-    }
-  ],
-  "operand_kinds" : [
-    {
-      "category" : "BitEnum",
-      "kind" : "DebugInfoFlags",
-      "enumerants" : [
-        {
-          "enumerant" : "None",
-          "value" : "0x0000"
-        },
-        {
-          "enumerant" : "FlagIsProtected",
-          "value" : "0x01"
-        },
-        {
-          "enumerant" : "FlagIsPrivate",
-          "value" : "0x02"
-        },
-        {
-          "enumerant" : "FlagIsPublic",
-          "value" : "0x03"
-        },
-        {
-          "enumerant" : "FlagIsLocal",
-          "value" : "0x04"
-        },
-        {
-          "enumerant" : "FlagIsDefinition",
-          "value" : "0x08"
-        },
-        {
-          "enumerant" : "FlagFwdDecl",
-          "value" : "0x10"
-        },
-        {
-          "enumerant" : "FlagArtificial",
-          "value" : "0x20"
-        },
-        {
-          "enumerant" : "FlagExplicit",
-          "value" : "0x40"
-        },
-        {
-          "enumerant" : "FlagPrototyped",
-          "value" : "0x80"
-        },
-        {
-          "enumerant" : "FlagObjectPointer",
-          "value" : "0x100"
-        },
-        {
-          "enumerant" : "FlagStaticMember",
-          "value" : "0x200"
-        },
-        {
-          "enumerant" : "FlagIndirectVariable",
-          "value" : "0x400"
-        },
-        {
-          "enumerant" : "FlagLValueReference",
-          "value" : "0x800"
-        },
-        {
-          "enumerant" : "FlagRValueReference",
-          "value" : "0x1000"
-        },
-        {
-          "enumerant" : "FlagIsOptimized",
-          "value" : "0x2000"
-        },
-        {
-          "enumerant" : "FlagIsEnumClass",
-          "value" : "0x4000"
-        },
-        {
-          "enumerant" : "FlagTypePassByValue",
-          "value" : "0x8000"
-        },
-        {
-          "enumerant" : "FlagTypePassByReference",
-          "value" : "0x10000"
-        },
-        {
-          "enumerant" : "FlagUnknownPhysicalLayout",
-          "value" : "0x20000"
-        }
-      ]
-    },
-    {
-      "category" : "BitEnum",
-      "kind" : "BuildIdentifierFlags",
-      "enumerants" : [
-        {
-          "enumerant" : "IdentifierPossibleDuplicates",
-          "value" : "0x01"
-        }
-      ]
-    },
-    {
-      "category" : "ValueEnum",
-      "kind" : "DebugBaseTypeAttributeEncoding",
-      "enumerants" : [
-        {
-          "enumerant" : "Unspecified",
-          "value" : "0"
-        },
-        {
-          "enumerant" : "Address",
-          "value" : "1"
-        },
-        {
-          "enumerant" : "Boolean",
-          "value" : "2"
-        },
-        {
-          "enumerant" : "Float",
-          "value" : "3"
-        },
-        {
-          "enumerant" : "Signed",
-          "value" : "4"
-        },
-        {
-          "enumerant" : "SignedChar",
-          "value" : "5"
-        },
-        {
-          "enumerant" : "Unsigned",
-          "value" : "6"
-        },
-        {
-          "enumerant" : "UnsignedChar",
-          "value" : "7"
-        }
-      ]
-    },
-    {
-      "category" : "ValueEnum",
-      "kind" : "DebugCompositeType",
-      "enumerants" : [
-        {
-          "enumerant" : "Class",
-          "value" : "0"
-        },
-        {
-          "enumerant" : "Structure",
-          "value" : "1"
-        },
-        {
-          "enumerant" : "Union",
-          "value" : "2"
-        }
-      ]
-    },
-    {
-      "category" : "ValueEnum",
-      "kind" : "DebugTypeQualifier",
-      "enumerants" : [
-        {
-          "enumerant" : "ConstType",
-          "value" : "0"
-        },
-        {
-          "enumerant" : "VolatileType",
-          "value" : "1"
-        },
-        {
-          "enumerant" : "RestrictType",
-          "value" : "2"
-        },
-        {
-          "enumerant" : "AtomicType",
-          "value" : "3"
-        }
-      ]
-    },
-    {
-      "category" : "ValueEnum",
-      "kind" : "DebugOperation",
-      "enumerants" : [
-        {
-          "enumerant" : "Deref",
-          "value" : "0"
-        },
-        {
-          "enumerant" : "Plus",
-          "value" : "1"
-        },
-        {
-          "enumerant" : "Minus",
-          "value" : "2"
-        },
-        {
-          "enumerant" : "PlusUconst",
-          "value" : "3",
-          "parameters" : [
-             { "kind" : "IdRef" }
-          ]
-        },
-        {
-          "enumerant" : "BitPiece",
-          "value" : "4",
-          "parameters" : [
-             { "kind" : "IdRef" },
-             { "kind" : "IdRef" }
-          ]
-        },
-        {
-          "enumerant" : "Swap",
-          "value" : "5"
-        },
-        {
-          "enumerant" : "Xderef",
-          "value" : "6"
-        },
-        {
-          "enumerant" : "StackValue",
-          "value" : "7"
-        },
-        {
-          "enumerant" : "Constu",
-          "value" : "8",
-          "parameters" : [
-             { "kind" : "IdRef" }
-          ]
-        },
-        {
-          "enumerant" : "Fragment",
-          "value" : "9",
-          "parameters" : [
-             { "kind" : "IdRef" },
-             { "kind" : "IdRef" }
-          ]
-        }
-      ]
-    },
-    {
-      "category" : "ValueEnum",
-      "kind" : "DebugImportedEntity",
-      "enumerants" : [
-        {
-          "enumerant" : "ImportedModule",
-          "value" : "0"
-        },
-        {
-          "enumerant" : "ImportedDeclaration",
-          "value" : "1"
-        }
-      ]
-    }
-  ]
-}
diff --git a/include/spirv/unified1/extinst.opencl.debuginfo.100.grammar.json b/include/spirv/unified1/extinst.opencl.debuginfo.100.grammar.json
index 699fe40..08062be 100644
--- a/include/spirv/unified1/extinst.opencl.debuginfo.100.grammar.json
+++ b/include/spirv/unified1/extinst.opencl.debuginfo.100.grammar.json
@@ -395,21 +395,6 @@
         { "kind" : "IdRef", "name" : "'File'" },
         { "kind" : "IdRef", "name" : "'Text'", "quantifier" : "?" }
       ]
-    },
-    {
-      "opname" : "DebugModuleINTEL",
-      "opcode" : 36,
-      "operands" : [
-        { "kind" : "IdRef", "name" : "'Name'" },
-        { "kind" : "IdRef", "name" : "'Source'" },
-        { "kind" : "IdRef", "name" : "'Parent'" },
-        { "kind" : "LiteralInteger", "name" : "'Line'" },
-        { "kind" : "IdRef", "name" : "'ConfigurationMacros'" },
-        { "kind" : "IdRef", "name" : "'IncludePath'" },
-        { "kind" : "IdRef", "name" : "'APINotesFile'" },
-        { "kind" : "LiteralInteger", "name" : "'IsDeclaration'" }
-      ],
-      "capability" : "DebugInfoModuleINTEL"
     }
   ],
   "operand_kinds" : [
@@ -418,10 +403,6 @@
       "kind" : "DebugInfoFlags",
       "enumerants" : [
         {
-          "enumerant" : "None",
-          "value" : "0x0000"
-        },
-        {
           "enumerant" : "FlagIsProtected",
           "value" : "0x01"
         },
diff --git a/include/spirv/unified1/spirv.core.grammar.json b/include/spirv/unified1/spirv.core.grammar.json
index 33ca872..824ae4b 100644
--- a/include/spirv/unified1/spirv.core.grammar.json
+++ b/include/spirv/unified1/spirv.core.grammar.json
@@ -27,7 +27,7 @@
   "magic_number" : "0x07230203",
   "major_version" : 1,
   "minor_version" : 5,
-  "revision" : 4,
+  "revision" : 1,
   "instruction_printing_class" : [
     {
       "tag"     : "@exclude"
@@ -2157,7 +2157,7 @@
         { "kind" : "IdRef",        "name" : "'Offset'" },
         { "kind" : "IdRef",        "name" : "'Count'" }
       ],
-      "capabilities" : [ "Shader", "BitInstructions" ]
+      "capabilities" : [ "Shader" ]
     },
     {
       "opname" : "OpBitFieldSExtract",
@@ -2170,7 +2170,7 @@
         { "kind" : "IdRef",        "name" : "'Offset'" },
         { "kind" : "IdRef",        "name" : "'Count'" }
       ],
-      "capabilities" : [ "Shader", "BitInstructions" ]
+      "capabilities" : [ "Shader" ]
     },
     {
       "opname" : "OpBitFieldUExtract",
@@ -2183,7 +2183,7 @@
         { "kind" : "IdRef",        "name" : "'Offset'" },
         { "kind" : "IdRef",        "name" : "'Count'" }
       ],
-      "capabilities" : [ "Shader", "BitInstructions" ]
+      "capabilities" : [ "Shader" ]
     },
     {
       "opname" : "OpBitReverse",
@@ -2194,7 +2194,7 @@
         { "kind" : "IdResult" },
         { "kind" : "IdRef",        "name" : "'Base'" }
       ],
-      "capabilities" : [ "Shader", "BitInstructions" ]
+      "capabilities" : [ "Shader" ]
     },
     {
       "opname" : "OpBitCount",
@@ -4102,16 +4102,6 @@
       "version" : "1.4"
     },
     {
-      "opname" : "OpTerminateInvocation",
-      "class"  : "Control-Flow",
-      "opcode" : 4416,
-      "extensions" : [
-        "SPV_KHR_terminate_invocation"
-      ],
-      "capabilities" : [ "Shader" ],
-      "version" : "None"
-    },
-    {
       "opname" : "OpSubgroupBallotKHR",
       "class"  : "Group",
       "opcode" : 4421,
@@ -4197,293 +4187,6 @@
       "version" : "None"
     },
     {
-      "opname" : "OpTraceRayKHR",
-      "class"  : "Reserved",
-      "opcode" : 4445,
-      "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" : "'Payload'" }
-      ],
-      "capabilities" : [ "RayTracingKHR" ],
-      "extensions" : [ "SPV_KHR_ray_tracing" ],
-      "version" : "None"
-    },
-    {
-      "opname" : "OpExecuteCallableKHR",
-      "class"  : "Reserved",
-      "opcode" : 4446,
-      "operands" : [
-
-        { "kind" : "IdRef", "name" : "'SBT Index'" },
-        { "kind" : "IdRef", "name" : "'Callable Data'" }
-      ],
-      "capabilities" : [ "RayTracingKHR" ],
-      "extensions" : [ "SPV_KHR_ray_tracing" ],
-      "version" : "None"
-    },
-    {
-      "opname" : "OpConvertUToAccelerationStructureKHR",
-      "class"  : "Reserved",
-      "opcode" : 4447,
-      "operands" : [
-        { "kind" : "IdResultType" },
-        { "kind" : "IdResult" },
-        { "kind" : "IdRef",        "name" : "'Accel'" }
-      ],
-      "capabilities" : [ "RayTracingKHR", "RayQueryKHR" ],
-      "extensions" : [ "SPV_KHR_ray_tracing", "SPV_KHR_ray_query" ],
-      "version" : "None"
-    },
-    {
-      "opname" : "OpIgnoreIntersectionKHR",
-      "class"  : "Reserved",
-      "opcode" : 4448,
-      "capabilities" : [ "RayTracingKHR" ],
-      "extensions" : [ "SPV_KHR_ray_tracing" ],
-      "version" : "None"
-    },
-    {
-      "opname" : "OpTerminateRayKHR",
-      "class"  : "Reserved",
-      "opcode" : 4449,
-      "capabilities" : [ "RayTracingKHR" ],
-      "extensions" : [ "SPV_KHR_ray_tracing" ],
-      "version" : "None"
-    },
-    {
-      "opname" : "OpSDotKHR",
-      "class"  : "Arithmetic",
-      "opcode" : 4450,
-      "operands" : [
-        { "kind" : "IdResultType" },
-        { "kind" : "IdResult" },
-        { "kind" : "IdRef", "name" : "'Vector 1'" },
-        { "kind" : "IdRef", "name" : "'Vector 2'" },
-        { "kind" : "PackedVectorFormat", "name" : "'Packed Vector Format'", "quantifier" : "?" }
-      ],
-      "capabilities" : [ "DotProductKHR" ],
-      "version" : "None"
-    },
-    {
-      "opname" : "OpUDotKHR",
-      "class"  : "Arithmetic",
-      "opcode" : 4451,
-      "operands" : [
-        { "kind" : "IdResultType" },
-        { "kind" : "IdResult" },
-        { "kind" : "IdRef", "name" : "'Vector 1'" },
-        { "kind" : "IdRef", "name" : "'Vector 2'" },
-        { "kind" : "PackedVectorFormat", "name" : "'Packed Vector Format'", "quantifier" : "?" }
-      ],
-      "capabilities" : [ "DotProductKHR" ],
-      "version" : "None"
-    },
-    {
-      "opname" : "OpSUDotKHR",
-      "class"  : "Arithmetic",
-      "opcode" : 4452,
-      "operands" : [
-        { "kind" : "IdResultType" },
-        { "kind" : "IdResult" },
-        { "kind" : "IdRef", "name" : "'Vector 1'" },
-        { "kind" : "IdRef", "name" : "'Vector 2'" },
-        { "kind" : "PackedVectorFormat", "name" : "'Packed Vector Format'", "quantifier" : "?" }
-      ],
-      "capabilities" : [ "DotProductKHR" ],
-      "version" : "None"
-    },
-    {
-      "opname" : "OpSDotAccSatKHR",
-      "class"  : "Arithmetic",
-      "opcode" : 4453,
-      "operands" : [
-        { "kind" : "IdResultType" },
-        { "kind" : "IdResult" },
-        { "kind" : "IdRef", "name" : "'Vector 1'" },
-        { "kind" : "IdRef", "name" : "'Vector 2'" },
-        { "kind" : "IdRef", "name" : "'Accumulator'" },
-        { "kind" : "PackedVectorFormat", "name" : "'Packed Vector Format'", "quantifier" : "?" }
-      ],
-      "capabilities" : [ "DotProductKHR" ],
-      "version" : "None"
-    },
-    {
-      "opname" : "OpUDotAccSatKHR",
-      "class"  : "Arithmetic",
-      "opcode" : 4454,
-      "operands" : [
-        { "kind" : "IdResultType" },
-        { "kind" : "IdResult" },
-        { "kind" : "IdRef", "name" : "'Vector 1'" },
-        { "kind" : "IdRef", "name" : "'Vector 2'" },
-        { "kind" : "IdRef", "name" : "'Accumulator'" },
-        { "kind" : "PackedVectorFormat", "name" : "'Packed Vector Format'", "quantifier" : "?" }
-      ],
-      "capabilities" : [ "DotProductKHR" ],
-      "version" : "None"
-    },
-    {
-      "opname" : "OpSUDotAccSatKHR",
-      "class"  : "Arithmetic",
-      "opcode" : 4455,
-      "operands" : [
-        { "kind" : "IdResultType" },
-        { "kind" : "IdResult" },
-        { "kind" : "IdRef", "name" : "'Vector 1'" },
-        { "kind" : "IdRef", "name" : "'Vector 2'" },
-        { "kind" : "IdRef", "name" : "'Accumulator'" },
-        { "kind" : "PackedVectorFormat", "name" : "'Packed Vector Format'", "quantifier" : "?" }
-      ],
-      "capabilities" : [ "DotProductKHR" ],
-      "version" : "None"
-    },
-    {
-        "opname" : "OpTypeRayQueryKHR",
-        "class" : "Reserved",
-        "opcode" : 4472,
-        "operands" : [
-            { "kind" : "IdResult" }
-        ],
-        "capabilities" : [ "RayQueryKHR" ],
-        "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" : [ "RayQueryKHR" ],
-        "extensions" : [ "SPV_KHR_ray_query" ],
-        "version" : "None"
-    },
-    {
-        "opname" : "OpRayQueryTerminateKHR",
-        "class" : "Reserved",
-        "opcode" : 4474,
-        "operands" : [
-            {
-                "kind" : "IdRef",
-                "name" : "'RayQuery'"
-            }
-        ],
-        "capabilities" : [ "RayQueryKHR" ],
-        "extensions" : [ "SPV_KHR_ray_query" ],
-        "version" : "None"
-    },
-    {
-        "opname" : "OpRayQueryGenerateIntersectionKHR",
-        "class" : "Reserved",
-        "opcode" : 4475,
-        "operands" : [
-            {
-                "kind" : "IdRef",
-                "name" : "'RayQuery'"
-            },
-            {
-                "kind" : "IdRef",
-                "name" : "'HitT'"
-            }
-        ],
-        "capabilities" : [ "RayQueryKHR" ],
-        "extensions" : [ "SPV_KHR_ray_query" ],
-        "version" : "None"
-    },
-    {
-        "opname" : "OpRayQueryConfirmIntersectionKHR",
-        "class" : "Reserved",
-        "opcode" : 4476,
-        "operands" : [
-            {
-                "kind" : "IdRef",
-                "name" : "'RayQuery'"
-            }
-        ],
-        "capabilities" : [ "RayQueryKHR" ],
-        "extensions" : [ "SPV_KHR_ray_query" ],
-        "version" : "None"
-    },
-    {
-        "opname" : "OpRayQueryProceedKHR",
-        "class" : "Reserved",
-        "opcode" : 4477,
-        "operands" : [
-            { "kind" : "IdResultType" },
-            { "kind" : "IdResult" },
-            {
-                "kind" : "IdRef",
-                "name" : "'RayQuery'"
-            }
-        ],
-        "capabilities" : [ "RayQueryKHR" ],
-        "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" : [ "RayQueryKHR" ],
-        "extensions" : [ "SPV_KHR_ray_query" ],
-        "version" : "None"
-    },
-    {
       "opname" : "OpGroupIAddNonUniformAMD",
       "class"  : "Group",
       "opcode" : 5000,
@@ -4639,7 +4342,7 @@
       "operands" : [
         { "kind" : "IdResultType" },
         { "kind" : "IdResult" },
-        { "kind" : "IdScope", "name" : "'Scope'" }
+        { "kind" : "IdScope", "name" : "'Execution'" }
       ],
       "capabilities" : [ "ShaderClockKHR" ],
       "extensions" : [ "SPV_KHR_shader_clock" ],
@@ -4697,7 +4400,7 @@
         { "kind" : "IdRef", "name" : "'Hit'" },
         { "kind" : "IdRef", "name" : "'HitKind'" }
       ],
-      "capabilities" : [ "RayTracingNV" , "RayTracingKHR" ],
+      "capabilities" : [ "RayTracingNV" , "RayTracingProvisionalKHR" ],
       "extensions" : [ "SPV_NV_ray_tracing" , "SPV_KHR_ray_tracing" ],
       "version" : "None"
     },
@@ -4711,7 +4414,7 @@
         { "kind" : "IdRef", "name" : "'Hit'" },
         { "kind" : "IdRef", "name" : "'HitKind'" }
       ],
-      "capabilities" : [ "RayTracingNV" , "RayTracingKHR" ],
+      "capabilities" : [ "RayTracingNV" , "RayTracingProvisionalKHR" ],
       "extensions" : [ "SPV_NV_ray_tracing" , "SPV_KHR_ray_tracing" ],
       "version" : "None"
     },
@@ -4719,16 +4422,32 @@
       "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"
     },
     {
@@ -4749,14 +4468,14 @@
         { "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" : "OpTraceMotionNV",
+      "opname" : "OpTraceRayKHR",
       "class"  : "Reserved",
-      "opcode" : 5338,
+      "opcode" : 5337,
       "operands" : [
 
         { "kind" : "IdRef", "name" : "'Accel'" },
@@ -4769,34 +4488,10 @@
         { "kind" : "IdRef", "name" : "'Ray Tmin'" },
         { "kind" : "IdRef", "name" : "'Ray Direction'" },
         { "kind" : "IdRef", "name" : "'Ray Tmax'" },
-        { "kind" : "IdRef", "name" : "'Time'" },
         { "kind" : "IdRef", "name" : "'PayloadId'" }
       ],
-      "capabilities" : [ "RayTracingMotionBlurNV" ],
-      "extensions" : [ "SPV_NV_ray_tracing_motion_blur" ],
-      "version" : "None"
-    },
-    {
-      "opname" : "OpTraceRayMotionNV",
-      "class"  : "Reserved",
-      "opcode" : 5339,
-      "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" : "'Time'" },
-        { "kind" : "IdRef", "name" : "'Payload'" }
-      ],
-      "capabilities" : [ "RayTracingMotionBlurNV" ],
-      "extensions" : [ "SPV_NV_ray_tracing_motion_blur" ],
+      "capabilities" : [ "RayTracingNV" , "RayTracingProvisionalKHR" ],
+      "extensions" : [ "SPV_NV_ray_tracing" , "SPV_KHR_ray_tracing" ],
       "version" : "None"
     },
     {
@@ -4806,7 +4501,7 @@
       "operands" : [
         { "kind" : "IdResult" }
       ],
-      "capabilities" : [ "RayTracingNV" , "RayTracingKHR", "RayQueryKHR" ],
+      "capabilities" : [ "RayTracingNV" , "RayTracingProvisionalKHR", "RayQueryProvisionalKHR" ],
       "extensions" : [ "SPV_NV_ray_tracing" , "SPV_KHR_ray_tracing", "SPV_KHR_ray_query" ],
       "version" : "None"
     },
@@ -4817,11 +4512,468 @@
       "operands" : [
         { "kind" : "IdResult" }
       ],
-      "capabilities" : [ "RayTracingNV" , "RayTracingKHR", "RayQueryKHR" ],
+      "capabilities" : [ "RayTracingNV" , "RayTracingProvisionalKHR", "RayQueryProvisionalKHR" ],
       "extensions" : [ "SPV_NV_ray_tracing" , "SPV_KHR_ray_tracing", "SPV_KHR_ray_query" ],
       "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" : "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" : "OpExecuteCallableNV",
       "class"  : "Reserved",
       "opcode" : 5344,
@@ -4830,8 +4982,21 @@
         { "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" : "OpExecuteCallableKHR",
+      "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"
     },
     {
@@ -5256,127 +5421,6 @@
       "version" : "None"
     },
     {
-      "opname" : "OpConstFunctionPointerINTEL",
-      "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" : "OpAsmTargetINTEL",
-      "class"  : "@exclude",
-      "opcode" : 5609,
-      "operands" : [
-        { "kind" : "IdResultType" },
-        { "kind" : "IdResult" },
-        { "kind" : "LiteralString", "name" : "'Asm target'" }
-      ],
-      "capabilities" : [ "AsmINTEL" ],
-      "version" : "None"
-    },
-    {
-      "opname" : "OpAsmINTEL",
-      "class"  : "@exclude",
-      "opcode" : 5610,
-      "operands" : [
-        { "kind" : "IdResultType" },
-        { "kind" : "IdResult" },
-        { "kind" : "IdRef", "name" : "'Asm type'" },
-        { "kind" : "IdRef", "name" : "'Target'" },
-        { "kind" : "LiteralString", "name" : "'Asm instructions'" },
-        { "kind" : "LiteralString", "name" : "'Constraints'" }
-      ],
-      "capabilities" : [ "AsmINTEL" ],
-      "version" : "None"
-    },
-    {
-      "opname" : "OpAsmCallINTEL",
-      "class"  : "@exclude",
-      "opcode" : 5611,
-      "operands" : [
-        { "kind" : "IdResultType" },
-        { "kind" : "IdResult" },
-        { "kind" : "IdRef", "name" : "'Asm'" },
-        { "kind" : "IdRef", "quantifier" : "*", "name" : "'Argument 0'" }
-      ],
-      "capabilities" : [ "AsmINTEL" ],
-      "version" : "None"
-    },
-    {
-      "opname" : "OpAtomicFMinEXT",
-      "class"  : "Atomic",
-      "opcode" : 5614,
-      "operands" : [
-        { "kind" : "IdResultType" },
-        { "kind" : "IdResult" },
-        { "kind" : "IdRef",             "name" : "'Pointer'" },
-        { "kind" : "IdScope",           "name" : "'Memory'" },
-        { "kind" : "IdMemorySemantics", "name" : "'Semantics'" },
-        { "kind" : "IdRef",             "name" : "'Value'" }
-      ],
-      "capabilities" : [ "AtomicFloat16MinMaxEXT", "AtomicFloat32MinMaxEXT", "AtomicFloat64MinMaxEXT" ],
-      "version" : "None"
-    },
-    {
-      "opname" : "OpAtomicFMaxEXT",
-      "class"  : "Atomic",
-      "opcode" : 5615,
-      "operands" : [
-        { "kind" : "IdResultType" },
-        { "kind" : "IdResult" },
-        { "kind" : "IdRef",             "name" : "'Pointer'" },
-        { "kind" : "IdScope",           "name" : "'Memory'" },
-        { "kind" : "IdMemorySemantics", "name" : "'Semantics'" },
-        { "kind" : "IdRef",             "name" : "'Value'" }
-      ],
-      "capabilities" : [ "AtomicFloat16MinMaxEXT", "AtomicFloat32MinMaxEXT", "AtomicFloat64MinMaxEXT" ],
-      "version" : "None"
-    },
-    {
-      "opname" : "OpAssumeTrueKHR",
-      "class"  : "Miscellaneous",
-      "opcode" : 5630,
-      "operands" : [
-        { "kind" : "IdRef", "name" : "'Condition'" }
-      ],
-      "capabilities" : [ "ExpectAssumeKHR" ],
-      "extensions" : [ "SPV_KHR_expect_assume" ],
-      "version" : "None"
-    },
-    {
-      "opname" : "OpExpectKHR",
-      "class"  : "Miscellaneous",
-      "opcode" : 5631,
-      "operands" : [
-        { "kind" : "IdResultType" },
-        { "kind" : "IdResult" },
-        { "kind" : "IdRef", "name" : "'Value'" },
-        { "kind" : "IdRef", "name" : "'ExpectedValue'" }
-      ],
-      "capabilities" : [ "ExpectAssumeKHR" ],
-      "extensions" : [ "SPV_KHR_expect_assume" ],
-      "version" : "None"
-    },
-    {
       "opname" : "OpDecorateString",
       "class"  : "Annotation",
       "opcode" : 5632,
@@ -6938,1398 +6982,6 @@
       ],
       "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
       "version" : "None"
-    },
-    {
-      "opname" : "OpVariableLengthArrayINTEL",
-      "class"  : "@exclude",
-      "opcode" : 5818,
-      "operands" : [
-        { "kind" : "IdResultType" },
-        { "kind" : "IdResult" },
-        { "kind" : "IdRef", "name" : "'Lenght'" }
-      ],
-      "capabilities" : [ "VariableLengthArrayINTEL" ],
-      "version" : "None"
-    },
-    {
-      "opname" : "OpSaveMemoryINTEL",
-      "class"  : "@exclude",
-      "opcode" : 5819,
-      "operands" : [
-        { "kind" : "IdResultType" },
-        { "kind" : "IdResult" }
-      ],
-      "capabilities" : [ "VariableLengthArrayINTEL" ],
-      "version" : "None"
-    },
-    {
-      "opname" : "OpRestoreMemoryINTEL",
-      "class"  : "@exclude",
-      "opcode" : 5820,
-      "operands" : [
-        { "kind" : "IdRef", "name" : "'Ptr'" }
-      ],
-      "capabilities" : [ "VariableLengthArrayINTEL" ],
-      "version" : "None"
-    },
-    {
-      "opname" : "OpArbitraryFloatSinCosPiINTEL",
-      "class"  : "@exclude",
-      "opcode" : 5840,
-      "operands" : [
-        { "kind" : "IdResultType" },
-        { "kind" : "IdResult" },
-        { "kind" : "IdRef", "name" : "'A'" },
-        { "kind" : "LiteralInteger", "name" : "'M1'" },
-        { "kind" : "LiteralInteger", "name" : "'Mout'" },
-        { "kind" : "LiteralInteger", "name" : "'FromSign'" },
-        { "kind" : "LiteralInteger", "name" : "'EnableSubnormals'" },
-        { "kind" : "LiteralInteger", "name" : "'RoundingMode'" },
-        { "kind" : "LiteralInteger", "name" : "'RoundingAccuracy'" }
-      ],
-      "capabilities" : [ "ArbitraryPrecisionFloatingPointINTEL" ],
-      "version" : "None"
-    },
-    {
-      "opname" : "OpArbitraryFloatCastINTEL",
-      "class"  : "@exclude",
-      "opcode" : 5841,
-      "operands" : [
-        { "kind" : "IdResultType" },
-        { "kind" : "IdResult" },
-        { "kind" : "IdRef", "name" : "'A'" },
-        { "kind" : "LiteralInteger", "name" : "'M1'" },
-        { "kind" : "LiteralInteger", "name" : "'Mout'" },
-        { "kind" : "LiteralInteger", "name" : "'EnableSubnormals'" },
-        { "kind" : "LiteralInteger", "name" : "'RoundingMode'" },
-        { "kind" : "LiteralInteger", "name" : "'RoundingAccuracy'" }
-      ],
-      "capabilities" : [ "ArbitraryPrecisionFloatingPointINTEL" ],
-      "version" : "None"
-    },
-    {
-      "opname" : "OpArbitraryFloatCastFromIntINTEL",
-      "class"  : "@exclude",
-      "opcode" : 5842,
-      "operands" : [
-        { "kind" : "IdResultType" },
-        { "kind" : "IdResult" },
-        { "kind" : "IdRef", "name" : "'A'" },
-        { "kind" : "LiteralInteger", "name" : "'Mout'" },
-        { "kind" : "LiteralInteger", "name" : "'FromSign'" },
-        { "kind" : "LiteralInteger", "name" : "'EnableSubnormals'" },
-        { "kind" : "LiteralInteger", "name" : "'RoundingMode'" },
-        { "kind" : "LiteralInteger", "name" : "'RoundingAccuracy'" }
-      ],
-      "capabilities" : [ "ArbitraryPrecisionFloatingPointINTEL" ],
-      "version" : "None"
-    },
-    {
-      "opname" : "OpArbitraryFloatCastToIntINTEL",
-      "class"  : "@exclude",
-      "opcode" : 5843,
-      "operands" : [
-        { "kind" : "IdResultType" },
-        { "kind" : "IdResult" },
-        { "kind" : "IdRef", "name" : "'A'" },
-        { "kind" : "LiteralInteger", "name" : "'M1'" },
-        { "kind" : "LiteralInteger", "name" : "'EnableSubnormals'" },
-        { "kind" : "LiteralInteger", "name" : "'RoundingMode'" },
-        { "kind" : "LiteralInteger", "name" : "'RoundingAccuracy'" }
-      ],
-      "capabilities" : [ "ArbitraryPrecisionFloatingPointINTEL" ],
-      "version" : "None"
-    },
-    {
-      "opname" : "OpArbitraryFloatAddINTEL",
-      "class"  : "@exclude",
-      "opcode" : 5846,
-      "operands" : [
-        { "kind" : "IdResultType" },
-        { "kind" : "IdResult" },
-        { "kind" : "IdRef", "name" : "'A'" },
-        { "kind" : "LiteralInteger", "name" : "'M1'" },
-        { "kind" : "IdRef", "name" : "'B'" },
-        { "kind" : "LiteralInteger", "name" : "'M2'" },
-        { "kind" : "LiteralInteger", "name" : "'Mout'" },
-        { "kind" : "LiteralInteger", "name" : "'EnableSubnormals'" },
-        { "kind" : "LiteralInteger", "name" : "'RoundingMode'" },
-        { "kind" : "LiteralInteger", "name" : "'RoundingAccuracy'" }
-      ],
-      "capabilities" : [ "ArbitraryPrecisionFloatingPointINTEL" ],
-      "version" : "None"
-    },
-    {
-      "opname" : "OpArbitraryFloatSubINTEL",
-      "class"  : "@exclude",
-      "opcode" : 5847,
-      "operands" : [
-        { "kind" : "IdResultType" },
-        { "kind" : "IdResult" },
-        { "kind" : "IdRef", "name" : "'A'" },
-        { "kind" : "LiteralInteger", "name" : "'M1'" },
-        { "kind" : "IdRef", "name" : "'B'" },
-        { "kind" : "LiteralInteger", "name" : "'M2'" },
-        { "kind" : "LiteralInteger", "name" : "'Mout'" },
-        { "kind" : "LiteralInteger", "name" : "'EnableSubnormals'" },
-        { "kind" : "LiteralInteger", "name" : "'RoundingMode'" },
-        { "kind" : "LiteralInteger", "name" : "'RoundingAccuracy'" }
-      ],
-      "capabilities" : [ "ArbitraryPrecisionFloatingPointINTEL" ],
-      "version" : "None"
-    },
-    {
-      "opname" : "OpArbitraryFloatMulINTEL",
-      "class"  : "@exclude",
-      "opcode" : 5848,
-      "operands" : [
-        { "kind" : "IdResultType" },
-        { "kind" : "IdResult" },
-        { "kind" : "IdRef", "name" : "'A'" },
-        { "kind" : "LiteralInteger", "name" : "'M1'" },
-        { "kind" : "IdRef", "name" : "'B'" },
-        { "kind" : "LiteralInteger", "name" : "'M2'" },
-        { "kind" : "LiteralInteger", "name" : "'Mout'" },
-        { "kind" : "LiteralInteger", "name" : "'EnableSubnormals'" },
-        { "kind" : "LiteralInteger", "name" : "'RoundingMode'" },
-        { "kind" : "LiteralInteger", "name" : "'RoundingAccuracy'" }
-      ],
-      "capabilities" : [ "ArbitraryPrecisionFloatingPointINTEL" ],
-      "version" : "None"
-    },
-    {
-      "opname" : "OpArbitraryFloatDivINTEL",
-      "class"  : "@exclude",
-      "opcode" : 5849,
-      "operands" : [
-        { "kind" : "IdResultType" },
-        { "kind" : "IdResult" },
-        { "kind" : "IdRef", "name" : "'A'" },
-        { "kind" : "LiteralInteger", "name" : "'M1'" },
-        { "kind" : "IdRef", "name" : "'B'" },
-        { "kind" : "LiteralInteger", "name" : "'M2'" },
-        { "kind" : "LiteralInteger", "name" : "'Mout'" },
-        { "kind" : "LiteralInteger", "name" : "'EnableSubnormals'" },
-        { "kind" : "LiteralInteger", "name" : "'RoundingMode'" },
-        { "kind" : "LiteralInteger", "name" : "'RoundingAccuracy'" }
-      ],
-      "capabilities" : [ "ArbitraryPrecisionFloatingPointINTEL" ],
-      "version" : "None"
-    },
-    {
-      "opname" : "OpArbitraryFloatGTINTEL",
-      "class"  : "@exclude",
-      "opcode" : 5850,
-      "operands" : [
-        { "kind" : "IdResultType" },
-        { "kind" : "IdResult" },
-        { "kind" : "IdRef", "name" : "'A'" },
-        { "kind" : "LiteralInteger", "name" : "'M1'" },
-        { "kind" : "IdRef", "name" : "'B'" },
-        { "kind" : "LiteralInteger", "name" : "'M2'" }
-      ],
-      "capabilities" : [ "ArbitraryPrecisionFloatingPointINTEL" ],
-      "version" : "None"
-    },
-    {
-      "opname" : "OpArbitraryFloatGEINTEL",
-      "class"  : "@exclude",
-      "opcode" : 5851,
-      "operands" : [
-        { "kind" : "IdResultType" },
-        { "kind" : "IdResult" },
-        { "kind" : "IdRef", "name" : "'A'" },
-        { "kind" : "LiteralInteger", "name" : "'M1'" },
-        { "kind" : "IdRef", "name" : "'B'" },
-        { "kind" : "LiteralInteger", "name" : "'M2'" }
-      ],
-      "capabilities" : [ "ArbitraryPrecisionFloatingPointINTEL" ],
-      "version" : "None"
-    },
-    {
-      "opname" : "OpArbitraryFloatLTINTEL",
-      "class"  : "@exclude",
-      "opcode" : 5852,
-      "operands" : [
-        { "kind" : "IdResultType" },
-        { "kind" : "IdResult" },
-        { "kind" : "IdRef", "name" : "'A'" },
-        { "kind" : "LiteralInteger", "name" : "'M1'" },
-        { "kind" : "IdRef", "name" : "'B'" },
-        { "kind" : "LiteralInteger", "name" : "'M2'" }
-      ],
-      "capabilities" : [ "ArbitraryPrecisionFloatingPointINTEL" ],
-      "version" : "None"
-    },
-    {
-      "opname" : "OpArbitraryFloatLEINTEL",
-      "class"  : "@exclude",
-      "opcode" : 5853,
-      "operands" : [
-        { "kind" : "IdResultType" },
-        { "kind" : "IdResult" },
-        { "kind" : "IdRef", "name" : "'A'" },
-        { "kind" : "LiteralInteger", "name" : "'M1'" },
-        { "kind" : "IdRef", "name" : "'B'" },
-        { "kind" : "LiteralInteger", "name" : "'M2'" }
-      ],
-      "capabilities" : [ "ArbitraryPrecisionFloatingPointINTEL" ],
-      "version" : "None"
-    },
-    {
-      "opname" : "OpArbitraryFloatEQINTEL",
-      "class"  : "@exclude",
-      "opcode" : 5854,
-      "operands" : [
-        { "kind" : "IdResultType" },
-        { "kind" : "IdResult" },
-        { "kind" : "IdRef", "name" : "'A'" },
-        { "kind" : "LiteralInteger", "name" : "'M1'" },
-        { "kind" : "IdRef", "name" : "'B'" },
-        { "kind" : "LiteralInteger", "name" : "'M2'" }
-      ],
-      "capabilities" : [ "ArbitraryPrecisionFloatingPointINTEL" ],
-      "version" : "None"
-    },
-    {
-      "opname" : "OpArbitraryFloatRecipINTEL",
-      "class"  : "@exclude",
-      "opcode" : 5855,
-      "operands" : [
-        { "kind" : "IdResultType" },
-        { "kind" : "IdResult" },
-        { "kind" : "IdRef", "name" : "'A'" },
-        { "kind" : "LiteralInteger", "name" : "'M1'" },
-        { "kind" : "LiteralInteger", "name" : "'Mout'" },
-        { "kind" : "LiteralInteger", "name" : "'EnableSubnormals'" },
-        { "kind" : "LiteralInteger", "name" : "'RoundingMode'" },
-        { "kind" : "LiteralInteger", "name" : "'RoundingAccuracy'" }
-      ],
-      "capabilities" : [ "ArbitraryPrecisionFloatingPointINTEL" ],
-      "version" : "None"
-    },
-    {
-      "opname" : "OpArbitraryFloatRSqrtINTEL",
-      "class"  : "@exclude",
-      "opcode" : 5856,
-      "operands" : [
-        { "kind" : "IdResultType" },
-        { "kind" : "IdResult" },
-        { "kind" : "IdRef", "name" : "'A'" },
-        { "kind" : "LiteralInteger", "name" : "'M1'" },
-        { "kind" : "LiteralInteger", "name" : "'Mout'" },
-        { "kind" : "LiteralInteger", "name" : "'EnableSubnormals'" },
-        { "kind" : "LiteralInteger", "name" : "'RoundingMode'" },
-        { "kind" : "LiteralInteger", "name" : "'RoundingAccuracy'" }
-      ],
-      "capabilities" : [ "ArbitraryPrecisionFloatingPointINTEL" ],
-      "version" : "None"
-    },
-    {
-      "opname" : "OpArbitraryFloatCbrtINTEL",
-      "class"  : "@exclude",
-      "opcode" : 5857,
-      "operands" : [
-        { "kind" : "IdResultType" },
-        { "kind" : "IdResult" },
-        { "kind" : "IdRef", "name" : "'A'" },
-        { "kind" : "LiteralInteger", "name" : "'M1'" },
-        { "kind" : "LiteralInteger", "name" : "'Mout'" },
-        { "kind" : "LiteralInteger", "name" : "'EnableSubnormals'" },
-        { "kind" : "LiteralInteger", "name" : "'RoundingMode'" },
-        { "kind" : "LiteralInteger", "name" : "'RoundingAccuracy'" }
-      ],
-      "capabilities" : [ "ArbitraryPrecisionFloatingPointINTEL" ],
-      "version" : "None"
-    },
-    {
-      "opname" : "OpArbitraryFloatHypotINTEL",
-      "class"  : "@exclude",
-      "opcode" : 5858,
-      "operands" : [
-        { "kind" : "IdResultType" },
-        { "kind" : "IdResult" },
-        { "kind" : "IdRef", "name" : "'A'" },
-        { "kind" : "LiteralInteger", "name" : "'M1'" },
-        { "kind" : "IdRef", "name" : "'B'" },
-        { "kind" : "LiteralInteger", "name" : "'M2'" },
-        { "kind" : "LiteralInteger", "name" : "'Mout'" },
-        { "kind" : "LiteralInteger", "name" : "'EnableSubnormals'" },
-        { "kind" : "LiteralInteger", "name" : "'RoundingMode'" },
-        { "kind" : "LiteralInteger", "name" : "'RoundingAccuracy'" }
-      ],
-      "capabilities" : [ "ArbitraryPrecisionFloatingPointINTEL" ],
-      "version" : "None"
-    },
-    {
-      "opname" : "OpArbitraryFloatSqrtINTEL",
-      "class"  : "@exclude",
-      "opcode" : 5859,
-      "operands" : [
-        { "kind" : "IdResultType" },
-        { "kind" : "IdResult" },
-        { "kind" : "IdRef", "name" : "'A'" },
-        { "kind" : "LiteralInteger", "name" : "'M1'" },
-        { "kind" : "LiteralInteger", "name" : "'Mout'" },
-        { "kind" : "LiteralInteger", "name" : "'EnableSubnormals'" },
-        { "kind" : "LiteralInteger", "name" : "'RoundingMode'" },
-        { "kind" : "LiteralInteger", "name" : "'RoundingAccuracy'" }
-      ],
-      "capabilities" : [ "ArbitraryPrecisionFloatingPointINTEL" ],
-      "version" : "None"
-    },
-    {
-      "opname" : "OpArbitraryFloatLogINTEL",
-      "class"  : "@exclude",
-      "opcode" : 5860,
-      "operands" : [
-        { "kind" : "IdResultType" },
-        { "kind" : "IdResult" },
-        { "kind" : "IdRef", "name" : "'A'" },
-        { "kind" : "LiteralInteger", "name" : "'M1'" },
-        { "kind" : "LiteralInteger", "name" : "'Mout'" },
-        { "kind" : "LiteralInteger", "name" : "'EnableSubnormals'" },
-        { "kind" : "LiteralInteger", "name" : "'RoundingMode'" },
-        { "kind" : "LiteralInteger", "name" : "'RoundingAccuracy'" }
-      ],
-      "capabilities" : [ "ArbitraryPrecisionFloatingPointINTEL" ],
-      "version" : "None"
-    },
-    {
-      "opname" : "OpArbitraryFloatLog2INTEL",
-      "class"  : "@exclude",
-      "opcode" : 5861,
-      "operands" : [
-        { "kind" : "IdResultType" },
-        { "kind" : "IdResult" },
-        { "kind" : "IdRef", "name" : "'A'" },
-        { "kind" : "LiteralInteger", "name" : "'M1'" },
-        { "kind" : "LiteralInteger", "name" : "'Mout'" },
-        { "kind" : "LiteralInteger", "name" : "'EnableSubnormals'" },
-        { "kind" : "LiteralInteger", "name" : "'RoundingMode'" },
-        { "kind" : "LiteralInteger", "name" : "'RoundingAccuracy'" }
-      ],
-      "capabilities" : [ "ArbitraryPrecisionFloatingPointINTEL" ],
-      "version" : "None"
-    },
-    {
-      "opname" : "OpArbitraryFloatLog10INTEL",
-      "class"  : "@exclude",
-      "opcode" : 5862,
-      "operands" : [
-        { "kind" : "IdResultType" },
-        { "kind" : "IdResult" },
-        { "kind" : "IdRef", "name" : "'A'" },
-        { "kind" : "LiteralInteger", "name" : "'M1'" },
-        { "kind" : "LiteralInteger", "name" : "'Mout'" },
-        { "kind" : "LiteralInteger", "name" : "'EnableSubnormals'" },
-        { "kind" : "LiteralInteger", "name" : "'RoundingMode'" },
-        { "kind" : "LiteralInteger", "name" : "'RoundingAccuracy'" }
-      ],
-      "capabilities" : [ "ArbitraryPrecisionFloatingPointINTEL" ],
-      "version" : "None"
-    },
-    {
-      "opname" : "OpArbitraryFloatLog1pINTEL",
-      "class"  : "@exclude",
-      "opcode" : 5863,
-      "operands" : [
-        { "kind" : "IdResultType" },
-        { "kind" : "IdResult" },
-        { "kind" : "IdRef", "name" : "'A'" },
-        { "kind" : "LiteralInteger", "name" : "'M1'" },
-        { "kind" : "LiteralInteger", "name" : "'Mout'" },
-        { "kind" : "LiteralInteger", "name" : "'EnableSubnormals'" },
-        { "kind" : "LiteralInteger", "name" : "'RoundingMode'" },
-        { "kind" : "LiteralInteger", "name" : "'RoundingAccuracy'" }
-      ],
-      "capabilities" : [ "ArbitraryPrecisionFloatingPointINTEL" ],
-      "version" : "None"
-    },
-    {
-      "opname" : "OpArbitraryFloatExpINTEL",
-      "class"  : "@exclude",
-      "opcode" : 5864,
-      "operands" : [
-        { "kind" : "IdResultType" },
-        { "kind" : "IdResult" },
-        { "kind" : "IdRef", "name" : "'A'" },
-        { "kind" : "LiteralInteger", "name" : "'M1'" },
-        { "kind" : "LiteralInteger", "name" : "'Mout'" },
-        { "kind" : "LiteralInteger", "name" : "'EnableSubnormals'" },
-        { "kind" : "LiteralInteger", "name" : "'RoundingMode'" },
-        { "kind" : "LiteralInteger", "name" : "'RoundingAccuracy'" }
-      ],
-      "capabilities" : [ "ArbitraryPrecisionFloatingPointINTEL" ],
-      "version" : "None"
-    },
-    {
-      "opname" : "OpArbitraryFloatExp2INTEL",
-      "class"  : "@exclude",
-      "opcode" : 5865,
-      "operands" : [
-        { "kind" : "IdResultType" },
-        { "kind" : "IdResult" },
-        { "kind" : "IdRef", "name" : "'A'" },
-        { "kind" : "LiteralInteger", "name" : "'M1'" },
-        { "kind" : "LiteralInteger", "name" : "'Mout'" },
-        { "kind" : "LiteralInteger", "name" : "'EnableSubnormals'" },
-        { "kind" : "LiteralInteger", "name" : "'RoundingMode'" },
-        { "kind" : "LiteralInteger", "name" : "'RoundingAccuracy'" }
-      ],
-      "capabilities" : [ "ArbitraryPrecisionFloatingPointINTEL" ],
-      "version" : "None"
-    },
-    {
-      "opname" : "OpArbitraryFloatExp10INTEL",
-      "class"  : "@exclude",
-      "opcode" : 5866,
-      "operands" : [
-        { "kind" : "IdResultType" },
-        { "kind" : "IdResult" },
-        { "kind" : "IdRef", "name" : "'A'" },
-        { "kind" : "LiteralInteger", "name" : "'M1'" },
-        { "kind" : "LiteralInteger", "name" : "'Mout'" },
-        { "kind" : "LiteralInteger", "name" : "'EnableSubnormals'" },
-        { "kind" : "LiteralInteger", "name" : "'RoundingMode'" },
-        { "kind" : "LiteralInteger", "name" : "'RoundingAccuracy'" }
-      ],
-      "capabilities" : [ "ArbitraryPrecisionFloatingPointINTEL" ],
-      "version" : "None"
-    },
-    {
-      "opname" : "OpArbitraryFloatExpm1INTEL",
-      "class"  : "@exclude",
-      "opcode" : 5867,
-      "operands" : [
-        { "kind" : "IdResultType" },
-        { "kind" : "IdResult" },
-        { "kind" : "IdRef", "name" : "'A'" },
-        { "kind" : "LiteralInteger", "name" : "'M1'" },
-        { "kind" : "LiteralInteger", "name" : "'Mout'" },
-        { "kind" : "LiteralInteger", "name" : "'EnableSubnormals'" },
-        { "kind" : "LiteralInteger", "name" : "'RoundingMode'" },
-        { "kind" : "LiteralInteger", "name" : "'RoundingAccuracy'" }
-      ],
-      "capabilities" : [ "ArbitraryPrecisionFloatingPointINTEL" ],
-      "version" : "None"
-    },
-    {
-      "opname" : "OpArbitraryFloatSinINTEL",
-      "class"  : "@exclude",
-      "opcode" : 5868,
-      "operands" : [
-        { "kind" : "IdResultType" },
-        { "kind" : "IdResult" },
-        { "kind" : "IdRef", "name" : "'A'" },
-        { "kind" : "LiteralInteger", "name" : "'M1'" },
-        { "kind" : "LiteralInteger", "name" : "'Mout'" },
-        { "kind" : "LiteralInteger", "name" : "'EnableSubnormals'" },
-        { "kind" : "LiteralInteger", "name" : "'RoundingMode'" },
-        { "kind" : "LiteralInteger", "name" : "'RoundingAccuracy'" }
-      ],
-      "capabilities" : [ "ArbitraryPrecisionFloatingPointINTEL" ],
-      "version" : "None"
-    },
-    {
-      "opname" : "OpArbitraryFloatCosINTEL",
-      "class"  : "@exclude",
-      "opcode" : 5869,
-      "operands" : [
-        { "kind" : "IdResultType" },
-        { "kind" : "IdResult" },
-        { "kind" : "IdRef", "name" : "'A'" },
-        { "kind" : "LiteralInteger", "name" : "'M1'" },
-        { "kind" : "LiteralInteger", "name" : "'Mout'" },
-        { "kind" : "LiteralInteger", "name" : "'EnableSubnormals'" },
-        { "kind" : "LiteralInteger", "name" : "'RoundingMode'" },
-        { "kind" : "LiteralInteger", "name" : "'RoundingAccuracy'" }
-      ],
-      "capabilities" : [ "ArbitraryPrecisionFloatingPointINTEL" ],
-      "version" : "None"
-    },
-    {
-      "opname" : "OpArbitraryFloatSinCosINTEL",
-      "class"  : "@exclude",
-      "opcode" : 5870,
-      "operands" : [
-        { "kind" : "IdResultType" },
-        { "kind" : "IdResult" },
-        { "kind" : "IdRef", "name" : "'A'" },
-        { "kind" : "LiteralInteger", "name" : "'M1'" },
-        { "kind" : "LiteralInteger", "name" : "'Mout'" },
-        { "kind" : "LiteralInteger", "name" : "'EnableSubnormals'" },
-        { "kind" : "LiteralInteger", "name" : "'RoundingMode'" },
-        { "kind" : "LiteralInteger", "name" : "'RoundingAccuracy'" }
-      ],
-      "capabilities" : [ "ArbitraryPrecisionFloatingPointINTEL" ],
-      "version" : "None"
-    },
-    {
-      "opname" : "OpArbitraryFloatSinPiINTEL",
-      "class"  : "@exclude",
-      "opcode" : 5871,
-      "operands" : [
-        { "kind" : "IdResultType" },
-        { "kind" : "IdResult" },
-        { "kind" : "IdRef", "name" : "'A'" },
-        { "kind" : "LiteralInteger", "name" : "'M1'" },
-        { "kind" : "LiteralInteger", "name" : "'Mout'" },
-        { "kind" : "LiteralInteger", "name" : "'EnableSubnormals'" },
-        { "kind" : "LiteralInteger", "name" : "'RoundingMode'" },
-        { "kind" : "LiteralInteger", "name" : "'RoundingAccuracy'" }
-      ],
-      "capabilities" : [ "ArbitraryPrecisionFloatingPointINTEL" ],
-      "version" : "None"
-    },
-    {
-      "opname" : "OpArbitraryFloatCosPiINTEL",
-      "class"  : "@exclude",
-      "opcode" : 5872,
-      "operands" : [
-        { "kind" : "IdResultType" },
-        { "kind" : "IdResult" },
-        { "kind" : "IdRef", "name" : "'A'" },
-        { "kind" : "LiteralInteger", "name" : "'M1'" },
-        { "kind" : "LiteralInteger", "name" : "'Mout'" },
-        { "kind" : "LiteralInteger", "name" : "'EnableSubnormals'" },
-        { "kind" : "LiteralInteger", "name" : "'RoundingMode'" },
-        { "kind" : "LiteralInteger", "name" : "'RoundingAccuracy'" }
-      ],
-      "capabilities" : [ "ArbitraryPrecisionFloatingPointINTEL" ],
-      "version" : "None"
-    },
-    {
-      "opname" : "OpArbitraryFloatASinINTEL",
-      "class"  : "@exclude",
-      "opcode" : 5873,
-      "operands" : [
-        { "kind" : "IdResultType" },
-        { "kind" : "IdResult" },
-        { "kind" : "IdRef", "name" : "'A'" },
-        { "kind" : "LiteralInteger", "name" : "'M1'" },
-        { "kind" : "LiteralInteger", "name" : "'Mout'" },
-        { "kind" : "LiteralInteger", "name" : "'EnableSubnormals'" },
-        { "kind" : "LiteralInteger", "name" : "'RoundingMode'" },
-        { "kind" : "LiteralInteger", "name" : "'RoundingAccuracy'" }
-      ],
-      "capabilities" : [ "ArbitraryPrecisionFloatingPointINTEL" ],
-      "version" : "None"
-    },
-    {
-      "opname" : "OpArbitraryFloatASinPiINTEL",
-      "class"  : "@exclude",
-      "opcode" : 5874,
-      "operands" : [
-        { "kind" : "IdResultType" },
-        { "kind" : "IdResult" },
-        { "kind" : "IdRef", "name" : "'A'" },
-        { "kind" : "LiteralInteger", "name" : "'M1'" },
-        { "kind" : "LiteralInteger", "name" : "'Mout'" },
-        { "kind" : "LiteralInteger", "name" : "'EnableSubnormals'" },
-        { "kind" : "LiteralInteger", "name" : "'RoundingMode'" },
-        { "kind" : "LiteralInteger", "name" : "'RoundingAccuracy'" }
-      ],
-      "capabilities" : [ "ArbitraryPrecisionFloatingPointINTEL" ],
-      "version" : "None"
-    },
-    {
-      "opname" : "OpArbitraryFloatACosINTEL",
-      "class"  : "@exclude",
-      "opcode" : 5875,
-      "operands" : [
-        { "kind" : "IdResultType" },
-        { "kind" : "IdResult" },
-        { "kind" : "IdRef", "name" : "'A'" },
-        { "kind" : "LiteralInteger", "name" : "'M1'" },
-        { "kind" : "LiteralInteger", "name" : "'Mout'" },
-        { "kind" : "LiteralInteger", "name" : "'EnableSubnormals'" },
-        { "kind" : "LiteralInteger", "name" : "'RoundingMode'" },
-        { "kind" : "LiteralInteger", "name" : "'RoundingAccuracy'" }
-      ],
-      "capabilities" : [ "ArbitraryPrecisionFloatingPointINTEL" ],
-      "version" : "None"
-    },
-    {
-      "opname" : "OpArbitraryFloatACosPiINTEL",
-      "class"  : "@exclude",
-      "opcode" : 5876,
-      "operands" : [
-        { "kind" : "IdResultType" },
-        { "kind" : "IdResult" },
-        { "kind" : "IdRef", "name" : "'A'" },
-        { "kind" : "LiteralInteger", "name" : "'M1'" },
-        { "kind" : "LiteralInteger", "name" : "'Mout'" },
-        { "kind" : "LiteralInteger", "name" : "'EnableSubnormals'" },
-        { "kind" : "LiteralInteger", "name" : "'RoundingMode'" },
-        { "kind" : "LiteralInteger", "name" : "'RoundingAccuracy'" }
-      ],
-      "capabilities" : [ "ArbitraryPrecisionFloatingPointINTEL" ],
-      "version" : "None"
-    },
-    {
-      "opname" : "OpArbitraryFloatATanINTEL",
-      "class"  : "@exclude",
-      "opcode" : 5877,
-      "operands" : [
-        { "kind" : "IdResultType" },
-        { "kind" : "IdResult" },
-        { "kind" : "IdRef", "name" : "'A'" },
-        { "kind" : "LiteralInteger", "name" : "'M1'" },
-        { "kind" : "LiteralInteger", "name" : "'Mout'" },
-        { "kind" : "LiteralInteger", "name" : "'EnableSubnormals'" },
-        { "kind" : "LiteralInteger", "name" : "'RoundingMode'" },
-        { "kind" : "LiteralInteger", "name" : "'RoundingAccuracy'" }
-      ],
-      "capabilities" : [ "ArbitraryPrecisionFloatingPointINTEL" ],
-      "version" : "None"
-    },
-    {
-      "opname" : "OpArbitraryFloatATanPiINTEL",
-      "class"  : "@exclude",
-      "opcode" : 5878,
-      "operands" : [
-        { "kind" : "IdResultType" },
-        { "kind" : "IdResult" },
-        { "kind" : "IdRef", "name" : "'A'" },
-        { "kind" : "LiteralInteger", "name" : "'M1'" },
-        { "kind" : "LiteralInteger", "name" : "'Mout'" },
-        { "kind" : "LiteralInteger", "name" : "'EnableSubnormals'" },
-        { "kind" : "LiteralInteger", "name" : "'RoundingMode'" },
-        { "kind" : "LiteralInteger", "name" : "'RoundingAccuracy'" }
-      ],
-      "capabilities" : [ "ArbitraryPrecisionFloatingPointINTEL" ],
-      "version" : "None"
-    },
-    {
-      "opname" : "OpArbitraryFloatATan2INTEL",
-      "class"  : "@exclude",
-      "opcode" : 5879,
-      "operands" : [
-        { "kind" : "IdResultType" },
-        { "kind" : "IdResult" },
-        { "kind" : "IdRef", "name" : "'A'" },
-        { "kind" : "LiteralInteger", "name" : "'M1'" },
-        { "kind" : "IdRef", "name" : "'B'" },
-        { "kind" : "LiteralInteger", "name" : "'M2'" },
-        { "kind" : "LiteralInteger", "name" : "'Mout'" },
-        { "kind" : "LiteralInteger", "name" : "'EnableSubnormals'" },
-        { "kind" : "LiteralInteger", "name" : "'RoundingMode'" },
-        { "kind" : "LiteralInteger", "name" : "'RoundingAccuracy'" }
-      ],
-      "capabilities" : [ "ArbitraryPrecisionFloatingPointINTEL" ],
-      "version" : "None"
-    },
-    {
-      "opname" : "OpArbitraryFloatPowINTEL",
-      "class"  : "@exclude",
-      "opcode" : 5880,
-      "operands" : [
-        { "kind" : "IdResultType" },
-        { "kind" : "IdResult" },
-        { "kind" : "IdRef", "name" : "'A'" },
-        { "kind" : "LiteralInteger", "name" : "'M1'" },
-        { "kind" : "IdRef", "name" : "'B'" },
-        { "kind" : "LiteralInteger", "name" : "'M2'" },
-        { "kind" : "LiteralInteger", "name" : "'Mout'" },
-        { "kind" : "LiteralInteger", "name" : "'EnableSubnormals'" },
-        { "kind" : "LiteralInteger", "name" : "'RoundingMode'" },
-        { "kind" : "LiteralInteger", "name" : "'RoundingAccuracy'" }
-      ],
-      "capabilities" : [ "ArbitraryPrecisionFloatingPointINTEL" ],
-      "version" : "None"
-    },
-    {
-      "opname" : "OpArbitraryFloatPowRINTEL",
-      "class"  : "@exclude",
-      "opcode" : 5881,
-      "operands" : [
-        { "kind" : "IdResultType" },
-        { "kind" : "IdResult" },
-        { "kind" : "IdRef", "name" : "'A'" },
-        { "kind" : "LiteralInteger", "name" : "'M1'" },
-        { "kind" : "IdRef", "name" : "'B'" },
-        { "kind" : "LiteralInteger", "name" : "'M2'" },
-        { "kind" : "LiteralInteger", "name" : "'Mout'" },
-        { "kind" : "LiteralInteger", "name" : "'EnableSubnormals'" },
-        { "kind" : "LiteralInteger", "name" : "'RoundingMode'" },
-        { "kind" : "LiteralInteger", "name" : "'RoundingAccuracy'" }
-      ],
-      "capabilities" : [ "ArbitraryPrecisionFloatingPointINTEL" ],
-      "version" : "None"
-    },
-    {
-      "opname" : "OpArbitraryFloatPowNINTEL",
-      "class"  : "@exclude",
-      "opcode" : 5882,
-      "operands" : [
-        { "kind" : "IdResultType" },
-        { "kind" : "IdResult" },
-        { "kind" : "IdRef", "name" : "'A'" },
-        { "kind" : "LiteralInteger", "name" : "'M1'" },
-        { "kind" : "IdRef", "name" : "'B'" },
-        { "kind" : "LiteralInteger", "name" : "'Mout'" },
-        { "kind" : "LiteralInteger", "name" : "'EnableSubnormals'" },
-        { "kind" : "LiteralInteger", "name" : "'RoundingMode'" },
-        { "kind" : "LiteralInteger", "name" : "'RoundingAccuracy'" }
-      ],
-      "capabilities" : [ "ArbitraryPrecisionFloatingPointINTEL" ],
-      "version" : "None"
-    },
-    {
-      "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" : "OpFixedSqrtINTEL",
-      "class"  : "@exclude",
-      "opcode" : 5923,
-      "operands" : [
-        { "kind" : "IdResultType" },
-        { "kind" : "IdResult" },
-        { "kind" : "IdRef", "name" : "'Input Type'" },
-        { "kind" : "IdRef", "name" : "'Input'" },
-        { "kind" : "LiteralInteger", "name" : "'S'" },
-        { "kind" : "LiteralInteger", "name" : "'I'" },
-        { "kind" : "LiteralInteger", "name" : "'rI'" },
-        { "kind" : "LiteralInteger", "name" : "'Q'" },
-        { "kind" : "LiteralInteger", "name" : "'O'" }
-      ],
-      "capabilities" : [ "ArbitraryPrecisionFixedPointINTEL" ],
-      "version" : "None"
-    },
-    {
-      "opname" : "OpFixedRecipINTEL",
-      "class"  : "@exclude",
-      "opcode" : 5924,
-      "operands" : [
-        { "kind" : "IdResultType" },
-        { "kind" : "IdResult" },
-        { "kind" : "IdRef", "name" : "'Input Type'" },
-        { "kind" : "IdRef", "name" : "'Input'" },
-        { "kind" : "LiteralInteger", "name" : "'S'" },
-        { "kind" : "LiteralInteger", "name" : "'I'" },
-        { "kind" : "LiteralInteger", "name" : "'rI'" },
-        { "kind" : "LiteralInteger", "name" : "'Q'" },
-        { "kind" : "LiteralInteger", "name" : "'O'" }
-      ],
-      "capabilities" : [ "ArbitraryPrecisionFixedPointINTEL" ],
-      "version" : "None"
-    },
-    {
-      "opname" : "OpFixedRsqrtINTEL",
-      "class"  : "@exclude",
-      "opcode" : 5925,
-      "operands" : [
-        { "kind" : "IdResultType" },
-        { "kind" : "IdResult" },
-        { "kind" : "IdRef", "name" : "'Input Type'" },
-        { "kind" : "IdRef", "name" : "'Input'" },
-        { "kind" : "LiteralInteger", "name" : "'S'" },
-        { "kind" : "LiteralInteger", "name" : "'I'" },
-        { "kind" : "LiteralInteger", "name" : "'rI'" },
-        { "kind" : "LiteralInteger", "name" : "'Q'" },
-        { "kind" : "LiteralInteger", "name" : "'O'" }
-      ],
-      "capabilities" : [ "ArbitraryPrecisionFixedPointINTEL" ],
-      "version" : "None"
-    },
-    {
-      "opname" : "OpFixedSinINTEL",
-      "class"  : "@exclude",
-      "opcode" : 5926,
-      "operands" : [
-        { "kind" : "IdResultType" },
-        { "kind" : "IdResult" },
-        { "kind" : "IdRef", "name" : "'Input Type'" },
-        { "kind" : "IdRef", "name" : "'Input'" },
-        { "kind" : "LiteralInteger", "name" : "'S'" },
-        { "kind" : "LiteralInteger", "name" : "'I'" },
-        { "kind" : "LiteralInteger", "name" : "'rI'" },
-        { "kind" : "LiteralInteger", "name" : "'Q'" },
-        { "kind" : "LiteralInteger", "name" : "'O'" }
-      ],
-      "capabilities" : [ "ArbitraryPrecisionFixedPointINTEL" ],
-      "version" : "None"
-    },
-    {
-      "opname" : "OpFixedCosINTEL",
-      "class"  : "@exclude",
-      "opcode" : 5927,
-      "operands" : [
-        { "kind" : "IdResultType" },
-        { "kind" : "IdResult" },
-        { "kind" : "IdRef", "name" : "'Input Type'" },
-        { "kind" : "IdRef", "name" : "'Input'" },
-        { "kind" : "LiteralInteger", "name" : "'S'" },
-        { "kind" : "LiteralInteger", "name" : "'I'" },
-        { "kind" : "LiteralInteger", "name" : "'rI'" },
-        { "kind" : "LiteralInteger", "name" : "'Q'" },
-        { "kind" : "LiteralInteger", "name" : "'O'" }
-      ],
-      "capabilities" : [ "ArbitraryPrecisionFixedPointINTEL" ],
-      "version" : "None"
-    },
-    {
-      "opname" : "OpFixedSinCosINTEL",
-      "class"  : "@exclude",
-      "opcode" : 5928,
-      "operands" : [
-        { "kind" : "IdResultType" },
-        { "kind" : "IdResult" },
-        { "kind" : "IdRef", "name" : "'Input Type'" },
-        { "kind" : "IdRef", "name" : "'Input'" },
-        { "kind" : "LiteralInteger", "name" : "'S'" },
-        { "kind" : "LiteralInteger", "name" : "'I'" },
-        { "kind" : "LiteralInteger", "name" : "'rI'" },
-        { "kind" : "LiteralInteger", "name" : "'Q'" },
-        { "kind" : "LiteralInteger", "name" : "'O'" }
-      ],
-      "capabilities" : [ "ArbitraryPrecisionFixedPointINTEL" ],
-      "version" : "None"
-    },
-    {
-      "opname" : "OpFixedSinPiINTEL",
-      "class"  : "@exclude",
-      "opcode" : 5929,
-      "operands" : [
-        { "kind" : "IdResultType" },
-        { "kind" : "IdResult" },
-        { "kind" : "IdRef", "name" : "'Input Type'" },
-        { "kind" : "IdRef", "name" : "'Input'" },
-        { "kind" : "LiteralInteger", "name" : "'S'" },
-        { "kind" : "LiteralInteger", "name" : "'I'" },
-        { "kind" : "LiteralInteger", "name" : "'rI'" },
-        { "kind" : "LiteralInteger", "name" : "'Q'" },
-        { "kind" : "LiteralInteger", "name" : "'O'" }
-      ],
-      "capabilities" : [ "ArbitraryPrecisionFixedPointINTEL" ],
-      "version" : "None"
-    },
-    {
-      "opname" : "OpFixedCosPiINTEL",
-      "class"  : "@exclude",
-      "opcode" : 5930,
-      "operands" : [
-        { "kind" : "IdResultType" },
-        { "kind" : "IdResult" },
-        { "kind" : "IdRef", "name" : "'Input Type'" },
-        { "kind" : "IdRef", "name" : "'Input'" },
-        { "kind" : "LiteralInteger", "name" : "'S'" },
-        { "kind" : "LiteralInteger", "name" : "'I'" },
-        { "kind" : "LiteralInteger", "name" : "'rI'" },
-        { "kind" : "LiteralInteger", "name" : "'Q'" },
-        { "kind" : "LiteralInteger", "name" : "'O'" }
-      ],
-      "capabilities" : [ "ArbitraryPrecisionFixedPointINTEL" ],
-      "version" : "None"
-    },
-    {
-      "opname" : "OpFixedSinCosPiINTEL",
-      "class"  : "@exclude",
-      "opcode" : 5931,
-      "operands" : [
-        { "kind" : "IdResultType" },
-        { "kind" : "IdResult" },
-        { "kind" : "IdRef", "name" : "'Input Type'" },
-        { "kind" : "IdRef", "name" : "'Input'" },
-        { "kind" : "LiteralInteger", "name" : "'S'" },
-        { "kind" : "LiteralInteger", "name" : "'I'" },
-        { "kind" : "LiteralInteger", "name" : "'rI'" },
-        { "kind" : "LiteralInteger", "name" : "'Q'" },
-        { "kind" : "LiteralInteger", "name" : "'O'" }
-      ],
-      "capabilities" : [ "ArbitraryPrecisionFixedPointINTEL" ],
-      "version" : "None"
-    },
-    {
-      "opname" : "OpFixedLogINTEL",
-      "class"  : "@exclude",
-      "opcode" : 5932,
-      "operands" : [
-        { "kind" : "IdResultType" },
-        { "kind" : "IdResult" },
-        { "kind" : "IdRef", "name" : "'Input Type'" },
-        { "kind" : "IdRef", "name" : "'Input'" },
-        { "kind" : "LiteralInteger", "name" : "'S'" },
-        { "kind" : "LiteralInteger", "name" : "'I'" },
-        { "kind" : "LiteralInteger", "name" : "'rI'" },
-        { "kind" : "LiteralInteger", "name" : "'Q'" },
-        { "kind" : "LiteralInteger", "name" : "'O'" }
-      ],
-      "capabilities" : [ "ArbitraryPrecisionFixedPointINTEL" ],
-      "version" : "None"
-    },
-    {
-      "opname" : "OpFixedExpINTEL",
-      "class"  : "@exclude",
-      "opcode" : 5933,
-      "operands" : [
-        { "kind" : "IdResultType" },
-        { "kind" : "IdResult" },
-        { "kind" : "IdRef", "name" : "'Input Type'" },
-        { "kind" : "IdRef", "name" : "'Input'" },
-        { "kind" : "LiteralInteger", "name" : "'S'" },
-        { "kind" : "LiteralInteger", "name" : "'I'" },
-        { "kind" : "LiteralInteger", "name" : "'rI'" },
-        { "kind" : "LiteralInteger", "name" : "'Q'" },
-        { "kind" : "LiteralInteger", "name" : "'O'" }
-      ],
-      "capabilities" : [ "ArbitraryPrecisionFixedPointINTEL" ],
-      "version" : "None"
-    },
-    {
-      "opname" : "OpPtrCastToCrossWorkgroupINTEL",
-      "class"  : "@exclude",
-      "opcode" : 5934,
-      "operands" : [
-        { "kind" : "IdResultType" },
-        { "kind" : "IdResult" },
-        { "kind" : "IdRef", "name" : "'Pointer'" }
-      ],
-      "capabilities" : [ "USMStorageClassesINTEL" ],
-      "version" : "None"
-    },
-    {
-      "opname" : "OpCrossWorkgroupCastToPtrINTEL",
-      "class"  : "@exclude",
-      "opcode" : 5938,
-      "operands" : [
-        { "kind" : "IdResultType" },
-        { "kind" : "IdResult" },
-        { "kind" : "IdRef", "name" : "'Pointer'" }
-      ],
-      "capabilities" : [ "USMStorageClassesINTEL" ],
-      "version" : "None"
-    },
-    {
-      "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" : [ "RayQueryKHR" ],
-        "extensions" : [ "SPV_KHR_ray_query" ],
-        "version" : "None"
-    },
-    {
-        "opname" : "OpRayQueryGetRayFlagsKHR",
-        "class" : "Reserved",
-        "opcode" : 6017,
-        "operands" : [
-            { "kind" : "IdResultType" },
-            { "kind" : "IdResult" },
-            {
-                "kind" : "IdRef",
-                "name" : "'RayQuery'"
-            }
-        ],
-        "capabilities" : [ "RayQueryKHR" ],
-        "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" : [ "RayQueryKHR" ],
-        "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" : [ "RayQueryKHR" ],
-        "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" : [ "RayQueryKHR" ],
-        "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" : [ "RayQueryKHR" ],
-        "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" : [ "RayQueryKHR" ],
-        "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" : [ "RayQueryKHR" ],
-        "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" : [ "RayQueryKHR" ],
-        "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" : [ "RayQueryKHR" ],
-        "extensions" : [ "SPV_KHR_ray_query" ],
-        "version" : "None"
-    },
-    {
-        "opname" : "OpRayQueryGetIntersectionCandidateAABBOpaqueKHR",
-        "class" : "Reserved",
-        "opcode" : 6026,
-        "operands" : [
-            { "kind" : "IdResultType" },
-            { "kind" : "IdResult" },
-            {
-                "kind" : "IdRef",
-                "name" : "'RayQuery'"
-            }
-        ],
-        "capabilities" : [ "RayQueryKHR" ],
-        "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" : [ "RayQueryKHR" ],
-        "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" : [ "RayQueryKHR" ],
-        "extensions" : [ "SPV_KHR_ray_query" ],
-        "version" : "None"
-    },
-    {
-        "opname" : "OpRayQueryGetWorldRayDirectionKHR",
-        "class" : "Reserved",
-        "opcode" : 6029,
-        "operands" : [
-            { "kind" : "IdResultType" },
-            { "kind" : "IdResult" },
-            {
-                "kind" : "IdRef",
-                "name" : "'RayQuery'"
-            }
-        ],
-        "capabilities" : [ "RayQueryKHR" ],
-        "extensions" : [ "SPV_KHR_ray_query" ],
-        "version" : "None"
-    },
-    {
-        "opname" : "OpRayQueryGetWorldRayOriginKHR",
-        "class" : "Reserved",
-        "opcode" : 6030,
-        "operands" : [
-            { "kind" : "IdResultType" },
-            { "kind" : "IdResult" },
-            {
-                "kind" : "IdRef",
-                "name" : "'RayQuery'"
-            }
-        ],
-        "capabilities" : [ "RayQueryKHR" ],
-        "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" : [ "RayQueryKHR" ],
-        "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" : [ "RayQueryKHR" ],
-        "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" : [ "AtomicFloat16AddEXT", "AtomicFloat32AddEXT", "AtomicFloat64AddEXT" ],
-      "extensions" : [ "SPV_EXT_shader_atomic_float_add" ],
-      "version" : "None"
-    },
-    {
-      "opname" : "OpTypeBufferSurfaceINTEL",
-      "class"  : "Type-Declaration",
-      "opcode" : 6086,
-      "operands" : [
-        { "kind" : "IdResult" },
-        {
-          "kind" : "AccessQualifier",
-          "name" : "'AccessQualifier'"
-        }
-      ],
-      "capabilities" : [ "VectorComputeINTEL" ],
-      "version" : "None"
-    },
-    {
-      "opname" : "OpTypeStructContinuedINTEL",
-      "class"  : "Type-Declaration",
-      "opcode" : 6090,
-      "operands" : [
-        { "kind" : "IdRef",    "quantifier" : "*", "name" : "'Member 0 type', +\n'member 1 type', +\n..." }
-      ],
-      "capabilities" : [ "LongConstantCompositeINTEL" ],
-      "version" : "None"
-    },
-    {
-      "opname" : "OpConstantCompositeContinuedINTEL",
-      "class"  : "Constant-Creation",
-      "opcode" : 6091,
-      "operands" : [
-        { "kind" : "IdRef",        "quantifier" : "*", "name" : "'Constituents'" }
-      ],
-      "capabilities" : [ "LongConstantCompositeINTEL" ],
-      "version" : "None"
-    },
-    {
-      "opname" : "OpSpecConstantCompositeContinuedINTEL",
-      "class"  : "Constant-Creation",
-      "opcode" : 6092,
-      "operands" : [
-        { "kind" : "IdRef",        "quantifier" : "*", "name" : "'Constituents'" }
-      ],
-      "capabilities" : [ "LongConstantCompositeINTEL" ],
-      "version" : "None"
     }
   ],
   "operand_kinds" : [
@@ -8510,18 +7162,6 @@
           "enumerant" : "Fast",
           "value" : "0x0010",
           "capabilities" : [ "Kernel" ]
-        },
-        {
-          "enumerant" : "AllowContractFastINTEL",
-          "value" : "0x10000",
-          "capabilities" : [ "FPFastMathModeINTEL" ],
-	  "version" : "None"
-        },
-        {
-          "enumerant" : "AllowReassocINTEL",
-          "value" : "0x20000",
-          "capabilities" : [ "FPFastMathModeINTEL" ],
-	  "version" : "None"
         }
       ]
     },
@@ -8611,86 +7251,6 @@
             { "kind" : "LiteralInteger" }
           ],
           "version" : "1.4"
-        },
-        {
-          "enumerant" : "InitiationIntervalINTEL",
-          "value" : "0x10000",
-          "parameters" : [
-            { "kind" : "LiteralInteger" }
-          ],
-          "capabilities" : [ "FPGALoopControlsINTEL" ],
-          "extensions" : [ "SPV_INTEL_fpga_loop_controls" ],
-          "version" : "None"
-        },
-        {
-          "enumerant" : "MaxConcurrencyINTEL",
-          "value" : "0x20000",
-          "parameters" : [
-            { "kind" : "LiteralInteger" }
-          ],
-          "capabilities" : [ "FPGALoopControlsINTEL" ],
-          "extensions" : [ "SPV_INTEL_fpga_loop_controls" ],
-          "version" : "None"
-        },
-        {
-          "enumerant" : "DependencyArrayINTEL",
-          "value" : "0x40000",
-          "parameters" : [
-            { "kind" : "LiteralInteger" }
-          ],
-          "capabilities" : [ "FPGALoopControlsINTEL" ],
-          "extensions" : [ "SPV_INTEL_fpga_loop_controls" ],
-          "version" : "None"
-        },
-        {
-          "enumerant" : "PipelineEnableINTEL",
-          "value" : "0x80000",
-          "parameters" : [
-            { "kind" : "LiteralInteger" }
-          ],
-          "capabilities" : [ "FPGALoopControlsINTEL" ],
-          "extensions" : [ "SPV_INTEL_fpga_loop_controls" ],
-          "version" : "None"
-        },
-        {
-          "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"
-        },
-        {
-          "enumerant" : "NoFusionINTEL",
-          "value" : "0x800000",
-          "parameters" : [
-            { "kind" : "LiteralInteger" }
-          ],
-          "capabilities" : [ "FPGALoopControlsINTEL" ],
-          "extensions" : [ "SPV_INTEL_fpga_loop_controls" ],
-          "version" : "None"
         }
       ]
     },
@@ -8717,12 +7277,6 @@
         {
           "enumerant" : "Const",
           "value" : "0x0008"
-        },
-        {
-          "enumerant" : "OptNoneINTEL",
-          "value" : "0x10000",
-          "capabilities" : [  "OptNoneINTEL" ],
-          "version" : "None"
         }
       ]
     },
@@ -8926,98 +7480,57 @@
         {
           "enumerant" : "NoneKHR",
           "value" : "0x0000",
-          "capabilities" : [ "RayQueryKHR","RayTracingKHR" ],
-          "version" : "None"
+          "capabilities" : [ "RayQueryProvisionalKHR","RayTracingProvisionalKHR" ]
         },
         {
           "enumerant" : "OpaqueKHR",
           "value" : "0x0001",
-          "capabilities" : [ "RayQueryKHR","RayTracingKHR" ],
-          "version" : "None"
+          "capabilities" : [ "RayQueryProvisionalKHR","RayTracingProvisionalKHR" ]
         },
         {
           "enumerant" : "NoOpaqueKHR",
           "value" : "0x0002",
-          "capabilities" : [ "RayQueryKHR","RayTracingKHR" ],
-          "version" : "None"
+          "capabilities" : [ "RayQueryProvisionalKHR","RayTracingProvisionalKHR" ]
         },
         {
           "enumerant" : "TerminateOnFirstHitKHR",
           "value" : "0x0004",
-          "capabilities" : [ "RayQueryKHR","RayTracingKHR" ],
-          "version" : "None"
+          "capabilities" : [ "RayQueryProvisionalKHR","RayTracingProvisionalKHR" ]
         },
         {
           "enumerant" : "SkipClosestHitShaderKHR",
           "value" : "0x0008",
-          "capabilities" : [ "RayQueryKHR","RayTracingKHR" ],
-          "version" : "None"
+          "capabilities" : [ "RayQueryProvisionalKHR","RayTracingProvisionalKHR" ]
         },
         {
           "enumerant" : "CullBackFacingTrianglesKHR",
           "value" : "0x0010",
-          "capabilities" : [ "RayQueryKHR","RayTracingKHR" ],
-          "version" : "None"
+          "capabilities" : [ "RayQueryProvisionalKHR","RayTracingProvisionalKHR" ]
         },
         {
           "enumerant" : "CullFrontFacingTrianglesKHR",
           "value" : "0x0020",
-          "capabilities" : [ "RayQueryKHR","RayTracingKHR" ],
-          "version" : "None"
+          "capabilities" : [ "RayQueryProvisionalKHR","RayTracingProvisionalKHR" ]
         },
         {
           "enumerant" : "CullOpaqueKHR",
           "value" : "0x0040",
-          "capabilities" : [ "RayQueryKHR","RayTracingKHR" ],
-          "version" : "None"
+          "capabilities" : [ "RayQueryProvisionalKHR","RayTracingProvisionalKHR" ]
         },
         {
           "enumerant" : "CullNoOpaqueKHR",
           "value" : "0x0080",
-          "capabilities" : [ "RayQueryKHR","RayTracingKHR" ],
-          "version" : "None"
+          "capabilities" : [ "RayQueryProvisionalKHR","RayTracingProvisionalKHR" ]
         },
         {
           "enumerant" : "SkipTrianglesKHR",
           "value" : "0x0100",
-          "capabilities" : [ "RayTraversalPrimitiveCullingKHR" ],
-          "version" : "None"
+          "capabilities" : [ "RayTraversalPrimitiveCullingProvisionalKHR" ]
         },
         {
           "enumerant" : "SkipAABBsKHR",
           "value" : "0x0200",
-          "capabilities" : [ "RayTraversalPrimitiveCullingKHR" ],
-          "version" : "None"
-        }
-      ]
-    },
-    {
-      "category" : "BitEnum",
-      "kind" : "FragmentShadingRate",
-      "enumerants" : [
-        {
-          "enumerant" : "Vertical2Pixels",
-          "value" : "0x0001",
-          "capabilities" : [ "FragmentShadingRateKHR" ],
-          "version" : "None"
-        },
-        {
-          "enumerant" : "Vertical4Pixels",
-          "value" : "0x0002",
-          "capabilities" : [ "FragmentShadingRateKHR" ],
-          "version" : "None"
-        },
-        {
-          "enumerant" : "Horizontal2Pixels",
-          "value" : "0x0004",
-          "capabilities" : [ "FragmentShadingRateKHR" ],
-          "version" : "None"
-        },
-        {
-          "enumerant" : "Horizontal4Pixels",
-          "value" : "0x0008",
-          "capabilities" : [ "FragmentShadingRateKHR" ],
-          "version" : "None"
+          "capabilities" : [ "RayTraversalPrimitiveCullingProvisionalKHR" ]
         }
       ]
     },
@@ -9048,10 +7561,6 @@
         {
           "enumerant" : "HLSL",
           "value" : 5
-        },
-        {
-          "enumerant" : "CPP_for_OpenCL",
-          "value" : 6
         }
       ]
     },
@@ -9109,73 +7618,73 @@
         {
           "enumerant" : "RayGenerationNV",
           "value" : 5313,
-          "capabilities" : [ "RayTracingNV" , "RayTracingKHR" ],
+          "capabilities" : [ "RayTracingNV" , "RayTracingProvisionalKHR" ],
           "version" : "None"
         },
         {
           "enumerant" : "RayGenerationKHR",
           "value" : 5313,
-          "capabilities" : [ "RayTracingNV" , "RayTracingKHR" ],
+          "capabilities" : [ "RayTracingNV" , "RayTracingProvisionalKHR" ],
           "version" : "None"
         },
         {
           "enumerant" : "IntersectionNV",
           "value" : 5314,
-          "capabilities" : [ "RayTracingNV" , "RayTracingKHR" ],
+          "capabilities" : [ "RayTracingNV" , "RayTracingProvisionalKHR" ],
           "version" : "None"
         },
         {
           "enumerant" : "IntersectionKHR",
           "value" : 5314,
-          "capabilities" : [ "RayTracingNV" , "RayTracingKHR" ],
+          "capabilities" : [ "RayTracingNV" , "RayTracingProvisionalKHR" ],
           "version" : "None"
         },
         {
           "enumerant" : "AnyHitNV",
           "value" : 5315,
-          "capabilities" : [ "RayTracingNV" , "RayTracingKHR" ],
+          "capabilities" : [ "RayTracingNV" , "RayTracingProvisionalKHR" ],
           "version" : "None"
         },
         {
           "enumerant" : "AnyHitKHR",
           "value" : 5315,
-          "capabilities" : [ "RayTracingNV" , "RayTracingKHR" ],
+          "capabilities" : [ "RayTracingNV" , "RayTracingProvisionalKHR" ],
           "version" : "None"
         },
         {
           "enumerant" : "ClosestHitNV",
           "value" : 5316,
-          "capabilities" : [ "RayTracingNV" , "RayTracingKHR" ],
+          "capabilities" : [ "RayTracingNV" , "RayTracingProvisionalKHR" ],
           "version" : "None"
         },
         {
           "enumerant" : "ClosestHitKHR",
           "value" : 5316,
-          "capabilities" : [ "RayTracingNV" , "RayTracingKHR" ],
+          "capabilities" : [ "RayTracingNV" , "RayTracingProvisionalKHR" ],
           "version" : "None"
         },
         {
           "enumerant" : "MissNV",
           "value" : 5317,
-          "capabilities" : [ "RayTracingNV" , "RayTracingKHR" ],
+          "capabilities" : [ "RayTracingNV" , "RayTracingProvisionalKHR" ],
           "version" : "None"
         },
         {
           "enumerant" : "MissKHR",
           "value" : 5317,
-          "capabilities" : [ "RayTracingNV" , "RayTracingKHR" ],
+          "capabilities" : [ "RayTracingNV" , "RayTracingProvisionalKHR" ],
           "version" : "None"
         },
         {
           "enumerant" : "CallableNV",
           "value" : 5318,
-          "capabilities" : [ "RayTracingNV" , "RayTracingKHR" ],
+          "capabilities" : [ "RayTracingNV" , "RayTracingProvisionalKHR" ],
           "version" : "None"
         },
         {
           "enumerant" : "CallableKHR",
           "value" : 5318,
-          "capabilities" : [ "RayTracingNV" , "RayTracingKHR" ],
+          "capabilities" : [ "RayTracingNV" , "RayTracingProvisionalKHR" ],
           "version" : "None"
         }
       ]
@@ -9479,20 +7988,11 @@
           "value" : 39,
           "capabilities" : [ "Kernel" ],
           "parameters" : [
-            { "kind" : "IdRef", "name" : "'x size hint'" },
-            { "kind" : "IdRef", "name" : "'y size hint'" },
-            { "kind" : "IdRef", "name" : "'z size hint'" }
+            { "kind" : "IdRef", "name" : "'Local Size Hint'" }
           ],
           "version" : "1.2"
         },
         {
-          "enumerant" : "SubgroupUniformControlFlowKHR",
-          "value" : 4421,
-          "capabilities" : [ "Shader" ],
-          "extensions" : [ "SPV_KHR_subgroup_uniform_control_flow" ],
-          "version" : "None"
-        },
-        {
           "enumerant" : "PostDepthCoverage",
           "value" : 4446,
           "capabilities" : [ "SampleMaskPostDepthCoverage" ],
@@ -9635,99 +8135,6 @@
           "capabilities" : [ "FragmentShaderShadingRateInterlockEXT" ],
           "extensions" : [ "SPV_EXT_fragment_shader_interlock" ],
           "version" : "None"
-        },
-        {
-          "enumerant" : "SharedLocalMemorySizeINTEL",
-          "value" : 5618,
-          "parameters" : [
-            { "kind" : "LiteralInteger", "name" : "'Size'" }
-          ],
-          "capabilities" : [ "VectorComputeINTEL" ],
-          "version" : "None"
-        },
-        {
-          "enumerant" : "RoundingModeRTPINTEL",
-          "value" : 5620,
-          "parameters" : [
-            { "kind" : "LiteralInteger", "name" : "'Target Width'" }
-          ],
-          "capabilities" : [ "RoundToInfinityINTEL" ],
-          "version" : "None"
-        },
-        {
-          "enumerant" : "RoundingModeRTNINTEL",
-          "value" : 5621,
-          "parameters" : [
-            { "kind" : "LiteralInteger", "name" : "'Target Width'" }
-          ],
-          "capabilities" : [ "RoundToInfinityINTEL" ],
-          "version" : "None"
-        },
-        {
-          "enumerant" : "FloatingPointModeALTINTEL",
-          "value" : 5622,
-          "parameters" : [
-            { "kind" : "LiteralInteger", "name" : "'Target Width'" }
-          ],
-          "capabilities" : [ "RoundToInfinityINTEL" ],
-          "version" : "None"
-        },
-        {
-          "enumerant" : "FloatingPointModeIEEEINTEL",
-          "value" : 5623,
-          "parameters" : [
-            { "kind" : "LiteralInteger", "name" : "'Target Width'" }
-          ],
-          "capabilities" : [ "RoundToInfinityINTEL" ],
-          "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" : "SchedulerTargetFmaxMhzINTEL",
-          "value" : 5903,
-          "parameters" : [
-            { "kind" : "LiteralInteger", "name" : "'target_fmax'" }
-          ],
-          "capabilities" : [ "FPGAKernelAttributesINTEL" ],
-          "version" : "None"
         }
       ]
     },
@@ -9764,7 +8171,7 @@
         {
           "enumerant" : "Private",
           "value" : 6,
-          "capabilities" : [ "Shader", "VectorComputeINTEL" ]
+          "capabilities" : [ "Shader" ]
         },
         {
           "enumerant" : "Function",
@@ -9803,84 +8210,84 @@
           "enumerant" : "CallableDataNV",
           "value" : 5328,
           "extensions" : [ "SPV_NV_ray_tracing" , "SPV_KHR_ray_tracing" ],
-          "capabilities" : [ "RayTracingNV" , "RayTracingKHR" ],
+          "capabilities" : [ "RayTracingNV" , "RayTracingProvisionalKHR" ],
           "version" : "None"
         },
         {
           "enumerant" : "CallableDataKHR",
           "value" : 5328,
           "extensions" : [ "SPV_NV_ray_tracing" , "SPV_KHR_ray_tracing" ],
-          "capabilities" : [ "RayTracingNV" , "RayTracingKHR" ],
+          "capabilities" : [ "RayTracingNV" , "RayTracingProvisionalKHR" ],
           "version" : "None"
         },
         {
           "enumerant" : "IncomingCallableDataNV",
           "value" : 5329,
           "extensions" : [ "SPV_NV_ray_tracing" , "SPV_KHR_ray_tracing" ],
-          "capabilities" : [ "RayTracingNV" , "RayTracingKHR" ],
+          "capabilities" : [ "RayTracingNV" , "RayTracingProvisionalKHR" ],
           "version" : "None"
         },
         {
           "enumerant" : "IncomingCallableDataKHR",
           "value" : 5329,
           "extensions" : [ "SPV_NV_ray_tracing" , "SPV_KHR_ray_tracing" ],
-          "capabilities" : [ "RayTracingNV" , "RayTracingKHR" ],
+          "capabilities" : [ "RayTracingNV" , "RayTracingProvisionalKHR" ],
           "version" : "None"
         },
         {
           "enumerant" : "RayPayloadNV",
           "value" : 5338,
           "extensions" : [ "SPV_NV_ray_tracing" , "SPV_KHR_ray_tracing" ],
-          "capabilities" : [ "RayTracingNV" , "RayTracingKHR" ],
+          "capabilities" : [ "RayTracingNV" , "RayTracingProvisionalKHR" ],
           "version" : "None"
         },
         {
           "enumerant" : "RayPayloadKHR",
           "value" : 5338,
           "extensions" : [ "SPV_NV_ray_tracing" , "SPV_KHR_ray_tracing" ],
-          "capabilities" : [ "RayTracingNV" , "RayTracingKHR" ],
+          "capabilities" : [ "RayTracingNV" , "RayTracingProvisionalKHR" ],
           "version" : "None"
         },
         {
           "enumerant" : "HitAttributeNV",
           "value" : 5339,
           "extensions" : [ "SPV_NV_ray_tracing" , "SPV_KHR_ray_tracing" ],
-          "capabilities" : [ "RayTracingNV" , "RayTracingKHR" ],
+          "capabilities" : [ "RayTracingNV" , "RayTracingProvisionalKHR" ],
           "version" : "None"
         },
         {
           "enumerant" : "HitAttributeKHR",
           "value" : 5339,
           "extensions" : [ "SPV_NV_ray_tracing" , "SPV_KHR_ray_tracing" ],
-          "capabilities" : [ "RayTracingNV" , "RayTracingKHR" ],
+          "capabilities" : [ "RayTracingNV" , "RayTracingProvisionalKHR" ],
           "version" : "None"
         },
         {
           "enumerant" : "IncomingRayPayloadNV",
           "value" : 5342,
           "extensions" : [ "SPV_NV_ray_tracing" , "SPV_KHR_ray_tracing" ],
-          "capabilities" : [ "RayTracingNV" , "RayTracingKHR" ],
+          "capabilities" : [ "RayTracingNV" , "RayTracingProvisionalKHR" ],
           "version" : "None"
         },
         {
           "enumerant" : "IncomingRayPayloadKHR",
           "value" : 5342,
           "extensions" : [ "SPV_NV_ray_tracing" , "SPV_KHR_ray_tracing" ],
-          "capabilities" : [ "RayTracingNV" , "RayTracingKHR" ],
+          "capabilities" : [ "RayTracingNV" , "RayTracingProvisionalKHR" ],
           "version" : "None"
         },
         {
           "enumerant" : "ShaderRecordBufferNV",
           "value" : 5343,
           "extensions" : [ "SPV_NV_ray_tracing" , "SPV_KHR_ray_tracing" ],
-          "capabilities" : [ "RayTracingNV" , "RayTracingKHR" ],
+          "capabilities" : [ "RayTracingNV" , "RayTracingProvisionalKHR" ],
           "version" : "None"
         },
         {
           "enumerant" : "ShaderRecordBufferKHR",
           "value" : 5343,
           "extensions" : [ "SPV_NV_ray_tracing" , "SPV_KHR_ray_tracing" ],
-          "capabilities" : [ "RayTracingNV" , "RayTracingKHR" ],
+          "capabilities" : [ "RayTracingNV" , "RayTracingProvisionalKHR" ],
           "version" : "None"
         },
         {
@@ -9896,31 +8303,6 @@
           "extensions" : [ "SPV_EXT_physical_storage_buffer" ],
           "capabilities" : [ "PhysicalStorageBufferAddresses" ],
           "version" : "1.5"
-        },
-        {
-          "enumerant" : "CodeSectionINTEL",
-          "value" : 5605,
-          "extensions" : [ "SPV_INTEL_function_pointers" ],
-          "capabilities" : [ "FunctionPointersINTEL" ],
-          "version" : "None"
-        },
-        {
-          "enumerant" : "DeviceOnlyINTEL",
-          "value" : 5936,
-          "extensions" : [
-            "SPV_INTEL_usm_storage_classes"
-          ],
-          "capabilities" : [ "USMStorageClassesINTEL" ],
-          "version" : "None"
-        },
-        {
-          "enumerant" : "HostOnlyINTEL",
-          "value" : 5937,
-          "extensions" : [
-            "SPV_INTEL_usm_storage_classes"
-          ],
-          "capabilities" : [ "USMStorageClassesINTEL" ],
-          "version" : "None"
         }
       ]
     },
@@ -10213,16 +8595,6 @@
           "enumerant" : "R8ui",
           "value" : 39,
           "capabilities" : [ "StorageImageExtendedFormats" ]
-        },
-	{
-          "enumerant" : "R64ui",
-          "value" : 40,
-          "capabilities" : [ "Int64ImageEXT" ]
-        },
-        {
-          "enumerant" : "R64i",
-          "value" : 41,
-          "capabilities" : [ "Int64ImageEXT" ]
         }
       ]
     },
@@ -10447,126 +8819,6 @@
     },
     {
       "category" : "ValueEnum",
-      "kind" : "FPDenormMode",
-      "enumerants" : [
-        {
-          "enumerant" : "Preserve",
-          "value" : 0,
-          "capabilities" : [ "FunctionFloatControlINTEL" ],
-          "version" : "None"
-        },
-        {
-          "enumerant" : "FlushToZero",
-          "value" : 1,
-          "capabilities" : [ "FunctionFloatControlINTEL" ],
-          "version" : "None"
-	}
-      ]
-    },
-    {
-      "category" : "ValueEnum",
-      "kind" : "QuantizationModes",
-      "enumerants" : [
-        {
-          "enumerant" : "TRN",
-          "value" : 0,
-          "capabilities" : [ "ArbitraryPrecisionFixedPointINTEL"],
-          "version" : "None"
-        },
-        {
-          "enumerant" : "TRN_ZERO",
-          "value" : 1,
-          "capabilities" : [ "ArbitraryPrecisionFixedPointINTEL"],
-          "version" : "None"
-        },
-        {
-          "enumerant" : "RND",
-          "value" : 2,
-          "capabilities" : [ "ArbitraryPrecisionFixedPointINTEL"],
-          "version" : "None"
-        },
-        {
-          "enumerant" : "RND_ZERO",
-          "value" : 3,
-          "capabilities" : [ "ArbitraryPrecisionFixedPointINTEL"],
-          "version" : "None"
-        },
-        {
-          "enumerant" : "RND_INF",
-          "value" : 4,
-          "capabilities" : [ "ArbitraryPrecisionFixedPointINTEL"],
-          "version" : "None"
-        },
-        {
-          "enumerant" : "RND_MIN_INF",
-          "value" : 5,
-          "capabilities" : [ "ArbitraryPrecisionFixedPointINTEL"],
-          "version" : "None"
-        },
-        {
-          "enumerant" : "RND_CONV",
-          "value" : 6,
-          "capabilities" : [ "ArbitraryPrecisionFixedPointINTEL"],
-          "version" : "None"
-        },
-        {
-          "enumerant" : "RND_CONV_ODD",
-          "value" : 7,
-          "capabilities" : [ "ArbitraryPrecisionFixedPointINTEL"],
-          "version" : "None"
-        }
-      ]
-    },
-    {
-      "category" : "ValueEnum",
-      "kind" : "FPOperationMode",
-      "enumerants" : [
-        {
-          "enumerant" : "IEEE",
-          "value" : 0,
-          "capabilities" : [ "FunctionFloatControlINTEL" ],
-          "version" : "None"
-        },
-        {
-          "enumerant" : "ALT",
-          "value" : 1,
-          "capabilities" : [ "FunctionFloatControlINTEL" ],
-          "version" : "None"
-        }
-      ]
-    },
-    {
-      "category" : "ValueEnum",
-      "kind" : "OverflowModes",
-      "enumerants" : [
-        {
-          "enumerant" : "WRAP",
-          "value" : 0,
-          "capabilities" : [ "ArbitraryPrecisionFixedPointINTEL"],
-          "version" : "None"
-        },
-        {
-          "enumerant" : "SAT",
-          "value" : 1,
-          "capabilities" : [ "ArbitraryPrecisionFixedPointINTEL"],
-          "version" : "None"
-        },
-        {
-          "enumerant" : "SAT_ZERO",
-          "value" : 2,
-          "capabilities" : [ "ArbitraryPrecisionFixedPointINTEL"],
-          "version" : "None"
-        },
-        {
-          "enumerant" : "SAT_SYM",
-          "value" : 3,
-          "capabilities" : [ "ArbitraryPrecisionFixedPointINTEL"],
-          "version" : "None"
-        }
-      ]
-    },
-    {
-      "category" : "ValueEnum",
       "kind" : "LinkageType",
       "enumerants" : [
         {
@@ -10578,13 +8830,6 @@
           "enumerant" : "Import",
           "value" : 1,
           "capabilities" : [ "Linkage" ]
-        },
-        {
-          "enumerant" : "LinkOnceODR",
-          "value" : 2,
-          "capabilities" : [ "Linkage" ],
-          "extensions" : [ "SPV_KHR_linkonce_odr" ],
-          "version" : "None"
         }
       ]
     },
@@ -11079,73 +9324,6 @@
           "version" : "1.5"
         },
         {
-          "enumerant" : "SIMTCallINTEL",
-          "value" : 5599,
-          "parameters" : [
-            { "kind" : "LiteralInteger", "name" : "'N'" }
-          ],
-          "capabilities" : [ "VectorComputeINTEL" ],
-          "version" : "None"
-        },
-        {
-          "enumerant" : "ReferencedIndirectlyINTEL",
-          "value" : 5602,
-          "capabilities" : [ "IndirectReferencesINTEL" ],
-          "extensions" : [ "SPV_INTEL_function_pointers" ],
-          "version" : "None"
-        },
-        {
-          "enumerant" : "ClobberINTEL",
-          "value" : 5607,
-          "parameters" : [
-            { "kind" : "LiteralString", "name" : "'Register'" }
-          ],
-          "capabilities" : [ "AsmINTEL" ],
-          "version" : "None"
-        },
-        {
-          "enumerant" : "SideEffectsINTEL",
-          "value" : 5608,
-          "capabilities" : [ "AsmINTEL" ],
-          "version" : "None"
-        },
-        {
-          "enumerant" : "VectorComputeVariableINTEL",
-          "value" : 5624,
-          "capabilities" : [ "VectorComputeINTEL" ],
-          "version" : "None"
-        },
-        {
-          "enumerant" : "FuncParamIOKindINTEL",
-          "value" : 5625,
-          "parameters" : [
-            { "kind" : "LiteralInteger", "name" : "'Kind'" }
-          ],
-          "capabilities" : [ "VectorComputeINTEL" ],
-          "version" : "None"
-        },
-        {
-          "enumerant" : "VectorComputeFunctionINTEL",
-          "value" : 5626,
-          "capabilities" : [ "VectorComputeINTEL" ],
-          "version" : "None"
-        },
-        {
-          "enumerant" : "StackCallINTEL",
-          "value" : 5627,
-          "capabilities" : [ "VectorComputeINTEL" ],
-          "version" : "None"
-        },
-        {
-          "enumerant" : "GlobalVariableOffsetINTEL",
-          "value" : 5628,
-          "parameters" : [
-            { "kind" : "LiteralInteger", "name" : "'Offset'" }
-          ],
-          "capabilities" : [ "VectorComputeINTEL" ],
-          "version" : "None"
-        },
-        {
           "enumerant" : "CounterBuffer",
           "value" : 5634,
           "parameters" : [
@@ -11187,217 +9365,6 @@
           ],
           "extensions" : [ "SPV_GOOGLE_user_type" ],
           "version" : "None"
-        },
-        {
-          "enumerant" : "FunctionRoundingModeINTEL",
-          "value" : 5822,
-          "parameters" : [
-            { "kind" : "LiteralInteger", "name" : "'Target Width'" },
-            { "kind" : "FPRoundingMode", "name" : "'FP Rounding Mode'" }
-          ],
-          "capabilities" : [ "FunctionFloatControlINTEL" ],
-          "version" : "None"
-        },
-        {
-          "enumerant" : "FunctionDenormModeINTEL",
-          "value" : 5823,
-          "parameters" : [
-            { "kind" : "LiteralInteger", "name" : "'Target Width'" },
-            { "kind" : "FPDenormMode", "name" : "'FP Denorm Mode'" }
-          ],
-          "capabilities" : [ "FunctionFloatControlINTEL" ],
-          "version" : "None"
-        },
-        {
-          "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" : "BurstCoalesceINTEL",
-          "value" : 5899,
-          "capabilities" : [ "FPGAMemoryAccessesINTEL" ],
-          "version" : "None"
-        },
-        {
-          "enumerant" : "CacheSizeINTEL",
-          "value" : 5900,
-          "parameters" : [
-            { "kind" : "LiteralInteger", "name" : "'Cache Size in bytes'" }
-          ],
-          "capabilities" : [ "FPGAMemoryAccessesINTEL" ],
-          "version" : "None"
-        },
-        {
-          "enumerant" : "DontStaticallyCoalesceINTEL",
-          "value" : 5901,
-          "capabilities" : [ "FPGAMemoryAccessesINTEL" ],
-          "version" : "None"
-        },
-        {
-          "enumerant" : "PrefetchINTEL",
-          "value" : 5902,
-          "parameters" : [
-            { "kind" : "LiteralInteger", "name" : "'Prefetcher Size in bytes'" }
-          ],
-          "capabilities" : [ "FPGAMemoryAccessesINTEL" ],
-          "version" : "None"
-        },
-        {
-          "enumerant" : "StallEnableINTEL",
-          "value" : 5905,
-          "capabilities" : [ "FPGAClusterAttributesINTEL" ],
-          "version" : "None"
-        },
-        {
-          "enumerant" : "FuseLoopsInFunctionINTEL",
-          "value" : 5907,
-          "capabilities" : [ "LoopFuseINTEL" ],
-          "version" : "None"
-        },
-        {
-          "enumerant" : "BufferLocationINTEL",
-          "value" : 5921,
-          "parameters" : [
-            { "kind" : "LiteralInteger", "name" : "'Buffer Location ID'" }
-          ],
-          "capabilities" : [ "FPGABufferLocationINTEL" ],
-          "version" : "None"
-        },
-        {
-          "enumerant" : "IOPipeStorageINTEL",
-          "value" : 5944,
-          "parameters" : [
-            { "kind" : "LiteralInteger", "name" : "'IO Pipe ID'" }
-          ],
-          "capabilities" : [ "IOPipesINTEL" ],
-          "version" : "None"
-        },
-        {
-          "enumerant" : "FunctionFloatingPointModeINTEL",
-          "value" : 6080,
-          "parameters" : [
-            { "kind" : "LiteralInteger", "name" : "'Target Width'" },
-            { "kind" : "FPOperationMode", "name" : "'FP Operation Mode'" }
-          ],
-          "capabilities" : [ "FunctionFloatControlINTEL" ],
-          "version" : "None"
-        },
-        {
-          "enumerant" : "SingleElementVectorINTEL",
-          "value" : 6085,
-          "capabilities" : [ "VectorComputeINTEL" ],
-          "version" : "None"
-        },
-        {
-          "enumerant" : "VectorComputeCallableFunctionINTEL",
-          "value" : 6087,
-          "capabilities" : [ "VectorComputeINTEL" ],
-          "version" : "None"
         }
       ]
     },
@@ -11438,7 +9405,7 @@
         {
           "enumerant" : "PrimitiveId",
           "value" : 7,
-          "capabilities" : [ "Geometry", "Tessellation", "RayTracingNV", "RayTracingKHR", "MeshShadingNV" ]
+          "capabilities" : [ "Geometry", "Tessellation", "RayTracingNV", "RayTracingProvisionalKHR" ]
         },
         {
           "enumerant" : "InvocationId",
@@ -11448,12 +9415,12 @@
         {
           "enumerant" : "Layer",
           "value" : 9,
-          "capabilities" : [ "Geometry", "ShaderLayer", "ShaderViewportIndexLayerEXT", "MeshShadingNV" ]
+          "capabilities" : [ "Geometry", "ShaderLayer", "ShaderViewportIndexLayerEXT" ]
         },
         {
           "enumerant" : "ViewportIndex",
           "value" : 10,
-          "capabilities" : [ "MultiViewport", "ShaderViewportIndex", "ShaderViewportIndexLayerEXT", "MeshShadingNV" ]
+          "capabilities" : [ "MultiViewport", "ShaderViewportIndex", "ShaderViewportIndexLayerEXT" ]
         },
         {
           "enumerant" : "TessLevelOuter",
@@ -11611,6 +9578,30 @@
           "version" : "1.3"
         },
         {
+          "enumerant" : "SubgroupGeMask",
+          "value" : 4417,
+          "capabilities" : [ "SubgroupBallotKHR", "GroupNonUniformBallot" ],
+          "version" : "1.3"
+        },
+        {
+          "enumerant" : "SubgroupGtMask",
+          "value" : 4418,
+          "capabilities" : [ "SubgroupBallotKHR", "GroupNonUniformBallot" ],
+          "version" : "1.3"
+        },
+        {
+          "enumerant" : "SubgroupLeMask",
+          "value" : 4419,
+          "capabilities" : [ "SubgroupBallotKHR", "GroupNonUniformBallot" ],
+          "version" : "1.3"
+        },
+        {
+          "enumerant" : "SubgroupLtMask",
+          "value" : 4420,
+          "capabilities" : [ "SubgroupBallotKHR", "GroupNonUniformBallot" ],
+          "version" : "1.3"
+        },
+        {
           "enumerant" : "SubgroupEqMaskKHR",
           "value" : 4416,
           "capabilities" : [ "SubgroupBallotKHR", "GroupNonUniformBallot" ],
@@ -11618,12 +9609,6 @@
           "version" : "1.3"
         },
         {
-          "enumerant" : "SubgroupGeMask",
-          "value" : 4417,
-          "capabilities" : [ "SubgroupBallotKHR", "GroupNonUniformBallot" ],
-          "version" : "1.3"
-        },
-        {
           "enumerant" : "SubgroupGeMaskKHR",
           "value" : 4417,
           "capabilities" : [ "SubgroupBallotKHR", "GroupNonUniformBallot" ],
@@ -11631,12 +9616,6 @@
           "version" : "1.3"
         },
         {
-          "enumerant" : "SubgroupGtMask",
-          "value" : 4418,
-          "capabilities" : [ "SubgroupBallotKHR", "GroupNonUniformBallot" ],
-          "version" : "1.3"
-        },
-        {
           "enumerant" : "SubgroupGtMaskKHR",
           "value" : 4418,
           "capabilities" : [ "SubgroupBallotKHR", "GroupNonUniformBallot" ],
@@ -11644,12 +9623,6 @@
           "version" : "1.3"
         },
         {
-          "enumerant" : "SubgroupLeMask",
-          "value" : 4419,
-          "capabilities" : [ "SubgroupBallotKHR", "GroupNonUniformBallot" ],
-          "version" : "1.3"
-        },
-        {
           "enumerant" : "SubgroupLeMaskKHR",
           "value" : 4419,
           "capabilities" : [ "SubgroupBallotKHR", "GroupNonUniformBallot" ],
@@ -11657,12 +9630,6 @@
           "version" : "1.3"
         },
         {
-          "enumerant" : "SubgroupLtMask",
-          "value" : 4420,
-          "capabilities" : [ "SubgroupBallotKHR", "GroupNonUniformBallot" ],
-          "version" : "1.3"
-        },
-        {
           "enumerant" : "SubgroupLtMaskKHR",
           "value" : 4420,
           "capabilities" : [ "SubgroupBallotKHR", "GroupNonUniformBallot" ],
@@ -11691,13 +9658,6 @@
           "version" : "1.3"
         },
         {
-          "enumerant" : "PrimitiveShadingRateKHR",
-          "value" : 4432,
-          "capabilities" : [ "FragmentShadingRateKHR" ],
-          "extensions" : [ "SPV_KHR_fragment_shading_rate" ],
-          "version" : "None"
-        },
-        {
           "enumerant" : "DeviceIndex",
           "value" : 4438,
           "capabilities" : [ "DeviceGroup" ],
@@ -11712,13 +9672,6 @@
           "version" : "1.3"
         },
         {
-          "enumerant" : "ShadingRateKHR",
-          "value" : 4444,
-          "capabilities" : [ "FragmentShadingRateKHR" ],
-          "extensions" : [ "SPV_KHR_fragment_shading_rate" ],
-          "version" : "None"
-        },
-        {
           "enumerant" : "BaryCoordNoPerspAMD",
           "value" : 4992,
           "extensions" : [ "SPV_AMD_shader_explicit_vertex_parameter" ],
@@ -11910,203 +9863,203 @@
         {
           "enumerant" : "LaunchIdNV",
           "value" : 5319,
-          "capabilities" : [ "RayTracingNV" , "RayTracingKHR" ],
+          "capabilities" : [ "RayTracingNV" , "RayTracingProvisionalKHR" ],
           "extensions" : [ "SPV_NV_ray_tracing" , "SPV_KHR_ray_tracing" ],
           "version" : "None"
         },
         {
           "enumerant" : "LaunchIdKHR",
           "value" : 5319,
-          "capabilities" : [ "RayTracingNV" , "RayTracingKHR" ],
+          "capabilities" : [ "RayTracingNV" , "RayTracingProvisionalKHR" ],
           "extensions" : [ "SPV_NV_ray_tracing" , "SPV_KHR_ray_tracing" ],
           "version" : "None"
         },
         {
           "enumerant" : "LaunchSizeNV",
           "value" : 5320,
-          "capabilities" : [ "RayTracingNV" , "RayTracingKHR" ],
+          "capabilities" : [ "RayTracingNV" , "RayTracingProvisionalKHR" ],
           "extensions" : [ "SPV_NV_ray_tracing" , "SPV_KHR_ray_tracing" ],
           "version" : "None"
         },
         {
           "enumerant" : "LaunchSizeKHR",
           "value" : 5320,
-          "capabilities" : [ "RayTracingNV" , "RayTracingKHR" ],
+          "capabilities" : [ "RayTracingNV" , "RayTracingProvisionalKHR" ],
           "extensions" : [ "SPV_NV_ray_tracing" , "SPV_KHR_ray_tracing" ],
           "version" : "None"
         },
         {
           "enumerant" : "WorldRayOriginNV",
           "value" : 5321,
-          "capabilities" : [ "RayTracingNV" , "RayTracingKHR" ],
+          "capabilities" : [ "RayTracingNV" , "RayTracingProvisionalKHR" ],
           "extensions" : [ "SPV_NV_ray_tracing" , "SPV_KHR_ray_tracing" ],
           "version" : "None"
         },
         {
           "enumerant" : "WorldRayOriginKHR",
           "value" : 5321,
-          "capabilities" : [ "RayTracingNV" , "RayTracingKHR" ],
+          "capabilities" : [ "RayTracingNV" , "RayTracingProvisionalKHR" ],
           "extensions" : [ "SPV_NV_ray_tracing" , "SPV_KHR_ray_tracing" ],
           "version" : "None"
         },
         {
           "enumerant" : "WorldRayDirectionNV",
           "value" : 5322,
-          "capabilities" : [ "RayTracingNV" , "RayTracingKHR" ],
+          "capabilities" : [ "RayTracingNV" , "RayTracingProvisionalKHR" ],
           "extensions" : [ "SPV_NV_ray_tracing" , "SPV_KHR_ray_tracing" ],
           "version" : "None"
         },
         {
           "enumerant" : "WorldRayDirectionKHR",
           "value" : 5322,
-          "capabilities" : [ "RayTracingNV" , "RayTracingKHR" ],
+          "capabilities" : [ "RayTracingNV" , "RayTracingProvisionalKHR" ],
           "extensions" : [ "SPV_NV_ray_tracing" , "SPV_KHR_ray_tracing" ],
           "version" : "None"
         },
         {
           "enumerant" : "ObjectRayOriginNV",
           "value" : 5323,
-          "capabilities" : [ "RayTracingNV" , "RayTracingKHR" ],
+          "capabilities" : [ "RayTracingNV" , "RayTracingProvisionalKHR" ],
           "extensions" : [ "SPV_NV_ray_tracing" , "SPV_KHR_ray_tracing" ],
           "version" : "None"
         },
         {
           "enumerant" : "ObjectRayOriginKHR",
           "value" : 5323,
-          "capabilities" : [ "RayTracingNV" , "RayTracingKHR" ],
+          "capabilities" : [ "RayTracingNV" , "RayTracingProvisionalKHR" ],
           "extensions" : [ "SPV_NV_ray_tracing" , "SPV_KHR_ray_tracing" ],
           "version" : "None"
         },
         {
           "enumerant" : "ObjectRayDirectionNV",
           "value" : 5324,
-          "capabilities" : [ "RayTracingNV" , "RayTracingKHR" ],
+          "capabilities" : [ "RayTracingNV" , "RayTracingProvisionalKHR" ],
           "extensions" : [ "SPV_NV_ray_tracing" , "SPV_KHR_ray_tracing" ],
           "version" : "None"
         },
         {
           "enumerant" : "ObjectRayDirectionKHR",
           "value" : 5324,
-          "capabilities" : [ "RayTracingNV" , "RayTracingKHR" ],
+          "capabilities" : [ "RayTracingNV" , "RayTracingProvisionalKHR" ],
           "extensions" : [ "SPV_NV_ray_tracing" , "SPV_KHR_ray_tracing" ],
           "version" : "None"
         },
         {
           "enumerant" : "RayTminNV",
           "value" : 5325,
-          "capabilities" : [ "RayTracingNV" , "RayTracingKHR" ],
+          "capabilities" : [ "RayTracingNV" , "RayTracingProvisionalKHR" ],
           "extensions" : [ "SPV_NV_ray_tracing" , "SPV_KHR_ray_tracing" ],
           "version" : "None"
         },
         {
           "enumerant" : "RayTminKHR",
           "value" : 5325,
-          "capabilities" : [ "RayTracingNV" , "RayTracingKHR" ],
+          "capabilities" : [ "RayTracingNV" , "RayTracingProvisionalKHR" ],
           "extensions" : [ "SPV_NV_ray_tracing" , "SPV_KHR_ray_tracing" ],
           "version" : "None"
         },
         {
           "enumerant" : "RayTmaxNV",
           "value" : 5326,
-          "capabilities" : [ "RayTracingNV" , "RayTracingKHR" ],
+          "capabilities" : [ "RayTracingNV" , "RayTracingProvisionalKHR" ],
           "extensions" : [ "SPV_NV_ray_tracing" , "SPV_KHR_ray_tracing" ],
           "version" : "None"
         },
         {
           "enumerant" : "RayTmaxKHR",
           "value" : 5326,
-          "capabilities" : [ "RayTracingNV" , "RayTracingKHR" ],
+          "capabilities" : [ "RayTracingNV" , "RayTracingProvisionalKHR" ],
           "extensions" : [ "SPV_NV_ray_tracing" , "SPV_KHR_ray_tracing" ],
           "version" : "None"
         },
         {
           "enumerant" : "InstanceCustomIndexNV",
           "value" : 5327,
-          "capabilities" : [ "RayTracingNV" , "RayTracingKHR" ],
+          "capabilities" : [ "RayTracingNV" , "RayTracingProvisionalKHR" ],
           "extensions" : [ "SPV_NV_ray_tracing" , "SPV_KHR_ray_tracing" ],
           "version" : "None"
         },
         {
           "enumerant" : "InstanceCustomIndexKHR",
           "value" : 5327,
-          "capabilities" : [ "RayTracingNV" , "RayTracingKHR" ],
+          "capabilities" : [ "RayTracingNV" , "RayTracingProvisionalKHR" ],
           "extensions" : [ "SPV_NV_ray_tracing" , "SPV_KHR_ray_tracing" ],
           "version" : "None"
         },
         {
           "enumerant" : "ObjectToWorldNV",
           "value" : 5330,
-          "capabilities" : [ "RayTracingNV" , "RayTracingKHR" ],
+          "capabilities" : [ "RayTracingNV" , "RayTracingProvisionalKHR" ],
           "extensions" : [ "SPV_NV_ray_tracing" , "SPV_KHR_ray_tracing" ],
           "version" : "None"
         },
         {
           "enumerant" : "ObjectToWorldKHR",
           "value" : 5330,
-          "capabilities" : [ "RayTracingNV" , "RayTracingKHR" ],
+          "capabilities" : [ "RayTracingNV" , "RayTracingProvisionalKHR" ],
           "extensions" : [ "SPV_NV_ray_tracing" , "SPV_KHR_ray_tracing" ],
           "version" : "None"
         },
         {
           "enumerant" : "WorldToObjectNV",
           "value" : 5331,
-          "capabilities" : [ "RayTracingNV" , "RayTracingKHR" ],
+          "capabilities" : [ "RayTracingNV" , "RayTracingProvisionalKHR" ],
           "extensions" : [ "SPV_NV_ray_tracing" , "SPV_KHR_ray_tracing" ],
           "version" : "None"
         },
         {
           "enumerant" : "WorldToObjectKHR",
           "value" : 5331,
-          "capabilities" : [ "RayTracingNV" , "RayTracingKHR" ],
+          "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" , "RayTracingKHR" ],
+          "capabilities" : [ "RayTracingNV" , "RayTracingProvisionalKHR" ],
           "extensions" : [ "SPV_NV_ray_tracing" , "SPV_KHR_ray_tracing" ],
           "version" : "None"
         },
         {
           "enumerant" : "HitKindKHR",
           "value" : 5333,
-          "capabilities" : [ "RayTracingNV" , "RayTracingKHR" ],
+          "capabilities" : [ "RayTracingNV" , "RayTracingProvisionalKHR" ],
           "extensions" : [ "SPV_NV_ray_tracing" , "SPV_KHR_ray_tracing" ],
           "version" : "None"
         },
         {
-          "enumerant" : "CurrentRayTimeNV",
-          "value" : 5334,
-          "capabilities" : [ "RayTracingMotionBlurNV" ],
-          "extensions" : [ "SPV_NV_ray_tracing_motion_blur" ],
-          "version" : "None"
-        },
-        {
           "enumerant" : "IncomingRayFlagsNV",
           "value" : 5351,
-          "capabilities" : [ "RayTracingNV" , "RayTracingKHR" ],
+          "capabilities" : [ "RayTracingNV" , "RayTracingProvisionalKHR" ],
           "extensions" : [ "SPV_NV_ray_tracing" , "SPV_KHR_ray_tracing" ],
           "version" : "None"
         },
         {
           "enumerant" : "IncomingRayFlagsKHR",
           "value" : 5351,
-          "capabilities" : [ "RayTracingNV" , "RayTracingKHR" ],
+          "capabilities" : [ "RayTracingNV" , "RayTracingProvisionalKHR" ],
           "extensions" : [ "SPV_NV_ray_tracing" , "SPV_KHR_ray_tracing" ],
           "version" : "None"
         },
         {
           "enumerant" : "RayGeometryIndexKHR",
           "value" : 5352,
-          "capabilities" : [ "RayTracingKHR" ],
+          "capabilities" : [ "RayTracingProvisionalKHR" ],
           "extensions" : [ "SPV_KHR_ray_tracing" ],
           "version" : "None"
         },
@@ -12179,8 +10132,7 @@
         {
           "enumerant" : "ShaderCallKHR",
           "value" : 6,
-          "capabilities" : [ "RayTracingKHR" ],
-          "version" : "None"
+          "capabilities" : [ "RayTracingProvisionalKHR" ]
         }
       ]
     },
@@ -12602,13 +10554,6 @@
           "version" : "1.5"
         },
         {
-          "enumerant" : "FragmentShadingRateKHR",
-          "value" : 4422,
-          "capabilities" : [ "Shader" ],
-          "extensions" : [ "SPV_KHR_fragment_shading_rate" ],
-          "version" : "None"
-        },
-        {
           "enumerant" : "SubgroupBallotKHR",
           "value" : 4423,
           "extensions" : [ "SPV_KHR_shader_ballot" ],
@@ -12622,27 +10567,6 @@
           "version" : "1.3"
         },
         {
-          "enumerant" : "WorkgroupMemoryExplicitLayoutKHR",
-          "value" : 4428,
-          "capabilities" : [ "Shader" ],
-          "extensions" : [ "SPV_KHR_workgroup_memory_explicit_layout" ],
-          "version" : "None"
-        },
-        {
-          "enumerant" : "WorkgroupMemoryExplicitLayout8BitAccessKHR",
-          "value" : 4429,
-          "capabilities" : [ "WorkgroupMemoryExplicitLayoutKHR" ],
-          "extensions" : [ "SPV_KHR_workgroup_memory_explicit_layout" ],
-          "version" : "None"
-        },
-        {
-          "enumerant" : "WorkgroupMemoryExplicitLayout16BitAccessKHR",
-          "value" : 4430,
-          "capabilities" : [ "Shader" ],
-          "extensions" : [ "SPV_KHR_workgroup_memory_explicit_layout" ],
-          "version" : "None"
-        },
-        {
           "enumerant" : "SubgroupVoteKHR",
           "value" : 4431,
           "extensions" : [ "SPV_KHR_subgroup_vote" ],
@@ -12788,27 +10712,13 @@
           "version" : "None"
         },
         {
-          "enumerant" : "RayQueryKHR",
-          "value" : 4472,
-          "capabilities" : [ "Shader" ],
-          "extensions" : [ "SPV_KHR_ray_query" ],
-          "version" : "None"
-        },
-        {
-          "enumerant" : "RayTraversalPrimitiveCullingKHR",
+          "enumerant" : "RayTraversalPrimitiveCullingProvisionalKHR",
           "value" : 4478,
-          "capabilities" : [ "RayQueryKHR","RayTracingKHR" ],
+          "capabilities" : [ "RayQueryProvisionalKHR","RayTracingProvisionalKHR" ],
           "extensions" : [ "SPV_KHR_ray_query","SPV_KHR_ray_tracing" ],
           "version" : "None"
         },
         {
-          "enumerant" : "RayTracingKHR",
-          "value" : 4479,
-          "capabilities" : [ "Shader" ],
-          "extensions" : [ "SPV_KHR_ray_tracing" ],
-          "version" : "None"
-        },
-        {
           "enumerant" : "Float16ImageAMD",
           "value" : 5008,
           "capabilities" : [ "Shader" ],
@@ -12844,13 +10754,6 @@
           "version" : "None"
         },
         {
-          "enumerant" : "Int64ImageEXT",
-          "value" : 5016,
-          "capabilities" : [ "Shader" ],
-          "extensions" : [ "SPV_EXT_shader_image_int64" ],
-          "version" : "None"
-        },
-        {
           "enumerant" : "ShaderClockKHR",
           "value" : 5055,
           "capabilities" : [ "Shader" ],
@@ -13122,13 +11025,6 @@
           "version" : "None"
         },
         {
-          "enumerant" : "RayTracingMotionBlurNV",
-          "value" : 5341,
-          "capabilities" : [ "Shader" ],
-          "extensions" : [ "SPV_NV_ray_tracing_motion_blur" ],
-          "version" : "None"
-        },
-        {
           "enumerant" : "VulkanMemoryModel",
           "value" : 5345,
           "version" : "1.5"
@@ -13244,18 +11140,6 @@
           "version" : "None"
         },
         {
-          "enumerant" : "RoundToInfinityINTEL",
-          "value" : 5582,
-          "extensions" : [ "SPV_INTEL_float_controls2" ],
-          "version" : "None"
-        },
-        {
-          "enumerant" : "FloatingPointModeINTEL",
-          "value" : 5583,
-          "extensions" : [ "SPV_INTEL_float_controls2" ],
-          "version" : "None"
-        },
-        {
           "enumerant" : "IntegerFunctions2INTEL",
           "value" : 5584,
           "capabilities" : [ "Shader" ],
@@ -13263,61 +11147,6 @@
           "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" : "AsmINTEL",
-          "value" : 5606,
-          "extensions" : [ "SPV_INTEL_inline_assembly" ],
-          "version" : "None"
-        },
-        {
-          "enumerant" : "AtomicFloat32MinMaxEXT",
-          "value" : 5612,
-          "extensions" : [ "SPV_EXT_shader_atomic_float_min_max" ],
-          "version" : "None"
-        },
-        {
-          "enumerant" : "AtomicFloat64MinMaxEXT",
-          "value" : 5613,
-          "extensions" : [ "SPV_EXT_shader_atomic_float_min_max" ],
-          "version" : "None"
-        },
-        {
-          "enumerant" : "AtomicFloat16MinMaxEXT",
-          "value" : 5616,
-          "extensions" : [ "SPV_EXT_shader_atomic_float_min_max" ],
-          "version" : "None"
-        },
-        {
-          "enumerant" : "VectorComputeINTEL",
-          "value" : 5617,
-          "capabilities" : [ "VectorAnyINTEL" ],
-          "extensions" : [ "SPV_INTEL_vector_compute" ],
-          "version" : "None"
-        },
-        {
-          "enumerant" : "VectorAnyINTEL",
-          "value" : 5619,
-          "extensions" : [ "SPV_INTEL_vector_compute" ],
-          "version" : "None"
-        },
-        {
-          "enumerant" : "ExpectAssumeKHR",
-          "value" : 5629,
-          "extensions" : [ "SPV_KHR_expect_assume" ],
-          "version" : "None"
-        },
-        {
           "enumerant" : "SubgroupAvcMotionEstimationINTEL",
           "value" : 5696,
           "extensions" : [ "SPV_INTEL_device_side_avc_motion_estimation" ],
@@ -13334,191 +11163,6 @@
           "value" : 5698,
           "extensions" : [ "SPV_INTEL_device_side_avc_motion_estimation" ],
           "version" : "None"
-        },
-        {
-          "enumerant" : "VariableLengthArrayINTEL",
-          "value" : 5817,
-          "extensions" : [ "SPV_INTEL_variable_length_array" ],
-          "version" : "None"
-        },
-        {
-          "enumerant" : "FunctionFloatControlINTEL",
-          "value" : 5821,
-          "extensions" : [ "SPV_INTEL_float_controls2" ],
-          "version" : "None"
-        },
-        {
-          "enumerant" : "FPGAMemoryAttributesINTEL",
-          "value" : 5824,
-          "extensions" : [ "SPV_INTEL_fpga_memory_attributes" ],
-          "version" : "None"
-        },
-        {
-          "enumerant" : "FPFastMathModeINTEL",
-          "value" : 5837,
-          "capabilities" : [ "Kernel" ],
-          "extensions" : [ "SPV_INTEL_fp_fast_math_mode" ],
-          "version" : "None"
-        },
-        {
-          "enumerant" : "ArbitraryPrecisionIntegersINTEL",
-          "value" : 5844,
-          "extensions" : [ "SPV_INTEL_arbitrary_precision_integers" ],
-          "version" : "None"
-        },
-        {
-          "enumerant" : "ArbitraryPrecisionFloatingPointINTEL",
-          "value" : 5845,
-          "extensions" : [ "SPV_INTEL_arbitrary_precision_floating_point" ],
-          "version" : "None"
-        },
-        {
-          "enumerant" : "UnstructuredLoopControlsINTEL",
-          "value" : 5886,
-          "extensions" : [ "SPV_INTEL_unstructured_loop_controls" ],
-          "version" : "None"
-        },
-        {
-          "enumerant" : "FPGALoopControlsINTEL",
-          "value" : 5888,
-          "extensions" : [ "SPV_INTEL_fpga_loop_controls" ],
-          "version" : "None"
-        },
-        {
-          "enumerant" : "KernelAttributesINTEL",
-          "value" : 5892,
-          "extensions" : [ "SPV_INTEL_kernel_attributes" ],
-          "version" : "None"
-        },
-        {
-          "enumerant" : "FPGAKernelAttributesINTEL",
-          "value" : 5897,
-          "extensions" : [ "SPV_INTEL_kernel_attributes" ],
-          "version" : "None"
-        },
-        {
-          "enumerant" : "FPGAMemoryAccessesINTEL",
-          "value" : 5898,
-          "extensions" : [ "SPV_INTEL_fpga_memory_accesses" ],
-          "version" : "None"
-        },
-        {
-          "enumerant" : "FPGAClusterAttributesINTEL",
-          "value" : 5904,
-          "extensions" : [ "SPV_INTEL_fpga_cluster_attributes" ],
-          "version" : "None"
-        },
-        {
-          "enumerant" : "LoopFuseINTEL",
-          "value" : 5906,
-          "extensions" : [ "SPV_INTEL_loop_fuse" ],
-          "version" : "None"
-        },
-        {
-          "enumerant" : "FPGABufferLocationINTEL",
-          "value" : 5920,
-          "extensions" : [ "SPV_INTEL_fpga_buffer_location" ],
-          "version" : "None"
-        },
-        {
-          "enumerant" : "ArbitraryPrecisionFixedPointINTEL",
-          "value" : 5922,
-          "extensions" : [ "SPV_INTEL_arbitrary_precision_fixed_point" ],
-          "version" : "None"
-        },
-        {
-          "enumerant" : "USMStorageClassesINTEL",
-          "value" : 5935,
-          "extensions" : [ "SPV_INTEL_usm_storage_classes" ],
-          "version" : "None"
-        },
-        {
-          "enumerant" : "IOPipesINTEL",
-          "value" : 5943,
-          "extensions" : [ "SPV_INTEL_io_pipes" ],
-          "version" : "None"
-        },
-        {
-          "enumerant" : "BlockingPipesINTEL",
-          "value" : 5945,
-          "extensions" : [ "SPV_INTEL_blocking_pipes" ],
-          "version" : "None"
-        },
-        {
-          "enumerant" : "FPGARegINTEL",
-          "value" : 5948,
-          "extensions" : [ "SPV_INTEL_fpga_reg" ],
-          "version" : "None"
-        },
-        {
-          "enumerant" : "DotProductInputAllKHR",
-          "value" : 6016,
-          "extensions" : [ "SPV_KHR_integer_dot_product" ],
-          "version" : "None"
-        },
-        {
-          "enumerant" : "DotProductInput4x8BitKHR",
-          "value" : 6017,
-          "capabilities" : [ "Int8" ],
-          "extensions" : [ "SPV_KHR_integer_dot_product" ],
-          "version" : "None"
-        },
-        {
-          "enumerant" : "DotProductInput4x8BitPackedKHR",
-          "value" : 6018,
-          "extensions" : [ "SPV_KHR_integer_dot_product" ],
-          "version" : "None"
-        },
-        {
-          "enumerant" : "DotProductKHR",
-          "value" : 6019,
-          "extensions" : [ "SPV_KHR_integer_dot_product" ],
-          "version" : "None"
-        },
-        {
-          "enumerant" : "BitInstructions",
-          "value" : 6025,
-          "extensions" : [ "SPV_KHR_bit_instructions" ],
-          "version" : "None"
-        },
-        {
-          "enumerant" : "AtomicFloat32AddEXT",
-          "value" : 6033,
-          "capabilities" : [ "Shader" ],
-          "extensions" : [ "SPV_EXT_shader_atomic_float_add" ],
-          "version" : "None"
-        },
-        {
-          "enumerant" : "AtomicFloat64AddEXT",
-          "value" : 6034,
-          "capabilities" : [ "Shader" ],
-          "extensions" : [ "SPV_EXT_shader_atomic_float_add" ],
-          "version" : "None"
-        },
-        {
-          "enumerant" : "LongConstantCompositeINTEL",
-          "value" : 6089,
-          "extensions" : [ "SPV_INTEL_long_constant_composite" ],
-          "version" : "None"
-        },
-        {
-          "enumerant" : "OptNoneINTEL",
-          "value" : 6094,
-          "extensions" : [ "SPV_INTEL_optnone" ],
-          "version" : "None"
-        },
-        {
-          "enumerant" : "AtomicFloat16AddEXT",
-          "value" : 6095,
-          "capabilities" : [ "Shader" ],
-          "extensions" : [ "SPV_EXT_shader_atomic_float16_add" ],
-          "version" : "None"
-        },
-        {
-          "enumerant" : "DebugInfoModuleINTEL",
-          "value" : 6114,
-          "extensions" : [ "SPV_INTEL_debug_module" ],
-          "version" : "None"
         }
       ]
     },
@@ -13529,14 +11173,12 @@
         {
           "enumerant" : "RayQueryCandidateIntersectionKHR",
           "value" : 0,
-          "capabilities" : [ "RayQueryKHR" ],
-          "version" : "None"
+          "capabilities" : [ "RayQueryProvisionalKHR" ]
         },
         {
           "enumerant" : "RayQueryCommittedIntersectionKHR",
           "value" : 1,
-          "capabilities" : [ "RayQueryKHR" ],
-          "version" : "None"
+          "capabilities" : [ "RayQueryProvisionalKHR" ]
         }
       ]
     },
@@ -13547,20 +11189,17 @@
         {
           "enumerant" : "RayQueryCommittedIntersectionNoneKHR",
           "value" : 0,
-          "capabilities" : [ "RayQueryKHR" ],
-          "version" : "None"
+          "capabilities" : [ "RayQueryProvisionalKHR" ]
         },
         {
           "enumerant" : "RayQueryCommittedIntersectionTriangleKHR",
           "value" : 1,
-          "capabilities" : [ "RayQueryKHR" ],
-          "version" : "None"
+          "capabilities" : [ "RayQueryProvisionalKHR" ]
         },
         {
           "enumerant" : "RayQueryCommittedIntersectionGeneratedKHR",
           "value" : 2,
-          "capabilities" : [ "RayQueryKHR" ],
-          "version" : "None"
+          "capabilities" : [ "RayQueryProvisionalKHR" ]
         }
       ]
     },
@@ -13571,26 +11210,12 @@
         {
           "enumerant" : "RayQueryCandidateIntersectionTriangleKHR",
           "value" : 0,
-          "capabilities" : [ "RayQueryKHR" ],
-          "version" : "None"
+          "capabilities" : [ "RayQueryProvisionalKHR" ]
         },
         {
           "enumerant" : "RayQueryCandidateIntersectionAABBKHR",
           "value" : 1,
-          "capabilities" : [ "RayQueryKHR" ],
-          "version" : "None"
-        }
-      ]
-    },
-    {
-      "category" : "ValueEnum",
-      "kind" : "PackedVectorFormat",
-      "enumerants" : [
-        {
-          "enumerant" : "PackedVectorFormat4x8BitKHR",
-          "value" : 0,
-          "extensions" : [ "SPV_KHR_integer_dot_product" ],
-          "version" : "None"
+          "capabilities" : [ "RayQueryProvisionalKHR" ]
         }
       ]
     },
diff --git a/include/spirv/unified1/spirv.cs b/include/spirv/unified1/spirv.cs
index b2ca3f0..c5ddff9 100644
--- a/include/spirv/unified1/spirv.cs
+++ b/include/spirv/unified1/spirv.cs
@@ -49,7 +49,7 @@
     {
         public const uint MagicNumber = 0x07230203;
         public const uint Version = 0x00010500;
-        public const uint Revision = 4;
+        public const uint Revision = 1;
         public const uint OpCodeMask = 0xffff;
         public const uint WordCountShift = 16;
 
@@ -61,7 +61,6 @@
             OpenCL_C = 3,
             OpenCL_CPP = 4,
             HLSL = 5,
-            CPP_for_OpenCL = 6,
         }
 
         public enum ExecutionModel
@@ -147,7 +146,6 @@
             SubgroupsPerWorkgroupId = 37,
             LocalSizeId = 38,
             LocalSizeHintId = 39,
-            SubgroupUniformControlFlowKHR = 4421,
             PostDepthCoverage = 4446,
             DenormPreserve = 4459,
             DenormFlushToZero = 4460,
@@ -166,16 +164,6 @@
             SampleInterlockUnorderedEXT = 5369,
             ShadingRateInterlockOrderedEXT = 5370,
             ShadingRateInterlockUnorderedEXT = 5371,
-            SharedLocalMemorySizeINTEL = 5618,
-            RoundingModeRTPINTEL = 5620,
-            RoundingModeRTNINTEL = 5621,
-            FloatingPointModeALTINTEL = 5622,
-            FloatingPointModeIEEEINTEL = 5623,
-            MaxWorkgroupSizeINTEL = 5893,
-            MaxWorkDimINTEL = 5894,
-            NoGlobalOffsetINTEL = 5895,
-            NumSIMDWorkitemsINTEL = 5896,
-            SchedulerTargetFmaxMhzINTEL = 5903,
         }
 
         public enum StorageClass
@@ -207,9 +195,6 @@
             ShaderRecordBufferNV = 5343,
             PhysicalStorageBuffer = 5349,
             PhysicalStorageBufferEXT = 5349,
-            CodeSectionINTEL = 5605,
-            DeviceOnlyINTEL = 5936,
-            HostOnlyINTEL = 5937,
         }
 
         public enum Dim
@@ -280,8 +265,6 @@
             Rg8ui = 37,
             R16ui = 38,
             R8ui = 39,
-            R64ui = 40,
-            R64i = 41,
         }
 
         public enum ImageChannelOrder
@@ -381,8 +364,6 @@
             NSZ = 2,
             AllowRecip = 3,
             Fast = 4,
-            AllowContractFastINTEL = 16,
-            AllowReassocINTEL = 17,
         }
 
         public enum FPFastMathModeMask
@@ -393,8 +374,6 @@
             NSZ = 0x00000004,
             AllowRecip = 0x00000008,
             Fast = 0x00000010,
-            AllowContractFastINTEL = 0x00010000,
-            AllowReassocINTEL = 0x00020000,
         }
 
         public enum FPRoundingMode
@@ -409,7 +388,6 @@
         {
             Export = 0,
             Import = 1,
-            LinkOnceODR = 2,
         }
 
         public enum AccessQualifier
@@ -497,45 +475,11 @@
             RestrictPointerEXT = 5355,
             AliasedPointer = 5356,
             AliasedPointerEXT = 5356,
-            SIMTCallINTEL = 5599,
-            ReferencedIndirectlyINTEL = 5602,
-            ClobberINTEL = 5607,
-            SideEffectsINTEL = 5608,
-            VectorComputeVariableINTEL = 5624,
-            FuncParamIOKindINTEL = 5625,
-            VectorComputeFunctionINTEL = 5626,
-            StackCallINTEL = 5627,
-            GlobalVariableOffsetINTEL = 5628,
             CounterBuffer = 5634,
             HlslCounterBufferGOOGLE = 5634,
             HlslSemanticGOOGLE = 5635,
             UserSemantic = 5635,
             UserTypeGOOGLE = 5636,
-            FunctionRoundingModeINTEL = 5822,
-            FunctionDenormModeINTEL = 5823,
-            RegisterINTEL = 5825,
-            MemoryINTEL = 5826,
-            NumbanksINTEL = 5827,
-            BankwidthINTEL = 5828,
-            MaxPrivateCopiesINTEL = 5829,
-            SinglepumpINTEL = 5830,
-            DoublepumpINTEL = 5831,
-            MaxReplicatesINTEL = 5832,
-            SimpleDualPortINTEL = 5833,
-            MergeINTEL = 5834,
-            BankBitsINTEL = 5835,
-            ForcePow2DepthINTEL = 5836,
-            BurstCoalesceINTEL = 5899,
-            CacheSizeINTEL = 5900,
-            DontStaticallyCoalesceINTEL = 5901,
-            PrefetchINTEL = 5902,
-            StallEnableINTEL = 5905,
-            FuseLoopsInFunctionINTEL = 5907,
-            BufferLocationINTEL = 5921,
-            IOPipeStorageINTEL = 5944,
-            FunctionFloatingPointModeINTEL = 6080,
-            SingleElementVectorINTEL = 6085,
-            VectorComputeCallableFunctionINTEL = 6087,
         }
 
         public enum BuiltIn
@@ -594,10 +538,8 @@
             BaseVertex = 4424,
             BaseInstance = 4425,
             DrawIndex = 4426,
-            PrimitiveShadingRateKHR = 4432,
             DeviceIndex = 4438,
             ViewIndex = 4440,
-            ShadingRateKHR = 4444,
             BaryCoordNoPerspAMD = 4992,
             BaryCoordNoPerspCentroidAMD = 4993,
             BaryCoordNoPerspSampleAMD = 4994,
@@ -648,10 +590,10 @@
             ObjectToWorldNV = 5330,
             WorldToObjectKHR = 5331,
             WorldToObjectNV = 5331,
+            HitTKHR = 5332,
             HitTNV = 5332,
             HitKindKHR = 5333,
             HitKindNV = 5333,
-            CurrentRayTimeNV = 5334,
             IncomingRayFlagsKHR = 5351,
             IncomingRayFlagsNV = 5351,
             RayGeometryIndexKHR = 5352,
@@ -685,14 +627,6 @@
             IterationMultiple = 6,
             PeelCount = 7,
             PartialCount = 8,
-            InitiationIntervalINTEL = 16,
-            MaxConcurrencyINTEL = 17,
-            DependencyArrayINTEL = 18,
-            PipelineEnableINTEL = 19,
-            LoopCoalesceINTEL = 20,
-            MaxInterleavingINTEL = 21,
-            SpeculatedIterationsINTEL = 22,
-            NoFusionINTEL = 23,
         }
 
         public enum LoopControlMask
@@ -707,14 +641,6 @@
             IterationMultiple = 0x00000040,
             PeelCount = 0x00000080,
             PartialCount = 0x00000100,
-            InitiationIntervalINTEL = 0x00010000,
-            MaxConcurrencyINTEL = 0x00020000,
-            DependencyArrayINTEL = 0x00040000,
-            PipelineEnableINTEL = 0x00080000,
-            LoopCoalesceINTEL = 0x00100000,
-            MaxInterleavingINTEL = 0x00200000,
-            SpeculatedIterationsINTEL = 0x00400000,
-            NoFusionINTEL = 0x00800000,
         }
 
         public enum FunctionControlShift
@@ -723,7 +649,6 @@
             DontInline = 1,
             Pure = 2,
             Const = 3,
-            OptNoneINTEL = 16,
         }
 
         public enum FunctionControlMask
@@ -733,7 +658,6 @@
             DontInline = 0x00000002,
             Pure = 0x00000004,
             Const = 0x00000008,
-            OptNoneINTEL = 0x00010000,
         }
 
         public enum MemorySemanticsShift
@@ -918,12 +842,8 @@
             GroupNonUniformQuad = 68,
             ShaderLayer = 69,
             ShaderViewportIndex = 70,
-            FragmentShadingRateKHR = 4422,
             SubgroupBallotKHR = 4423,
             DrawParameters = 4427,
-            WorkgroupMemoryExplicitLayoutKHR = 4428,
-            WorkgroupMemoryExplicitLayout8BitAccessKHR = 4429,
-            WorkgroupMemoryExplicitLayout16BitAccessKHR = 4430,
             SubgroupVoteKHR = 4431,
             StorageBuffer16BitAccess = 4433,
             StorageUniformBufferBlock16 = 4433,
@@ -946,15 +866,12 @@
             RoundingModeRTE = 4467,
             RoundingModeRTZ = 4468,
             RayQueryProvisionalKHR = 4471,
-            RayQueryKHR = 4472,
-            RayTraversalPrimitiveCullingKHR = 4478,
-            RayTracingKHR = 4479,
+            RayTraversalPrimitiveCullingProvisionalKHR = 4478,
             Float16ImageAMD = 5008,
             ImageGatherBiasLodAMD = 5009,
             FragmentMaskAMD = 5010,
             StencilExportEXT = 5013,
             ImageReadWriteLodAMD = 5015,
-            Int64ImageEXT = 5016,
             ShaderClockKHR = 5055,
             SampleMaskOverrideCoverageNV = 5249,
             GeometryShaderPassthroughNV = 5251,
@@ -996,7 +913,6 @@
             StorageTexelBufferArrayNonUniformIndexing = 5312,
             StorageTexelBufferArrayNonUniformIndexingEXT = 5312,
             RayTracingNV = 5340,
-            RayTracingMotionBlurNV = 5341,
             VulkanMemoryModel = 5345,
             VulkanMemoryModelKHR = 5345,
             VulkanMemoryModelDeviceScope = 5346,
@@ -1015,51 +931,10 @@
             SubgroupBufferBlockIOINTEL = 5569,
             SubgroupImageBlockIOINTEL = 5570,
             SubgroupImageMediaBlockIOINTEL = 5579,
-            RoundToInfinityINTEL = 5582,
-            FloatingPointModeINTEL = 5583,
             IntegerFunctions2INTEL = 5584,
-            FunctionPointersINTEL = 5603,
-            IndirectReferencesINTEL = 5604,
-            AsmINTEL = 5606,
-            AtomicFloat32MinMaxEXT = 5612,
-            AtomicFloat64MinMaxEXT = 5613,
-            AtomicFloat16MinMaxEXT = 5616,
-            VectorComputeINTEL = 5617,
-            VectorAnyINTEL = 5619,
-            ExpectAssumeKHR = 5629,
             SubgroupAvcMotionEstimationINTEL = 5696,
             SubgroupAvcMotionEstimationIntraINTEL = 5697,
             SubgroupAvcMotionEstimationChromaINTEL = 5698,
-            VariableLengthArrayINTEL = 5817,
-            FunctionFloatControlINTEL = 5821,
-            FPGAMemoryAttributesINTEL = 5824,
-            FPFastMathModeINTEL = 5837,
-            ArbitraryPrecisionIntegersINTEL = 5844,
-            ArbitraryPrecisionFloatingPointINTEL = 5845,
-            UnstructuredLoopControlsINTEL = 5886,
-            FPGALoopControlsINTEL = 5888,
-            KernelAttributesINTEL = 5892,
-            FPGAKernelAttributesINTEL = 5897,
-            FPGAMemoryAccessesINTEL = 5898,
-            FPGAClusterAttributesINTEL = 5904,
-            LoopFuseINTEL = 5906,
-            FPGABufferLocationINTEL = 5920,
-            ArbitraryPrecisionFixedPointINTEL = 5922,
-            USMStorageClassesINTEL = 5935,
-            IOPipesINTEL = 5943,
-            BlockingPipesINTEL = 5945,
-            FPGARegINTEL = 5948,
-            DotProductInputAllKHR = 6016,
-            DotProductInput4x8BitKHR = 6017,
-            DotProductInput4x8BitPackedKHR = 6018,
-            DotProductKHR = 6019,
-            BitInstructions = 6025,
-            AtomicFloat32AddEXT = 6033,
-            AtomicFloat64AddEXT = 6034,
-            LongConstantCompositeINTEL = 6089,
-            OptNoneINTEL = 6094,
-            AtomicFloat16AddEXT = 6095,
-            DebugInfoModuleINTEL = 6114,
         }
 
         public enum RayFlagsShift
@@ -1110,60 +985,6 @@
             RayQueryCandidateIntersectionAABBKHR = 1,
         }
 
-        public enum FragmentShadingRateShift
-        {
-            Vertical2Pixels = 0,
-            Vertical4Pixels = 1,
-            Horizontal2Pixels = 2,
-            Horizontal4Pixels = 3,
-        }
-
-        public enum FragmentShadingRateMask
-        {
-            MaskNone = 0,
-            Vertical2Pixels = 0x00000001,
-            Vertical4Pixels = 0x00000002,
-            Horizontal2Pixels = 0x00000004,
-            Horizontal4Pixels = 0x00000008,
-        }
-
-        public enum FPDenormMode
-        {
-            Preserve = 0,
-            FlushToZero = 1,
-        }
-
-        public enum FPOperationMode
-        {
-            IEEE = 0,
-            ALT = 1,
-        }
-
-        public enum QuantizationModes
-        {
-            TRN = 0,
-            TRN_ZERO = 1,
-            RND = 2,
-            RND_ZERO = 3,
-            RND_INF = 4,
-            RND_MIN_INF = 5,
-            RND_CONV = 6,
-            RND_CONV_ODD = 7,
-        }
-
-        public enum OverflowModes
-        {
-            WRAP = 0,
-            SAT = 1,
-            SAT_ZERO = 2,
-            SAT_SYM = 3,
-        }
-
-        public enum PackedVectorFormat
-        {
-            PackedVectorFormat4x8BitKHR = 0,
-        }
-
         public enum Op
         {
             OpNop = 0,
@@ -1510,25 +1331,13 @@
             OpPtrEqual = 401,
             OpPtrNotEqual = 402,
             OpPtrDiff = 403,
-            OpTerminateInvocation = 4416,
             OpSubgroupBallotKHR = 4421,
             OpSubgroupFirstInvocationKHR = 4422,
             OpSubgroupAllKHR = 4428,
             OpSubgroupAnyKHR = 4429,
             OpSubgroupAllEqualKHR = 4430,
             OpSubgroupReadInvocationKHR = 4432,
-            OpTraceRayKHR = 4445,
-            OpExecuteCallableKHR = 4446,
-            OpConvertUToAccelerationStructureKHR = 4447,
-            OpIgnoreIntersectionKHR = 4448,
-            OpTerminateRayKHR = 4449,
-            OpSDotKHR = 4450,
-            OpUDotKHR = 4451,
-            OpSUDotKHR = 4452,
-            OpSDotAccSatKHR = 4453,
-            OpUDotAccSatKHR = 4454,
-            OpSUDotAccSatKHR = 4455,
-            OpTypeRayQueryKHR = 4472,
+            OpTypeRayQueryProvisionalKHR = 4472,
             OpRayQueryInitializeKHR = 4473,
             OpRayQueryTerminateKHR = 4474,
             OpRayQueryGenerateIntersectionKHR = 4475,
@@ -1551,13 +1360,15 @@
             OpWritePackedPrimitiveIndices4x8NV = 5299,
             OpReportIntersectionKHR = 5334,
             OpReportIntersectionNV = 5334,
+            OpIgnoreIntersectionKHR = 5335,
             OpIgnoreIntersectionNV = 5335,
+            OpTerminateRayKHR = 5336,
             OpTerminateRayNV = 5336,
             OpTraceNV = 5337,
-            OpTraceMotionNV = 5338,
-            OpTraceRayMotionNV = 5339,
+            OpTraceRayKHR = 5337,
             OpTypeAccelerationStructureKHR = 5341,
             OpTypeAccelerationStructureNV = 5341,
+            OpExecuteCallableKHR = 5344,
             OpExecuteCallableNV = 5344,
             OpTypeCooperativeMatrixNV = 5358,
             OpCooperativeMatrixLoadNV = 5359,
@@ -1592,15 +1403,6 @@
             OpUSubSatINTEL = 5596,
             OpIMul32x16INTEL = 5597,
             OpUMul32x16INTEL = 5598,
-            OpConstFunctionPointerINTEL = 5600,
-            OpFunctionPointerCallINTEL = 5601,
-            OpAsmTargetINTEL = 5609,
-            OpAsmINTEL = 5610,
-            OpAsmCallINTEL = 5611,
-            OpAtomicFMinEXT = 5614,
-            OpAtomicFMaxEXT = 5615,
-            OpAssumeTrueKHR = 5630,
-            OpExpectKHR = 5631,
             OpDecorateString = 5632,
             OpDecorateStringGOOGLE = 5632,
             OpMemberDecorateString = 5633,
@@ -1723,67 +1525,6 @@
             OpSubgroupAvcSicGetPackedSkcLumaCountThresholdINTEL = 5814,
             OpSubgroupAvcSicGetPackedSkcLumaSumThresholdINTEL = 5815,
             OpSubgroupAvcSicGetInterRawSadsINTEL = 5816,
-            OpVariableLengthArrayINTEL = 5818,
-            OpSaveMemoryINTEL = 5819,
-            OpRestoreMemoryINTEL = 5820,
-            OpArbitraryFloatSinCosPiINTEL = 5840,
-            OpArbitraryFloatCastINTEL = 5841,
-            OpArbitraryFloatCastFromIntINTEL = 5842,
-            OpArbitraryFloatCastToIntINTEL = 5843,
-            OpArbitraryFloatAddINTEL = 5846,
-            OpArbitraryFloatSubINTEL = 5847,
-            OpArbitraryFloatMulINTEL = 5848,
-            OpArbitraryFloatDivINTEL = 5849,
-            OpArbitraryFloatGTINTEL = 5850,
-            OpArbitraryFloatGEINTEL = 5851,
-            OpArbitraryFloatLTINTEL = 5852,
-            OpArbitraryFloatLEINTEL = 5853,
-            OpArbitraryFloatEQINTEL = 5854,
-            OpArbitraryFloatRecipINTEL = 5855,
-            OpArbitraryFloatRSqrtINTEL = 5856,
-            OpArbitraryFloatCbrtINTEL = 5857,
-            OpArbitraryFloatHypotINTEL = 5858,
-            OpArbitraryFloatSqrtINTEL = 5859,
-            OpArbitraryFloatLogINTEL = 5860,
-            OpArbitraryFloatLog2INTEL = 5861,
-            OpArbitraryFloatLog10INTEL = 5862,
-            OpArbitraryFloatLog1pINTEL = 5863,
-            OpArbitraryFloatExpINTEL = 5864,
-            OpArbitraryFloatExp2INTEL = 5865,
-            OpArbitraryFloatExp10INTEL = 5866,
-            OpArbitraryFloatExpm1INTEL = 5867,
-            OpArbitraryFloatSinINTEL = 5868,
-            OpArbitraryFloatCosINTEL = 5869,
-            OpArbitraryFloatSinCosINTEL = 5870,
-            OpArbitraryFloatSinPiINTEL = 5871,
-            OpArbitraryFloatCosPiINTEL = 5872,
-            OpArbitraryFloatASinINTEL = 5873,
-            OpArbitraryFloatASinPiINTEL = 5874,
-            OpArbitraryFloatACosINTEL = 5875,
-            OpArbitraryFloatACosPiINTEL = 5876,
-            OpArbitraryFloatATanINTEL = 5877,
-            OpArbitraryFloatATanPiINTEL = 5878,
-            OpArbitraryFloatATan2INTEL = 5879,
-            OpArbitraryFloatPowINTEL = 5880,
-            OpArbitraryFloatPowRINTEL = 5881,
-            OpArbitraryFloatPowNINTEL = 5882,
-            OpLoopControlINTEL = 5887,
-            OpFixedSqrtINTEL = 5923,
-            OpFixedRecipINTEL = 5924,
-            OpFixedRsqrtINTEL = 5925,
-            OpFixedSinINTEL = 5926,
-            OpFixedCosINTEL = 5927,
-            OpFixedSinCosINTEL = 5928,
-            OpFixedSinPiINTEL = 5929,
-            OpFixedCosPiINTEL = 5930,
-            OpFixedSinCosPiINTEL = 5931,
-            OpFixedLogINTEL = 5932,
-            OpFixedExpINTEL = 5933,
-            OpPtrCastToCrossWorkgroupINTEL = 5934,
-            OpCrossWorkgroupCastToPtrINTEL = 5938,
-            OpReadPipeBlockingINTEL = 5946,
-            OpWritePipeBlockingINTEL = 5947,
-            OpFPGARegINTEL = 5949,
             OpRayQueryGetRayTMinKHR = 6016,
             OpRayQueryGetRayFlagsKHR = 6017,
             OpRayQueryGetIntersectionTKHR = 6018,
@@ -1801,11 +1542,6 @@
             OpRayQueryGetWorldRayOriginKHR = 6030,
             OpRayQueryGetIntersectionObjectToWorldKHR = 6031,
             OpRayQueryGetIntersectionWorldToObjectKHR = 6032,
-            OpAtomicFAddEXT = 6035,
-            OpTypeBufferSurfaceINTEL = 6086,
-            OpTypeStructContinuedINTEL = 6090,
-            OpConstantCompositeContinuedINTEL = 6091,
-            OpSpecConstantCompositeContinuedINTEL = 6092,
         }
     }
 }
diff --git a/include/spirv/unified1/spirv.h b/include/spirv/unified1/spirv.h
index 1443963..92b34c3 100644
--- a/include/spirv/unified1/spirv.h
+++ b/include/spirv/unified1/spirv.h
@@ -54,11 +54,11 @@
 typedef unsigned int SpvId;
 
 #define SPV_VERSION 0x10500
-#define SPV_REVISION 4
+#define SPV_REVISION 1
 
 static const unsigned int SpvMagicNumber = 0x07230203;
 static const unsigned int SpvVersion = 0x00010500;
-static const unsigned int SpvRevision = 4;
+static const unsigned int SpvRevision = 1;
 static const unsigned int SpvOpCodeMask = 0xffff;
 static const unsigned int SpvWordCountShift = 16;
 
@@ -69,7 +69,6 @@
     SpvSourceLanguageOpenCL_C = 3,
     SpvSourceLanguageOpenCL_CPP = 4,
     SpvSourceLanguageHLSL = 5,
-    SpvSourceLanguageCPP_for_OpenCL = 6,
     SpvSourceLanguageMax = 0x7fffffff,
 } SpvSourceLanguage;
 
@@ -155,7 +154,6 @@
     SpvExecutionModeSubgroupsPerWorkgroupId = 37,
     SpvExecutionModeLocalSizeId = 38,
     SpvExecutionModeLocalSizeHintId = 39,
-    SpvExecutionModeSubgroupUniformControlFlowKHR = 4421,
     SpvExecutionModePostDepthCoverage = 4446,
     SpvExecutionModeDenormPreserve = 4459,
     SpvExecutionModeDenormFlushToZero = 4460,
@@ -174,16 +172,6 @@
     SpvExecutionModeSampleInterlockUnorderedEXT = 5369,
     SpvExecutionModeShadingRateInterlockOrderedEXT = 5370,
     SpvExecutionModeShadingRateInterlockUnorderedEXT = 5371,
-    SpvExecutionModeSharedLocalMemorySizeINTEL = 5618,
-    SpvExecutionModeRoundingModeRTPINTEL = 5620,
-    SpvExecutionModeRoundingModeRTNINTEL = 5621,
-    SpvExecutionModeFloatingPointModeALTINTEL = 5622,
-    SpvExecutionModeFloatingPointModeIEEEINTEL = 5623,
-    SpvExecutionModeMaxWorkgroupSizeINTEL = 5893,
-    SpvExecutionModeMaxWorkDimINTEL = 5894,
-    SpvExecutionModeNoGlobalOffsetINTEL = 5895,
-    SpvExecutionModeNumSIMDWorkitemsINTEL = 5896,
-    SpvExecutionModeSchedulerTargetFmaxMhzINTEL = 5903,
     SpvExecutionModeMax = 0x7fffffff,
 } SpvExecutionMode;
 
@@ -215,9 +203,6 @@
     SpvStorageClassShaderRecordBufferNV = 5343,
     SpvStorageClassPhysicalStorageBuffer = 5349,
     SpvStorageClassPhysicalStorageBufferEXT = 5349,
-    SpvStorageClassCodeSectionINTEL = 5605,
-    SpvStorageClassDeviceOnlyINTEL = 5936,
-    SpvStorageClassHostOnlyINTEL = 5937,
     SpvStorageClassMax = 0x7fffffff,
 } SpvStorageClass;
 
@@ -288,8 +273,6 @@
     SpvImageFormatRg8ui = 37,
     SpvImageFormatR16ui = 38,
     SpvImageFormatR8ui = 39,
-    SpvImageFormatR64ui = 40,
-    SpvImageFormatR64i = 41,
     SpvImageFormatMax = 0x7fffffff,
 } SpvImageFormat;
 
@@ -388,8 +371,6 @@
     SpvFPFastMathModeNSZShift = 2,
     SpvFPFastMathModeAllowRecipShift = 3,
     SpvFPFastMathModeFastShift = 4,
-    SpvFPFastMathModeAllowContractFastINTELShift = 16,
-    SpvFPFastMathModeAllowReassocINTELShift = 17,
     SpvFPFastMathModeMax = 0x7fffffff,
 } SpvFPFastMathModeShift;
 
@@ -400,8 +381,6 @@
     SpvFPFastMathModeNSZMask = 0x00000004,
     SpvFPFastMathModeAllowRecipMask = 0x00000008,
     SpvFPFastMathModeFastMask = 0x00000010,
-    SpvFPFastMathModeAllowContractFastINTELMask = 0x00010000,
-    SpvFPFastMathModeAllowReassocINTELMask = 0x00020000,
 } SpvFPFastMathModeMask;
 
 typedef enum SpvFPRoundingMode_ {
@@ -415,7 +394,6 @@
 typedef enum SpvLinkageType_ {
     SpvLinkageTypeExport = 0,
     SpvLinkageTypeImport = 1,
-    SpvLinkageTypeLinkOnceODR = 2,
     SpvLinkageTypeMax = 0x7fffffff,
 } SpvLinkageType;
 
@@ -503,45 +481,11 @@
     SpvDecorationRestrictPointerEXT = 5355,
     SpvDecorationAliasedPointer = 5356,
     SpvDecorationAliasedPointerEXT = 5356,
-    SpvDecorationSIMTCallINTEL = 5599,
-    SpvDecorationReferencedIndirectlyINTEL = 5602,
-    SpvDecorationClobberINTEL = 5607,
-    SpvDecorationSideEffectsINTEL = 5608,
-    SpvDecorationVectorComputeVariableINTEL = 5624,
-    SpvDecorationFuncParamIOKindINTEL = 5625,
-    SpvDecorationVectorComputeFunctionINTEL = 5626,
-    SpvDecorationStackCallINTEL = 5627,
-    SpvDecorationGlobalVariableOffsetINTEL = 5628,
     SpvDecorationCounterBuffer = 5634,
     SpvDecorationHlslCounterBufferGOOGLE = 5634,
     SpvDecorationHlslSemanticGOOGLE = 5635,
     SpvDecorationUserSemantic = 5635,
     SpvDecorationUserTypeGOOGLE = 5636,
-    SpvDecorationFunctionRoundingModeINTEL = 5822,
-    SpvDecorationFunctionDenormModeINTEL = 5823,
-    SpvDecorationRegisterINTEL = 5825,
-    SpvDecorationMemoryINTEL = 5826,
-    SpvDecorationNumbanksINTEL = 5827,
-    SpvDecorationBankwidthINTEL = 5828,
-    SpvDecorationMaxPrivateCopiesINTEL = 5829,
-    SpvDecorationSinglepumpINTEL = 5830,
-    SpvDecorationDoublepumpINTEL = 5831,
-    SpvDecorationMaxReplicatesINTEL = 5832,
-    SpvDecorationSimpleDualPortINTEL = 5833,
-    SpvDecorationMergeINTEL = 5834,
-    SpvDecorationBankBitsINTEL = 5835,
-    SpvDecorationForcePow2DepthINTEL = 5836,
-    SpvDecorationBurstCoalesceINTEL = 5899,
-    SpvDecorationCacheSizeINTEL = 5900,
-    SpvDecorationDontStaticallyCoalesceINTEL = 5901,
-    SpvDecorationPrefetchINTEL = 5902,
-    SpvDecorationStallEnableINTEL = 5905,
-    SpvDecorationFuseLoopsInFunctionINTEL = 5907,
-    SpvDecorationBufferLocationINTEL = 5921,
-    SpvDecorationIOPipeStorageINTEL = 5944,
-    SpvDecorationFunctionFloatingPointModeINTEL = 6080,
-    SpvDecorationSingleElementVectorINTEL = 6085,
-    SpvDecorationVectorComputeCallableFunctionINTEL = 6087,
     SpvDecorationMax = 0x7fffffff,
 } SpvDecoration;
 
@@ -600,10 +544,8 @@
     SpvBuiltInBaseVertex = 4424,
     SpvBuiltInBaseInstance = 4425,
     SpvBuiltInDrawIndex = 4426,
-    SpvBuiltInPrimitiveShadingRateKHR = 4432,
     SpvBuiltInDeviceIndex = 4438,
     SpvBuiltInViewIndex = 4440,
-    SpvBuiltInShadingRateKHR = 4444,
     SpvBuiltInBaryCoordNoPerspAMD = 4992,
     SpvBuiltInBaryCoordNoPerspCentroidAMD = 4993,
     SpvBuiltInBaryCoordNoPerspSampleAMD = 4994,
@@ -654,10 +596,10 @@
     SpvBuiltInObjectToWorldNV = 5330,
     SpvBuiltInWorldToObjectKHR = 5331,
     SpvBuiltInWorldToObjectNV = 5331,
+    SpvBuiltInHitTKHR = 5332,
     SpvBuiltInHitTNV = 5332,
     SpvBuiltInHitKindKHR = 5333,
     SpvBuiltInHitKindNV = 5333,
-    SpvBuiltInCurrentRayTimeNV = 5334,
     SpvBuiltInIncomingRayFlagsKHR = 5351,
     SpvBuiltInIncomingRayFlagsNV = 5351,
     SpvBuiltInRayGeometryIndexKHR = 5352,
@@ -690,14 +632,6 @@
     SpvLoopControlIterationMultipleShift = 6,
     SpvLoopControlPeelCountShift = 7,
     SpvLoopControlPartialCountShift = 8,
-    SpvLoopControlInitiationIntervalINTELShift = 16,
-    SpvLoopControlMaxConcurrencyINTELShift = 17,
-    SpvLoopControlDependencyArrayINTELShift = 18,
-    SpvLoopControlPipelineEnableINTELShift = 19,
-    SpvLoopControlLoopCoalesceINTELShift = 20,
-    SpvLoopControlMaxInterleavingINTELShift = 21,
-    SpvLoopControlSpeculatedIterationsINTELShift = 22,
-    SpvLoopControlNoFusionINTELShift = 23,
     SpvLoopControlMax = 0x7fffffff,
 } SpvLoopControlShift;
 
@@ -712,14 +646,6 @@
     SpvLoopControlIterationMultipleMask = 0x00000040,
     SpvLoopControlPeelCountMask = 0x00000080,
     SpvLoopControlPartialCountMask = 0x00000100,
-    SpvLoopControlInitiationIntervalINTELMask = 0x00010000,
-    SpvLoopControlMaxConcurrencyINTELMask = 0x00020000,
-    SpvLoopControlDependencyArrayINTELMask = 0x00040000,
-    SpvLoopControlPipelineEnableINTELMask = 0x00080000,
-    SpvLoopControlLoopCoalesceINTELMask = 0x00100000,
-    SpvLoopControlMaxInterleavingINTELMask = 0x00200000,
-    SpvLoopControlSpeculatedIterationsINTELMask = 0x00400000,
-    SpvLoopControlNoFusionINTELMask = 0x00800000,
 } SpvLoopControlMask;
 
 typedef enum SpvFunctionControlShift_ {
@@ -727,7 +653,6 @@
     SpvFunctionControlDontInlineShift = 1,
     SpvFunctionControlPureShift = 2,
     SpvFunctionControlConstShift = 3,
-    SpvFunctionControlOptNoneINTELShift = 16,
     SpvFunctionControlMax = 0x7fffffff,
 } SpvFunctionControlShift;
 
@@ -737,7 +662,6 @@
     SpvFunctionControlDontInlineMask = 0x00000002,
     SpvFunctionControlPureMask = 0x00000004,
     SpvFunctionControlConstMask = 0x00000008,
-    SpvFunctionControlOptNoneINTELMask = 0x00010000,
 } SpvFunctionControlMask;
 
 typedef enum SpvMemorySemanticsShift_ {
@@ -918,12 +842,8 @@
     SpvCapabilityGroupNonUniformQuad = 68,
     SpvCapabilityShaderLayer = 69,
     SpvCapabilityShaderViewportIndex = 70,
-    SpvCapabilityFragmentShadingRateKHR = 4422,
     SpvCapabilitySubgroupBallotKHR = 4423,
     SpvCapabilityDrawParameters = 4427,
-    SpvCapabilityWorkgroupMemoryExplicitLayoutKHR = 4428,
-    SpvCapabilityWorkgroupMemoryExplicitLayout8BitAccessKHR = 4429,
-    SpvCapabilityWorkgroupMemoryExplicitLayout16BitAccessKHR = 4430,
     SpvCapabilitySubgroupVoteKHR = 4431,
     SpvCapabilityStorageBuffer16BitAccess = 4433,
     SpvCapabilityStorageUniformBufferBlock16 = 4433,
@@ -946,15 +866,12 @@
     SpvCapabilityRoundingModeRTE = 4467,
     SpvCapabilityRoundingModeRTZ = 4468,
     SpvCapabilityRayQueryProvisionalKHR = 4471,
-    SpvCapabilityRayQueryKHR = 4472,
-    SpvCapabilityRayTraversalPrimitiveCullingKHR = 4478,
-    SpvCapabilityRayTracingKHR = 4479,
+    SpvCapabilityRayTraversalPrimitiveCullingProvisionalKHR = 4478,
     SpvCapabilityFloat16ImageAMD = 5008,
     SpvCapabilityImageGatherBiasLodAMD = 5009,
     SpvCapabilityFragmentMaskAMD = 5010,
     SpvCapabilityStencilExportEXT = 5013,
     SpvCapabilityImageReadWriteLodAMD = 5015,
-    SpvCapabilityInt64ImageEXT = 5016,
     SpvCapabilityShaderClockKHR = 5055,
     SpvCapabilitySampleMaskOverrideCoverageNV = 5249,
     SpvCapabilityGeometryShaderPassthroughNV = 5251,
@@ -996,7 +913,6 @@
     SpvCapabilityStorageTexelBufferArrayNonUniformIndexing = 5312,
     SpvCapabilityStorageTexelBufferArrayNonUniformIndexingEXT = 5312,
     SpvCapabilityRayTracingNV = 5340,
-    SpvCapabilityRayTracingMotionBlurNV = 5341,
     SpvCapabilityVulkanMemoryModel = 5345,
     SpvCapabilityVulkanMemoryModelKHR = 5345,
     SpvCapabilityVulkanMemoryModelDeviceScope = 5346,
@@ -1015,51 +931,10 @@
     SpvCapabilitySubgroupBufferBlockIOINTEL = 5569,
     SpvCapabilitySubgroupImageBlockIOINTEL = 5570,
     SpvCapabilitySubgroupImageMediaBlockIOINTEL = 5579,
-    SpvCapabilityRoundToInfinityINTEL = 5582,
-    SpvCapabilityFloatingPointModeINTEL = 5583,
     SpvCapabilityIntegerFunctions2INTEL = 5584,
-    SpvCapabilityFunctionPointersINTEL = 5603,
-    SpvCapabilityIndirectReferencesINTEL = 5604,
-    SpvCapabilityAsmINTEL = 5606,
-    SpvCapabilityAtomicFloat32MinMaxEXT = 5612,
-    SpvCapabilityAtomicFloat64MinMaxEXT = 5613,
-    SpvCapabilityAtomicFloat16MinMaxEXT = 5616,
-    SpvCapabilityVectorComputeINTEL = 5617,
-    SpvCapabilityVectorAnyINTEL = 5619,
-    SpvCapabilityExpectAssumeKHR = 5629,
     SpvCapabilitySubgroupAvcMotionEstimationINTEL = 5696,
     SpvCapabilitySubgroupAvcMotionEstimationIntraINTEL = 5697,
     SpvCapabilitySubgroupAvcMotionEstimationChromaINTEL = 5698,
-    SpvCapabilityVariableLengthArrayINTEL = 5817,
-    SpvCapabilityFunctionFloatControlINTEL = 5821,
-    SpvCapabilityFPGAMemoryAttributesINTEL = 5824,
-    SpvCapabilityFPFastMathModeINTEL = 5837,
-    SpvCapabilityArbitraryPrecisionIntegersINTEL = 5844,
-    SpvCapabilityArbitraryPrecisionFloatingPointINTEL = 5845,
-    SpvCapabilityUnstructuredLoopControlsINTEL = 5886,
-    SpvCapabilityFPGALoopControlsINTEL = 5888,
-    SpvCapabilityKernelAttributesINTEL = 5892,
-    SpvCapabilityFPGAKernelAttributesINTEL = 5897,
-    SpvCapabilityFPGAMemoryAccessesINTEL = 5898,
-    SpvCapabilityFPGAClusterAttributesINTEL = 5904,
-    SpvCapabilityLoopFuseINTEL = 5906,
-    SpvCapabilityFPGABufferLocationINTEL = 5920,
-    SpvCapabilityArbitraryPrecisionFixedPointINTEL = 5922,
-    SpvCapabilityUSMStorageClassesINTEL = 5935,
-    SpvCapabilityIOPipesINTEL = 5943,
-    SpvCapabilityBlockingPipesINTEL = 5945,
-    SpvCapabilityFPGARegINTEL = 5948,
-    SpvCapabilityDotProductInputAllKHR = 6016,
-    SpvCapabilityDotProductInput4x8BitKHR = 6017,
-    SpvCapabilityDotProductInput4x8BitPackedKHR = 6018,
-    SpvCapabilityDotProductKHR = 6019,
-    SpvCapabilityBitInstructions = 6025,
-    SpvCapabilityAtomicFloat32AddEXT = 6033,
-    SpvCapabilityAtomicFloat64AddEXT = 6034,
-    SpvCapabilityLongConstantCompositeINTEL = 6089,
-    SpvCapabilityOptNoneINTEL = 6094,
-    SpvCapabilityAtomicFloat16AddEXT = 6095,
-    SpvCapabilityDebugInfoModuleINTEL = 6114,
     SpvCapabilityMax = 0x7fffffff,
 } SpvCapability;
 
@@ -1110,59 +985,6 @@
     SpvRayQueryCandidateIntersectionTypeMax = 0x7fffffff,
 } SpvRayQueryCandidateIntersectionType;
 
-typedef enum SpvFragmentShadingRateShift_ {
-    SpvFragmentShadingRateVertical2PixelsShift = 0,
-    SpvFragmentShadingRateVertical4PixelsShift = 1,
-    SpvFragmentShadingRateHorizontal2PixelsShift = 2,
-    SpvFragmentShadingRateHorizontal4PixelsShift = 3,
-    SpvFragmentShadingRateMax = 0x7fffffff,
-} SpvFragmentShadingRateShift;
-
-typedef enum SpvFragmentShadingRateMask_ {
-    SpvFragmentShadingRateMaskNone = 0,
-    SpvFragmentShadingRateVertical2PixelsMask = 0x00000001,
-    SpvFragmentShadingRateVertical4PixelsMask = 0x00000002,
-    SpvFragmentShadingRateHorizontal2PixelsMask = 0x00000004,
-    SpvFragmentShadingRateHorizontal4PixelsMask = 0x00000008,
-} SpvFragmentShadingRateMask;
-
-typedef enum SpvFPDenormMode_ {
-    SpvFPDenormModePreserve = 0,
-    SpvFPDenormModeFlushToZero = 1,
-    SpvFPDenormModeMax = 0x7fffffff,
-} SpvFPDenormMode;
-
-typedef enum SpvFPOperationMode_ {
-    SpvFPOperationModeIEEE = 0,
-    SpvFPOperationModeALT = 1,
-    SpvFPOperationModeMax = 0x7fffffff,
-} SpvFPOperationMode;
-
-typedef enum SpvQuantizationModes_ {
-    SpvQuantizationModesTRN = 0,
-    SpvQuantizationModesTRN_ZERO = 1,
-    SpvQuantizationModesRND = 2,
-    SpvQuantizationModesRND_ZERO = 3,
-    SpvQuantizationModesRND_INF = 4,
-    SpvQuantizationModesRND_MIN_INF = 5,
-    SpvQuantizationModesRND_CONV = 6,
-    SpvQuantizationModesRND_CONV_ODD = 7,
-    SpvQuantizationModesMax = 0x7fffffff,
-} SpvQuantizationModes;
-
-typedef enum SpvOverflowModes_ {
-    SpvOverflowModesWRAP = 0,
-    SpvOverflowModesSAT = 1,
-    SpvOverflowModesSAT_ZERO = 2,
-    SpvOverflowModesSAT_SYM = 3,
-    SpvOverflowModesMax = 0x7fffffff,
-} SpvOverflowModes;
-
-typedef enum SpvPackedVectorFormat_ {
-    SpvPackedVectorFormatPackedVectorFormat4x8BitKHR = 0,
-    SpvPackedVectorFormatMax = 0x7fffffff,
-} SpvPackedVectorFormat;
-
 typedef enum SpvOp_ {
     SpvOpNop = 0,
     SpvOpUndef = 1,
@@ -1508,25 +1330,13 @@
     SpvOpPtrEqual = 401,
     SpvOpPtrNotEqual = 402,
     SpvOpPtrDiff = 403,
-    SpvOpTerminateInvocation = 4416,
     SpvOpSubgroupBallotKHR = 4421,
     SpvOpSubgroupFirstInvocationKHR = 4422,
     SpvOpSubgroupAllKHR = 4428,
     SpvOpSubgroupAnyKHR = 4429,
     SpvOpSubgroupAllEqualKHR = 4430,
     SpvOpSubgroupReadInvocationKHR = 4432,
-    SpvOpTraceRayKHR = 4445,
-    SpvOpExecuteCallableKHR = 4446,
-    SpvOpConvertUToAccelerationStructureKHR = 4447,
-    SpvOpIgnoreIntersectionKHR = 4448,
-    SpvOpTerminateRayKHR = 4449,
-    SpvOpSDotKHR = 4450,
-    SpvOpUDotKHR = 4451,
-    SpvOpSUDotKHR = 4452,
-    SpvOpSDotAccSatKHR = 4453,
-    SpvOpUDotAccSatKHR = 4454,
-    SpvOpSUDotAccSatKHR = 4455,
-    SpvOpTypeRayQueryKHR = 4472,
+    SpvOpTypeRayQueryProvisionalKHR = 4472,
     SpvOpRayQueryInitializeKHR = 4473,
     SpvOpRayQueryTerminateKHR = 4474,
     SpvOpRayQueryGenerateIntersectionKHR = 4475,
@@ -1549,13 +1359,15 @@
     SpvOpWritePackedPrimitiveIndices4x8NV = 5299,
     SpvOpReportIntersectionKHR = 5334,
     SpvOpReportIntersectionNV = 5334,
+    SpvOpIgnoreIntersectionKHR = 5335,
     SpvOpIgnoreIntersectionNV = 5335,
+    SpvOpTerminateRayKHR = 5336,
     SpvOpTerminateRayNV = 5336,
     SpvOpTraceNV = 5337,
-    SpvOpTraceMotionNV = 5338,
-    SpvOpTraceRayMotionNV = 5339,
+    SpvOpTraceRayKHR = 5337,
     SpvOpTypeAccelerationStructureKHR = 5341,
     SpvOpTypeAccelerationStructureNV = 5341,
+    SpvOpExecuteCallableKHR = 5344,
     SpvOpExecuteCallableNV = 5344,
     SpvOpTypeCooperativeMatrixNV = 5358,
     SpvOpCooperativeMatrixLoadNV = 5359,
@@ -1590,15 +1402,6 @@
     SpvOpUSubSatINTEL = 5596,
     SpvOpIMul32x16INTEL = 5597,
     SpvOpUMul32x16INTEL = 5598,
-    SpvOpConstFunctionPointerINTEL = 5600,
-    SpvOpFunctionPointerCallINTEL = 5601,
-    SpvOpAsmTargetINTEL = 5609,
-    SpvOpAsmINTEL = 5610,
-    SpvOpAsmCallINTEL = 5611,
-    SpvOpAtomicFMinEXT = 5614,
-    SpvOpAtomicFMaxEXT = 5615,
-    SpvOpAssumeTrueKHR = 5630,
-    SpvOpExpectKHR = 5631,
     SpvOpDecorateString = 5632,
     SpvOpDecorateStringGOOGLE = 5632,
     SpvOpMemberDecorateString = 5633,
@@ -1721,67 +1524,6 @@
     SpvOpSubgroupAvcSicGetPackedSkcLumaCountThresholdINTEL = 5814,
     SpvOpSubgroupAvcSicGetPackedSkcLumaSumThresholdINTEL = 5815,
     SpvOpSubgroupAvcSicGetInterRawSadsINTEL = 5816,
-    SpvOpVariableLengthArrayINTEL = 5818,
-    SpvOpSaveMemoryINTEL = 5819,
-    SpvOpRestoreMemoryINTEL = 5820,
-    SpvOpArbitraryFloatSinCosPiINTEL = 5840,
-    SpvOpArbitraryFloatCastINTEL = 5841,
-    SpvOpArbitraryFloatCastFromIntINTEL = 5842,
-    SpvOpArbitraryFloatCastToIntINTEL = 5843,
-    SpvOpArbitraryFloatAddINTEL = 5846,
-    SpvOpArbitraryFloatSubINTEL = 5847,
-    SpvOpArbitraryFloatMulINTEL = 5848,
-    SpvOpArbitraryFloatDivINTEL = 5849,
-    SpvOpArbitraryFloatGTINTEL = 5850,
-    SpvOpArbitraryFloatGEINTEL = 5851,
-    SpvOpArbitraryFloatLTINTEL = 5852,
-    SpvOpArbitraryFloatLEINTEL = 5853,
-    SpvOpArbitraryFloatEQINTEL = 5854,
-    SpvOpArbitraryFloatRecipINTEL = 5855,
-    SpvOpArbitraryFloatRSqrtINTEL = 5856,
-    SpvOpArbitraryFloatCbrtINTEL = 5857,
-    SpvOpArbitraryFloatHypotINTEL = 5858,
-    SpvOpArbitraryFloatSqrtINTEL = 5859,
-    SpvOpArbitraryFloatLogINTEL = 5860,
-    SpvOpArbitraryFloatLog2INTEL = 5861,
-    SpvOpArbitraryFloatLog10INTEL = 5862,
-    SpvOpArbitraryFloatLog1pINTEL = 5863,
-    SpvOpArbitraryFloatExpINTEL = 5864,
-    SpvOpArbitraryFloatExp2INTEL = 5865,
-    SpvOpArbitraryFloatExp10INTEL = 5866,
-    SpvOpArbitraryFloatExpm1INTEL = 5867,
-    SpvOpArbitraryFloatSinINTEL = 5868,
-    SpvOpArbitraryFloatCosINTEL = 5869,
-    SpvOpArbitraryFloatSinCosINTEL = 5870,
-    SpvOpArbitraryFloatSinPiINTEL = 5871,
-    SpvOpArbitraryFloatCosPiINTEL = 5872,
-    SpvOpArbitraryFloatASinINTEL = 5873,
-    SpvOpArbitraryFloatASinPiINTEL = 5874,
-    SpvOpArbitraryFloatACosINTEL = 5875,
-    SpvOpArbitraryFloatACosPiINTEL = 5876,
-    SpvOpArbitraryFloatATanINTEL = 5877,
-    SpvOpArbitraryFloatATanPiINTEL = 5878,
-    SpvOpArbitraryFloatATan2INTEL = 5879,
-    SpvOpArbitraryFloatPowINTEL = 5880,
-    SpvOpArbitraryFloatPowRINTEL = 5881,
-    SpvOpArbitraryFloatPowNINTEL = 5882,
-    SpvOpLoopControlINTEL = 5887,
-    SpvOpFixedSqrtINTEL = 5923,
-    SpvOpFixedRecipINTEL = 5924,
-    SpvOpFixedRsqrtINTEL = 5925,
-    SpvOpFixedSinINTEL = 5926,
-    SpvOpFixedCosINTEL = 5927,
-    SpvOpFixedSinCosINTEL = 5928,
-    SpvOpFixedSinPiINTEL = 5929,
-    SpvOpFixedCosPiINTEL = 5930,
-    SpvOpFixedSinCosPiINTEL = 5931,
-    SpvOpFixedLogINTEL = 5932,
-    SpvOpFixedExpINTEL = 5933,
-    SpvOpPtrCastToCrossWorkgroupINTEL = 5934,
-    SpvOpCrossWorkgroupCastToPtrINTEL = 5938,
-    SpvOpReadPipeBlockingINTEL = 5946,
-    SpvOpWritePipeBlockingINTEL = 5947,
-    SpvOpFPGARegINTEL = 5949,
     SpvOpRayQueryGetRayTMinKHR = 6016,
     SpvOpRayQueryGetRayFlagsKHR = 6017,
     SpvOpRayQueryGetIntersectionTKHR = 6018,
@@ -1799,11 +1541,6 @@
     SpvOpRayQueryGetWorldRayOriginKHR = 6030,
     SpvOpRayQueryGetIntersectionObjectToWorldKHR = 6031,
     SpvOpRayQueryGetIntersectionWorldToObjectKHR = 6032,
-    SpvOpAtomicFAddEXT = 6035,
-    SpvOpTypeBufferSurfaceINTEL = 6086,
-    SpvOpTypeStructContinuedINTEL = 6090,
-    SpvOpConstantCompositeContinuedINTEL = 6091,
-    SpvOpSpecConstantCompositeContinuedINTEL = 6092,
     SpvOpMax = 0x7fffffff,
 } SpvOp;
 
@@ -2156,31 +1893,12 @@
     case SpvOpPtrEqual: *hasResult = true; *hasResultType = true; break;
     case SpvOpPtrNotEqual: *hasResult = true; *hasResultType = true; break;
     case SpvOpPtrDiff: *hasResult = true; *hasResultType = true; break;
-    case SpvOpTerminateInvocation: *hasResult = false; *hasResultType = false; break;
     case SpvOpSubgroupBallotKHR: *hasResult = true; *hasResultType = true; break;
     case SpvOpSubgroupFirstInvocationKHR: *hasResult = true; *hasResultType = true; break;
     case SpvOpSubgroupAllKHR: *hasResult = true; *hasResultType = true; break;
     case SpvOpSubgroupAnyKHR: *hasResult = true; *hasResultType = true; break;
     case SpvOpSubgroupAllEqualKHR: *hasResult = true; *hasResultType = true; break;
     case SpvOpSubgroupReadInvocationKHR: *hasResult = true; *hasResultType = true; break;
-    case SpvOpTraceRayKHR: *hasResult = false; *hasResultType = false; break;
-    case SpvOpExecuteCallableKHR: *hasResult = false; *hasResultType = false; break;
-    case SpvOpConvertUToAccelerationStructureKHR: *hasResult = true; *hasResultType = true; break;
-    case SpvOpIgnoreIntersectionKHR: *hasResult = false; *hasResultType = false; break;
-    case SpvOpTerminateRayKHR: *hasResult = false; *hasResultType = false; break;
-    case SpvOpSDotKHR: *hasResult = true; *hasResultType = true; break;
-    case SpvOpUDotKHR: *hasResult = true; *hasResultType = true; break;
-    case SpvOpSUDotKHR: *hasResult = true; *hasResultType = true; break;
-    case SpvOpSDotAccSatKHR: *hasResult = true; *hasResultType = true; break;
-    case SpvOpUDotAccSatKHR: *hasResult = true; *hasResultType = true; break;
-    case SpvOpSUDotAccSatKHR: *hasResult = true; *hasResultType = true; break;
-    case SpvOpTypeRayQueryKHR: *hasResult = true; *hasResultType = false; break;
-    case SpvOpRayQueryInitializeKHR: *hasResult = false; *hasResultType = false; break;
-    case SpvOpRayQueryTerminateKHR: *hasResult = false; *hasResultType = false; break;
-    case SpvOpRayQueryGenerateIntersectionKHR: *hasResult = false; *hasResultType = false; break;
-    case SpvOpRayQueryConfirmIntersectionKHR: *hasResult = false; *hasResultType = false; break;
-    case SpvOpRayQueryProceedKHR: *hasResult = true; *hasResultType = true; break;
-    case SpvOpRayQueryGetIntersectionTypeKHR: *hasResult = true; *hasResultType = true; break;
     case SpvOpGroupIAddNonUniformAMD: *hasResult = true; *hasResultType = true; break;
     case SpvOpGroupFAddNonUniformAMD: *hasResult = true; *hasResultType = true; break;
     case SpvOpGroupFMinNonUniformAMD: *hasResult = true; *hasResultType = true; break;
@@ -2199,9 +1917,31 @@
     case SpvOpIgnoreIntersectionNV: *hasResult = false; *hasResultType = false; break;
     case SpvOpTerminateRayNV: *hasResult = false; *hasResultType = false; break;
     case SpvOpTraceNV: *hasResult = false; *hasResultType = false; break;
-    case SpvOpTraceMotionNV: *hasResult = false; *hasResultType = false; break;
-    case SpvOpTraceRayMotionNV: *hasResult = false; *hasResultType = false; break;
     case SpvOpTypeAccelerationStructureNV: *hasResult = true; *hasResultType = false; break;
+    case SpvOpTypeRayQueryProvisionalKHR: *hasResult = true; *hasResultType = false; break;
+    case SpvOpRayQueryInitializeKHR: *hasResult = false; *hasResultType = false; break;
+    case SpvOpRayQueryTerminateKHR: *hasResult = false; *hasResultType = false; break;
+    case SpvOpRayQueryGenerateIntersectionKHR: *hasResult = false; *hasResultType = false; break;
+    case SpvOpRayQueryConfirmIntersectionKHR: *hasResult = false; *hasResultType = false; break;
+    case SpvOpRayQueryProceedKHR: *hasResult = true; *hasResultType = true; break;
+    case SpvOpRayQueryGetIntersectionTypeKHR: *hasResult = true; *hasResultType = true; break;
+    case SpvOpRayQueryGetRayTMinKHR: *hasResult = true; *hasResultType = true; break;
+    case SpvOpRayQueryGetRayFlagsKHR: *hasResult = true; *hasResultType = true; break;
+    case SpvOpRayQueryGetIntersectionTKHR: *hasResult = true; *hasResultType = true; break;
+    case SpvOpRayQueryGetIntersectionInstanceCustomIndexKHR: *hasResult = true; *hasResultType = true; break;
+    case SpvOpRayQueryGetIntersectionInstanceIdKHR: *hasResult = true; *hasResultType = true; break;
+    case SpvOpRayQueryGetIntersectionInstanceShaderBindingTableRecordOffsetKHR: *hasResult = true; *hasResultType = true; break;
+    case SpvOpRayQueryGetIntersectionGeometryIndexKHR: *hasResult = true; *hasResultType = true; break;
+    case SpvOpRayQueryGetIntersectionPrimitiveIndexKHR: *hasResult = true; *hasResultType = true; break;
+    case SpvOpRayQueryGetIntersectionBarycentricsKHR: *hasResult = true; *hasResultType = true; break;
+    case SpvOpRayQueryGetIntersectionFrontFaceKHR: *hasResult = true; *hasResultType = true; break;
+    case SpvOpRayQueryGetIntersectionCandidateAABBOpaqueKHR: *hasResult = true; *hasResultType = true; break;
+    case SpvOpRayQueryGetIntersectionObjectRayDirectionKHR: *hasResult = true; *hasResultType = true; break;
+    case SpvOpRayQueryGetIntersectionObjectRayOriginKHR: *hasResult = true; *hasResultType = true; break;
+    case SpvOpRayQueryGetWorldRayDirectionKHR: *hasResult = true; *hasResultType = true; break;
+    case SpvOpRayQueryGetWorldRayOriginKHR: *hasResult = true; *hasResultType = true; break;
+    case SpvOpRayQueryGetIntersectionObjectToWorldKHR: *hasResult = true; *hasResultType = true; break;
+    case SpvOpRayQueryGetIntersectionWorldToObjectKHR: *hasResult = true; *hasResultType = true; break;
     case SpvOpExecuteCallableNV: *hasResult = false; *hasResultType = false; break;
     case SpvOpTypeCooperativeMatrixNV: *hasResult = true; *hasResultType = false; break;
     case SpvOpCooperativeMatrixLoadNV: *hasResult = true; *hasResultType = true; break;
@@ -2236,15 +1976,6 @@
     case SpvOpUSubSatINTEL: *hasResult = true; *hasResultType = true; break;
     case SpvOpIMul32x16INTEL: *hasResult = true; *hasResultType = true; break;
     case SpvOpUMul32x16INTEL: *hasResult = true; *hasResultType = true; break;
-    case SpvOpConstFunctionPointerINTEL: *hasResult = true; *hasResultType = true; break;
-    case SpvOpFunctionPointerCallINTEL: *hasResult = true; *hasResultType = true; break;
-    case SpvOpAsmTargetINTEL: *hasResult = true; *hasResultType = true; break;
-    case SpvOpAsmINTEL: *hasResult = true; *hasResultType = true; break;
-    case SpvOpAsmCallINTEL: *hasResult = true; *hasResultType = true; break;
-    case SpvOpAtomicFMinEXT: *hasResult = true; *hasResultType = true; break;
-    case SpvOpAtomicFMaxEXT: *hasResult = true; *hasResultType = true; break;
-    case SpvOpAssumeTrueKHR: *hasResult = false; *hasResultType = false; break;
-    case SpvOpExpectKHR: *hasResult = true; *hasResultType = true; break;
     case SpvOpDecorateString: *hasResult = false; *hasResultType = false; break;
     case SpvOpMemberDecorateString: *hasResult = false; *hasResultType = false; break;
     case SpvOpVmeImageINTEL: *hasResult = true; *hasResultType = true; break;
@@ -2365,89 +2096,6 @@
     case SpvOpSubgroupAvcSicGetPackedSkcLumaCountThresholdINTEL: *hasResult = true; *hasResultType = true; break;
     case SpvOpSubgroupAvcSicGetPackedSkcLumaSumThresholdINTEL: *hasResult = true; *hasResultType = true; break;
     case SpvOpSubgroupAvcSicGetInterRawSadsINTEL: *hasResult = true; *hasResultType = true; break;
-    case SpvOpVariableLengthArrayINTEL: *hasResult = true; *hasResultType = true; break;
-    case SpvOpSaveMemoryINTEL: *hasResult = true; *hasResultType = true; break;
-    case SpvOpRestoreMemoryINTEL: *hasResult = false; *hasResultType = false; break;
-    case SpvOpArbitraryFloatSinCosPiINTEL: *hasResult = true; *hasResultType = true; break;
-    case SpvOpArbitraryFloatCastINTEL: *hasResult = true; *hasResultType = true; break;
-    case SpvOpArbitraryFloatCastFromIntINTEL: *hasResult = true; *hasResultType = true; break;
-    case SpvOpArbitraryFloatCastToIntINTEL: *hasResult = true; *hasResultType = true; break;
-    case SpvOpArbitraryFloatAddINTEL: *hasResult = true; *hasResultType = true; break;
-    case SpvOpArbitraryFloatSubINTEL: *hasResult = true; *hasResultType = true; break;
-    case SpvOpArbitraryFloatMulINTEL: *hasResult = true; *hasResultType = true; break;
-    case SpvOpArbitraryFloatDivINTEL: *hasResult = true; *hasResultType = true; break;
-    case SpvOpArbitraryFloatGTINTEL: *hasResult = true; *hasResultType = true; break;
-    case SpvOpArbitraryFloatGEINTEL: *hasResult = true; *hasResultType = true; break;
-    case SpvOpArbitraryFloatLTINTEL: *hasResult = true; *hasResultType = true; break;
-    case SpvOpArbitraryFloatLEINTEL: *hasResult = true; *hasResultType = true; break;
-    case SpvOpArbitraryFloatEQINTEL: *hasResult = true; *hasResultType = true; break;
-    case SpvOpArbitraryFloatRecipINTEL: *hasResult = true; *hasResultType = true; break;
-    case SpvOpArbitraryFloatRSqrtINTEL: *hasResult = true; *hasResultType = true; break;
-    case SpvOpArbitraryFloatCbrtINTEL: *hasResult = true; *hasResultType = true; break;
-    case SpvOpArbitraryFloatHypotINTEL: *hasResult = true; *hasResultType = true; break;
-    case SpvOpArbitraryFloatSqrtINTEL: *hasResult = true; *hasResultType = true; break;
-    case SpvOpArbitraryFloatLogINTEL: *hasResult = true; *hasResultType = true; break;
-    case SpvOpArbitraryFloatLog2INTEL: *hasResult = true; *hasResultType = true; break;
-    case SpvOpArbitraryFloatLog10INTEL: *hasResult = true; *hasResultType = true; break;
-    case SpvOpArbitraryFloatLog1pINTEL: *hasResult = true; *hasResultType = true; break;
-    case SpvOpArbitraryFloatExpINTEL: *hasResult = true; *hasResultType = true; break;
-    case SpvOpArbitraryFloatExp2INTEL: *hasResult = true; *hasResultType = true; break;
-    case SpvOpArbitraryFloatExp10INTEL: *hasResult = true; *hasResultType = true; break;
-    case SpvOpArbitraryFloatExpm1INTEL: *hasResult = true; *hasResultType = true; break;
-    case SpvOpArbitraryFloatSinINTEL: *hasResult = true; *hasResultType = true; break;
-    case SpvOpArbitraryFloatCosINTEL: *hasResult = true; *hasResultType = true; break;
-    case SpvOpArbitraryFloatSinCosINTEL: *hasResult = true; *hasResultType = true; break;
-    case SpvOpArbitraryFloatSinPiINTEL: *hasResult = true; *hasResultType = true; break;
-    case SpvOpArbitraryFloatCosPiINTEL: *hasResult = true; *hasResultType = true; break;
-    case SpvOpArbitraryFloatASinINTEL: *hasResult = true; *hasResultType = true; break;
-    case SpvOpArbitraryFloatASinPiINTEL: *hasResult = true; *hasResultType = true; break;
-    case SpvOpArbitraryFloatACosINTEL: *hasResult = true; *hasResultType = true; break;
-    case SpvOpArbitraryFloatACosPiINTEL: *hasResult = true; *hasResultType = true; break;
-    case SpvOpArbitraryFloatATanINTEL: *hasResult = true; *hasResultType = true; break;
-    case SpvOpArbitraryFloatATanPiINTEL: *hasResult = true; *hasResultType = true; break;
-    case SpvOpArbitraryFloatATan2INTEL: *hasResult = true; *hasResultType = true; break;
-    case SpvOpArbitraryFloatPowINTEL: *hasResult = true; *hasResultType = true; break;
-    case SpvOpArbitraryFloatPowRINTEL: *hasResult = true; *hasResultType = true; break;
-    case SpvOpArbitraryFloatPowNINTEL: *hasResult = true; *hasResultType = true; break;
-    case SpvOpLoopControlINTEL: *hasResult = false; *hasResultType = false; break;
-    case SpvOpFixedSqrtINTEL: *hasResult = true; *hasResultType = true; break;
-    case SpvOpFixedRecipINTEL: *hasResult = true; *hasResultType = true; break;
-    case SpvOpFixedRsqrtINTEL: *hasResult = true; *hasResultType = true; break;
-    case SpvOpFixedSinINTEL: *hasResult = true; *hasResultType = true; break;
-    case SpvOpFixedCosINTEL: *hasResult = true; *hasResultType = true; break;
-    case SpvOpFixedSinCosINTEL: *hasResult = true; *hasResultType = true; break;
-    case SpvOpFixedSinPiINTEL: *hasResult = true; *hasResultType = true; break;
-    case SpvOpFixedCosPiINTEL: *hasResult = true; *hasResultType = true; break;
-    case SpvOpFixedSinCosPiINTEL: *hasResult = true; *hasResultType = true; break;
-    case SpvOpFixedLogINTEL: *hasResult = true; *hasResultType = true; break;
-    case SpvOpFixedExpINTEL: *hasResult = true; *hasResultType = true; break;
-    case SpvOpPtrCastToCrossWorkgroupINTEL: *hasResult = true; *hasResultType = true; break;
-    case SpvOpCrossWorkgroupCastToPtrINTEL: *hasResult = true; *hasResultType = true; break;
-    case SpvOpReadPipeBlockingINTEL: *hasResult = true; *hasResultType = true; break;
-    case SpvOpWritePipeBlockingINTEL: *hasResult = true; *hasResultType = true; break;
-    case SpvOpFPGARegINTEL: *hasResult = true; *hasResultType = true; break;
-    case SpvOpRayQueryGetRayTMinKHR: *hasResult = true; *hasResultType = true; break;
-    case SpvOpRayQueryGetRayFlagsKHR: *hasResult = true; *hasResultType = true; break;
-    case SpvOpRayQueryGetIntersectionTKHR: *hasResult = true; *hasResultType = true; break;
-    case SpvOpRayQueryGetIntersectionInstanceCustomIndexKHR: *hasResult = true; *hasResultType = true; break;
-    case SpvOpRayQueryGetIntersectionInstanceIdKHR: *hasResult = true; *hasResultType = true; break;
-    case SpvOpRayQueryGetIntersectionInstanceShaderBindingTableRecordOffsetKHR: *hasResult = true; *hasResultType = true; break;
-    case SpvOpRayQueryGetIntersectionGeometryIndexKHR: *hasResult = true; *hasResultType = true; break;
-    case SpvOpRayQueryGetIntersectionPrimitiveIndexKHR: *hasResult = true; *hasResultType = true; break;
-    case SpvOpRayQueryGetIntersectionBarycentricsKHR: *hasResult = true; *hasResultType = true; break;
-    case SpvOpRayQueryGetIntersectionFrontFaceKHR: *hasResult = true; *hasResultType = true; break;
-    case SpvOpRayQueryGetIntersectionCandidateAABBOpaqueKHR: *hasResult = true; *hasResultType = true; break;
-    case SpvOpRayQueryGetIntersectionObjectRayDirectionKHR: *hasResult = true; *hasResultType = true; break;
-    case SpvOpRayQueryGetIntersectionObjectRayOriginKHR: *hasResult = true; *hasResultType = true; break;
-    case SpvOpRayQueryGetWorldRayDirectionKHR: *hasResult = true; *hasResultType = true; break;
-    case SpvOpRayQueryGetWorldRayOriginKHR: *hasResult = true; *hasResultType = true; break;
-    case SpvOpRayQueryGetIntersectionObjectToWorldKHR: *hasResult = true; *hasResultType = true; break;
-    case SpvOpRayQueryGetIntersectionWorldToObjectKHR: *hasResult = true; *hasResultType = true; break;
-    case SpvOpAtomicFAddEXT: *hasResult = true; *hasResultType = true; break;
-    case SpvOpTypeBufferSurfaceINTEL: *hasResult = true; *hasResultType = false; break;
-    case SpvOpTypeStructContinuedINTEL: *hasResult = false; *hasResultType = false; break;
-    case SpvOpConstantCompositeContinuedINTEL: *hasResult = false; *hasResultType = false; break;
-    case SpvOpSpecConstantCompositeContinuedINTEL: *hasResult = false; *hasResultType = false; break;
     }
 }
 #endif /* SPV_ENABLE_UTILITY_CODE */
diff --git a/include/spirv/unified1/spirv.hpp b/include/spirv/unified1/spirv.hpp
index 5180457..9f98683 100644
--- a/include/spirv/unified1/spirv.hpp
+++ b/include/spirv/unified1/spirv.hpp
@@ -50,11 +50,11 @@
 typedef unsigned int Id;
 
 #define SPV_VERSION 0x10500
-#define SPV_REVISION 4
+#define SPV_REVISION 1
 
 static const unsigned int MagicNumber = 0x07230203;
 static const unsigned int Version = 0x00010500;
-static const unsigned int Revision = 4;
+static const unsigned int Revision = 1;
 static const unsigned int OpCodeMask = 0xffff;
 static const unsigned int WordCountShift = 16;
 
@@ -65,7 +65,6 @@
     SourceLanguageOpenCL_C = 3,
     SourceLanguageOpenCL_CPP = 4,
     SourceLanguageHLSL = 5,
-    SourceLanguageCPP_for_OpenCL = 6,
     SourceLanguageMax = 0x7fffffff,
 };
 
@@ -151,7 +150,6 @@
     ExecutionModeSubgroupsPerWorkgroupId = 37,
     ExecutionModeLocalSizeId = 38,
     ExecutionModeLocalSizeHintId = 39,
-    ExecutionModeSubgroupUniformControlFlowKHR = 4421,
     ExecutionModePostDepthCoverage = 4446,
     ExecutionModeDenormPreserve = 4459,
     ExecutionModeDenormFlushToZero = 4460,
@@ -170,16 +168,6 @@
     ExecutionModeSampleInterlockUnorderedEXT = 5369,
     ExecutionModeShadingRateInterlockOrderedEXT = 5370,
     ExecutionModeShadingRateInterlockUnorderedEXT = 5371,
-    ExecutionModeSharedLocalMemorySizeINTEL = 5618,
-    ExecutionModeRoundingModeRTPINTEL = 5620,
-    ExecutionModeRoundingModeRTNINTEL = 5621,
-    ExecutionModeFloatingPointModeALTINTEL = 5622,
-    ExecutionModeFloatingPointModeIEEEINTEL = 5623,
-    ExecutionModeMaxWorkgroupSizeINTEL = 5893,
-    ExecutionModeMaxWorkDimINTEL = 5894,
-    ExecutionModeNoGlobalOffsetINTEL = 5895,
-    ExecutionModeNumSIMDWorkitemsINTEL = 5896,
-    ExecutionModeSchedulerTargetFmaxMhzINTEL = 5903,
     ExecutionModeMax = 0x7fffffff,
 };
 
@@ -211,9 +199,6 @@
     StorageClassShaderRecordBufferNV = 5343,
     StorageClassPhysicalStorageBuffer = 5349,
     StorageClassPhysicalStorageBufferEXT = 5349,
-    StorageClassCodeSectionINTEL = 5605,
-    StorageClassDeviceOnlyINTEL = 5936,
-    StorageClassHostOnlyINTEL = 5937,
     StorageClassMax = 0x7fffffff,
 };
 
@@ -284,8 +269,6 @@
     ImageFormatRg8ui = 37,
     ImageFormatR16ui = 38,
     ImageFormatR8ui = 39,
-    ImageFormatR64ui = 40,
-    ImageFormatR64i = 41,
     ImageFormatMax = 0x7fffffff,
 };
 
@@ -384,8 +367,6 @@
     FPFastMathModeNSZShift = 2,
     FPFastMathModeAllowRecipShift = 3,
     FPFastMathModeFastShift = 4,
-    FPFastMathModeAllowContractFastINTELShift = 16,
-    FPFastMathModeAllowReassocINTELShift = 17,
     FPFastMathModeMax = 0x7fffffff,
 };
 
@@ -396,8 +377,6 @@
     FPFastMathModeNSZMask = 0x00000004,
     FPFastMathModeAllowRecipMask = 0x00000008,
     FPFastMathModeFastMask = 0x00000010,
-    FPFastMathModeAllowContractFastINTELMask = 0x00010000,
-    FPFastMathModeAllowReassocINTELMask = 0x00020000,
 };
 
 enum FPRoundingMode {
@@ -411,7 +390,6 @@
 enum LinkageType {
     LinkageTypeExport = 0,
     LinkageTypeImport = 1,
-    LinkageTypeLinkOnceODR = 2,
     LinkageTypeMax = 0x7fffffff,
 };
 
@@ -499,45 +477,11 @@
     DecorationRestrictPointerEXT = 5355,
     DecorationAliasedPointer = 5356,
     DecorationAliasedPointerEXT = 5356,
-    DecorationSIMTCallINTEL = 5599,
-    DecorationReferencedIndirectlyINTEL = 5602,
-    DecorationClobberINTEL = 5607,
-    DecorationSideEffectsINTEL = 5608,
-    DecorationVectorComputeVariableINTEL = 5624,
-    DecorationFuncParamIOKindINTEL = 5625,
-    DecorationVectorComputeFunctionINTEL = 5626,
-    DecorationStackCallINTEL = 5627,
-    DecorationGlobalVariableOffsetINTEL = 5628,
     DecorationCounterBuffer = 5634,
     DecorationHlslCounterBufferGOOGLE = 5634,
     DecorationHlslSemanticGOOGLE = 5635,
     DecorationUserSemantic = 5635,
     DecorationUserTypeGOOGLE = 5636,
-    DecorationFunctionRoundingModeINTEL = 5822,
-    DecorationFunctionDenormModeINTEL = 5823,
-    DecorationRegisterINTEL = 5825,
-    DecorationMemoryINTEL = 5826,
-    DecorationNumbanksINTEL = 5827,
-    DecorationBankwidthINTEL = 5828,
-    DecorationMaxPrivateCopiesINTEL = 5829,
-    DecorationSinglepumpINTEL = 5830,
-    DecorationDoublepumpINTEL = 5831,
-    DecorationMaxReplicatesINTEL = 5832,
-    DecorationSimpleDualPortINTEL = 5833,
-    DecorationMergeINTEL = 5834,
-    DecorationBankBitsINTEL = 5835,
-    DecorationForcePow2DepthINTEL = 5836,
-    DecorationBurstCoalesceINTEL = 5899,
-    DecorationCacheSizeINTEL = 5900,
-    DecorationDontStaticallyCoalesceINTEL = 5901,
-    DecorationPrefetchINTEL = 5902,
-    DecorationStallEnableINTEL = 5905,
-    DecorationFuseLoopsInFunctionINTEL = 5907,
-    DecorationBufferLocationINTEL = 5921,
-    DecorationIOPipeStorageINTEL = 5944,
-    DecorationFunctionFloatingPointModeINTEL = 6080,
-    DecorationSingleElementVectorINTEL = 6085,
-    DecorationVectorComputeCallableFunctionINTEL = 6087,
     DecorationMax = 0x7fffffff,
 };
 
@@ -596,10 +540,8 @@
     BuiltInBaseVertex = 4424,
     BuiltInBaseInstance = 4425,
     BuiltInDrawIndex = 4426,
-    BuiltInPrimitiveShadingRateKHR = 4432,
     BuiltInDeviceIndex = 4438,
     BuiltInViewIndex = 4440,
-    BuiltInShadingRateKHR = 4444,
     BuiltInBaryCoordNoPerspAMD = 4992,
     BuiltInBaryCoordNoPerspCentroidAMD = 4993,
     BuiltInBaryCoordNoPerspSampleAMD = 4994,
@@ -650,10 +592,10 @@
     BuiltInObjectToWorldNV = 5330,
     BuiltInWorldToObjectKHR = 5331,
     BuiltInWorldToObjectNV = 5331,
+    BuiltInHitTKHR = 5332,
     BuiltInHitTNV = 5332,
     BuiltInHitKindKHR = 5333,
     BuiltInHitKindNV = 5333,
-    BuiltInCurrentRayTimeNV = 5334,
     BuiltInIncomingRayFlagsKHR = 5351,
     BuiltInIncomingRayFlagsNV = 5351,
     BuiltInRayGeometryIndexKHR = 5352,
@@ -686,14 +628,6 @@
     LoopControlIterationMultipleShift = 6,
     LoopControlPeelCountShift = 7,
     LoopControlPartialCountShift = 8,
-    LoopControlInitiationIntervalINTELShift = 16,
-    LoopControlMaxConcurrencyINTELShift = 17,
-    LoopControlDependencyArrayINTELShift = 18,
-    LoopControlPipelineEnableINTELShift = 19,
-    LoopControlLoopCoalesceINTELShift = 20,
-    LoopControlMaxInterleavingINTELShift = 21,
-    LoopControlSpeculatedIterationsINTELShift = 22,
-    LoopControlNoFusionINTELShift = 23,
     LoopControlMax = 0x7fffffff,
 };
 
@@ -708,14 +642,6 @@
     LoopControlIterationMultipleMask = 0x00000040,
     LoopControlPeelCountMask = 0x00000080,
     LoopControlPartialCountMask = 0x00000100,
-    LoopControlInitiationIntervalINTELMask = 0x00010000,
-    LoopControlMaxConcurrencyINTELMask = 0x00020000,
-    LoopControlDependencyArrayINTELMask = 0x00040000,
-    LoopControlPipelineEnableINTELMask = 0x00080000,
-    LoopControlLoopCoalesceINTELMask = 0x00100000,
-    LoopControlMaxInterleavingINTELMask = 0x00200000,
-    LoopControlSpeculatedIterationsINTELMask = 0x00400000,
-    LoopControlNoFusionINTELMask = 0x00800000,
 };
 
 enum FunctionControlShift {
@@ -723,7 +649,6 @@
     FunctionControlDontInlineShift = 1,
     FunctionControlPureShift = 2,
     FunctionControlConstShift = 3,
-    FunctionControlOptNoneINTELShift = 16,
     FunctionControlMax = 0x7fffffff,
 };
 
@@ -733,7 +658,6 @@
     FunctionControlDontInlineMask = 0x00000002,
     FunctionControlPureMask = 0x00000004,
     FunctionControlConstMask = 0x00000008,
-    FunctionControlOptNoneINTELMask = 0x00010000,
 };
 
 enum MemorySemanticsShift {
@@ -914,12 +838,8 @@
     CapabilityGroupNonUniformQuad = 68,
     CapabilityShaderLayer = 69,
     CapabilityShaderViewportIndex = 70,
-    CapabilityFragmentShadingRateKHR = 4422,
     CapabilitySubgroupBallotKHR = 4423,
     CapabilityDrawParameters = 4427,
-    CapabilityWorkgroupMemoryExplicitLayoutKHR = 4428,
-    CapabilityWorkgroupMemoryExplicitLayout8BitAccessKHR = 4429,
-    CapabilityWorkgroupMemoryExplicitLayout16BitAccessKHR = 4430,
     CapabilitySubgroupVoteKHR = 4431,
     CapabilityStorageBuffer16BitAccess = 4433,
     CapabilityStorageUniformBufferBlock16 = 4433,
@@ -942,15 +862,12 @@
     CapabilityRoundingModeRTE = 4467,
     CapabilityRoundingModeRTZ = 4468,
     CapabilityRayQueryProvisionalKHR = 4471,
-    CapabilityRayQueryKHR = 4472,
-    CapabilityRayTraversalPrimitiveCullingKHR = 4478,
-    CapabilityRayTracingKHR = 4479,
+    CapabilityRayTraversalPrimitiveCullingProvisionalKHR = 4478,
     CapabilityFloat16ImageAMD = 5008,
     CapabilityImageGatherBiasLodAMD = 5009,
     CapabilityFragmentMaskAMD = 5010,
     CapabilityStencilExportEXT = 5013,
     CapabilityImageReadWriteLodAMD = 5015,
-    CapabilityInt64ImageEXT = 5016,
     CapabilityShaderClockKHR = 5055,
     CapabilitySampleMaskOverrideCoverageNV = 5249,
     CapabilityGeometryShaderPassthroughNV = 5251,
@@ -992,7 +909,6 @@
     CapabilityStorageTexelBufferArrayNonUniformIndexing = 5312,
     CapabilityStorageTexelBufferArrayNonUniformIndexingEXT = 5312,
     CapabilityRayTracingNV = 5340,
-    CapabilityRayTracingMotionBlurNV = 5341,
     CapabilityVulkanMemoryModel = 5345,
     CapabilityVulkanMemoryModelKHR = 5345,
     CapabilityVulkanMemoryModelDeviceScope = 5346,
@@ -1011,51 +927,10 @@
     CapabilitySubgroupBufferBlockIOINTEL = 5569,
     CapabilitySubgroupImageBlockIOINTEL = 5570,
     CapabilitySubgroupImageMediaBlockIOINTEL = 5579,
-    CapabilityRoundToInfinityINTEL = 5582,
-    CapabilityFloatingPointModeINTEL = 5583,
     CapabilityIntegerFunctions2INTEL = 5584,
-    CapabilityFunctionPointersINTEL = 5603,
-    CapabilityIndirectReferencesINTEL = 5604,
-    CapabilityAsmINTEL = 5606,
-    CapabilityAtomicFloat32MinMaxEXT = 5612,
-    CapabilityAtomicFloat64MinMaxEXT = 5613,
-    CapabilityAtomicFloat16MinMaxEXT = 5616,
-    CapabilityVectorComputeINTEL = 5617,
-    CapabilityVectorAnyINTEL = 5619,
-    CapabilityExpectAssumeKHR = 5629,
     CapabilitySubgroupAvcMotionEstimationINTEL = 5696,
     CapabilitySubgroupAvcMotionEstimationIntraINTEL = 5697,
     CapabilitySubgroupAvcMotionEstimationChromaINTEL = 5698,
-    CapabilityVariableLengthArrayINTEL = 5817,
-    CapabilityFunctionFloatControlINTEL = 5821,
-    CapabilityFPGAMemoryAttributesINTEL = 5824,
-    CapabilityFPFastMathModeINTEL = 5837,
-    CapabilityArbitraryPrecisionIntegersINTEL = 5844,
-    CapabilityArbitraryPrecisionFloatingPointINTEL = 5845,
-    CapabilityUnstructuredLoopControlsINTEL = 5886,
-    CapabilityFPGALoopControlsINTEL = 5888,
-    CapabilityKernelAttributesINTEL = 5892,
-    CapabilityFPGAKernelAttributesINTEL = 5897,
-    CapabilityFPGAMemoryAccessesINTEL = 5898,
-    CapabilityFPGAClusterAttributesINTEL = 5904,
-    CapabilityLoopFuseINTEL = 5906,
-    CapabilityFPGABufferLocationINTEL = 5920,
-    CapabilityArbitraryPrecisionFixedPointINTEL = 5922,
-    CapabilityUSMStorageClassesINTEL = 5935,
-    CapabilityIOPipesINTEL = 5943,
-    CapabilityBlockingPipesINTEL = 5945,
-    CapabilityFPGARegINTEL = 5948,
-    CapabilityDotProductInputAllKHR = 6016,
-    CapabilityDotProductInput4x8BitKHR = 6017,
-    CapabilityDotProductInput4x8BitPackedKHR = 6018,
-    CapabilityDotProductKHR = 6019,
-    CapabilityBitInstructions = 6025,
-    CapabilityAtomicFloat32AddEXT = 6033,
-    CapabilityAtomicFloat64AddEXT = 6034,
-    CapabilityLongConstantCompositeINTEL = 6089,
-    CapabilityOptNoneINTEL = 6094,
-    CapabilityAtomicFloat16AddEXT = 6095,
-    CapabilityDebugInfoModuleINTEL = 6114,
     CapabilityMax = 0x7fffffff,
 };
 
@@ -1106,59 +981,6 @@
     RayQueryCandidateIntersectionTypeMax = 0x7fffffff,
 };
 
-enum FragmentShadingRateShift {
-    FragmentShadingRateVertical2PixelsShift = 0,
-    FragmentShadingRateVertical4PixelsShift = 1,
-    FragmentShadingRateHorizontal2PixelsShift = 2,
-    FragmentShadingRateHorizontal4PixelsShift = 3,
-    FragmentShadingRateMax = 0x7fffffff,
-};
-
-enum FragmentShadingRateMask {
-    FragmentShadingRateMaskNone = 0,
-    FragmentShadingRateVertical2PixelsMask = 0x00000001,
-    FragmentShadingRateVertical4PixelsMask = 0x00000002,
-    FragmentShadingRateHorizontal2PixelsMask = 0x00000004,
-    FragmentShadingRateHorizontal4PixelsMask = 0x00000008,
-};
-
-enum FPDenormMode {
-    FPDenormModePreserve = 0,
-    FPDenormModeFlushToZero = 1,
-    FPDenormModeMax = 0x7fffffff,
-};
-
-enum FPOperationMode {
-    FPOperationModeIEEE = 0,
-    FPOperationModeALT = 1,
-    FPOperationModeMax = 0x7fffffff,
-};
-
-enum QuantizationModes {
-    QuantizationModesTRN = 0,
-    QuantizationModesTRN_ZERO = 1,
-    QuantizationModesRND = 2,
-    QuantizationModesRND_ZERO = 3,
-    QuantizationModesRND_INF = 4,
-    QuantizationModesRND_MIN_INF = 5,
-    QuantizationModesRND_CONV = 6,
-    QuantizationModesRND_CONV_ODD = 7,
-    QuantizationModesMax = 0x7fffffff,
-};
-
-enum OverflowModes {
-    OverflowModesWRAP = 0,
-    OverflowModesSAT = 1,
-    OverflowModesSAT_ZERO = 2,
-    OverflowModesSAT_SYM = 3,
-    OverflowModesMax = 0x7fffffff,
-};
-
-enum PackedVectorFormat {
-    PackedVectorFormatPackedVectorFormat4x8BitKHR = 0,
-    PackedVectorFormatMax = 0x7fffffff,
-};
-
 enum Op {
     OpNop = 0,
     OpUndef = 1,
@@ -1504,25 +1326,13 @@
     OpPtrEqual = 401,
     OpPtrNotEqual = 402,
     OpPtrDiff = 403,
-    OpTerminateInvocation = 4416,
     OpSubgroupBallotKHR = 4421,
     OpSubgroupFirstInvocationKHR = 4422,
     OpSubgroupAllKHR = 4428,
     OpSubgroupAnyKHR = 4429,
     OpSubgroupAllEqualKHR = 4430,
     OpSubgroupReadInvocationKHR = 4432,
-    OpTraceRayKHR = 4445,
-    OpExecuteCallableKHR = 4446,
-    OpConvertUToAccelerationStructureKHR = 4447,
-    OpIgnoreIntersectionKHR = 4448,
-    OpTerminateRayKHR = 4449,
-    OpSDotKHR = 4450,
-    OpUDotKHR = 4451,
-    OpSUDotKHR = 4452,
-    OpSDotAccSatKHR = 4453,
-    OpUDotAccSatKHR = 4454,
-    OpSUDotAccSatKHR = 4455,
-    OpTypeRayQueryKHR = 4472,
+    OpTypeRayQueryProvisionalKHR = 4472,
     OpRayQueryInitializeKHR = 4473,
     OpRayQueryTerminateKHR = 4474,
     OpRayQueryGenerateIntersectionKHR = 4475,
@@ -1545,13 +1355,15 @@
     OpWritePackedPrimitiveIndices4x8NV = 5299,
     OpReportIntersectionKHR = 5334,
     OpReportIntersectionNV = 5334,
+    OpIgnoreIntersectionKHR = 5335,
     OpIgnoreIntersectionNV = 5335,
+    OpTerminateRayKHR = 5336,
     OpTerminateRayNV = 5336,
     OpTraceNV = 5337,
-    OpTraceMotionNV = 5338,
-    OpTraceRayMotionNV = 5339,
+    OpTraceRayKHR = 5337,
     OpTypeAccelerationStructureKHR = 5341,
     OpTypeAccelerationStructureNV = 5341,
+    OpExecuteCallableKHR = 5344,
     OpExecuteCallableNV = 5344,
     OpTypeCooperativeMatrixNV = 5358,
     OpCooperativeMatrixLoadNV = 5359,
@@ -1586,15 +1398,6 @@
     OpUSubSatINTEL = 5596,
     OpIMul32x16INTEL = 5597,
     OpUMul32x16INTEL = 5598,
-    OpConstFunctionPointerINTEL = 5600,
-    OpFunctionPointerCallINTEL = 5601,
-    OpAsmTargetINTEL = 5609,
-    OpAsmINTEL = 5610,
-    OpAsmCallINTEL = 5611,
-    OpAtomicFMinEXT = 5614,
-    OpAtomicFMaxEXT = 5615,
-    OpAssumeTrueKHR = 5630,
-    OpExpectKHR = 5631,
     OpDecorateString = 5632,
     OpDecorateStringGOOGLE = 5632,
     OpMemberDecorateString = 5633,
@@ -1717,67 +1520,6 @@
     OpSubgroupAvcSicGetPackedSkcLumaCountThresholdINTEL = 5814,
     OpSubgroupAvcSicGetPackedSkcLumaSumThresholdINTEL = 5815,
     OpSubgroupAvcSicGetInterRawSadsINTEL = 5816,
-    OpVariableLengthArrayINTEL = 5818,
-    OpSaveMemoryINTEL = 5819,
-    OpRestoreMemoryINTEL = 5820,
-    OpArbitraryFloatSinCosPiINTEL = 5840,
-    OpArbitraryFloatCastINTEL = 5841,
-    OpArbitraryFloatCastFromIntINTEL = 5842,
-    OpArbitraryFloatCastToIntINTEL = 5843,
-    OpArbitraryFloatAddINTEL = 5846,
-    OpArbitraryFloatSubINTEL = 5847,
-    OpArbitraryFloatMulINTEL = 5848,
-    OpArbitraryFloatDivINTEL = 5849,
-    OpArbitraryFloatGTINTEL = 5850,
-    OpArbitraryFloatGEINTEL = 5851,
-    OpArbitraryFloatLTINTEL = 5852,
-    OpArbitraryFloatLEINTEL = 5853,
-    OpArbitraryFloatEQINTEL = 5854,
-    OpArbitraryFloatRecipINTEL = 5855,
-    OpArbitraryFloatRSqrtINTEL = 5856,
-    OpArbitraryFloatCbrtINTEL = 5857,
-    OpArbitraryFloatHypotINTEL = 5858,
-    OpArbitraryFloatSqrtINTEL = 5859,
-    OpArbitraryFloatLogINTEL = 5860,
-    OpArbitraryFloatLog2INTEL = 5861,
-    OpArbitraryFloatLog10INTEL = 5862,
-    OpArbitraryFloatLog1pINTEL = 5863,
-    OpArbitraryFloatExpINTEL = 5864,
-    OpArbitraryFloatExp2INTEL = 5865,
-    OpArbitraryFloatExp10INTEL = 5866,
-    OpArbitraryFloatExpm1INTEL = 5867,
-    OpArbitraryFloatSinINTEL = 5868,
-    OpArbitraryFloatCosINTEL = 5869,
-    OpArbitraryFloatSinCosINTEL = 5870,
-    OpArbitraryFloatSinPiINTEL = 5871,
-    OpArbitraryFloatCosPiINTEL = 5872,
-    OpArbitraryFloatASinINTEL = 5873,
-    OpArbitraryFloatASinPiINTEL = 5874,
-    OpArbitraryFloatACosINTEL = 5875,
-    OpArbitraryFloatACosPiINTEL = 5876,
-    OpArbitraryFloatATanINTEL = 5877,
-    OpArbitraryFloatATanPiINTEL = 5878,
-    OpArbitraryFloatATan2INTEL = 5879,
-    OpArbitraryFloatPowINTEL = 5880,
-    OpArbitraryFloatPowRINTEL = 5881,
-    OpArbitraryFloatPowNINTEL = 5882,
-    OpLoopControlINTEL = 5887,
-    OpFixedSqrtINTEL = 5923,
-    OpFixedRecipINTEL = 5924,
-    OpFixedRsqrtINTEL = 5925,
-    OpFixedSinINTEL = 5926,
-    OpFixedCosINTEL = 5927,
-    OpFixedSinCosINTEL = 5928,
-    OpFixedSinPiINTEL = 5929,
-    OpFixedCosPiINTEL = 5930,
-    OpFixedSinCosPiINTEL = 5931,
-    OpFixedLogINTEL = 5932,
-    OpFixedExpINTEL = 5933,
-    OpPtrCastToCrossWorkgroupINTEL = 5934,
-    OpCrossWorkgroupCastToPtrINTEL = 5938,
-    OpReadPipeBlockingINTEL = 5946,
-    OpWritePipeBlockingINTEL = 5947,
-    OpFPGARegINTEL = 5949,
     OpRayQueryGetRayTMinKHR = 6016,
     OpRayQueryGetRayFlagsKHR = 6017,
     OpRayQueryGetIntersectionTKHR = 6018,
@@ -1795,11 +1537,6 @@
     OpRayQueryGetWorldRayOriginKHR = 6030,
     OpRayQueryGetIntersectionObjectToWorldKHR = 6031,
     OpRayQueryGetIntersectionWorldToObjectKHR = 6032,
-    OpAtomicFAddEXT = 6035,
-    OpTypeBufferSurfaceINTEL = 6086,
-    OpTypeStructContinuedINTEL = 6090,
-    OpConstantCompositeContinuedINTEL = 6091,
-    OpSpecConstantCompositeContinuedINTEL = 6092,
     OpMax = 0x7fffffff,
 };
 
@@ -2152,31 +1889,12 @@
     case OpPtrEqual: *hasResult = true; *hasResultType = true; break;
     case OpPtrNotEqual: *hasResult = true; *hasResultType = true; break;
     case OpPtrDiff: *hasResult = true; *hasResultType = true; break;
-    case OpTerminateInvocation: *hasResult = false; *hasResultType = false; break;
     case OpSubgroupBallotKHR: *hasResult = true; *hasResultType = true; break;
     case OpSubgroupFirstInvocationKHR: *hasResult = true; *hasResultType = true; break;
     case OpSubgroupAllKHR: *hasResult = true; *hasResultType = true; break;
     case OpSubgroupAnyKHR: *hasResult = true; *hasResultType = true; break;
     case OpSubgroupAllEqualKHR: *hasResult = true; *hasResultType = true; break;
     case OpSubgroupReadInvocationKHR: *hasResult = true; *hasResultType = true; break;
-    case OpTraceRayKHR: *hasResult = false; *hasResultType = false; break;
-    case OpExecuteCallableKHR: *hasResult = false; *hasResultType = false; break;
-    case OpConvertUToAccelerationStructureKHR: *hasResult = true; *hasResultType = true; break;
-    case OpIgnoreIntersectionKHR: *hasResult = false; *hasResultType = false; break;
-    case OpTerminateRayKHR: *hasResult = false; *hasResultType = false; break;
-    case OpSDotKHR: *hasResult = true; *hasResultType = true; break;
-    case OpUDotKHR: *hasResult = true; *hasResultType = true; break;
-    case OpSUDotKHR: *hasResult = true; *hasResultType = true; break;
-    case OpSDotAccSatKHR: *hasResult = true; *hasResultType = true; break;
-    case OpUDotAccSatKHR: *hasResult = true; *hasResultType = true; break;
-    case OpSUDotAccSatKHR: *hasResult = true; *hasResultType = true; break;
-    case OpTypeRayQueryKHR: *hasResult = true; *hasResultType = false; break;
-    case OpRayQueryInitializeKHR: *hasResult = false; *hasResultType = false; break;
-    case OpRayQueryTerminateKHR: *hasResult = false; *hasResultType = false; break;
-    case OpRayQueryGenerateIntersectionKHR: *hasResult = false; *hasResultType = false; break;
-    case OpRayQueryConfirmIntersectionKHR: *hasResult = false; *hasResultType = false; break;
-    case OpRayQueryProceedKHR: *hasResult = true; *hasResultType = true; break;
-    case OpRayQueryGetIntersectionTypeKHR: *hasResult = true; *hasResultType = true; break;
     case OpGroupIAddNonUniformAMD: *hasResult = true; *hasResultType = true; break;
     case OpGroupFAddNonUniformAMD: *hasResult = true; *hasResultType = true; break;
     case OpGroupFMinNonUniformAMD: *hasResult = true; *hasResultType = true; break;
@@ -2195,9 +1913,31 @@
     case OpIgnoreIntersectionNV: *hasResult = false; *hasResultType = false; break;
     case OpTerminateRayNV: *hasResult = false; *hasResultType = false; break;
     case OpTraceNV: *hasResult = false; *hasResultType = false; break;
-    case OpTraceMotionNV: *hasResult = false; *hasResultType = false; break;
-    case OpTraceRayMotionNV: *hasResult = false; *hasResultType = false; break;
     case OpTypeAccelerationStructureNV: *hasResult = true; *hasResultType = false; break;
+    case OpTypeRayQueryProvisionalKHR: *hasResult = true; *hasResultType = false; break;
+    case OpRayQueryInitializeKHR: *hasResult = false; *hasResultType = false; break;
+    case OpRayQueryTerminateKHR: *hasResult = false; *hasResultType = false; break;
+    case OpRayQueryGenerateIntersectionKHR: *hasResult = false; *hasResultType = false; break;
+    case OpRayQueryConfirmIntersectionKHR: *hasResult = false; *hasResultType = false; break;
+    case OpRayQueryProceedKHR: *hasResult = true; *hasResultType = true; break;
+    case OpRayQueryGetIntersectionTypeKHR: *hasResult = true; *hasResultType = true; break;
+    case OpRayQueryGetRayTMinKHR: *hasResult = true; *hasResultType = true; break;
+    case OpRayQueryGetRayFlagsKHR: *hasResult = true; *hasResultType = true; break;
+    case OpRayQueryGetIntersectionTKHR: *hasResult = true; *hasResultType = true; break;
+    case OpRayQueryGetIntersectionInstanceCustomIndexKHR: *hasResult = true; *hasResultType = true; break;
+    case OpRayQueryGetIntersectionInstanceIdKHR: *hasResult = true; *hasResultType = true; break;
+    case OpRayQueryGetIntersectionInstanceShaderBindingTableRecordOffsetKHR: *hasResult = true; *hasResultType = true; break;
+    case OpRayQueryGetIntersectionGeometryIndexKHR: *hasResult = true; *hasResultType = true; break;
+    case OpRayQueryGetIntersectionPrimitiveIndexKHR: *hasResult = true; *hasResultType = true; break;
+    case OpRayQueryGetIntersectionBarycentricsKHR: *hasResult = true; *hasResultType = true; break;
+    case OpRayQueryGetIntersectionFrontFaceKHR: *hasResult = true; *hasResultType = true; break;
+    case OpRayQueryGetIntersectionCandidateAABBOpaqueKHR: *hasResult = true; *hasResultType = true; break;
+    case OpRayQueryGetIntersectionObjectRayDirectionKHR: *hasResult = true; *hasResultType = true; break;
+    case OpRayQueryGetIntersectionObjectRayOriginKHR: *hasResult = true; *hasResultType = true; break;
+    case OpRayQueryGetWorldRayDirectionKHR: *hasResult = true; *hasResultType = true; break;
+    case OpRayQueryGetWorldRayOriginKHR: *hasResult = true; *hasResultType = true; break;
+    case OpRayQueryGetIntersectionObjectToWorldKHR: *hasResult = true; *hasResultType = true; break;
+    case OpRayQueryGetIntersectionWorldToObjectKHR: *hasResult = true; *hasResultType = true; break;
     case OpExecuteCallableNV: *hasResult = false; *hasResultType = false; break;
     case OpTypeCooperativeMatrixNV: *hasResult = true; *hasResultType = false; break;
     case OpCooperativeMatrixLoadNV: *hasResult = true; *hasResultType = true; break;
@@ -2232,15 +1972,6 @@
     case OpUSubSatINTEL: *hasResult = true; *hasResultType = true; break;
     case OpIMul32x16INTEL: *hasResult = true; *hasResultType = true; break;
     case OpUMul32x16INTEL: *hasResult = true; *hasResultType = true; break;
-    case OpConstFunctionPointerINTEL: *hasResult = true; *hasResultType = true; break;
-    case OpFunctionPointerCallINTEL: *hasResult = true; *hasResultType = true; break;
-    case OpAsmTargetINTEL: *hasResult = true; *hasResultType = true; break;
-    case OpAsmINTEL: *hasResult = true; *hasResultType = true; break;
-    case OpAsmCallINTEL: *hasResult = true; *hasResultType = true; break;
-    case OpAtomicFMinEXT: *hasResult = true; *hasResultType = true; break;
-    case OpAtomicFMaxEXT: *hasResult = true; *hasResultType = true; break;
-    case OpAssumeTrueKHR: *hasResult = false; *hasResultType = false; break;
-    case OpExpectKHR: *hasResult = true; *hasResultType = true; break;
     case OpDecorateString: *hasResult = false; *hasResultType = false; break;
     case OpMemberDecorateString: *hasResult = false; *hasResultType = false; break;
     case OpVmeImageINTEL: *hasResult = true; *hasResultType = true; break;
@@ -2361,89 +2092,6 @@
     case OpSubgroupAvcSicGetPackedSkcLumaCountThresholdINTEL: *hasResult = true; *hasResultType = true; break;
     case OpSubgroupAvcSicGetPackedSkcLumaSumThresholdINTEL: *hasResult = true; *hasResultType = true; break;
     case OpSubgroupAvcSicGetInterRawSadsINTEL: *hasResult = true; *hasResultType = true; break;
-    case OpVariableLengthArrayINTEL: *hasResult = true; *hasResultType = true; break;
-    case OpSaveMemoryINTEL: *hasResult = true; *hasResultType = true; break;
-    case OpRestoreMemoryINTEL: *hasResult = false; *hasResultType = false; break;
-    case OpArbitraryFloatSinCosPiINTEL: *hasResult = true; *hasResultType = true; break;
-    case OpArbitraryFloatCastINTEL: *hasResult = true; *hasResultType = true; break;
-    case OpArbitraryFloatCastFromIntINTEL: *hasResult = true; *hasResultType = true; break;
-    case OpArbitraryFloatCastToIntINTEL: *hasResult = true; *hasResultType = true; break;
-    case OpArbitraryFloatAddINTEL: *hasResult = true; *hasResultType = true; break;
-    case OpArbitraryFloatSubINTEL: *hasResult = true; *hasResultType = true; break;
-    case OpArbitraryFloatMulINTEL: *hasResult = true; *hasResultType = true; break;
-    case OpArbitraryFloatDivINTEL: *hasResult = true; *hasResultType = true; break;
-    case OpArbitraryFloatGTINTEL: *hasResult = true; *hasResultType = true; break;
-    case OpArbitraryFloatGEINTEL: *hasResult = true; *hasResultType = true; break;
-    case OpArbitraryFloatLTINTEL: *hasResult = true; *hasResultType = true; break;
-    case OpArbitraryFloatLEINTEL: *hasResult = true; *hasResultType = true; break;
-    case OpArbitraryFloatEQINTEL: *hasResult = true; *hasResultType = true; break;
-    case OpArbitraryFloatRecipINTEL: *hasResult = true; *hasResultType = true; break;
-    case OpArbitraryFloatRSqrtINTEL: *hasResult = true; *hasResultType = true; break;
-    case OpArbitraryFloatCbrtINTEL: *hasResult = true; *hasResultType = true; break;
-    case OpArbitraryFloatHypotINTEL: *hasResult = true; *hasResultType = true; break;
-    case OpArbitraryFloatSqrtINTEL: *hasResult = true; *hasResultType = true; break;
-    case OpArbitraryFloatLogINTEL: *hasResult = true; *hasResultType = true; break;
-    case OpArbitraryFloatLog2INTEL: *hasResult = true; *hasResultType = true; break;
-    case OpArbitraryFloatLog10INTEL: *hasResult = true; *hasResultType = true; break;
-    case OpArbitraryFloatLog1pINTEL: *hasResult = true; *hasResultType = true; break;
-    case OpArbitraryFloatExpINTEL: *hasResult = true; *hasResultType = true; break;
-    case OpArbitraryFloatExp2INTEL: *hasResult = true; *hasResultType = true; break;
-    case OpArbitraryFloatExp10INTEL: *hasResult = true; *hasResultType = true; break;
-    case OpArbitraryFloatExpm1INTEL: *hasResult = true; *hasResultType = true; break;
-    case OpArbitraryFloatSinINTEL: *hasResult = true; *hasResultType = true; break;
-    case OpArbitraryFloatCosINTEL: *hasResult = true; *hasResultType = true; break;
-    case OpArbitraryFloatSinCosINTEL: *hasResult = true; *hasResultType = true; break;
-    case OpArbitraryFloatSinPiINTEL: *hasResult = true; *hasResultType = true; break;
-    case OpArbitraryFloatCosPiINTEL: *hasResult = true; *hasResultType = true; break;
-    case OpArbitraryFloatASinINTEL: *hasResult = true; *hasResultType = true; break;
-    case OpArbitraryFloatASinPiINTEL: *hasResult = true; *hasResultType = true; break;
-    case OpArbitraryFloatACosINTEL: *hasResult = true; *hasResultType = true; break;
-    case OpArbitraryFloatACosPiINTEL: *hasResult = true; *hasResultType = true; break;
-    case OpArbitraryFloatATanINTEL: *hasResult = true; *hasResultType = true; break;
-    case OpArbitraryFloatATanPiINTEL: *hasResult = true; *hasResultType = true; break;
-    case OpArbitraryFloatATan2INTEL: *hasResult = true; *hasResultType = true; break;
-    case OpArbitraryFloatPowINTEL: *hasResult = true; *hasResultType = true; break;
-    case OpArbitraryFloatPowRINTEL: *hasResult = true; *hasResultType = true; break;
-    case OpArbitraryFloatPowNINTEL: *hasResult = true; *hasResultType = true; break;
-    case OpLoopControlINTEL: *hasResult = false; *hasResultType = false; break;
-    case OpFixedSqrtINTEL: *hasResult = true; *hasResultType = true; break;
-    case OpFixedRecipINTEL: *hasResult = true; *hasResultType = true; break;
-    case OpFixedRsqrtINTEL: *hasResult = true; *hasResultType = true; break;
-    case OpFixedSinINTEL: *hasResult = true; *hasResultType = true; break;
-    case OpFixedCosINTEL: *hasResult = true; *hasResultType = true; break;
-    case OpFixedSinCosINTEL: *hasResult = true; *hasResultType = true; break;
-    case OpFixedSinPiINTEL: *hasResult = true; *hasResultType = true; break;
-    case OpFixedCosPiINTEL: *hasResult = true; *hasResultType = true; break;
-    case OpFixedSinCosPiINTEL: *hasResult = true; *hasResultType = true; break;
-    case OpFixedLogINTEL: *hasResult = true; *hasResultType = true; break;
-    case OpFixedExpINTEL: *hasResult = true; *hasResultType = true; break;
-    case OpPtrCastToCrossWorkgroupINTEL: *hasResult = true; *hasResultType = true; break;
-    case OpCrossWorkgroupCastToPtrINTEL: *hasResult = true; *hasResultType = true; break;
-    case OpReadPipeBlockingINTEL: *hasResult = true; *hasResultType = true; break;
-    case OpWritePipeBlockingINTEL: *hasResult = true; *hasResultType = true; break;
-    case OpFPGARegINTEL: *hasResult = true; *hasResultType = true; break;
-    case OpRayQueryGetRayTMinKHR: *hasResult = true; *hasResultType = true; break;
-    case OpRayQueryGetRayFlagsKHR: *hasResult = true; *hasResultType = true; break;
-    case OpRayQueryGetIntersectionTKHR: *hasResult = true; *hasResultType = true; break;
-    case OpRayQueryGetIntersectionInstanceCustomIndexKHR: *hasResult = true; *hasResultType = true; break;
-    case OpRayQueryGetIntersectionInstanceIdKHR: *hasResult = true; *hasResultType = true; break;
-    case OpRayQueryGetIntersectionInstanceShaderBindingTableRecordOffsetKHR: *hasResult = true; *hasResultType = true; break;
-    case OpRayQueryGetIntersectionGeometryIndexKHR: *hasResult = true; *hasResultType = true; break;
-    case OpRayQueryGetIntersectionPrimitiveIndexKHR: *hasResult = true; *hasResultType = true; break;
-    case OpRayQueryGetIntersectionBarycentricsKHR: *hasResult = true; *hasResultType = true; break;
-    case OpRayQueryGetIntersectionFrontFaceKHR: *hasResult = true; *hasResultType = true; break;
-    case OpRayQueryGetIntersectionCandidateAABBOpaqueKHR: *hasResult = true; *hasResultType = true; break;
-    case OpRayQueryGetIntersectionObjectRayDirectionKHR: *hasResult = true; *hasResultType = true; break;
-    case OpRayQueryGetIntersectionObjectRayOriginKHR: *hasResult = true; *hasResultType = true; break;
-    case OpRayQueryGetWorldRayDirectionKHR: *hasResult = true; *hasResultType = true; break;
-    case OpRayQueryGetWorldRayOriginKHR: *hasResult = true; *hasResultType = true; break;
-    case OpRayQueryGetIntersectionObjectToWorldKHR: *hasResult = true; *hasResultType = true; break;
-    case OpRayQueryGetIntersectionWorldToObjectKHR: *hasResult = true; *hasResultType = true; break;
-    case OpAtomicFAddEXT: *hasResult = true; *hasResultType = true; break;
-    case OpTypeBufferSurfaceINTEL: *hasResult = true; *hasResultType = false; break;
-    case OpTypeStructContinuedINTEL: *hasResult = false; *hasResultType = false; break;
-    case OpConstantCompositeContinuedINTEL: *hasResult = false; *hasResultType = false; break;
-    case OpSpecConstantCompositeContinuedINTEL: *hasResult = false; *hasResultType = false; break;
     }
 }
 #endif /* SPV_ENABLE_UTILITY_CODE */
@@ -2459,7 +2107,6 @@
 inline MemoryAccessMask operator|(MemoryAccessMask a, MemoryAccessMask b) { return MemoryAccessMask(unsigned(a) | unsigned(b)); }
 inline KernelProfilingInfoMask operator|(KernelProfilingInfoMask a, KernelProfilingInfoMask b) { return KernelProfilingInfoMask(unsigned(a) | unsigned(b)); }
 inline RayFlagsMask operator|(RayFlagsMask a, RayFlagsMask b) { return RayFlagsMask(unsigned(a) | unsigned(b)); }
-inline FragmentShadingRateMask operator|(FragmentShadingRateMask a, FragmentShadingRateMask b) { return FragmentShadingRateMask(unsigned(a) | unsigned(b)); }
 
 }  // end namespace spv
 
diff --git a/include/spirv/unified1/spirv.hpp11 b/include/spirv/unified1/spirv.hpp11
index 51e9024..406ba19 100644
--- a/include/spirv/unified1/spirv.hpp11
+++ b/include/spirv/unified1/spirv.hpp11
@@ -50,11 +50,11 @@
 typedef unsigned int Id;
 
 #define SPV_VERSION 0x10500
-#define SPV_REVISION 4
+#define SPV_REVISION 1
 
 static const unsigned int MagicNumber = 0x07230203;
 static const unsigned int Version = 0x00010500;
-static const unsigned int Revision = 4;
+static const unsigned int Revision = 1;
 static const unsigned int OpCodeMask = 0xffff;
 static const unsigned int WordCountShift = 16;
 
@@ -65,7 +65,6 @@
     OpenCL_C = 3,
     OpenCL_CPP = 4,
     HLSL = 5,
-    CPP_for_OpenCL = 6,
     Max = 0x7fffffff,
 };
 
@@ -151,7 +150,6 @@
     SubgroupsPerWorkgroupId = 37,
     LocalSizeId = 38,
     LocalSizeHintId = 39,
-    SubgroupUniformControlFlowKHR = 4421,
     PostDepthCoverage = 4446,
     DenormPreserve = 4459,
     DenormFlushToZero = 4460,
@@ -170,16 +168,6 @@
     SampleInterlockUnorderedEXT = 5369,
     ShadingRateInterlockOrderedEXT = 5370,
     ShadingRateInterlockUnorderedEXT = 5371,
-    SharedLocalMemorySizeINTEL = 5618,
-    RoundingModeRTPINTEL = 5620,
-    RoundingModeRTNINTEL = 5621,
-    FloatingPointModeALTINTEL = 5622,
-    FloatingPointModeIEEEINTEL = 5623,
-    MaxWorkgroupSizeINTEL = 5893,
-    MaxWorkDimINTEL = 5894,
-    NoGlobalOffsetINTEL = 5895,
-    NumSIMDWorkitemsINTEL = 5896,
-    SchedulerTargetFmaxMhzINTEL = 5903,
     Max = 0x7fffffff,
 };
 
@@ -211,9 +199,6 @@
     ShaderRecordBufferNV = 5343,
     PhysicalStorageBuffer = 5349,
     PhysicalStorageBufferEXT = 5349,
-    CodeSectionINTEL = 5605,
-    DeviceOnlyINTEL = 5936,
-    HostOnlyINTEL = 5937,
     Max = 0x7fffffff,
 };
 
@@ -284,8 +269,6 @@
     Rg8ui = 37,
     R16ui = 38,
     R8ui = 39,
-    R64ui = 40,
-    R64i = 41,
     Max = 0x7fffffff,
 };
 
@@ -384,8 +367,6 @@
     NSZ = 2,
     AllowRecip = 3,
     Fast = 4,
-    AllowContractFastINTEL = 16,
-    AllowReassocINTEL = 17,
     Max = 0x7fffffff,
 };
 
@@ -396,8 +377,6 @@
     NSZ = 0x00000004,
     AllowRecip = 0x00000008,
     Fast = 0x00000010,
-    AllowContractFastINTEL = 0x00010000,
-    AllowReassocINTEL = 0x00020000,
 };
 
 enum class FPRoundingMode : unsigned {
@@ -411,7 +390,6 @@
 enum class LinkageType : unsigned {
     Export = 0,
     Import = 1,
-    LinkOnceODR = 2,
     Max = 0x7fffffff,
 };
 
@@ -499,45 +477,11 @@
     RestrictPointerEXT = 5355,
     AliasedPointer = 5356,
     AliasedPointerEXT = 5356,
-    SIMTCallINTEL = 5599,
-    ReferencedIndirectlyINTEL = 5602,
-    ClobberINTEL = 5607,
-    SideEffectsINTEL = 5608,
-    VectorComputeVariableINTEL = 5624,
-    FuncParamIOKindINTEL = 5625,
-    VectorComputeFunctionINTEL = 5626,
-    StackCallINTEL = 5627,
-    GlobalVariableOffsetINTEL = 5628,
     CounterBuffer = 5634,
     HlslCounterBufferGOOGLE = 5634,
     HlslSemanticGOOGLE = 5635,
     UserSemantic = 5635,
     UserTypeGOOGLE = 5636,
-    FunctionRoundingModeINTEL = 5822,
-    FunctionDenormModeINTEL = 5823,
-    RegisterINTEL = 5825,
-    MemoryINTEL = 5826,
-    NumbanksINTEL = 5827,
-    BankwidthINTEL = 5828,
-    MaxPrivateCopiesINTEL = 5829,
-    SinglepumpINTEL = 5830,
-    DoublepumpINTEL = 5831,
-    MaxReplicatesINTEL = 5832,
-    SimpleDualPortINTEL = 5833,
-    MergeINTEL = 5834,
-    BankBitsINTEL = 5835,
-    ForcePow2DepthINTEL = 5836,
-    BurstCoalesceINTEL = 5899,
-    CacheSizeINTEL = 5900,
-    DontStaticallyCoalesceINTEL = 5901,
-    PrefetchINTEL = 5902,
-    StallEnableINTEL = 5905,
-    FuseLoopsInFunctionINTEL = 5907,
-    BufferLocationINTEL = 5921,
-    IOPipeStorageINTEL = 5944,
-    FunctionFloatingPointModeINTEL = 6080,
-    SingleElementVectorINTEL = 6085,
-    VectorComputeCallableFunctionINTEL = 6087,
     Max = 0x7fffffff,
 };
 
@@ -596,10 +540,8 @@
     BaseVertex = 4424,
     BaseInstance = 4425,
     DrawIndex = 4426,
-    PrimitiveShadingRateKHR = 4432,
     DeviceIndex = 4438,
     ViewIndex = 4440,
-    ShadingRateKHR = 4444,
     BaryCoordNoPerspAMD = 4992,
     BaryCoordNoPerspCentroidAMD = 4993,
     BaryCoordNoPerspSampleAMD = 4994,
@@ -650,10 +592,10 @@
     ObjectToWorldNV = 5330,
     WorldToObjectKHR = 5331,
     WorldToObjectNV = 5331,
+    HitTKHR = 5332,
     HitTNV = 5332,
     HitKindKHR = 5333,
     HitKindNV = 5333,
-    CurrentRayTimeNV = 5334,
     IncomingRayFlagsKHR = 5351,
     IncomingRayFlagsNV = 5351,
     RayGeometryIndexKHR = 5352,
@@ -686,14 +628,6 @@
     IterationMultiple = 6,
     PeelCount = 7,
     PartialCount = 8,
-    InitiationIntervalINTEL = 16,
-    MaxConcurrencyINTEL = 17,
-    DependencyArrayINTEL = 18,
-    PipelineEnableINTEL = 19,
-    LoopCoalesceINTEL = 20,
-    MaxInterleavingINTEL = 21,
-    SpeculatedIterationsINTEL = 22,
-    NoFusionINTEL = 23,
     Max = 0x7fffffff,
 };
 
@@ -708,14 +642,6 @@
     IterationMultiple = 0x00000040,
     PeelCount = 0x00000080,
     PartialCount = 0x00000100,
-    InitiationIntervalINTEL = 0x00010000,
-    MaxConcurrencyINTEL = 0x00020000,
-    DependencyArrayINTEL = 0x00040000,
-    PipelineEnableINTEL = 0x00080000,
-    LoopCoalesceINTEL = 0x00100000,
-    MaxInterleavingINTEL = 0x00200000,
-    SpeculatedIterationsINTEL = 0x00400000,
-    NoFusionINTEL = 0x00800000,
 };
 
 enum class FunctionControlShift : unsigned {
@@ -723,7 +649,6 @@
     DontInline = 1,
     Pure = 2,
     Const = 3,
-    OptNoneINTEL = 16,
     Max = 0x7fffffff,
 };
 
@@ -733,7 +658,6 @@
     DontInline = 0x00000002,
     Pure = 0x00000004,
     Const = 0x00000008,
-    OptNoneINTEL = 0x00010000,
 };
 
 enum class MemorySemanticsShift : unsigned {
@@ -914,12 +838,8 @@
     GroupNonUniformQuad = 68,
     ShaderLayer = 69,
     ShaderViewportIndex = 70,
-    FragmentShadingRateKHR = 4422,
     SubgroupBallotKHR = 4423,
     DrawParameters = 4427,
-    WorkgroupMemoryExplicitLayoutKHR = 4428,
-    WorkgroupMemoryExplicitLayout8BitAccessKHR = 4429,
-    WorkgroupMemoryExplicitLayout16BitAccessKHR = 4430,
     SubgroupVoteKHR = 4431,
     StorageBuffer16BitAccess = 4433,
     StorageUniformBufferBlock16 = 4433,
@@ -942,15 +862,12 @@
     RoundingModeRTE = 4467,
     RoundingModeRTZ = 4468,
     RayQueryProvisionalKHR = 4471,
-    RayQueryKHR = 4472,
-    RayTraversalPrimitiveCullingKHR = 4478,
-    RayTracingKHR = 4479,
+    RayTraversalPrimitiveCullingProvisionalKHR = 4478,
     Float16ImageAMD = 5008,
     ImageGatherBiasLodAMD = 5009,
     FragmentMaskAMD = 5010,
     StencilExportEXT = 5013,
     ImageReadWriteLodAMD = 5015,
-    Int64ImageEXT = 5016,
     ShaderClockKHR = 5055,
     SampleMaskOverrideCoverageNV = 5249,
     GeometryShaderPassthroughNV = 5251,
@@ -992,7 +909,6 @@
     StorageTexelBufferArrayNonUniformIndexing = 5312,
     StorageTexelBufferArrayNonUniformIndexingEXT = 5312,
     RayTracingNV = 5340,
-    RayTracingMotionBlurNV = 5341,
     VulkanMemoryModel = 5345,
     VulkanMemoryModelKHR = 5345,
     VulkanMemoryModelDeviceScope = 5346,
@@ -1011,51 +927,10 @@
     SubgroupBufferBlockIOINTEL = 5569,
     SubgroupImageBlockIOINTEL = 5570,
     SubgroupImageMediaBlockIOINTEL = 5579,
-    RoundToInfinityINTEL = 5582,
-    FloatingPointModeINTEL = 5583,
     IntegerFunctions2INTEL = 5584,
-    FunctionPointersINTEL = 5603,
-    IndirectReferencesINTEL = 5604,
-    AsmINTEL = 5606,
-    AtomicFloat32MinMaxEXT = 5612,
-    AtomicFloat64MinMaxEXT = 5613,
-    AtomicFloat16MinMaxEXT = 5616,
-    VectorComputeINTEL = 5617,
-    VectorAnyINTEL = 5619,
-    ExpectAssumeKHR = 5629,
     SubgroupAvcMotionEstimationINTEL = 5696,
     SubgroupAvcMotionEstimationIntraINTEL = 5697,
     SubgroupAvcMotionEstimationChromaINTEL = 5698,
-    VariableLengthArrayINTEL = 5817,
-    FunctionFloatControlINTEL = 5821,
-    FPGAMemoryAttributesINTEL = 5824,
-    FPFastMathModeINTEL = 5837,
-    ArbitraryPrecisionIntegersINTEL = 5844,
-    ArbitraryPrecisionFloatingPointINTEL = 5845,
-    UnstructuredLoopControlsINTEL = 5886,
-    FPGALoopControlsINTEL = 5888,
-    KernelAttributesINTEL = 5892,
-    FPGAKernelAttributesINTEL = 5897,
-    FPGAMemoryAccessesINTEL = 5898,
-    FPGAClusterAttributesINTEL = 5904,
-    LoopFuseINTEL = 5906,
-    FPGABufferLocationINTEL = 5920,
-    ArbitraryPrecisionFixedPointINTEL = 5922,
-    USMStorageClassesINTEL = 5935,
-    IOPipesINTEL = 5943,
-    BlockingPipesINTEL = 5945,
-    FPGARegINTEL = 5948,
-    DotProductInputAllKHR = 6016,
-    DotProductInput4x8BitKHR = 6017,
-    DotProductInput4x8BitPackedKHR = 6018,
-    DotProductKHR = 6019,
-    BitInstructions = 6025,
-    AtomicFloat32AddEXT = 6033,
-    AtomicFloat64AddEXT = 6034,
-    LongConstantCompositeINTEL = 6089,
-    OptNoneINTEL = 6094,
-    AtomicFloat16AddEXT = 6095,
-    DebugInfoModuleINTEL = 6114,
     Max = 0x7fffffff,
 };
 
@@ -1106,59 +981,6 @@
     Max = 0x7fffffff,
 };
 
-enum class FragmentShadingRateShift : unsigned {
-    Vertical2Pixels = 0,
-    Vertical4Pixels = 1,
-    Horizontal2Pixels = 2,
-    Horizontal4Pixels = 3,
-    Max = 0x7fffffff,
-};
-
-enum class FragmentShadingRateMask : unsigned {
-    MaskNone = 0,
-    Vertical2Pixels = 0x00000001,
-    Vertical4Pixels = 0x00000002,
-    Horizontal2Pixels = 0x00000004,
-    Horizontal4Pixels = 0x00000008,
-};
-
-enum class FPDenormMode : unsigned {
-    Preserve = 0,
-    FlushToZero = 1,
-    Max = 0x7fffffff,
-};
-
-enum class FPOperationMode : unsigned {
-    IEEE = 0,
-    ALT = 1,
-    Max = 0x7fffffff,
-};
-
-enum class QuantizationModes : unsigned {
-    TRN = 0,
-    TRN_ZERO = 1,
-    RND = 2,
-    RND_ZERO = 3,
-    RND_INF = 4,
-    RND_MIN_INF = 5,
-    RND_CONV = 6,
-    RND_CONV_ODD = 7,
-    Max = 0x7fffffff,
-};
-
-enum class OverflowModes : unsigned {
-    WRAP = 0,
-    SAT = 1,
-    SAT_ZERO = 2,
-    SAT_SYM = 3,
-    Max = 0x7fffffff,
-};
-
-enum class PackedVectorFormat : unsigned {
-    PackedVectorFormat4x8BitKHR = 0,
-    Max = 0x7fffffff,
-};
-
 enum class Op : unsigned {
     OpNop = 0,
     OpUndef = 1,
@@ -1504,25 +1326,13 @@
     OpPtrEqual = 401,
     OpPtrNotEqual = 402,
     OpPtrDiff = 403,
-    OpTerminateInvocation = 4416,
     OpSubgroupBallotKHR = 4421,
     OpSubgroupFirstInvocationKHR = 4422,
     OpSubgroupAllKHR = 4428,
     OpSubgroupAnyKHR = 4429,
     OpSubgroupAllEqualKHR = 4430,
     OpSubgroupReadInvocationKHR = 4432,
-    OpTraceRayKHR = 4445,
-    OpExecuteCallableKHR = 4446,
-    OpConvertUToAccelerationStructureKHR = 4447,
-    OpIgnoreIntersectionKHR = 4448,
-    OpTerminateRayKHR = 4449,
-    OpSDotKHR = 4450,
-    OpUDotKHR = 4451,
-    OpSUDotKHR = 4452,
-    OpSDotAccSatKHR = 4453,
-    OpUDotAccSatKHR = 4454,
-    OpSUDotAccSatKHR = 4455,
-    OpTypeRayQueryKHR = 4472,
+    OpTypeRayQueryProvisionalKHR = 4472,
     OpRayQueryInitializeKHR = 4473,
     OpRayQueryTerminateKHR = 4474,
     OpRayQueryGenerateIntersectionKHR = 4475,
@@ -1545,13 +1355,15 @@
     OpWritePackedPrimitiveIndices4x8NV = 5299,
     OpReportIntersectionKHR = 5334,
     OpReportIntersectionNV = 5334,
+    OpIgnoreIntersectionKHR = 5335,
     OpIgnoreIntersectionNV = 5335,
+    OpTerminateRayKHR = 5336,
     OpTerminateRayNV = 5336,
     OpTraceNV = 5337,
-    OpTraceMotionNV = 5338,
-    OpTraceRayMotionNV = 5339,
+    OpTraceRayKHR = 5337,
     OpTypeAccelerationStructureKHR = 5341,
     OpTypeAccelerationStructureNV = 5341,
+    OpExecuteCallableKHR = 5344,
     OpExecuteCallableNV = 5344,
     OpTypeCooperativeMatrixNV = 5358,
     OpCooperativeMatrixLoadNV = 5359,
@@ -1586,15 +1398,6 @@
     OpUSubSatINTEL = 5596,
     OpIMul32x16INTEL = 5597,
     OpUMul32x16INTEL = 5598,
-    OpConstFunctionPointerINTEL = 5600,
-    OpFunctionPointerCallINTEL = 5601,
-    OpAsmTargetINTEL = 5609,
-    OpAsmINTEL = 5610,
-    OpAsmCallINTEL = 5611,
-    OpAtomicFMinEXT = 5614,
-    OpAtomicFMaxEXT = 5615,
-    OpAssumeTrueKHR = 5630,
-    OpExpectKHR = 5631,
     OpDecorateString = 5632,
     OpDecorateStringGOOGLE = 5632,
     OpMemberDecorateString = 5633,
@@ -1717,67 +1520,6 @@
     OpSubgroupAvcSicGetPackedSkcLumaCountThresholdINTEL = 5814,
     OpSubgroupAvcSicGetPackedSkcLumaSumThresholdINTEL = 5815,
     OpSubgroupAvcSicGetInterRawSadsINTEL = 5816,
-    OpVariableLengthArrayINTEL = 5818,
-    OpSaveMemoryINTEL = 5819,
-    OpRestoreMemoryINTEL = 5820,
-    OpArbitraryFloatSinCosPiINTEL = 5840,
-    OpArbitraryFloatCastINTEL = 5841,
-    OpArbitraryFloatCastFromIntINTEL = 5842,
-    OpArbitraryFloatCastToIntINTEL = 5843,
-    OpArbitraryFloatAddINTEL = 5846,
-    OpArbitraryFloatSubINTEL = 5847,
-    OpArbitraryFloatMulINTEL = 5848,
-    OpArbitraryFloatDivINTEL = 5849,
-    OpArbitraryFloatGTINTEL = 5850,
-    OpArbitraryFloatGEINTEL = 5851,
-    OpArbitraryFloatLTINTEL = 5852,
-    OpArbitraryFloatLEINTEL = 5853,
-    OpArbitraryFloatEQINTEL = 5854,
-    OpArbitraryFloatRecipINTEL = 5855,
-    OpArbitraryFloatRSqrtINTEL = 5856,
-    OpArbitraryFloatCbrtINTEL = 5857,
-    OpArbitraryFloatHypotINTEL = 5858,
-    OpArbitraryFloatSqrtINTEL = 5859,
-    OpArbitraryFloatLogINTEL = 5860,
-    OpArbitraryFloatLog2INTEL = 5861,
-    OpArbitraryFloatLog10INTEL = 5862,
-    OpArbitraryFloatLog1pINTEL = 5863,
-    OpArbitraryFloatExpINTEL = 5864,
-    OpArbitraryFloatExp2INTEL = 5865,
-    OpArbitraryFloatExp10INTEL = 5866,
-    OpArbitraryFloatExpm1INTEL = 5867,
-    OpArbitraryFloatSinINTEL = 5868,
-    OpArbitraryFloatCosINTEL = 5869,
-    OpArbitraryFloatSinCosINTEL = 5870,
-    OpArbitraryFloatSinPiINTEL = 5871,
-    OpArbitraryFloatCosPiINTEL = 5872,
-    OpArbitraryFloatASinINTEL = 5873,
-    OpArbitraryFloatASinPiINTEL = 5874,
-    OpArbitraryFloatACosINTEL = 5875,
-    OpArbitraryFloatACosPiINTEL = 5876,
-    OpArbitraryFloatATanINTEL = 5877,
-    OpArbitraryFloatATanPiINTEL = 5878,
-    OpArbitraryFloatATan2INTEL = 5879,
-    OpArbitraryFloatPowINTEL = 5880,
-    OpArbitraryFloatPowRINTEL = 5881,
-    OpArbitraryFloatPowNINTEL = 5882,
-    OpLoopControlINTEL = 5887,
-    OpFixedSqrtINTEL = 5923,
-    OpFixedRecipINTEL = 5924,
-    OpFixedRsqrtINTEL = 5925,
-    OpFixedSinINTEL = 5926,
-    OpFixedCosINTEL = 5927,
-    OpFixedSinCosINTEL = 5928,
-    OpFixedSinPiINTEL = 5929,
-    OpFixedCosPiINTEL = 5930,
-    OpFixedSinCosPiINTEL = 5931,
-    OpFixedLogINTEL = 5932,
-    OpFixedExpINTEL = 5933,
-    OpPtrCastToCrossWorkgroupINTEL = 5934,
-    OpCrossWorkgroupCastToPtrINTEL = 5938,
-    OpReadPipeBlockingINTEL = 5946,
-    OpWritePipeBlockingINTEL = 5947,
-    OpFPGARegINTEL = 5949,
     OpRayQueryGetRayTMinKHR = 6016,
     OpRayQueryGetRayFlagsKHR = 6017,
     OpRayQueryGetIntersectionTKHR = 6018,
@@ -1795,11 +1537,6 @@
     OpRayQueryGetWorldRayOriginKHR = 6030,
     OpRayQueryGetIntersectionObjectToWorldKHR = 6031,
     OpRayQueryGetIntersectionWorldToObjectKHR = 6032,
-    OpAtomicFAddEXT = 6035,
-    OpTypeBufferSurfaceINTEL = 6086,
-    OpTypeStructContinuedINTEL = 6090,
-    OpConstantCompositeContinuedINTEL = 6091,
-    OpSpecConstantCompositeContinuedINTEL = 6092,
     Max = 0x7fffffff,
 };
 
@@ -2152,31 +1889,12 @@
     case Op::OpPtrEqual: *hasResult = true; *hasResultType = true; break;
     case Op::OpPtrNotEqual: *hasResult = true; *hasResultType = true; break;
     case Op::OpPtrDiff: *hasResult = true; *hasResultType = true; break;
-    case Op::OpTerminateInvocation: *hasResult = false; *hasResultType = false; break;
     case Op::OpSubgroupBallotKHR: *hasResult = true; *hasResultType = true; break;
     case Op::OpSubgroupFirstInvocationKHR: *hasResult = true; *hasResultType = true; break;
     case Op::OpSubgroupAllKHR: *hasResult = true; *hasResultType = true; break;
     case Op::OpSubgroupAnyKHR: *hasResult = true; *hasResultType = true; break;
     case Op::OpSubgroupAllEqualKHR: *hasResult = true; *hasResultType = true; break;
     case Op::OpSubgroupReadInvocationKHR: *hasResult = true; *hasResultType = true; break;
-    case Op::OpTraceRayKHR: *hasResult = false; *hasResultType = false; break;
-    case Op::OpExecuteCallableKHR: *hasResult = false; *hasResultType = false; break;
-    case Op::OpConvertUToAccelerationStructureKHR: *hasResult = true; *hasResultType = true; break;
-    case Op::OpIgnoreIntersectionKHR: *hasResult = false; *hasResultType = false; break;
-    case Op::OpTerminateRayKHR: *hasResult = false; *hasResultType = false; break;
-    case Op::OpSDotKHR: *hasResult = true; *hasResultType = true; break;
-    case Op::OpUDotKHR: *hasResult = true; *hasResultType = true; break;
-    case Op::OpSUDotKHR: *hasResult = true; *hasResultType = true; break;
-    case Op::OpSDotAccSatKHR: *hasResult = true; *hasResultType = true; break;
-    case Op::OpUDotAccSatKHR: *hasResult = true; *hasResultType = true; break;
-    case Op::OpSUDotAccSatKHR: *hasResult = true; *hasResultType = true; break;
-    case Op::OpTypeRayQueryKHR: *hasResult = true; *hasResultType = false; break;
-    case Op::OpRayQueryInitializeKHR: *hasResult = false; *hasResultType = false; break;
-    case Op::OpRayQueryTerminateKHR: *hasResult = false; *hasResultType = false; break;
-    case Op::OpRayQueryGenerateIntersectionKHR: *hasResult = false; *hasResultType = false; break;
-    case Op::OpRayQueryConfirmIntersectionKHR: *hasResult = false; *hasResultType = false; break;
-    case Op::OpRayQueryProceedKHR: *hasResult = true; *hasResultType = true; break;
-    case Op::OpRayQueryGetIntersectionTypeKHR: *hasResult = true; *hasResultType = true; break;
     case Op::OpGroupIAddNonUniformAMD: *hasResult = true; *hasResultType = true; break;
     case Op::OpGroupFAddNonUniformAMD: *hasResult = true; *hasResultType = true; break;
     case Op::OpGroupFMinNonUniformAMD: *hasResult = true; *hasResultType = true; break;
@@ -2195,9 +1913,31 @@
     case Op::OpIgnoreIntersectionNV: *hasResult = false; *hasResultType = false; break;
     case Op::OpTerminateRayNV: *hasResult = false; *hasResultType = false; break;
     case Op::OpTraceNV: *hasResult = false; *hasResultType = false; break;
-    case Op::OpTraceMotionNV: *hasResult = false; *hasResultType = false; break;
-    case Op::OpTraceRayMotionNV: *hasResult = false; *hasResultType = false; break;
     case Op::OpTypeAccelerationStructureNV: *hasResult = true; *hasResultType = false; break;
+    case Op::OpTypeRayQueryProvisionalKHR: *hasResult = true; *hasResultType = false; break;
+    case Op::OpRayQueryInitializeKHR: *hasResult = false; *hasResultType = false; break;
+    case Op::OpRayQueryTerminateKHR: *hasResult = false; *hasResultType = false; break;
+    case Op::OpRayQueryGenerateIntersectionKHR: *hasResult = false; *hasResultType = false; break;
+    case Op::OpRayQueryConfirmIntersectionKHR: *hasResult = false; *hasResultType = false; break;
+    case Op::OpRayQueryProceedKHR: *hasResult = true; *hasResultType = true; break;
+    case Op::OpRayQueryGetIntersectionTypeKHR: *hasResult = true; *hasResultType = true; break;
+    case Op::OpRayQueryGetRayTMinKHR: *hasResult = true; *hasResultType = true; break;
+    case Op::OpRayQueryGetRayFlagsKHR: *hasResult = true; *hasResultType = true; break;
+    case Op::OpRayQueryGetIntersectionTKHR: *hasResult = true; *hasResultType = true; break;
+    case Op::OpRayQueryGetIntersectionInstanceCustomIndexKHR: *hasResult = true; *hasResultType = true; break;
+    case Op::OpRayQueryGetIntersectionInstanceIdKHR: *hasResult = true; *hasResultType = true; break;
+    case Op::OpRayQueryGetIntersectionInstanceShaderBindingTableRecordOffsetKHR: *hasResult = true; *hasResultType = true; break;
+    case Op::OpRayQueryGetIntersectionGeometryIndexKHR: *hasResult = true; *hasResultType = true; break;
+    case Op::OpRayQueryGetIntersectionPrimitiveIndexKHR: *hasResult = true; *hasResultType = true; break;
+    case Op::OpRayQueryGetIntersectionBarycentricsKHR: *hasResult = true; *hasResultType = true; break;
+    case Op::OpRayQueryGetIntersectionFrontFaceKHR: *hasResult = true; *hasResultType = true; break;
+    case Op::OpRayQueryGetIntersectionCandidateAABBOpaqueKHR: *hasResult = true; *hasResultType = true; break;
+    case Op::OpRayQueryGetIntersectionObjectRayDirectionKHR: *hasResult = true; *hasResultType = true; break;
+    case Op::OpRayQueryGetIntersectionObjectRayOriginKHR: *hasResult = true; *hasResultType = true; break;
+    case Op::OpRayQueryGetWorldRayDirectionKHR: *hasResult = true; *hasResultType = true; break;
+    case Op::OpRayQueryGetWorldRayOriginKHR: *hasResult = true; *hasResultType = true; break;
+    case Op::OpRayQueryGetIntersectionObjectToWorldKHR: *hasResult = true; *hasResultType = true; break;
+    case Op::OpRayQueryGetIntersectionWorldToObjectKHR: *hasResult = true; *hasResultType = true; break;
     case Op::OpExecuteCallableNV: *hasResult = false; *hasResultType = false; break;
     case Op::OpTypeCooperativeMatrixNV: *hasResult = true; *hasResultType = false; break;
     case Op::OpCooperativeMatrixLoadNV: *hasResult = true; *hasResultType = true; break;
@@ -2232,15 +1972,6 @@
     case Op::OpUSubSatINTEL: *hasResult = true; *hasResultType = true; break;
     case Op::OpIMul32x16INTEL: *hasResult = true; *hasResultType = true; break;
     case Op::OpUMul32x16INTEL: *hasResult = true; *hasResultType = true; break;
-    case Op::OpConstFunctionPointerINTEL: *hasResult = true; *hasResultType = true; break;
-    case Op::OpFunctionPointerCallINTEL: *hasResult = true; *hasResultType = true; break;
-    case Op::OpAsmTargetINTEL: *hasResult = true; *hasResultType = true; break;
-    case Op::OpAsmINTEL: *hasResult = true; *hasResultType = true; break;
-    case Op::OpAsmCallINTEL: *hasResult = true; *hasResultType = true; break;
-    case Op::OpAtomicFMinEXT: *hasResult = true; *hasResultType = true; break;
-    case Op::OpAtomicFMaxEXT: *hasResult = true; *hasResultType = true; break;
-    case Op::OpAssumeTrueKHR: *hasResult = false; *hasResultType = false; break;
-    case Op::OpExpectKHR: *hasResult = true; *hasResultType = true; break;
     case Op::OpDecorateString: *hasResult = false; *hasResultType = false; break;
     case Op::OpMemberDecorateString: *hasResult = false; *hasResultType = false; break;
     case Op::OpVmeImageINTEL: *hasResult = true; *hasResultType = true; break;
@@ -2361,89 +2092,6 @@
     case Op::OpSubgroupAvcSicGetPackedSkcLumaCountThresholdINTEL: *hasResult = true; *hasResultType = true; break;
     case Op::OpSubgroupAvcSicGetPackedSkcLumaSumThresholdINTEL: *hasResult = true; *hasResultType = true; break;
     case Op::OpSubgroupAvcSicGetInterRawSadsINTEL: *hasResult = true; *hasResultType = true; break;
-    case Op::OpVariableLengthArrayINTEL: *hasResult = true; *hasResultType = true; break;
-    case Op::OpSaveMemoryINTEL: *hasResult = true; *hasResultType = true; break;
-    case Op::OpRestoreMemoryINTEL: *hasResult = false; *hasResultType = false; break;
-    case Op::OpArbitraryFloatSinCosPiINTEL: *hasResult = true; *hasResultType = true; break;
-    case Op::OpArbitraryFloatCastINTEL: *hasResult = true; *hasResultType = true; break;
-    case Op::OpArbitraryFloatCastFromIntINTEL: *hasResult = true; *hasResultType = true; break;
-    case Op::OpArbitraryFloatCastToIntINTEL: *hasResult = true; *hasResultType = true; break;
-    case Op::OpArbitraryFloatAddINTEL: *hasResult = true; *hasResultType = true; break;
-    case Op::OpArbitraryFloatSubINTEL: *hasResult = true; *hasResultType = true; break;
-    case Op::OpArbitraryFloatMulINTEL: *hasResult = true; *hasResultType = true; break;
-    case Op::OpArbitraryFloatDivINTEL: *hasResult = true; *hasResultType = true; break;
-    case Op::OpArbitraryFloatGTINTEL: *hasResult = true; *hasResultType = true; break;
-    case Op::OpArbitraryFloatGEINTEL: *hasResult = true; *hasResultType = true; break;
-    case Op::OpArbitraryFloatLTINTEL: *hasResult = true; *hasResultType = true; break;
-    case Op::OpArbitraryFloatLEINTEL: *hasResult = true; *hasResultType = true; break;
-    case Op::OpArbitraryFloatEQINTEL: *hasResult = true; *hasResultType = true; break;
-    case Op::OpArbitraryFloatRecipINTEL: *hasResult = true; *hasResultType = true; break;
-    case Op::OpArbitraryFloatRSqrtINTEL: *hasResult = true; *hasResultType = true; break;
-    case Op::OpArbitraryFloatCbrtINTEL: *hasResult = true; *hasResultType = true; break;
-    case Op::OpArbitraryFloatHypotINTEL: *hasResult = true; *hasResultType = true; break;
-    case Op::OpArbitraryFloatSqrtINTEL: *hasResult = true; *hasResultType = true; break;
-    case Op::OpArbitraryFloatLogINTEL: *hasResult = true; *hasResultType = true; break;
-    case Op::OpArbitraryFloatLog2INTEL: *hasResult = true; *hasResultType = true; break;
-    case Op::OpArbitraryFloatLog10INTEL: *hasResult = true; *hasResultType = true; break;
-    case Op::OpArbitraryFloatLog1pINTEL: *hasResult = true; *hasResultType = true; break;
-    case Op::OpArbitraryFloatExpINTEL: *hasResult = true; *hasResultType = true; break;
-    case Op::OpArbitraryFloatExp2INTEL: *hasResult = true; *hasResultType = true; break;
-    case Op::OpArbitraryFloatExp10INTEL: *hasResult = true; *hasResultType = true; break;
-    case Op::OpArbitraryFloatExpm1INTEL: *hasResult = true; *hasResultType = true; break;
-    case Op::OpArbitraryFloatSinINTEL: *hasResult = true; *hasResultType = true; break;
-    case Op::OpArbitraryFloatCosINTEL: *hasResult = true; *hasResultType = true; break;
-    case Op::OpArbitraryFloatSinCosINTEL: *hasResult = true; *hasResultType = true; break;
-    case Op::OpArbitraryFloatSinPiINTEL: *hasResult = true; *hasResultType = true; break;
-    case Op::OpArbitraryFloatCosPiINTEL: *hasResult = true; *hasResultType = true; break;
-    case Op::OpArbitraryFloatASinINTEL: *hasResult = true; *hasResultType = true; break;
-    case Op::OpArbitraryFloatASinPiINTEL: *hasResult = true; *hasResultType = true; break;
-    case Op::OpArbitraryFloatACosINTEL: *hasResult = true; *hasResultType = true; break;
-    case Op::OpArbitraryFloatACosPiINTEL: *hasResult = true; *hasResultType = true; break;
-    case Op::OpArbitraryFloatATanINTEL: *hasResult = true; *hasResultType = true; break;
-    case Op::OpArbitraryFloatATanPiINTEL: *hasResult = true; *hasResultType = true; break;
-    case Op::OpArbitraryFloatATan2INTEL: *hasResult = true; *hasResultType = true; break;
-    case Op::OpArbitraryFloatPowINTEL: *hasResult = true; *hasResultType = true; break;
-    case Op::OpArbitraryFloatPowRINTEL: *hasResult = true; *hasResultType = true; break;
-    case Op::OpArbitraryFloatPowNINTEL: *hasResult = true; *hasResultType = true; break;
-    case Op::OpLoopControlINTEL: *hasResult = false; *hasResultType = false; break;
-    case Op::OpFixedSqrtINTEL: *hasResult = true; *hasResultType = true; break;
-    case Op::OpFixedRecipINTEL: *hasResult = true; *hasResultType = true; break;
-    case Op::OpFixedRsqrtINTEL: *hasResult = true; *hasResultType = true; break;
-    case Op::OpFixedSinINTEL: *hasResult = true; *hasResultType = true; break;
-    case Op::OpFixedCosINTEL: *hasResult = true; *hasResultType = true; break;
-    case Op::OpFixedSinCosINTEL: *hasResult = true; *hasResultType = true; break;
-    case Op::OpFixedSinPiINTEL: *hasResult = true; *hasResultType = true; break;
-    case Op::OpFixedCosPiINTEL: *hasResult = true; *hasResultType = true; break;
-    case Op::OpFixedSinCosPiINTEL: *hasResult = true; *hasResultType = true; break;
-    case Op::OpFixedLogINTEL: *hasResult = true; *hasResultType = true; break;
-    case Op::OpFixedExpINTEL: *hasResult = true; *hasResultType = true; break;
-    case Op::OpPtrCastToCrossWorkgroupINTEL: *hasResult = true; *hasResultType = true; break;
-    case Op::OpCrossWorkgroupCastToPtrINTEL: *hasResult = true; *hasResultType = true; break;
-    case Op::OpReadPipeBlockingINTEL: *hasResult = true; *hasResultType = true; break;
-    case Op::OpWritePipeBlockingINTEL: *hasResult = true; *hasResultType = true; break;
-    case Op::OpFPGARegINTEL: *hasResult = true; *hasResultType = true; break;
-    case Op::OpRayQueryGetRayTMinKHR: *hasResult = true; *hasResultType = true; break;
-    case Op::OpRayQueryGetRayFlagsKHR: *hasResult = true; *hasResultType = true; break;
-    case Op::OpRayQueryGetIntersectionTKHR: *hasResult = true; *hasResultType = true; break;
-    case Op::OpRayQueryGetIntersectionInstanceCustomIndexKHR: *hasResult = true; *hasResultType = true; break;
-    case Op::OpRayQueryGetIntersectionInstanceIdKHR: *hasResult = true; *hasResultType = true; break;
-    case Op::OpRayQueryGetIntersectionInstanceShaderBindingTableRecordOffsetKHR: *hasResult = true; *hasResultType = true; break;
-    case Op::OpRayQueryGetIntersectionGeometryIndexKHR: *hasResult = true; *hasResultType = true; break;
-    case Op::OpRayQueryGetIntersectionPrimitiveIndexKHR: *hasResult = true; *hasResultType = true; break;
-    case Op::OpRayQueryGetIntersectionBarycentricsKHR: *hasResult = true; *hasResultType = true; break;
-    case Op::OpRayQueryGetIntersectionFrontFaceKHR: *hasResult = true; *hasResultType = true; break;
-    case Op::OpRayQueryGetIntersectionCandidateAABBOpaqueKHR: *hasResult = true; *hasResultType = true; break;
-    case Op::OpRayQueryGetIntersectionObjectRayDirectionKHR: *hasResult = true; *hasResultType = true; break;
-    case Op::OpRayQueryGetIntersectionObjectRayOriginKHR: *hasResult = true; *hasResultType = true; break;
-    case Op::OpRayQueryGetWorldRayDirectionKHR: *hasResult = true; *hasResultType = true; break;
-    case Op::OpRayQueryGetWorldRayOriginKHR: *hasResult = true; *hasResultType = true; break;
-    case Op::OpRayQueryGetIntersectionObjectToWorldKHR: *hasResult = true; *hasResultType = true; break;
-    case Op::OpRayQueryGetIntersectionWorldToObjectKHR: *hasResult = true; *hasResultType = true; break;
-    case Op::OpAtomicFAddEXT: *hasResult = true; *hasResultType = true; break;
-    case Op::OpTypeBufferSurfaceINTEL: *hasResult = true; *hasResultType = false; break;
-    case Op::OpTypeStructContinuedINTEL: *hasResult = false; *hasResultType = false; break;
-    case Op::OpConstantCompositeContinuedINTEL: *hasResult = false; *hasResultType = false; break;
-    case Op::OpSpecConstantCompositeContinuedINTEL: *hasResult = false; *hasResultType = false; break;
     }
 }
 #endif /* SPV_ENABLE_UTILITY_CODE */
@@ -2459,7 +2107,6 @@
 inline MemoryAccessMask operator|(MemoryAccessMask a, MemoryAccessMask b) { return MemoryAccessMask(unsigned(a) | unsigned(b)); }
 inline KernelProfilingInfoMask operator|(KernelProfilingInfoMask a, KernelProfilingInfoMask b) { return KernelProfilingInfoMask(unsigned(a) | unsigned(b)); }
 inline RayFlagsMask operator|(RayFlagsMask a, RayFlagsMask b) { return RayFlagsMask(unsigned(a) | unsigned(b)); }
-inline FragmentShadingRateMask operator|(FragmentShadingRateMask a, FragmentShadingRateMask b) { return FragmentShadingRateMask(unsigned(a) | unsigned(b)); }
 
 }  // end namespace spv
 
diff --git a/include/spirv/unified1/spirv.json b/include/spirv/unified1/spirv.json
index 017b842..d372beb 100644
--- a/include/spirv/unified1/spirv.json
+++ b/include/spirv/unified1/spirv.json
@@ -55,7 +55,7 @@
             ],
             "MagicNumber": 119734787,
             "Version": 66816,
-            "Revision": 4,
+            "Revision": 1,
             "OpCodeMask": 65535,
             "WordCountShift": 16
         },
@@ -71,8 +71,7 @@
                     "GLSL": 2,
                     "OpenCL_C": 3,
                     "OpenCL_CPP": 4,
-                    "HLSL": 5,
-                    "CPP_for_OpenCL": 6
+                    "HLSL": 5
                 }
             },
             {
@@ -170,7 +169,6 @@
                     "SubgroupsPerWorkgroupId": 37,
                     "LocalSizeId": 38,
                     "LocalSizeHintId": 39,
-                    "SubgroupUniformControlFlowKHR": 4421,
                     "PostDepthCoverage": 4446,
                     "DenormPreserve": 4459,
                     "DenormFlushToZero": 4460,
@@ -188,17 +186,7 @@
                     "SampleInterlockOrderedEXT": 5368,
                     "SampleInterlockUnorderedEXT": 5369,
                     "ShadingRateInterlockOrderedEXT": 5370,
-                    "ShadingRateInterlockUnorderedEXT": 5371,
-                    "SharedLocalMemorySizeINTEL": 5618,
-                    "RoundingModeRTPINTEL": 5620,
-                    "RoundingModeRTNINTEL": 5621,
-                    "FloatingPointModeALTINTEL": 5622,
-                    "FloatingPointModeIEEEINTEL": 5623,
-                    "MaxWorkgroupSizeINTEL": 5893,
-                    "MaxWorkDimINTEL": 5894,
-                    "NoGlobalOffsetINTEL": 5895,
-                    "NumSIMDWorkitemsINTEL": 5896,
-                    "SchedulerTargetFmaxMhzINTEL": 5903
+                    "ShadingRateInterlockUnorderedEXT": 5371
                 }
             },
             {
@@ -232,10 +220,7 @@
                     "ShaderRecordBufferKHR": 5343,
                     "ShaderRecordBufferNV": 5343,
                     "PhysicalStorageBuffer": 5349,
-                    "PhysicalStorageBufferEXT": 5349,
-                    "CodeSectionINTEL": 5605,
-                    "DeviceOnlyINTEL": 5936,
-                    "HostOnlyINTEL": 5937
+                    "PhysicalStorageBufferEXT": 5349
                 }
             },
             {
@@ -317,9 +302,7 @@
                     "Rg16ui": 36,
                     "Rg8ui": 37,
                     "R16ui": 38,
-                    "R8ui": 39,
-                    "R64ui": 40,
-                    "R64i": 41
+                    "R8ui": 39
                 }
             },
             {
@@ -407,9 +390,7 @@
                     "NotInf": 1,
                     "NSZ": 2,
                     "AllowRecip": 3,
-                    "Fast": 4,
-                    "AllowContractFastINTEL": 16,
-                    "AllowReassocINTEL": 17
+                    "Fast": 4
                 }
             },
             {
@@ -429,8 +410,7 @@
                 "Values":
                 {
                     "Export": 0,
-                    "Import": 1,
-                    "LinkOnceODR": 2
+                    "Import": 1
                 }
             },
             {
@@ -527,45 +507,11 @@
                     "RestrictPointerEXT": 5355,
                     "AliasedPointer": 5356,
                     "AliasedPointerEXT": 5356,
-                    "SIMTCallINTEL": 5599,
-                    "ReferencedIndirectlyINTEL": 5602,
-                    "ClobberINTEL": 5607,
-                    "SideEffectsINTEL": 5608,
-                    "VectorComputeVariableINTEL": 5624,
-                    "FuncParamIOKindINTEL": 5625,
-                    "VectorComputeFunctionINTEL": 5626,
-                    "StackCallINTEL": 5627,
-                    "GlobalVariableOffsetINTEL": 5628,
                     "CounterBuffer": 5634,
                     "HlslCounterBufferGOOGLE": 5634,
                     "HlslSemanticGOOGLE": 5635,
                     "UserSemantic": 5635,
-                    "UserTypeGOOGLE": 5636,
-                    "FunctionRoundingModeINTEL": 5822,
-                    "FunctionDenormModeINTEL": 5823,
-                    "RegisterINTEL": 5825,
-                    "MemoryINTEL": 5826,
-                    "NumbanksINTEL": 5827,
-                    "BankwidthINTEL": 5828,
-                    "MaxPrivateCopiesINTEL": 5829,
-                    "SinglepumpINTEL": 5830,
-                    "DoublepumpINTEL": 5831,
-                    "MaxReplicatesINTEL": 5832,
-                    "SimpleDualPortINTEL": 5833,
-                    "MergeINTEL": 5834,
-                    "BankBitsINTEL": 5835,
-                    "ForcePow2DepthINTEL": 5836,
-                    "BurstCoalesceINTEL": 5899,
-                    "CacheSizeINTEL": 5900,
-                    "DontStaticallyCoalesceINTEL": 5901,
-                    "PrefetchINTEL": 5902,
-                    "StallEnableINTEL": 5905,
-                    "FuseLoopsInFunctionINTEL": 5907,
-                    "BufferLocationINTEL": 5921,
-                    "IOPipeStorageINTEL": 5944,
-                    "FunctionFloatingPointModeINTEL": 6080,
-                    "SingleElementVectorINTEL": 6085,
-                    "VectorComputeCallableFunctionINTEL": 6087
+                    "UserTypeGOOGLE": 5636
                 }
             },
             {
@@ -627,10 +573,8 @@
                     "BaseVertex": 4424,
                     "BaseInstance": 4425,
                     "DrawIndex": 4426,
-                    "PrimitiveShadingRateKHR": 4432,
                     "DeviceIndex": 4438,
                     "ViewIndex": 4440,
-                    "ShadingRateKHR": 4444,
                     "BaryCoordNoPerspAMD": 4992,
                     "BaryCoordNoPerspCentroidAMD": 4993,
                     "BaryCoordNoPerspSampleAMD": 4994,
@@ -681,10 +625,10 @@
                     "ObjectToWorldNV": 5330,
                     "WorldToObjectKHR": 5331,
                     "WorldToObjectNV": 5331,
+                    "HitTKHR": 5332,
                     "HitTNV": 5332,
                     "HitKindKHR": 5333,
                     "HitKindNV": 5333,
-                    "CurrentRayTimeNV": 5334,
                     "IncomingRayFlagsKHR": 5351,
                     "IncomingRayFlagsNV": 5351,
                     "RayGeometryIndexKHR": 5352,
@@ -716,15 +660,7 @@
                     "MaxIterations": 5,
                     "IterationMultiple": 6,
                     "PeelCount": 7,
-                    "PartialCount": 8,
-                    "InitiationIntervalINTEL": 16,
-                    "MaxConcurrencyINTEL": 17,
-                    "DependencyArrayINTEL": 18,
-                    "PipelineEnableINTEL": 19,
-                    "LoopCoalesceINTEL": 20,
-                    "MaxInterleavingINTEL": 21,
-                    "SpeculatedIterationsINTEL": 22,
-                    "NoFusionINTEL": 23
+                    "PartialCount": 8
                 }
             },
             {
@@ -735,8 +671,7 @@
                     "Inline": 0,
                     "DontInline": 1,
                     "Pure": 2,
-                    "Const": 3,
-                    "OptNoneINTEL": 16
+                    "Const": 3
                 }
             },
             {
@@ -900,12 +835,8 @@
                     "GroupNonUniformQuad": 68,
                     "ShaderLayer": 69,
                     "ShaderViewportIndex": 70,
-                    "FragmentShadingRateKHR": 4422,
                     "SubgroupBallotKHR": 4423,
                     "DrawParameters": 4427,
-                    "WorkgroupMemoryExplicitLayoutKHR": 4428,
-                    "WorkgroupMemoryExplicitLayout8BitAccessKHR": 4429,
-                    "WorkgroupMemoryExplicitLayout16BitAccessKHR": 4430,
                     "SubgroupVoteKHR": 4431,
                     "StorageBuffer16BitAccess": 4433,
                     "StorageUniformBufferBlock16": 4433,
@@ -928,15 +859,12 @@
                     "RoundingModeRTE": 4467,
                     "RoundingModeRTZ": 4468,
                     "RayQueryProvisionalKHR": 4471,
-                    "RayQueryKHR": 4472,
-                    "RayTraversalPrimitiveCullingKHR": 4478,
-                    "RayTracingKHR": 4479,
+                    "RayTraversalPrimitiveCullingProvisionalKHR": 4478,
                     "Float16ImageAMD": 5008,
                     "ImageGatherBiasLodAMD": 5009,
                     "FragmentMaskAMD": 5010,
                     "StencilExportEXT": 5013,
                     "ImageReadWriteLodAMD": 5015,
-                    "Int64ImageEXT": 5016,
                     "ShaderClockKHR": 5055,
                     "SampleMaskOverrideCoverageNV": 5249,
                     "GeometryShaderPassthroughNV": 5251,
@@ -978,7 +906,6 @@
                     "StorageTexelBufferArrayNonUniformIndexing": 5312,
                     "StorageTexelBufferArrayNonUniformIndexingEXT": 5312,
                     "RayTracingNV": 5340,
-                    "RayTracingMotionBlurNV": 5341,
                     "VulkanMemoryModel": 5345,
                     "VulkanMemoryModelKHR": 5345,
                     "VulkanMemoryModelDeviceScope": 5346,
@@ -997,51 +924,10 @@
                     "SubgroupBufferBlockIOINTEL": 5569,
                     "SubgroupImageBlockIOINTEL": 5570,
                     "SubgroupImageMediaBlockIOINTEL": 5579,
-                    "RoundToInfinityINTEL": 5582,
-                    "FloatingPointModeINTEL": 5583,
                     "IntegerFunctions2INTEL": 5584,
-                    "FunctionPointersINTEL": 5603,
-                    "IndirectReferencesINTEL": 5604,
-                    "AsmINTEL": 5606,
-                    "AtomicFloat32MinMaxEXT": 5612,
-                    "AtomicFloat64MinMaxEXT": 5613,
-                    "AtomicFloat16MinMaxEXT": 5616,
-                    "VectorComputeINTEL": 5617,
-                    "VectorAnyINTEL": 5619,
-                    "ExpectAssumeKHR": 5629,
                     "SubgroupAvcMotionEstimationINTEL": 5696,
                     "SubgroupAvcMotionEstimationIntraINTEL": 5697,
-                    "SubgroupAvcMotionEstimationChromaINTEL": 5698,
-                    "VariableLengthArrayINTEL": 5817,
-                    "FunctionFloatControlINTEL": 5821,
-                    "FPGAMemoryAttributesINTEL": 5824,
-                    "FPFastMathModeINTEL": 5837,
-                    "ArbitraryPrecisionIntegersINTEL": 5844,
-                    "ArbitraryPrecisionFloatingPointINTEL": 5845,
-                    "UnstructuredLoopControlsINTEL": 5886,
-                    "FPGALoopControlsINTEL": 5888,
-                    "KernelAttributesINTEL": 5892,
-                    "FPGAKernelAttributesINTEL": 5897,
-                    "FPGAMemoryAccessesINTEL": 5898,
-                    "FPGAClusterAttributesINTEL": 5904,
-                    "LoopFuseINTEL": 5906,
-                    "FPGABufferLocationINTEL": 5920,
-                    "ArbitraryPrecisionFixedPointINTEL": 5922,
-                    "USMStorageClassesINTEL": 5935,
-                    "IOPipesINTEL": 5943,
-                    "BlockingPipesINTEL": 5945,
-                    "FPGARegINTEL": 5948,
-                    "DotProductInputAllKHR": 6016,
-                    "DotProductInput4x8BitKHR": 6017,
-                    "DotProductInput4x8BitPackedKHR": 6018,
-                    "DotProductKHR": 6019,
-                    "BitInstructions": 6025,
-                    "AtomicFloat32AddEXT": 6033,
-                    "AtomicFloat64AddEXT": 6034,
-                    "LongConstantCompositeINTEL": 6089,
-                    "OptNoneINTEL": 6094,
-                    "AtomicFloat16AddEXT": 6095,
-                    "DebugInfoModuleINTEL": 6114
+                    "SubgroupAvcMotionEstimationChromaINTEL": 5698
                 }
             },
             {
@@ -1090,69 +976,6 @@
                 }
             },
             {
-                "Name": "FragmentShadingRate",
-                "Type": "Bit",
-                "Values":
-                {
-                    "Vertical2Pixels": 0,
-                    "Vertical4Pixels": 1,
-                    "Horizontal2Pixels": 2,
-                    "Horizontal4Pixels": 3
-                }
-            },
-            {
-                "Name": "FPDenormMode",
-                "Type": "Value",
-                "Values":
-                {
-                    "Preserve": 0,
-                    "FlushToZero": 1
-                }
-            },
-            {
-                "Name": "FPOperationMode",
-                "Type": "Value",
-                "Values":
-                {
-                    "IEEE": 0,
-                    "ALT": 1
-                }
-            },
-            {
-                "Name": "QuantizationModes",
-                "Type": "Value",
-                "Values":
-                {
-                    "TRN": 0,
-                    "TRN_ZERO": 1,
-                    "RND": 2,
-                    "RND_ZERO": 3,
-                    "RND_INF": 4,
-                    "RND_MIN_INF": 5,
-                    "RND_CONV": 6,
-                    "RND_CONV_ODD": 7
-                }
-            },
-            {
-                "Name": "OverflowModes",
-                "Type": "Value",
-                "Values":
-                {
-                    "WRAP": 0,
-                    "SAT": 1,
-                    "SAT_ZERO": 2,
-                    "SAT_SYM": 3
-                }
-            },
-            {
-                "Name": "PackedVectorFormat",
-                "Type": "Value",
-                "Values":
-                {
-                    "PackedVectorFormat4x8BitKHR": 0
-                }
-            },
-            {
                 "Name": "Op",
                 "Type": "Value",
                 "Values":
@@ -1501,25 +1324,13 @@
                     "OpPtrEqual": 401,
                     "OpPtrNotEqual": 402,
                     "OpPtrDiff": 403,
-                    "OpTerminateInvocation": 4416,
                     "OpSubgroupBallotKHR": 4421,
                     "OpSubgroupFirstInvocationKHR": 4422,
                     "OpSubgroupAllKHR": 4428,
                     "OpSubgroupAnyKHR": 4429,
                     "OpSubgroupAllEqualKHR": 4430,
                     "OpSubgroupReadInvocationKHR": 4432,
-                    "OpTraceRayKHR": 4445,
-                    "OpExecuteCallableKHR": 4446,
-                    "OpConvertUToAccelerationStructureKHR": 4447,
-                    "OpIgnoreIntersectionKHR": 4448,
-                    "OpTerminateRayKHR": 4449,
-                    "OpSDotKHR": 4450,
-                    "OpUDotKHR": 4451,
-                    "OpSUDotKHR": 4452,
-                    "OpSDotAccSatKHR": 4453,
-                    "OpUDotAccSatKHR": 4454,
-                    "OpSUDotAccSatKHR": 4455,
-                    "OpTypeRayQueryKHR": 4472,
+                    "OpTypeRayQueryProvisionalKHR": 4472,
                     "OpRayQueryInitializeKHR": 4473,
                     "OpRayQueryTerminateKHR": 4474,
                     "OpRayQueryGenerateIntersectionKHR": 4475,
@@ -1542,13 +1353,15 @@
                     "OpWritePackedPrimitiveIndices4x8NV": 5299,
                     "OpReportIntersectionKHR": 5334,
                     "OpReportIntersectionNV": 5334,
+                    "OpIgnoreIntersectionKHR": 5335,
                     "OpIgnoreIntersectionNV": 5335,
+                    "OpTerminateRayKHR": 5336,
                     "OpTerminateRayNV": 5336,
                     "OpTraceNV": 5337,
-                    "OpTraceMotionNV": 5338,
-                    "OpTraceRayMotionNV": 5339,
+                    "OpTraceRayKHR": 5337,
                     "OpTypeAccelerationStructureKHR": 5341,
                     "OpTypeAccelerationStructureNV": 5341,
+                    "OpExecuteCallableKHR": 5344,
                     "OpExecuteCallableNV": 5344,
                     "OpTypeCooperativeMatrixNV": 5358,
                     "OpCooperativeMatrixLoadNV": 5359,
@@ -1583,15 +1396,6 @@
                     "OpUSubSatINTEL": 5596,
                     "OpIMul32x16INTEL": 5597,
                     "OpUMul32x16INTEL": 5598,
-                    "OpConstFunctionPointerINTEL": 5600,
-                    "OpFunctionPointerCallINTEL": 5601,
-                    "OpAsmTargetINTEL": 5609,
-                    "OpAsmINTEL": 5610,
-                    "OpAsmCallINTEL": 5611,
-                    "OpAtomicFMinEXT": 5614,
-                    "OpAtomicFMaxEXT": 5615,
-                    "OpAssumeTrueKHR": 5630,
-                    "OpExpectKHR": 5631,
                     "OpDecorateString": 5632,
                     "OpDecorateStringGOOGLE": 5632,
                     "OpMemberDecorateString": 5633,
@@ -1714,67 +1518,6 @@
                     "OpSubgroupAvcSicGetPackedSkcLumaCountThresholdINTEL": 5814,
                     "OpSubgroupAvcSicGetPackedSkcLumaSumThresholdINTEL": 5815,
                     "OpSubgroupAvcSicGetInterRawSadsINTEL": 5816,
-                    "OpVariableLengthArrayINTEL": 5818,
-                    "OpSaveMemoryINTEL": 5819,
-                    "OpRestoreMemoryINTEL": 5820,
-                    "OpArbitraryFloatSinCosPiINTEL": 5840,
-                    "OpArbitraryFloatCastINTEL": 5841,
-                    "OpArbitraryFloatCastFromIntINTEL": 5842,
-                    "OpArbitraryFloatCastToIntINTEL": 5843,
-                    "OpArbitraryFloatAddINTEL": 5846,
-                    "OpArbitraryFloatSubINTEL": 5847,
-                    "OpArbitraryFloatMulINTEL": 5848,
-                    "OpArbitraryFloatDivINTEL": 5849,
-                    "OpArbitraryFloatGTINTEL": 5850,
-                    "OpArbitraryFloatGEINTEL": 5851,
-                    "OpArbitraryFloatLTINTEL": 5852,
-                    "OpArbitraryFloatLEINTEL": 5853,
-                    "OpArbitraryFloatEQINTEL": 5854,
-                    "OpArbitraryFloatRecipINTEL": 5855,
-                    "OpArbitraryFloatRSqrtINTEL": 5856,
-                    "OpArbitraryFloatCbrtINTEL": 5857,
-                    "OpArbitraryFloatHypotINTEL": 5858,
-                    "OpArbitraryFloatSqrtINTEL": 5859,
-                    "OpArbitraryFloatLogINTEL": 5860,
-                    "OpArbitraryFloatLog2INTEL": 5861,
-                    "OpArbitraryFloatLog10INTEL": 5862,
-                    "OpArbitraryFloatLog1pINTEL": 5863,
-                    "OpArbitraryFloatExpINTEL": 5864,
-                    "OpArbitraryFloatExp2INTEL": 5865,
-                    "OpArbitraryFloatExp10INTEL": 5866,
-                    "OpArbitraryFloatExpm1INTEL": 5867,
-                    "OpArbitraryFloatSinINTEL": 5868,
-                    "OpArbitraryFloatCosINTEL": 5869,
-                    "OpArbitraryFloatSinCosINTEL": 5870,
-                    "OpArbitraryFloatSinPiINTEL": 5871,
-                    "OpArbitraryFloatCosPiINTEL": 5872,
-                    "OpArbitraryFloatASinINTEL": 5873,
-                    "OpArbitraryFloatASinPiINTEL": 5874,
-                    "OpArbitraryFloatACosINTEL": 5875,
-                    "OpArbitraryFloatACosPiINTEL": 5876,
-                    "OpArbitraryFloatATanINTEL": 5877,
-                    "OpArbitraryFloatATanPiINTEL": 5878,
-                    "OpArbitraryFloatATan2INTEL": 5879,
-                    "OpArbitraryFloatPowINTEL": 5880,
-                    "OpArbitraryFloatPowRINTEL": 5881,
-                    "OpArbitraryFloatPowNINTEL": 5882,
-                    "OpLoopControlINTEL": 5887,
-                    "OpFixedSqrtINTEL": 5923,
-                    "OpFixedRecipINTEL": 5924,
-                    "OpFixedRsqrtINTEL": 5925,
-                    "OpFixedSinINTEL": 5926,
-                    "OpFixedCosINTEL": 5927,
-                    "OpFixedSinCosINTEL": 5928,
-                    "OpFixedSinPiINTEL": 5929,
-                    "OpFixedCosPiINTEL": 5930,
-                    "OpFixedSinCosPiINTEL": 5931,
-                    "OpFixedLogINTEL": 5932,
-                    "OpFixedExpINTEL": 5933,
-                    "OpPtrCastToCrossWorkgroupINTEL": 5934,
-                    "OpCrossWorkgroupCastToPtrINTEL": 5938,
-                    "OpReadPipeBlockingINTEL": 5946,
-                    "OpWritePipeBlockingINTEL": 5947,
-                    "OpFPGARegINTEL": 5949,
                     "OpRayQueryGetRayTMinKHR": 6016,
                     "OpRayQueryGetRayFlagsKHR": 6017,
                     "OpRayQueryGetIntersectionTKHR": 6018,
@@ -1791,12 +1534,7 @@
                     "OpRayQueryGetWorldRayDirectionKHR": 6029,
                     "OpRayQueryGetWorldRayOriginKHR": 6030,
                     "OpRayQueryGetIntersectionObjectToWorldKHR": 6031,
-                    "OpRayQueryGetIntersectionWorldToObjectKHR": 6032,
-                    "OpAtomicFAddEXT": 6035,
-                    "OpTypeBufferSurfaceINTEL": 6086,
-                    "OpTypeStructContinuedINTEL": 6090,
-                    "OpConstantCompositeContinuedINTEL": 6091,
-                    "OpSpecConstantCompositeContinuedINTEL": 6092
+                    "OpRayQueryGetIntersectionWorldToObjectKHR": 6032
                 }
             }
         ]
diff --git a/include/spirv/unified1/spirv.lua b/include/spirv/unified1/spirv.lua
index 46665d8..3774a95 100644
--- a/include/spirv/unified1/spirv.lua
+++ b/include/spirv/unified1/spirv.lua
@@ -45,7 +45,7 @@
 spv = {
     MagicNumber = 0x07230203,
     Version = 0x00010500,
-    Revision = 4,
+    Revision = 1,
     OpCodeMask = 0xffff,
     WordCountShift = 16,
 
@@ -56,7 +56,6 @@
         OpenCL_C = 3,
         OpenCL_CPP = 4,
         HLSL = 5,
-        CPP_for_OpenCL = 6,
     },
 
     ExecutionModel = {
@@ -138,7 +137,6 @@
         SubgroupsPerWorkgroupId = 37,
         LocalSizeId = 38,
         LocalSizeHintId = 39,
-        SubgroupUniformControlFlowKHR = 4421,
         PostDepthCoverage = 4446,
         DenormPreserve = 4459,
         DenormFlushToZero = 4460,
@@ -157,16 +155,6 @@
         SampleInterlockUnorderedEXT = 5369,
         ShadingRateInterlockOrderedEXT = 5370,
         ShadingRateInterlockUnorderedEXT = 5371,
-        SharedLocalMemorySizeINTEL = 5618,
-        RoundingModeRTPINTEL = 5620,
-        RoundingModeRTNINTEL = 5621,
-        FloatingPointModeALTINTEL = 5622,
-        FloatingPointModeIEEEINTEL = 5623,
-        MaxWorkgroupSizeINTEL = 5893,
-        MaxWorkDimINTEL = 5894,
-        NoGlobalOffsetINTEL = 5895,
-        NumSIMDWorkitemsINTEL = 5896,
-        SchedulerTargetFmaxMhzINTEL = 5903,
     },
 
     StorageClass = {
@@ -197,9 +185,6 @@
         ShaderRecordBufferNV = 5343,
         PhysicalStorageBuffer = 5349,
         PhysicalStorageBufferEXT = 5349,
-        CodeSectionINTEL = 5605,
-        DeviceOnlyINTEL = 5936,
-        HostOnlyINTEL = 5937,
     },
 
     Dim = {
@@ -266,8 +251,6 @@
         Rg8ui = 37,
         R16ui = 38,
         R8ui = 39,
-        R64ui = 40,
-        R64i = 41,
     },
 
     ImageChannelOrder = {
@@ -362,8 +345,6 @@
         NSZ = 2,
         AllowRecip = 3,
         Fast = 4,
-        AllowContractFastINTEL = 16,
-        AllowReassocINTEL = 17,
     },
 
     FPFastMathModeMask = {
@@ -373,8 +354,6 @@
         NSZ = 0x00000004,
         AllowRecip = 0x00000008,
         Fast = 0x00000010,
-        AllowContractFastINTEL = 0x00010000,
-        AllowReassocINTEL = 0x00020000,
     },
 
     FPRoundingMode = {
@@ -387,7 +366,6 @@
     LinkageType = {
         Export = 0,
         Import = 1,
-        LinkOnceODR = 2,
     },
 
     AccessQualifier = {
@@ -472,45 +450,11 @@
         RestrictPointerEXT = 5355,
         AliasedPointer = 5356,
         AliasedPointerEXT = 5356,
-        SIMTCallINTEL = 5599,
-        ReferencedIndirectlyINTEL = 5602,
-        ClobberINTEL = 5607,
-        SideEffectsINTEL = 5608,
-        VectorComputeVariableINTEL = 5624,
-        FuncParamIOKindINTEL = 5625,
-        VectorComputeFunctionINTEL = 5626,
-        StackCallINTEL = 5627,
-        GlobalVariableOffsetINTEL = 5628,
         CounterBuffer = 5634,
         HlslCounterBufferGOOGLE = 5634,
         HlslSemanticGOOGLE = 5635,
         UserSemantic = 5635,
         UserTypeGOOGLE = 5636,
-        FunctionRoundingModeINTEL = 5822,
-        FunctionDenormModeINTEL = 5823,
-        RegisterINTEL = 5825,
-        MemoryINTEL = 5826,
-        NumbanksINTEL = 5827,
-        BankwidthINTEL = 5828,
-        MaxPrivateCopiesINTEL = 5829,
-        SinglepumpINTEL = 5830,
-        DoublepumpINTEL = 5831,
-        MaxReplicatesINTEL = 5832,
-        SimpleDualPortINTEL = 5833,
-        MergeINTEL = 5834,
-        BankBitsINTEL = 5835,
-        ForcePow2DepthINTEL = 5836,
-        BurstCoalesceINTEL = 5899,
-        CacheSizeINTEL = 5900,
-        DontStaticallyCoalesceINTEL = 5901,
-        PrefetchINTEL = 5902,
-        StallEnableINTEL = 5905,
-        FuseLoopsInFunctionINTEL = 5907,
-        BufferLocationINTEL = 5921,
-        IOPipeStorageINTEL = 5944,
-        FunctionFloatingPointModeINTEL = 6080,
-        SingleElementVectorINTEL = 6085,
-        VectorComputeCallableFunctionINTEL = 6087,
     },
 
     BuiltIn = {
@@ -568,10 +512,8 @@
         BaseVertex = 4424,
         BaseInstance = 4425,
         DrawIndex = 4426,
-        PrimitiveShadingRateKHR = 4432,
         DeviceIndex = 4438,
         ViewIndex = 4440,
-        ShadingRateKHR = 4444,
         BaryCoordNoPerspAMD = 4992,
         BaryCoordNoPerspCentroidAMD = 4993,
         BaryCoordNoPerspSampleAMD = 4994,
@@ -622,10 +564,10 @@
         ObjectToWorldNV = 5330,
         WorldToObjectKHR = 5331,
         WorldToObjectNV = 5331,
+        HitTKHR = 5332,
         HitTNV = 5332,
         HitKindKHR = 5333,
         HitKindNV = 5333,
-        CurrentRayTimeNV = 5334,
         IncomingRayFlagsKHR = 5351,
         IncomingRayFlagsNV = 5351,
         RayGeometryIndexKHR = 5352,
@@ -656,14 +598,6 @@
         IterationMultiple = 6,
         PeelCount = 7,
         PartialCount = 8,
-        InitiationIntervalINTEL = 16,
-        MaxConcurrencyINTEL = 17,
-        DependencyArrayINTEL = 18,
-        PipelineEnableINTEL = 19,
-        LoopCoalesceINTEL = 20,
-        MaxInterleavingINTEL = 21,
-        SpeculatedIterationsINTEL = 22,
-        NoFusionINTEL = 23,
     },
 
     LoopControlMask = {
@@ -677,14 +611,6 @@
         IterationMultiple = 0x00000040,
         PeelCount = 0x00000080,
         PartialCount = 0x00000100,
-        InitiationIntervalINTEL = 0x00010000,
-        MaxConcurrencyINTEL = 0x00020000,
-        DependencyArrayINTEL = 0x00040000,
-        PipelineEnableINTEL = 0x00080000,
-        LoopCoalesceINTEL = 0x00100000,
-        MaxInterleavingINTEL = 0x00200000,
-        SpeculatedIterationsINTEL = 0x00400000,
-        NoFusionINTEL = 0x00800000,
     },
 
     FunctionControlShift = {
@@ -692,7 +618,6 @@
         DontInline = 1,
         Pure = 2,
         Const = 3,
-        OptNoneINTEL = 16,
     },
 
     FunctionControlMask = {
@@ -701,7 +626,6 @@
         DontInline = 0x00000002,
         Pure = 0x00000004,
         Const = 0x00000008,
-        OptNoneINTEL = 0x00010000,
     },
 
     MemorySemanticsShift = {
@@ -876,12 +800,8 @@
         GroupNonUniformQuad = 68,
         ShaderLayer = 69,
         ShaderViewportIndex = 70,
-        FragmentShadingRateKHR = 4422,
         SubgroupBallotKHR = 4423,
         DrawParameters = 4427,
-        WorkgroupMemoryExplicitLayoutKHR = 4428,
-        WorkgroupMemoryExplicitLayout8BitAccessKHR = 4429,
-        WorkgroupMemoryExplicitLayout16BitAccessKHR = 4430,
         SubgroupVoteKHR = 4431,
         StorageBuffer16BitAccess = 4433,
         StorageUniformBufferBlock16 = 4433,
@@ -904,15 +824,12 @@
         RoundingModeRTE = 4467,
         RoundingModeRTZ = 4468,
         RayQueryProvisionalKHR = 4471,
-        RayQueryKHR = 4472,
-        RayTraversalPrimitiveCullingKHR = 4478,
-        RayTracingKHR = 4479,
+        RayTraversalPrimitiveCullingProvisionalKHR = 4478,
         Float16ImageAMD = 5008,
         ImageGatherBiasLodAMD = 5009,
         FragmentMaskAMD = 5010,
         StencilExportEXT = 5013,
         ImageReadWriteLodAMD = 5015,
-        Int64ImageEXT = 5016,
         ShaderClockKHR = 5055,
         SampleMaskOverrideCoverageNV = 5249,
         GeometryShaderPassthroughNV = 5251,
@@ -954,7 +871,6 @@
         StorageTexelBufferArrayNonUniformIndexing = 5312,
         StorageTexelBufferArrayNonUniformIndexingEXT = 5312,
         RayTracingNV = 5340,
-        RayTracingMotionBlurNV = 5341,
         VulkanMemoryModel = 5345,
         VulkanMemoryModelKHR = 5345,
         VulkanMemoryModelDeviceScope = 5346,
@@ -973,51 +889,10 @@
         SubgroupBufferBlockIOINTEL = 5569,
         SubgroupImageBlockIOINTEL = 5570,
         SubgroupImageMediaBlockIOINTEL = 5579,
-        RoundToInfinityINTEL = 5582,
-        FloatingPointModeINTEL = 5583,
         IntegerFunctions2INTEL = 5584,
-        FunctionPointersINTEL = 5603,
-        IndirectReferencesINTEL = 5604,
-        AsmINTEL = 5606,
-        AtomicFloat32MinMaxEXT = 5612,
-        AtomicFloat64MinMaxEXT = 5613,
-        AtomicFloat16MinMaxEXT = 5616,
-        VectorComputeINTEL = 5617,
-        VectorAnyINTEL = 5619,
-        ExpectAssumeKHR = 5629,
         SubgroupAvcMotionEstimationINTEL = 5696,
         SubgroupAvcMotionEstimationIntraINTEL = 5697,
         SubgroupAvcMotionEstimationChromaINTEL = 5698,
-        VariableLengthArrayINTEL = 5817,
-        FunctionFloatControlINTEL = 5821,
-        FPGAMemoryAttributesINTEL = 5824,
-        FPFastMathModeINTEL = 5837,
-        ArbitraryPrecisionIntegersINTEL = 5844,
-        ArbitraryPrecisionFloatingPointINTEL = 5845,
-        UnstructuredLoopControlsINTEL = 5886,
-        FPGALoopControlsINTEL = 5888,
-        KernelAttributesINTEL = 5892,
-        FPGAKernelAttributesINTEL = 5897,
-        FPGAMemoryAccessesINTEL = 5898,
-        FPGAClusterAttributesINTEL = 5904,
-        LoopFuseINTEL = 5906,
-        FPGABufferLocationINTEL = 5920,
-        ArbitraryPrecisionFixedPointINTEL = 5922,
-        USMStorageClassesINTEL = 5935,
-        IOPipesINTEL = 5943,
-        BlockingPipesINTEL = 5945,
-        FPGARegINTEL = 5948,
-        DotProductInputAllKHR = 6016,
-        DotProductInput4x8BitKHR = 6017,
-        DotProductInput4x8BitPackedKHR = 6018,
-        DotProductKHR = 6019,
-        BitInstructions = 6025,
-        AtomicFloat32AddEXT = 6033,
-        AtomicFloat64AddEXT = 6034,
-        LongConstantCompositeINTEL = 6089,
-        OptNoneINTEL = 6094,
-        AtomicFloat16AddEXT = 6095,
-        DebugInfoModuleINTEL = 6114,
     },
 
     RayFlagsShift = {
@@ -1063,53 +938,6 @@
         RayQueryCandidateIntersectionAABBKHR = 1,
     },
 
-    FragmentShadingRateShift = {
-        Vertical2Pixels = 0,
-        Vertical4Pixels = 1,
-        Horizontal2Pixels = 2,
-        Horizontal4Pixels = 3,
-    },
-
-    FragmentShadingRateMask = {
-        MaskNone = 0,
-        Vertical2Pixels = 0x00000001,
-        Vertical4Pixels = 0x00000002,
-        Horizontal2Pixels = 0x00000004,
-        Horizontal4Pixels = 0x00000008,
-    },
-
-    FPDenormMode = {
-        Preserve = 0,
-        FlushToZero = 1,
-    },
-
-    FPOperationMode = {
-        IEEE = 0,
-        ALT = 1,
-    },
-
-    QuantizationModes = {
-        TRN = 0,
-        TRN_ZERO = 1,
-        RND = 2,
-        RND_ZERO = 3,
-        RND_INF = 4,
-        RND_MIN_INF = 5,
-        RND_CONV = 6,
-        RND_CONV_ODD = 7,
-    },
-
-    OverflowModes = {
-        WRAP = 0,
-        SAT = 1,
-        SAT_ZERO = 2,
-        SAT_SYM = 3,
-    },
-
-    PackedVectorFormat = {
-        PackedVectorFormat4x8BitKHR = 0,
-    },
-
     Op = {
         OpNop = 0,
         OpUndef = 1,
@@ -1455,25 +1283,13 @@
         OpPtrEqual = 401,
         OpPtrNotEqual = 402,
         OpPtrDiff = 403,
-        OpTerminateInvocation = 4416,
         OpSubgroupBallotKHR = 4421,
         OpSubgroupFirstInvocationKHR = 4422,
         OpSubgroupAllKHR = 4428,
         OpSubgroupAnyKHR = 4429,
         OpSubgroupAllEqualKHR = 4430,
         OpSubgroupReadInvocationKHR = 4432,
-        OpTraceRayKHR = 4445,
-        OpExecuteCallableKHR = 4446,
-        OpConvertUToAccelerationStructureKHR = 4447,
-        OpIgnoreIntersectionKHR = 4448,
-        OpTerminateRayKHR = 4449,
-        OpSDotKHR = 4450,
-        OpUDotKHR = 4451,
-        OpSUDotKHR = 4452,
-        OpSDotAccSatKHR = 4453,
-        OpUDotAccSatKHR = 4454,
-        OpSUDotAccSatKHR = 4455,
-        OpTypeRayQueryKHR = 4472,
+        OpTypeRayQueryProvisionalKHR = 4472,
         OpRayQueryInitializeKHR = 4473,
         OpRayQueryTerminateKHR = 4474,
         OpRayQueryGenerateIntersectionKHR = 4475,
@@ -1496,13 +1312,15 @@
         OpWritePackedPrimitiveIndices4x8NV = 5299,
         OpReportIntersectionKHR = 5334,
         OpReportIntersectionNV = 5334,
+        OpIgnoreIntersectionKHR = 5335,
         OpIgnoreIntersectionNV = 5335,
+        OpTerminateRayKHR = 5336,
         OpTerminateRayNV = 5336,
         OpTraceNV = 5337,
-        OpTraceMotionNV = 5338,
-        OpTraceRayMotionNV = 5339,
+        OpTraceRayKHR = 5337,
         OpTypeAccelerationStructureKHR = 5341,
         OpTypeAccelerationStructureNV = 5341,
+        OpExecuteCallableKHR = 5344,
         OpExecuteCallableNV = 5344,
         OpTypeCooperativeMatrixNV = 5358,
         OpCooperativeMatrixLoadNV = 5359,
@@ -1537,15 +1355,6 @@
         OpUSubSatINTEL = 5596,
         OpIMul32x16INTEL = 5597,
         OpUMul32x16INTEL = 5598,
-        OpConstFunctionPointerINTEL = 5600,
-        OpFunctionPointerCallINTEL = 5601,
-        OpAsmTargetINTEL = 5609,
-        OpAsmINTEL = 5610,
-        OpAsmCallINTEL = 5611,
-        OpAtomicFMinEXT = 5614,
-        OpAtomicFMaxEXT = 5615,
-        OpAssumeTrueKHR = 5630,
-        OpExpectKHR = 5631,
         OpDecorateString = 5632,
         OpDecorateStringGOOGLE = 5632,
         OpMemberDecorateString = 5633,
@@ -1668,67 +1477,6 @@
         OpSubgroupAvcSicGetPackedSkcLumaCountThresholdINTEL = 5814,
         OpSubgroupAvcSicGetPackedSkcLumaSumThresholdINTEL = 5815,
         OpSubgroupAvcSicGetInterRawSadsINTEL = 5816,
-        OpVariableLengthArrayINTEL = 5818,
-        OpSaveMemoryINTEL = 5819,
-        OpRestoreMemoryINTEL = 5820,
-        OpArbitraryFloatSinCosPiINTEL = 5840,
-        OpArbitraryFloatCastINTEL = 5841,
-        OpArbitraryFloatCastFromIntINTEL = 5842,
-        OpArbitraryFloatCastToIntINTEL = 5843,
-        OpArbitraryFloatAddINTEL = 5846,
-        OpArbitraryFloatSubINTEL = 5847,
-        OpArbitraryFloatMulINTEL = 5848,
-        OpArbitraryFloatDivINTEL = 5849,
-        OpArbitraryFloatGTINTEL = 5850,
-        OpArbitraryFloatGEINTEL = 5851,
-        OpArbitraryFloatLTINTEL = 5852,
-        OpArbitraryFloatLEINTEL = 5853,
-        OpArbitraryFloatEQINTEL = 5854,
-        OpArbitraryFloatRecipINTEL = 5855,
-        OpArbitraryFloatRSqrtINTEL = 5856,
-        OpArbitraryFloatCbrtINTEL = 5857,
-        OpArbitraryFloatHypotINTEL = 5858,
-        OpArbitraryFloatSqrtINTEL = 5859,
-        OpArbitraryFloatLogINTEL = 5860,
-        OpArbitraryFloatLog2INTEL = 5861,
-        OpArbitraryFloatLog10INTEL = 5862,
-        OpArbitraryFloatLog1pINTEL = 5863,
-        OpArbitraryFloatExpINTEL = 5864,
-        OpArbitraryFloatExp2INTEL = 5865,
-        OpArbitraryFloatExp10INTEL = 5866,
-        OpArbitraryFloatExpm1INTEL = 5867,
-        OpArbitraryFloatSinINTEL = 5868,
-        OpArbitraryFloatCosINTEL = 5869,
-        OpArbitraryFloatSinCosINTEL = 5870,
-        OpArbitraryFloatSinPiINTEL = 5871,
-        OpArbitraryFloatCosPiINTEL = 5872,
-        OpArbitraryFloatASinINTEL = 5873,
-        OpArbitraryFloatASinPiINTEL = 5874,
-        OpArbitraryFloatACosINTEL = 5875,
-        OpArbitraryFloatACosPiINTEL = 5876,
-        OpArbitraryFloatATanINTEL = 5877,
-        OpArbitraryFloatATanPiINTEL = 5878,
-        OpArbitraryFloatATan2INTEL = 5879,
-        OpArbitraryFloatPowINTEL = 5880,
-        OpArbitraryFloatPowRINTEL = 5881,
-        OpArbitraryFloatPowNINTEL = 5882,
-        OpLoopControlINTEL = 5887,
-        OpFixedSqrtINTEL = 5923,
-        OpFixedRecipINTEL = 5924,
-        OpFixedRsqrtINTEL = 5925,
-        OpFixedSinINTEL = 5926,
-        OpFixedCosINTEL = 5927,
-        OpFixedSinCosINTEL = 5928,
-        OpFixedSinPiINTEL = 5929,
-        OpFixedCosPiINTEL = 5930,
-        OpFixedSinCosPiINTEL = 5931,
-        OpFixedLogINTEL = 5932,
-        OpFixedExpINTEL = 5933,
-        OpPtrCastToCrossWorkgroupINTEL = 5934,
-        OpCrossWorkgroupCastToPtrINTEL = 5938,
-        OpReadPipeBlockingINTEL = 5946,
-        OpWritePipeBlockingINTEL = 5947,
-        OpFPGARegINTEL = 5949,
         OpRayQueryGetRayTMinKHR = 6016,
         OpRayQueryGetRayFlagsKHR = 6017,
         OpRayQueryGetIntersectionTKHR = 6018,
@@ -1746,11 +1494,6 @@
         OpRayQueryGetWorldRayOriginKHR = 6030,
         OpRayQueryGetIntersectionObjectToWorldKHR = 6031,
         OpRayQueryGetIntersectionWorldToObjectKHR = 6032,
-        OpAtomicFAddEXT = 6035,
-        OpTypeBufferSurfaceINTEL = 6086,
-        OpTypeStructContinuedINTEL = 6090,
-        OpConstantCompositeContinuedINTEL = 6091,
-        OpSpecConstantCompositeContinuedINTEL = 6092,
     },
 
 }
diff --git a/include/spirv/unified1/spirv.py b/include/spirv/unified1/spirv.py
index a780191..a7344aa 100644
--- a/include/spirv/unified1/spirv.py
+++ b/include/spirv/unified1/spirv.py
@@ -45,7 +45,7 @@
 spv = {
     'MagicNumber' : 0x07230203,
     'Version' : 0x00010500,
-    'Revision' : 4,
+    'Revision' : 1,
     'OpCodeMask' : 0xffff,
     'WordCountShift' : 16,
 
@@ -56,7 +56,6 @@
         'OpenCL_C' : 3,
         'OpenCL_CPP' : 4,
         'HLSL' : 5,
-        'CPP_for_OpenCL' : 6,
     },
 
     'ExecutionModel' : {
@@ -138,7 +137,6 @@
         'SubgroupsPerWorkgroupId' : 37,
         'LocalSizeId' : 38,
         'LocalSizeHintId' : 39,
-        'SubgroupUniformControlFlowKHR' : 4421,
         'PostDepthCoverage' : 4446,
         'DenormPreserve' : 4459,
         'DenormFlushToZero' : 4460,
@@ -157,16 +155,6 @@
         'SampleInterlockUnorderedEXT' : 5369,
         'ShadingRateInterlockOrderedEXT' : 5370,
         'ShadingRateInterlockUnorderedEXT' : 5371,
-        'SharedLocalMemorySizeINTEL' : 5618,
-        'RoundingModeRTPINTEL' : 5620,
-        'RoundingModeRTNINTEL' : 5621,
-        'FloatingPointModeALTINTEL' : 5622,
-        'FloatingPointModeIEEEINTEL' : 5623,
-        'MaxWorkgroupSizeINTEL' : 5893,
-        'MaxWorkDimINTEL' : 5894,
-        'NoGlobalOffsetINTEL' : 5895,
-        'NumSIMDWorkitemsINTEL' : 5896,
-        'SchedulerTargetFmaxMhzINTEL' : 5903,
     },
 
     'StorageClass' : {
@@ -197,9 +185,6 @@
         'ShaderRecordBufferNV' : 5343,
         'PhysicalStorageBuffer' : 5349,
         'PhysicalStorageBufferEXT' : 5349,
-        'CodeSectionINTEL' : 5605,
-        'DeviceOnlyINTEL' : 5936,
-        'HostOnlyINTEL' : 5937,
     },
 
     'Dim' : {
@@ -266,8 +251,6 @@
         'Rg8ui' : 37,
         'R16ui' : 38,
         'R8ui' : 39,
-        'R64ui' : 40,
-        'R64i' : 41,
     },
 
     'ImageChannelOrder' : {
@@ -362,8 +345,6 @@
         'NSZ' : 2,
         'AllowRecip' : 3,
         'Fast' : 4,
-        'AllowContractFastINTEL' : 16,
-        'AllowReassocINTEL' : 17,
     },
 
     'FPFastMathModeMask' : {
@@ -373,8 +354,6 @@
         'NSZ' : 0x00000004,
         'AllowRecip' : 0x00000008,
         'Fast' : 0x00000010,
-        'AllowContractFastINTEL' : 0x00010000,
-        'AllowReassocINTEL' : 0x00020000,
     },
 
     'FPRoundingMode' : {
@@ -387,7 +366,6 @@
     'LinkageType' : {
         'Export' : 0,
         'Import' : 1,
-        'LinkOnceODR' : 2,
     },
 
     'AccessQualifier' : {
@@ -472,45 +450,11 @@
         'RestrictPointerEXT' : 5355,
         'AliasedPointer' : 5356,
         'AliasedPointerEXT' : 5356,
-        'SIMTCallINTEL' : 5599,
-        'ReferencedIndirectlyINTEL' : 5602,
-        'ClobberINTEL' : 5607,
-        'SideEffectsINTEL' : 5608,
-        'VectorComputeVariableINTEL' : 5624,
-        'FuncParamIOKindINTEL' : 5625,
-        'VectorComputeFunctionINTEL' : 5626,
-        'StackCallINTEL' : 5627,
-        'GlobalVariableOffsetINTEL' : 5628,
         'CounterBuffer' : 5634,
         'HlslCounterBufferGOOGLE' : 5634,
         'HlslSemanticGOOGLE' : 5635,
         'UserSemantic' : 5635,
         'UserTypeGOOGLE' : 5636,
-        'FunctionRoundingModeINTEL' : 5822,
-        'FunctionDenormModeINTEL' : 5823,
-        'RegisterINTEL' : 5825,
-        'MemoryINTEL' : 5826,
-        'NumbanksINTEL' : 5827,
-        'BankwidthINTEL' : 5828,
-        'MaxPrivateCopiesINTEL' : 5829,
-        'SinglepumpINTEL' : 5830,
-        'DoublepumpINTEL' : 5831,
-        'MaxReplicatesINTEL' : 5832,
-        'SimpleDualPortINTEL' : 5833,
-        'MergeINTEL' : 5834,
-        'BankBitsINTEL' : 5835,
-        'ForcePow2DepthINTEL' : 5836,
-        'BurstCoalesceINTEL' : 5899,
-        'CacheSizeINTEL' : 5900,
-        'DontStaticallyCoalesceINTEL' : 5901,
-        'PrefetchINTEL' : 5902,
-        'StallEnableINTEL' : 5905,
-        'FuseLoopsInFunctionINTEL' : 5907,
-        'BufferLocationINTEL' : 5921,
-        'IOPipeStorageINTEL' : 5944,
-        'FunctionFloatingPointModeINTEL' : 6080,
-        'SingleElementVectorINTEL' : 6085,
-        'VectorComputeCallableFunctionINTEL' : 6087,
     },
 
     'BuiltIn' : {
@@ -568,10 +512,8 @@
         'BaseVertex' : 4424,
         'BaseInstance' : 4425,
         'DrawIndex' : 4426,
-        'PrimitiveShadingRateKHR' : 4432,
         'DeviceIndex' : 4438,
         'ViewIndex' : 4440,
-        'ShadingRateKHR' : 4444,
         'BaryCoordNoPerspAMD' : 4992,
         'BaryCoordNoPerspCentroidAMD' : 4993,
         'BaryCoordNoPerspSampleAMD' : 4994,
@@ -622,10 +564,10 @@
         'ObjectToWorldNV' : 5330,
         'WorldToObjectKHR' : 5331,
         'WorldToObjectNV' : 5331,
+        'HitTKHR' : 5332,
         'HitTNV' : 5332,
         'HitKindKHR' : 5333,
         'HitKindNV' : 5333,
-        'CurrentRayTimeNV' : 5334,
         'IncomingRayFlagsKHR' : 5351,
         'IncomingRayFlagsNV' : 5351,
         'RayGeometryIndexKHR' : 5352,
@@ -656,14 +598,6 @@
         'IterationMultiple' : 6,
         'PeelCount' : 7,
         'PartialCount' : 8,
-        'InitiationIntervalINTEL' : 16,
-        'MaxConcurrencyINTEL' : 17,
-        'DependencyArrayINTEL' : 18,
-        'PipelineEnableINTEL' : 19,
-        'LoopCoalesceINTEL' : 20,
-        'MaxInterleavingINTEL' : 21,
-        'SpeculatedIterationsINTEL' : 22,
-        'NoFusionINTEL' : 23,
     },
 
     'LoopControlMask' : {
@@ -677,14 +611,6 @@
         'IterationMultiple' : 0x00000040,
         'PeelCount' : 0x00000080,
         'PartialCount' : 0x00000100,
-        'InitiationIntervalINTEL' : 0x00010000,
-        'MaxConcurrencyINTEL' : 0x00020000,
-        'DependencyArrayINTEL' : 0x00040000,
-        'PipelineEnableINTEL' : 0x00080000,
-        'LoopCoalesceINTEL' : 0x00100000,
-        'MaxInterleavingINTEL' : 0x00200000,
-        'SpeculatedIterationsINTEL' : 0x00400000,
-        'NoFusionINTEL' : 0x00800000,
     },
 
     'FunctionControlShift' : {
@@ -692,7 +618,6 @@
         'DontInline' : 1,
         'Pure' : 2,
         'Const' : 3,
-        'OptNoneINTEL' : 16,
     },
 
     'FunctionControlMask' : {
@@ -701,7 +626,6 @@
         'DontInline' : 0x00000002,
         'Pure' : 0x00000004,
         'Const' : 0x00000008,
-        'OptNoneINTEL' : 0x00010000,
     },
 
     'MemorySemanticsShift' : {
@@ -876,12 +800,8 @@
         'GroupNonUniformQuad' : 68,
         'ShaderLayer' : 69,
         'ShaderViewportIndex' : 70,
-        'FragmentShadingRateKHR' : 4422,
         'SubgroupBallotKHR' : 4423,
         'DrawParameters' : 4427,
-        'WorkgroupMemoryExplicitLayoutKHR' : 4428,
-        'WorkgroupMemoryExplicitLayout8BitAccessKHR' : 4429,
-        'WorkgroupMemoryExplicitLayout16BitAccessKHR' : 4430,
         'SubgroupVoteKHR' : 4431,
         'StorageBuffer16BitAccess' : 4433,
         'StorageUniformBufferBlock16' : 4433,
@@ -904,15 +824,12 @@
         'RoundingModeRTE' : 4467,
         'RoundingModeRTZ' : 4468,
         'RayQueryProvisionalKHR' : 4471,
-        'RayQueryKHR' : 4472,
-        'RayTraversalPrimitiveCullingKHR' : 4478,
-        'RayTracingKHR' : 4479,
+        'RayTraversalPrimitiveCullingProvisionalKHR' : 4478,
         'Float16ImageAMD' : 5008,
         'ImageGatherBiasLodAMD' : 5009,
         'FragmentMaskAMD' : 5010,
         'StencilExportEXT' : 5013,
         'ImageReadWriteLodAMD' : 5015,
-        'Int64ImageEXT' : 5016,
         'ShaderClockKHR' : 5055,
         'SampleMaskOverrideCoverageNV' : 5249,
         'GeometryShaderPassthroughNV' : 5251,
@@ -954,7 +871,6 @@
         'StorageTexelBufferArrayNonUniformIndexing' : 5312,
         'StorageTexelBufferArrayNonUniformIndexingEXT' : 5312,
         'RayTracingNV' : 5340,
-        'RayTracingMotionBlurNV' : 5341,
         'VulkanMemoryModel' : 5345,
         'VulkanMemoryModelKHR' : 5345,
         'VulkanMemoryModelDeviceScope' : 5346,
@@ -973,51 +889,10 @@
         'SubgroupBufferBlockIOINTEL' : 5569,
         'SubgroupImageBlockIOINTEL' : 5570,
         'SubgroupImageMediaBlockIOINTEL' : 5579,
-        'RoundToInfinityINTEL' : 5582,
-        'FloatingPointModeINTEL' : 5583,
         'IntegerFunctions2INTEL' : 5584,
-        'FunctionPointersINTEL' : 5603,
-        'IndirectReferencesINTEL' : 5604,
-        'AsmINTEL' : 5606,
-        'AtomicFloat32MinMaxEXT' : 5612,
-        'AtomicFloat64MinMaxEXT' : 5613,
-        'AtomicFloat16MinMaxEXT' : 5616,
-        'VectorComputeINTEL' : 5617,
-        'VectorAnyINTEL' : 5619,
-        'ExpectAssumeKHR' : 5629,
         'SubgroupAvcMotionEstimationINTEL' : 5696,
         'SubgroupAvcMotionEstimationIntraINTEL' : 5697,
         'SubgroupAvcMotionEstimationChromaINTEL' : 5698,
-        'VariableLengthArrayINTEL' : 5817,
-        'FunctionFloatControlINTEL' : 5821,
-        'FPGAMemoryAttributesINTEL' : 5824,
-        'FPFastMathModeINTEL' : 5837,
-        'ArbitraryPrecisionIntegersINTEL' : 5844,
-        'ArbitraryPrecisionFloatingPointINTEL' : 5845,
-        'UnstructuredLoopControlsINTEL' : 5886,
-        'FPGALoopControlsINTEL' : 5888,
-        'KernelAttributesINTEL' : 5892,
-        'FPGAKernelAttributesINTEL' : 5897,
-        'FPGAMemoryAccessesINTEL' : 5898,
-        'FPGAClusterAttributesINTEL' : 5904,
-        'LoopFuseINTEL' : 5906,
-        'FPGABufferLocationINTEL' : 5920,
-        'ArbitraryPrecisionFixedPointINTEL' : 5922,
-        'USMStorageClassesINTEL' : 5935,
-        'IOPipesINTEL' : 5943,
-        'BlockingPipesINTEL' : 5945,
-        'FPGARegINTEL' : 5948,
-        'DotProductInputAllKHR' : 6016,
-        'DotProductInput4x8BitKHR' : 6017,
-        'DotProductInput4x8BitPackedKHR' : 6018,
-        'DotProductKHR' : 6019,
-        'BitInstructions' : 6025,
-        'AtomicFloat32AddEXT' : 6033,
-        'AtomicFloat64AddEXT' : 6034,
-        'LongConstantCompositeINTEL' : 6089,
-        'OptNoneINTEL' : 6094,
-        'AtomicFloat16AddEXT' : 6095,
-        'DebugInfoModuleINTEL' : 6114,
     },
 
     'RayFlagsShift' : {
@@ -1063,53 +938,6 @@
         'RayQueryCandidateIntersectionAABBKHR' : 1,
     },
 
-    'FragmentShadingRateShift' : {
-        'Vertical2Pixels' : 0,
-        'Vertical4Pixels' : 1,
-        'Horizontal2Pixels' : 2,
-        'Horizontal4Pixels' : 3,
-    },
-
-    'FragmentShadingRateMask' : {
-        'MaskNone' : 0,
-        'Vertical2Pixels' : 0x00000001,
-        'Vertical4Pixels' : 0x00000002,
-        'Horizontal2Pixels' : 0x00000004,
-        'Horizontal4Pixels' : 0x00000008,
-    },
-
-    'FPDenormMode' : {
-        'Preserve' : 0,
-        'FlushToZero' : 1,
-    },
-
-    'FPOperationMode' : {
-        'IEEE' : 0,
-        'ALT' : 1,
-    },
-
-    'QuantizationModes' : {
-        'TRN' : 0,
-        'TRN_ZERO' : 1,
-        'RND' : 2,
-        'RND_ZERO' : 3,
-        'RND_INF' : 4,
-        'RND_MIN_INF' : 5,
-        'RND_CONV' : 6,
-        'RND_CONV_ODD' : 7,
-    },
-
-    'OverflowModes' : {
-        'WRAP' : 0,
-        'SAT' : 1,
-        'SAT_ZERO' : 2,
-        'SAT_SYM' : 3,
-    },
-
-    'PackedVectorFormat' : {
-        'PackedVectorFormat4x8BitKHR' : 0,
-    },
-
     'Op' : {
         'OpNop' : 0,
         'OpUndef' : 1,
@@ -1455,25 +1283,13 @@
         'OpPtrEqual' : 401,
         'OpPtrNotEqual' : 402,
         'OpPtrDiff' : 403,
-        'OpTerminateInvocation' : 4416,
         'OpSubgroupBallotKHR' : 4421,
         'OpSubgroupFirstInvocationKHR' : 4422,
         'OpSubgroupAllKHR' : 4428,
         'OpSubgroupAnyKHR' : 4429,
         'OpSubgroupAllEqualKHR' : 4430,
         'OpSubgroupReadInvocationKHR' : 4432,
-        'OpTraceRayKHR' : 4445,
-        'OpExecuteCallableKHR' : 4446,
-        'OpConvertUToAccelerationStructureKHR' : 4447,
-        'OpIgnoreIntersectionKHR' : 4448,
-        'OpTerminateRayKHR' : 4449,
-        'OpSDotKHR' : 4450,
-        'OpUDotKHR' : 4451,
-        'OpSUDotKHR' : 4452,
-        'OpSDotAccSatKHR' : 4453,
-        'OpUDotAccSatKHR' : 4454,
-        'OpSUDotAccSatKHR' : 4455,
-        'OpTypeRayQueryKHR' : 4472,
+        'OpTypeRayQueryProvisionalKHR' : 4472,
         'OpRayQueryInitializeKHR' : 4473,
         'OpRayQueryTerminateKHR' : 4474,
         'OpRayQueryGenerateIntersectionKHR' : 4475,
@@ -1496,13 +1312,15 @@
         'OpWritePackedPrimitiveIndices4x8NV' : 5299,
         'OpReportIntersectionKHR' : 5334,
         'OpReportIntersectionNV' : 5334,
+        'OpIgnoreIntersectionKHR' : 5335,
         'OpIgnoreIntersectionNV' : 5335,
+        'OpTerminateRayKHR' : 5336,
         'OpTerminateRayNV' : 5336,
         'OpTraceNV' : 5337,
-        'OpTraceMotionNV' : 5338,
-        'OpTraceRayMotionNV' : 5339,
+        'OpTraceRayKHR' : 5337,
         'OpTypeAccelerationStructureKHR' : 5341,
         'OpTypeAccelerationStructureNV' : 5341,
+        'OpExecuteCallableKHR' : 5344,
         'OpExecuteCallableNV' : 5344,
         'OpTypeCooperativeMatrixNV' : 5358,
         'OpCooperativeMatrixLoadNV' : 5359,
@@ -1537,15 +1355,6 @@
         'OpUSubSatINTEL' : 5596,
         'OpIMul32x16INTEL' : 5597,
         'OpUMul32x16INTEL' : 5598,
-        'OpConstFunctionPointerINTEL' : 5600,
-        'OpFunctionPointerCallINTEL' : 5601,
-        'OpAsmTargetINTEL' : 5609,
-        'OpAsmINTEL' : 5610,
-        'OpAsmCallINTEL' : 5611,
-        'OpAtomicFMinEXT' : 5614,
-        'OpAtomicFMaxEXT' : 5615,
-        'OpAssumeTrueKHR' : 5630,
-        'OpExpectKHR' : 5631,
         'OpDecorateString' : 5632,
         'OpDecorateStringGOOGLE' : 5632,
         'OpMemberDecorateString' : 5633,
@@ -1668,67 +1477,6 @@
         'OpSubgroupAvcSicGetPackedSkcLumaCountThresholdINTEL' : 5814,
         'OpSubgroupAvcSicGetPackedSkcLumaSumThresholdINTEL' : 5815,
         'OpSubgroupAvcSicGetInterRawSadsINTEL' : 5816,
-        'OpVariableLengthArrayINTEL' : 5818,
-        'OpSaveMemoryINTEL' : 5819,
-        'OpRestoreMemoryINTEL' : 5820,
-        'OpArbitraryFloatSinCosPiINTEL' : 5840,
-        'OpArbitraryFloatCastINTEL' : 5841,
-        'OpArbitraryFloatCastFromIntINTEL' : 5842,
-        'OpArbitraryFloatCastToIntINTEL' : 5843,
-        'OpArbitraryFloatAddINTEL' : 5846,
-        'OpArbitraryFloatSubINTEL' : 5847,
-        'OpArbitraryFloatMulINTEL' : 5848,
-        'OpArbitraryFloatDivINTEL' : 5849,
-        'OpArbitraryFloatGTINTEL' : 5850,
-        'OpArbitraryFloatGEINTEL' : 5851,
-        'OpArbitraryFloatLTINTEL' : 5852,
-        'OpArbitraryFloatLEINTEL' : 5853,
-        'OpArbitraryFloatEQINTEL' : 5854,
-        'OpArbitraryFloatRecipINTEL' : 5855,
-        'OpArbitraryFloatRSqrtINTEL' : 5856,
-        'OpArbitraryFloatCbrtINTEL' : 5857,
-        'OpArbitraryFloatHypotINTEL' : 5858,
-        'OpArbitraryFloatSqrtINTEL' : 5859,
-        'OpArbitraryFloatLogINTEL' : 5860,
-        'OpArbitraryFloatLog2INTEL' : 5861,
-        'OpArbitraryFloatLog10INTEL' : 5862,
-        'OpArbitraryFloatLog1pINTEL' : 5863,
-        'OpArbitraryFloatExpINTEL' : 5864,
-        'OpArbitraryFloatExp2INTEL' : 5865,
-        'OpArbitraryFloatExp10INTEL' : 5866,
-        'OpArbitraryFloatExpm1INTEL' : 5867,
-        'OpArbitraryFloatSinINTEL' : 5868,
-        'OpArbitraryFloatCosINTEL' : 5869,
-        'OpArbitraryFloatSinCosINTEL' : 5870,
-        'OpArbitraryFloatSinPiINTEL' : 5871,
-        'OpArbitraryFloatCosPiINTEL' : 5872,
-        'OpArbitraryFloatASinINTEL' : 5873,
-        'OpArbitraryFloatASinPiINTEL' : 5874,
-        'OpArbitraryFloatACosINTEL' : 5875,
-        'OpArbitraryFloatACosPiINTEL' : 5876,
-        'OpArbitraryFloatATanINTEL' : 5877,
-        'OpArbitraryFloatATanPiINTEL' : 5878,
-        'OpArbitraryFloatATan2INTEL' : 5879,
-        'OpArbitraryFloatPowINTEL' : 5880,
-        'OpArbitraryFloatPowRINTEL' : 5881,
-        'OpArbitraryFloatPowNINTEL' : 5882,
-        'OpLoopControlINTEL' : 5887,
-        'OpFixedSqrtINTEL' : 5923,
-        'OpFixedRecipINTEL' : 5924,
-        'OpFixedRsqrtINTEL' : 5925,
-        'OpFixedSinINTEL' : 5926,
-        'OpFixedCosINTEL' : 5927,
-        'OpFixedSinCosINTEL' : 5928,
-        'OpFixedSinPiINTEL' : 5929,
-        'OpFixedCosPiINTEL' : 5930,
-        'OpFixedSinCosPiINTEL' : 5931,
-        'OpFixedLogINTEL' : 5932,
-        'OpFixedExpINTEL' : 5933,
-        'OpPtrCastToCrossWorkgroupINTEL' : 5934,
-        'OpCrossWorkgroupCastToPtrINTEL' : 5938,
-        'OpReadPipeBlockingINTEL' : 5946,
-        'OpWritePipeBlockingINTEL' : 5947,
-        'OpFPGARegINTEL' : 5949,
         'OpRayQueryGetRayTMinKHR' : 6016,
         'OpRayQueryGetRayFlagsKHR' : 6017,
         'OpRayQueryGetIntersectionTKHR' : 6018,
@@ -1746,11 +1494,6 @@
         'OpRayQueryGetWorldRayOriginKHR' : 6030,
         'OpRayQueryGetIntersectionObjectToWorldKHR' : 6031,
         'OpRayQueryGetIntersectionWorldToObjectKHR' : 6032,
-        'OpAtomicFAddEXT' : 6035,
-        'OpTypeBufferSurfaceINTEL' : 6086,
-        'OpTypeStructContinuedINTEL' : 6090,
-        'OpConstantCompositeContinuedINTEL' : 6091,
-        'OpSpecConstantCompositeContinuedINTEL' : 6092,
     },
 
 }
diff --git a/include/spirv/unified1/spv.d b/include/spirv/unified1/spv.d
index b85517a..2c76658 100644
--- a/include/spirv/unified1/spv.d
+++ b/include/spirv/unified1/spv.d
@@ -52,7 +52,7 @@
 
 enum uint MagicNumber = 0x07230203;
 enum uint Version = 0x00010500;
-enum uint Revision = 4;
+enum uint Revision = 1;
 enum uint OpCodeMask = 0xffff;
 enum uint WordCountShift = 16;
 
@@ -64,7 +64,6 @@
     OpenCL_C = 3,
     OpenCL_CPP = 4,
     HLSL = 5,
-    CPP_for_OpenCL = 6,
 }
 
 enum ExecutionModel : uint
@@ -150,7 +149,6 @@
     SubgroupsPerWorkgroupId = 37,
     LocalSizeId = 38,
     LocalSizeHintId = 39,
-    SubgroupUniformControlFlowKHR = 4421,
     PostDepthCoverage = 4446,
     DenormPreserve = 4459,
     DenormFlushToZero = 4460,
@@ -169,16 +167,6 @@
     SampleInterlockUnorderedEXT = 5369,
     ShadingRateInterlockOrderedEXT = 5370,
     ShadingRateInterlockUnorderedEXT = 5371,
-    SharedLocalMemorySizeINTEL = 5618,
-    RoundingModeRTPINTEL = 5620,
-    RoundingModeRTNINTEL = 5621,
-    FloatingPointModeALTINTEL = 5622,
-    FloatingPointModeIEEEINTEL = 5623,
-    MaxWorkgroupSizeINTEL = 5893,
-    MaxWorkDimINTEL = 5894,
-    NoGlobalOffsetINTEL = 5895,
-    NumSIMDWorkitemsINTEL = 5896,
-    SchedulerTargetFmaxMhzINTEL = 5903,
 }
 
 enum StorageClass : uint
@@ -210,9 +198,6 @@
     ShaderRecordBufferNV = 5343,
     PhysicalStorageBuffer = 5349,
     PhysicalStorageBufferEXT = 5349,
-    CodeSectionINTEL = 5605,
-    DeviceOnlyINTEL = 5936,
-    HostOnlyINTEL = 5937,
 }
 
 enum Dim : uint
@@ -283,8 +268,6 @@
     Rg8ui = 37,
     R16ui = 38,
     R8ui = 39,
-    R64ui = 40,
-    R64i = 41,
 }
 
 enum ImageChannelOrder : uint
@@ -384,8 +367,6 @@
     NSZ = 2,
     AllowRecip = 3,
     Fast = 4,
-    AllowContractFastINTEL = 16,
-    AllowReassocINTEL = 17,
 }
 
 enum FPFastMathModeMask : uint
@@ -396,8 +377,6 @@
     NSZ = 0x00000004,
     AllowRecip = 0x00000008,
     Fast = 0x00000010,
-    AllowContractFastINTEL = 0x00010000,
-    AllowReassocINTEL = 0x00020000,
 }
 
 enum FPRoundingMode : uint
@@ -412,7 +391,6 @@
 {
     Export = 0,
     Import = 1,
-    LinkOnceODR = 2,
 }
 
 enum AccessQualifier : uint
@@ -500,45 +478,11 @@
     RestrictPointerEXT = 5355,
     AliasedPointer = 5356,
     AliasedPointerEXT = 5356,
-    SIMTCallINTEL = 5599,
-    ReferencedIndirectlyINTEL = 5602,
-    ClobberINTEL = 5607,
-    SideEffectsINTEL = 5608,
-    VectorComputeVariableINTEL = 5624,
-    FuncParamIOKindINTEL = 5625,
-    VectorComputeFunctionINTEL = 5626,
-    StackCallINTEL = 5627,
-    GlobalVariableOffsetINTEL = 5628,
     CounterBuffer = 5634,
     HlslCounterBufferGOOGLE = 5634,
     HlslSemanticGOOGLE = 5635,
     UserSemantic = 5635,
     UserTypeGOOGLE = 5636,
-    FunctionRoundingModeINTEL = 5822,
-    FunctionDenormModeINTEL = 5823,
-    RegisterINTEL = 5825,
-    MemoryINTEL = 5826,
-    NumbanksINTEL = 5827,
-    BankwidthINTEL = 5828,
-    MaxPrivateCopiesINTEL = 5829,
-    SinglepumpINTEL = 5830,
-    DoublepumpINTEL = 5831,
-    MaxReplicatesINTEL = 5832,
-    SimpleDualPortINTEL = 5833,
-    MergeINTEL = 5834,
-    BankBitsINTEL = 5835,
-    ForcePow2DepthINTEL = 5836,
-    BurstCoalesceINTEL = 5899,
-    CacheSizeINTEL = 5900,
-    DontStaticallyCoalesceINTEL = 5901,
-    PrefetchINTEL = 5902,
-    StallEnableINTEL = 5905,
-    FuseLoopsInFunctionINTEL = 5907,
-    BufferLocationINTEL = 5921,
-    IOPipeStorageINTEL = 5944,
-    FunctionFloatingPointModeINTEL = 6080,
-    SingleElementVectorINTEL = 6085,
-    VectorComputeCallableFunctionINTEL = 6087,
 }
 
 enum BuiltIn : uint
@@ -597,10 +541,8 @@
     BaseVertex = 4424,
     BaseInstance = 4425,
     DrawIndex = 4426,
-    PrimitiveShadingRateKHR = 4432,
     DeviceIndex = 4438,
     ViewIndex = 4440,
-    ShadingRateKHR = 4444,
     BaryCoordNoPerspAMD = 4992,
     BaryCoordNoPerspCentroidAMD = 4993,
     BaryCoordNoPerspSampleAMD = 4994,
@@ -651,10 +593,10 @@
     ObjectToWorldNV = 5330,
     WorldToObjectKHR = 5331,
     WorldToObjectNV = 5331,
+    HitTKHR = 5332,
     HitTNV = 5332,
     HitKindKHR = 5333,
     HitKindNV = 5333,
-    CurrentRayTimeNV = 5334,
     IncomingRayFlagsKHR = 5351,
     IncomingRayFlagsNV = 5351,
     RayGeometryIndexKHR = 5352,
@@ -688,14 +630,6 @@
     IterationMultiple = 6,
     PeelCount = 7,
     PartialCount = 8,
-    InitiationIntervalINTEL = 16,
-    MaxConcurrencyINTEL = 17,
-    DependencyArrayINTEL = 18,
-    PipelineEnableINTEL = 19,
-    LoopCoalesceINTEL = 20,
-    MaxInterleavingINTEL = 21,
-    SpeculatedIterationsINTEL = 22,
-    NoFusionINTEL = 23,
 }
 
 enum LoopControlMask : uint
@@ -710,14 +644,6 @@
     IterationMultiple = 0x00000040,
     PeelCount = 0x00000080,
     PartialCount = 0x00000100,
-    InitiationIntervalINTEL = 0x00010000,
-    MaxConcurrencyINTEL = 0x00020000,
-    DependencyArrayINTEL = 0x00040000,
-    PipelineEnableINTEL = 0x00080000,
-    LoopCoalesceINTEL = 0x00100000,
-    MaxInterleavingINTEL = 0x00200000,
-    SpeculatedIterationsINTEL = 0x00400000,
-    NoFusionINTEL = 0x00800000,
 }
 
 enum FunctionControlShift : uint
@@ -726,7 +652,6 @@
     DontInline = 1,
     Pure = 2,
     Const = 3,
-    OptNoneINTEL = 16,
 }
 
 enum FunctionControlMask : uint
@@ -736,7 +661,6 @@
     DontInline = 0x00000002,
     Pure = 0x00000004,
     Const = 0x00000008,
-    OptNoneINTEL = 0x00010000,
 }
 
 enum MemorySemanticsShift : uint
@@ -921,12 +845,8 @@
     GroupNonUniformQuad = 68,
     ShaderLayer = 69,
     ShaderViewportIndex = 70,
-    FragmentShadingRateKHR = 4422,
     SubgroupBallotKHR = 4423,
     DrawParameters = 4427,
-    WorkgroupMemoryExplicitLayoutKHR = 4428,
-    WorkgroupMemoryExplicitLayout8BitAccessKHR = 4429,
-    WorkgroupMemoryExplicitLayout16BitAccessKHR = 4430,
     SubgroupVoteKHR = 4431,
     StorageBuffer16BitAccess = 4433,
     StorageUniformBufferBlock16 = 4433,
@@ -949,15 +869,12 @@
     RoundingModeRTE = 4467,
     RoundingModeRTZ = 4468,
     RayQueryProvisionalKHR = 4471,
-    RayQueryKHR = 4472,
-    RayTraversalPrimitiveCullingKHR = 4478,
-    RayTracingKHR = 4479,
+    RayTraversalPrimitiveCullingProvisionalKHR = 4478,
     Float16ImageAMD = 5008,
     ImageGatherBiasLodAMD = 5009,
     FragmentMaskAMD = 5010,
     StencilExportEXT = 5013,
     ImageReadWriteLodAMD = 5015,
-    Int64ImageEXT = 5016,
     ShaderClockKHR = 5055,
     SampleMaskOverrideCoverageNV = 5249,
     GeometryShaderPassthroughNV = 5251,
@@ -999,7 +916,6 @@
     StorageTexelBufferArrayNonUniformIndexing = 5312,
     StorageTexelBufferArrayNonUniformIndexingEXT = 5312,
     RayTracingNV = 5340,
-    RayTracingMotionBlurNV = 5341,
     VulkanMemoryModel = 5345,
     VulkanMemoryModelKHR = 5345,
     VulkanMemoryModelDeviceScope = 5346,
@@ -1018,51 +934,10 @@
     SubgroupBufferBlockIOINTEL = 5569,
     SubgroupImageBlockIOINTEL = 5570,
     SubgroupImageMediaBlockIOINTEL = 5579,
-    RoundToInfinityINTEL = 5582,
-    FloatingPointModeINTEL = 5583,
     IntegerFunctions2INTEL = 5584,
-    FunctionPointersINTEL = 5603,
-    IndirectReferencesINTEL = 5604,
-    AsmINTEL = 5606,
-    AtomicFloat32MinMaxEXT = 5612,
-    AtomicFloat64MinMaxEXT = 5613,
-    AtomicFloat16MinMaxEXT = 5616,
-    VectorComputeINTEL = 5617,
-    VectorAnyINTEL = 5619,
-    ExpectAssumeKHR = 5629,
     SubgroupAvcMotionEstimationINTEL = 5696,
     SubgroupAvcMotionEstimationIntraINTEL = 5697,
     SubgroupAvcMotionEstimationChromaINTEL = 5698,
-    VariableLengthArrayINTEL = 5817,
-    FunctionFloatControlINTEL = 5821,
-    FPGAMemoryAttributesINTEL = 5824,
-    FPFastMathModeINTEL = 5837,
-    ArbitraryPrecisionIntegersINTEL = 5844,
-    ArbitraryPrecisionFloatingPointINTEL = 5845,
-    UnstructuredLoopControlsINTEL = 5886,
-    FPGALoopControlsINTEL = 5888,
-    KernelAttributesINTEL = 5892,
-    FPGAKernelAttributesINTEL = 5897,
-    FPGAMemoryAccessesINTEL = 5898,
-    FPGAClusterAttributesINTEL = 5904,
-    LoopFuseINTEL = 5906,
-    FPGABufferLocationINTEL = 5920,
-    ArbitraryPrecisionFixedPointINTEL = 5922,
-    USMStorageClassesINTEL = 5935,
-    IOPipesINTEL = 5943,
-    BlockingPipesINTEL = 5945,
-    FPGARegINTEL = 5948,
-    DotProductInputAllKHR = 6016,
-    DotProductInput4x8BitKHR = 6017,
-    DotProductInput4x8BitPackedKHR = 6018,
-    DotProductKHR = 6019,
-    BitInstructions = 6025,
-    AtomicFloat32AddEXT = 6033,
-    AtomicFloat64AddEXT = 6034,
-    LongConstantCompositeINTEL = 6089,
-    OptNoneINTEL = 6094,
-    AtomicFloat16AddEXT = 6095,
-    DebugInfoModuleINTEL = 6114,
 }
 
 enum RayFlagsShift : uint
@@ -1113,60 +988,6 @@
     RayQueryCandidateIntersectionAABBKHR = 1,
 }
 
-enum FragmentShadingRateShift : uint
-{
-    Vertical2Pixels = 0,
-    Vertical4Pixels = 1,
-    Horizontal2Pixels = 2,
-    Horizontal4Pixels = 3,
-}
-
-enum FragmentShadingRateMask : uint
-{
-    MaskNone = 0,
-    Vertical2Pixels = 0x00000001,
-    Vertical4Pixels = 0x00000002,
-    Horizontal2Pixels = 0x00000004,
-    Horizontal4Pixels = 0x00000008,
-}
-
-enum FPDenormMode : uint
-{
-    Preserve = 0,
-    FlushToZero = 1,
-}
-
-enum FPOperationMode : uint
-{
-    IEEE = 0,
-    ALT = 1,
-}
-
-enum QuantizationModes : uint
-{
-    TRN = 0,
-    TRN_ZERO = 1,
-    RND = 2,
-    RND_ZERO = 3,
-    RND_INF = 4,
-    RND_MIN_INF = 5,
-    RND_CONV = 6,
-    RND_CONV_ODD = 7,
-}
-
-enum OverflowModes : uint
-{
-    WRAP = 0,
-    SAT = 1,
-    SAT_ZERO = 2,
-    SAT_SYM = 3,
-}
-
-enum PackedVectorFormat : uint
-{
-    PackedVectorFormat4x8BitKHR = 0,
-}
-
 enum Op : uint
 {
     OpNop = 0,
@@ -1513,25 +1334,13 @@
     OpPtrEqual = 401,
     OpPtrNotEqual = 402,
     OpPtrDiff = 403,
-    OpTerminateInvocation = 4416,
     OpSubgroupBallotKHR = 4421,
     OpSubgroupFirstInvocationKHR = 4422,
     OpSubgroupAllKHR = 4428,
     OpSubgroupAnyKHR = 4429,
     OpSubgroupAllEqualKHR = 4430,
     OpSubgroupReadInvocationKHR = 4432,
-    OpTraceRayKHR = 4445,
-    OpExecuteCallableKHR = 4446,
-    OpConvertUToAccelerationStructureKHR = 4447,
-    OpIgnoreIntersectionKHR = 4448,
-    OpTerminateRayKHR = 4449,
-    OpSDotKHR = 4450,
-    OpUDotKHR = 4451,
-    OpSUDotKHR = 4452,
-    OpSDotAccSatKHR = 4453,
-    OpUDotAccSatKHR = 4454,
-    OpSUDotAccSatKHR = 4455,
-    OpTypeRayQueryKHR = 4472,
+    OpTypeRayQueryProvisionalKHR = 4472,
     OpRayQueryInitializeKHR = 4473,
     OpRayQueryTerminateKHR = 4474,
     OpRayQueryGenerateIntersectionKHR = 4475,
@@ -1554,13 +1363,15 @@
     OpWritePackedPrimitiveIndices4x8NV = 5299,
     OpReportIntersectionKHR = 5334,
     OpReportIntersectionNV = 5334,
+    OpIgnoreIntersectionKHR = 5335,
     OpIgnoreIntersectionNV = 5335,
+    OpTerminateRayKHR = 5336,
     OpTerminateRayNV = 5336,
     OpTraceNV = 5337,
-    OpTraceMotionNV = 5338,
-    OpTraceRayMotionNV = 5339,
+    OpTraceRayKHR = 5337,
     OpTypeAccelerationStructureKHR = 5341,
     OpTypeAccelerationStructureNV = 5341,
+    OpExecuteCallableKHR = 5344,
     OpExecuteCallableNV = 5344,
     OpTypeCooperativeMatrixNV = 5358,
     OpCooperativeMatrixLoadNV = 5359,
@@ -1595,15 +1406,6 @@
     OpUSubSatINTEL = 5596,
     OpIMul32x16INTEL = 5597,
     OpUMul32x16INTEL = 5598,
-    OpConstFunctionPointerINTEL = 5600,
-    OpFunctionPointerCallINTEL = 5601,
-    OpAsmTargetINTEL = 5609,
-    OpAsmINTEL = 5610,
-    OpAsmCallINTEL = 5611,
-    OpAtomicFMinEXT = 5614,
-    OpAtomicFMaxEXT = 5615,
-    OpAssumeTrueKHR = 5630,
-    OpExpectKHR = 5631,
     OpDecorateString = 5632,
     OpDecorateStringGOOGLE = 5632,
     OpMemberDecorateString = 5633,
@@ -1726,67 +1528,6 @@
     OpSubgroupAvcSicGetPackedSkcLumaCountThresholdINTEL = 5814,
     OpSubgroupAvcSicGetPackedSkcLumaSumThresholdINTEL = 5815,
     OpSubgroupAvcSicGetInterRawSadsINTEL = 5816,
-    OpVariableLengthArrayINTEL = 5818,
-    OpSaveMemoryINTEL = 5819,
-    OpRestoreMemoryINTEL = 5820,
-    OpArbitraryFloatSinCosPiINTEL = 5840,
-    OpArbitraryFloatCastINTEL = 5841,
-    OpArbitraryFloatCastFromIntINTEL = 5842,
-    OpArbitraryFloatCastToIntINTEL = 5843,
-    OpArbitraryFloatAddINTEL = 5846,
-    OpArbitraryFloatSubINTEL = 5847,
-    OpArbitraryFloatMulINTEL = 5848,
-    OpArbitraryFloatDivINTEL = 5849,
-    OpArbitraryFloatGTINTEL = 5850,
-    OpArbitraryFloatGEINTEL = 5851,
-    OpArbitraryFloatLTINTEL = 5852,
-    OpArbitraryFloatLEINTEL = 5853,
-    OpArbitraryFloatEQINTEL = 5854,
-    OpArbitraryFloatRecipINTEL = 5855,
-    OpArbitraryFloatRSqrtINTEL = 5856,
-    OpArbitraryFloatCbrtINTEL = 5857,
-    OpArbitraryFloatHypotINTEL = 5858,
-    OpArbitraryFloatSqrtINTEL = 5859,
-    OpArbitraryFloatLogINTEL = 5860,
-    OpArbitraryFloatLog2INTEL = 5861,
-    OpArbitraryFloatLog10INTEL = 5862,
-    OpArbitraryFloatLog1pINTEL = 5863,
-    OpArbitraryFloatExpINTEL = 5864,
-    OpArbitraryFloatExp2INTEL = 5865,
-    OpArbitraryFloatExp10INTEL = 5866,
-    OpArbitraryFloatExpm1INTEL = 5867,
-    OpArbitraryFloatSinINTEL = 5868,
-    OpArbitraryFloatCosINTEL = 5869,
-    OpArbitraryFloatSinCosINTEL = 5870,
-    OpArbitraryFloatSinPiINTEL = 5871,
-    OpArbitraryFloatCosPiINTEL = 5872,
-    OpArbitraryFloatASinINTEL = 5873,
-    OpArbitraryFloatASinPiINTEL = 5874,
-    OpArbitraryFloatACosINTEL = 5875,
-    OpArbitraryFloatACosPiINTEL = 5876,
-    OpArbitraryFloatATanINTEL = 5877,
-    OpArbitraryFloatATanPiINTEL = 5878,
-    OpArbitraryFloatATan2INTEL = 5879,
-    OpArbitraryFloatPowINTEL = 5880,
-    OpArbitraryFloatPowRINTEL = 5881,
-    OpArbitraryFloatPowNINTEL = 5882,
-    OpLoopControlINTEL = 5887,
-    OpFixedSqrtINTEL = 5923,
-    OpFixedRecipINTEL = 5924,
-    OpFixedRsqrtINTEL = 5925,
-    OpFixedSinINTEL = 5926,
-    OpFixedCosINTEL = 5927,
-    OpFixedSinCosINTEL = 5928,
-    OpFixedSinPiINTEL = 5929,
-    OpFixedCosPiINTEL = 5930,
-    OpFixedSinCosPiINTEL = 5931,
-    OpFixedLogINTEL = 5932,
-    OpFixedExpINTEL = 5933,
-    OpPtrCastToCrossWorkgroupINTEL = 5934,
-    OpCrossWorkgroupCastToPtrINTEL = 5938,
-    OpReadPipeBlockingINTEL = 5946,
-    OpWritePipeBlockingINTEL = 5947,
-    OpFPGARegINTEL = 5949,
     OpRayQueryGetRayTMinKHR = 6016,
     OpRayQueryGetRayFlagsKHR = 6017,
     OpRayQueryGetIntersectionTKHR = 6018,
@@ -1804,11 +1545,6 @@
     OpRayQueryGetWorldRayOriginKHR = 6030,
     OpRayQueryGetIntersectionObjectToWorldKHR = 6031,
     OpRayQueryGetIntersectionWorldToObjectKHR = 6032,
-    OpAtomicFAddEXT = 6035,
-    OpTypeBufferSurfaceINTEL = 6086,
-    OpTypeStructContinuedINTEL = 6090,
-    OpConstantCompositeContinuedINTEL = 6091,
-    OpSpecConstantCompositeContinuedINTEL = 6092,
 }
 
 
diff --git a/tools/buildHeaders/CMakeLists.txt b/tools/buildHeaders/CMakeLists.txt
index fa7ef50..c624151 100644
--- a/tools/buildHeaders/CMakeLists.txt
+++ b/tools/buildHeaders/CMakeLists.txt
@@ -1,4 +1,4 @@
-cmake_minimum_required(VERSION 3.0)
+cmake_minimum_required(VERSION 2.8)
 
 set(CMAKE_INSTALL_PREFIX "install" CACHE STRING "prefix" FORCE)
 
diff --git a/tools/buildHeaders/bin/makeExtinstHeaders.py b/tools/buildHeaders/bin/makeExtinstHeaders.py
index 9359747..780e479 100755
--- a/tools/buildHeaders/bin/makeExtinstHeaders.py
+++ b/tools/buildHeaders/bin/makeExtinstHeaders.py
@@ -25,4 +25,3 @@
 mk_extinst('AMD_shader_explicit_vertex_parameter', 'extinst.spv-amd-shader-explicit-vertex-parameter.grammar.json')
 mk_extinst('AMD_shader_trinary_minmax', 'extinst.spv-amd-shader-trinary-minmax.grammar.json')
 mk_extinst('NonSemanticDebugPrintf', 'extinst.nonsemantic.debugprintf.grammar.json')
-mk_extinst('NonSemanticClspvReflection', 'extinst.nonsemantic.clspvreflection.grammar.json')
diff --git a/tools/buildHeaders/bin/makeHeaders b/tools/buildHeaders/bin/makeHeaders
index 7b4959e..0ca0b2f 100755
--- a/tools/buildHeaders/bin/makeHeaders
+++ b/tools/buildHeaders/bin/makeHeaders
@@ -4,4 +4,4 @@
 
 cd ../../include/spirv/unified1
 ../../../tools/buildHeaders/build/install/bin/buildSpvHeaders -H spirv.core.grammar.json
-dos2unix spirv.* spv.*
+dos2unix spirv.* SpirV.* spv.*
diff --git a/tools/buildHeaders/header.cpp b/tools/buildHeaders/header.cpp
index dc780ef..7e8f668 100644
--- a/tools/buildHeaders/header.cpp
+++ b/tools/buildHeaders/header.cpp
@@ -70,8 +70,8 @@
 
         static const int         DocMagicNumber = 0x07230203;
         static const int         DocVersion     = 0x00010500;
-        static const int         DocRevision    = 4;
-        #define DocRevisionString                "4"
+        static const int         DocRevision    = 1;
+        #define DocRevisionString                "1"
         static const std::string DocCopyright;
         static const std::string DocComment1;
         static const std::string DocComment2;
@@ -500,7 +500,7 @@
 
         virtual std::string fmtEnumUse(const std::string& opPrefix, const std::string& name) const { return pre() + name; }
 
-        virtual void printHasResultType(std::ostream& out) const override
+        virtual void printHasResultType(std::ostream& out) const
         {
             const Json::Value& enums = spvRoot["spv"]["enum"];
 
@@ -643,7 +643,7 @@
         }
 
         // Add type prefix for scoped enum
-        virtual std::string fmtEnumUse(const std::string& opPrefix, const std::string& name) const override { return opPrefix + "::" + name; }
+        virtual std::string fmtEnumUse(const std::string& opPrefix, const std::string& name) const { return opPrefix + "::" + name; }
 
         std::string headerGuardSuffix() const override { return "HPP"; }
     };
diff --git a/tools/buildHeaders/jsonToSpirv.cpp b/tools/buildHeaders/jsonToSpirv.cpp
index 67b5bce..5cca0b9 100644
--- a/tools/buildHeaders/jsonToSpirv.cpp
+++ b/tools/buildHeaders/jsonToSpirv.cpp
@@ -25,7 +25,6 @@
 #include <assert.h>
 #include <string.h>
 #include <algorithm>
-#include <cstdlib>
 #include <iostream>
 #include <unordered_map>
 #include <unordered_set>
@@ -62,10 +61,6 @@
 EnumValues ImageOperandsParams;
 EnumValues FPFastMathParams;
 EnumValues FPRoundingModeParams;
-EnumValues FPDenormModeParams;
-EnumValues FPOperationModeParams;
-EnumValues QuantizationModesParams;
-EnumValues OverflowModesParams;
 EnumValues LinkageTypeParams;
 EnumValues DecorationParams;
 EnumValues BuiltInParams;
@@ -86,8 +81,6 @@
 EnumValues RayQueryIntersectionParams;
 EnumValues RayQueryCommittedIntersectionTypeParams;
 EnumValues RayQueryCandidateIntersectionTypeParams;
-EnumValues FragmentShadingRateParams;
-EnumValues PackedVectorFormatParams;
 
 std::pair<bool, std::string> ReadFile(const std::string& path)
 {
@@ -184,14 +177,6 @@
             type = OperandImageChannelDataType;
         } else if (operandKind == "FPRoundingMode") {
             type = OperandFPRoundingMode;
-        } else if (operandKind == "FPDenormMode") {
-            type = OperandFPDenormMode;
-        } else if (operandKind == "FPOperationMode") {
-            type = OperandFPOperationMode;
-        } else if (operandKind == "QuantizationModes") {
-            type = OperandQuantizationModes;
-        } else if (operandKind == "OverflowModes") {
-            type = OperandOverflowModes;
         } else if (operandKind == "LinkageType") {
             type = OperandLinkageType;
         } else if (operandKind == "AccessQualifier") {
@@ -230,10 +215,6 @@
             type = OperandRayQueryCommittedIntersectionType;
         } else if (operandKind == "RayQueryCandidateIntersectionType") {
             type = OperandRayQueryCandidateIntersectionType;
-        } else if (operandKind == "FragmentShadingRate") {
-            type = OperandFragmentShadingRate;
-        } else if (operandKind == "PackedVectorFormat") {
-            type = OperandPackedVectorFormat;
         }
 
         if (type == OperandNone) {
@@ -336,8 +317,6 @@
 
     // process the instructions
     const Json::Value insts = root["instructions"];
-    unsigned maxOpcode = 0;
-    bool firstOpcode = true;
     for (const auto& inst : insts) {
         const auto printingClass = inst["class"].asString();
         if (printingClass.size() == 0) {
@@ -353,19 +332,6 @@
         }
         const auto opcode = inst["opcode"].asUInt();
         const std::string name = inst["opname"].asString();
-        if (firstOpcode) {
-          maxOpcode = opcode;
-          firstOpcode = false;
-        } else {
-          if (maxOpcode > opcode) {
-            std::cerr << "Error: " << name
-                      << " is out of order. It follows the instruction with opcode " << maxOpcode
-                      << std::endl;
-            std::exit(1);
-          } else {
-            maxOpcode = opcode;
-          }
-        }
         EnumCaps caps = getCaps(inst);
         std::string version = inst["version"].asString();
         std::string lastVersion = inst["lastVersion"].asString();
@@ -409,27 +375,12 @@
             return result;
         };
 
-        unsigned maxValue = 0;
-        bool firstValue = true;
         for (const auto& enumerant : source["enumerants"]) {
             unsigned value;
             bool skip_zero_in_bitfield;
             std::tie(value, skip_zero_in_bitfield) = getValue(enumerant);
             if (skip_zero_in_bitfield)
                 continue;
-            if (firstValue) {
-              maxValue = value;
-              firstValue = false;
-            } else {
-              if (maxValue > value) {
-                std::cerr << "Error: " << source["kind"] << " enumerant " << enumerant["enumerant"]
-                          << " is out of order. It has value " <<  value
-                          << " but follows the enumerant with value " << maxValue << std::endl;
-                std::exit(1);
-              } else {
-                maxValue = value;
-              }
-            }
             EnumCaps caps(getCaps(enumerant));
             std::string version = enumerant["version"].asString();
             std::string lastVersion = enumerant["lastVersion"].asString();
@@ -498,14 +449,6 @@
             establishOperandClass(enumName, OperandFPFastMath, &FPFastMathParams, operandEnum, category);
         } else if (enumName == "FPRoundingMode") {
             establishOperandClass(enumName, OperandFPRoundingMode, &FPRoundingModeParams, operandEnum, category);
-        } else if (enumName == "FPDenormMode") {
-            establishOperandClass(enumName, OperandFPDenormMode, &FPDenormModeParams, operandEnum, category);
-        } else if (enumName == "FPOperationMode") {
-            establishOperandClass(enumName, OperandFPOperationMode, &FPOperationModeParams, operandEnum, category);
-        } else if (enumName == "QuantizationModes") {
-            establishOperandClass(enumName, OperandQuantizationModes, &QuantizationModesParams, operandEnum, category);
-        } else if (enumName == "OverflowModes") {
-            establishOperandClass(enumName, OperandOverflowModes, &OverflowModesParams, operandEnum, category);
         } else if (enumName == "LinkageType") {
             establishOperandClass(enumName, OperandLinkageType, &LinkageTypeParams, operandEnum, category);
         } else if (enumName == "FunctionParameterAttribute") {
@@ -540,10 +483,6 @@
             establishOperandClass(enumName, OperandRayQueryCommittedIntersectionType, &RayQueryCommittedIntersectionTypeParams, operandEnum, category);
         } else if (enumName == "RayQueryCandidateIntersectionType") {
             establishOperandClass(enumName, OperandRayQueryCandidateIntersectionType, &RayQueryCandidateIntersectionTypeParams, operandEnum, category);
-        } else if (enumName == "FragmentShadingRate") {
-            establishOperandClass(enumName, OperandFragmentShadingRate, &FragmentShadingRateParams, operandEnum, category);
-        } else if (enumName == "PackedVectorFormat") {
-            establishOperandClass(enumName, OperandPackedVectorFormat, &PackedVectorFormatParams, operandEnum, category);
         }
     }
 }
diff --git a/tools/buildHeaders/jsonToSpirv.h b/tools/buildHeaders/jsonToSpirv.h
index 3be6456..9a5eafd 100644
--- a/tools/buildHeaders/jsonToSpirv.h
+++ b/tools/buildHeaders/jsonToSpirv.h
@@ -41,8 +41,6 @@
 void jsonToSpirv(const std::string& jsonPath, bool buildingHeaders);
 
 // For parameterizing operands.
-// The ordering here affects the printing order in the SPIR-V specification.
-// Please add new operand classes at the end.
 enum OperandClass {
     OperandNone,
     OperandId,
@@ -82,7 +80,7 @@
     OperandMemorySemantics,
     OperandMemoryOperands,
     OperandScope,
-    OperandGroupOperation,
+	OperandGroupOperation,
     OperandKernelEnqueueFlags,
     OperandKernelProfilingInfo,
     OperandCapability,
@@ -90,12 +88,6 @@
     OperandRayQueryIntersection,
     OperandRayQueryCommittedIntersectionType,
     OperandRayQueryCandidateIntersectionType,
-    OperandFragmentShadingRate,
-    OperandFPDenormMode,
-    OperandFPOperationMode,
-    OperandQuantizationModes,
-    OperandOverflowModes,
-    OperandPackedVectorFormat,
 
     OperandOpcode,