diff options
35 files changed, 855 insertions, 7126 deletions
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 @@ -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 { } 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 @@ filegroup( 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 @@ cc_library( "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", ], @@ -33,7 +33,6 @@ source_set("spv_headers") { "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 @@ target_include_directories(${PROJECT_NAME} INTERFACE 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") @@ -8,6 +8,5 @@ third_party { value: "https://github.com/KhronosGroup/SPIRV-Headers.git" } version: "d5b2e1255f706ce1f88812217e9a554f299848af" - license_type: NOTICE last_upgrade_date { year: 2018 month: 12 day: 17 } } @@ -0,0 +1 @@ +LICENSE
\ No newline at end of file @@ -23,28 +23,15 @@ When a new version or revision of the SPIR-V specification is published, 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 @@ and can be used to test a PR, or even to include the results in the PR. 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 @@ add_library(SPIRV-Headers-example ${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 DebugInfoInstructions { 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 @@ enum OpenCLDebugInfo100Instructions { 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,44 +4422,38 @@ "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" : "OpTraceNV", + "opname" : "OpTerminateRayKHR", "class" : "Reserved", - "opcode" : 5337, - "operands" : [ - - { "kind" : "IdRef", "name" : "'Accel'" }, - { "kind" : "IdRef", "name" : "'Ray Flags'" }, - { "kind" : "IdRef", "name" : "'Cull Mask'" }, - { "kind" : "IdRef", "name" : "'SBT Offset'" }, - { "kind" : "IdRef", "name" : "'SBT Stride'" }, - { "kind" : "IdRef", "name" : "'Miss Index'" }, - { "kind" : "IdRef", "name" : "'Ray Origin'" }, - { "kind" : "IdRef", "name" : "'Ray Tmin'" }, - { "kind" : "IdRef", "name" : "'Ray Direction'" }, - { "kind" : "IdRef", "name" : "'Ray Tmax'" }, - { "kind" : "IdRef", "name" : "'PayloadId'" } - ], - "capabilities" : [ "RayTracingNV" ], - "extensions" : [ "SPV_NV_ray_tracing" ], + "opcode" : 5336, + "capabilities" : [ "RayTracingNV" , "RayTracingProvisionalKHR" ], + "extensions" : [ "SPV_NV_ray_tracing" , "SPV_KHR_ray_tracing" ], "version" : "None" }, { - "opname" : "OpTraceMotionNV", + "opname" : "OpTraceNV", "class" : "Reserved", - "opcode" : 5338, + "opcode" : 5337, "operands" : [ { "kind" : "IdRef", "name" : "'Accel'" }, @@ -4769,17 +4466,16 @@ { "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" ], + "capabilities" : [ "RayTracingNV" , "RayTracingProvisionalKHR" ], + "extensions" : [ "SPV_NV_ray_tracing" , "SPV_KHR_ray_tracing" ], "version" : "None" }, { - "opname" : "OpTraceRayMotionNV", + "opname" : "OpTraceRayKHR", "class" : "Reserved", - "opcode" : 5339, + "opcode" : 5337, "operands" : [ { "kind" : "IdRef", "name" : "'Accel'" }, @@ -4792,11 +4488,10 @@ { "kind" : "IdRef", "name" : "'Ray Tmin'" }, { "kind" : "IdRef", "name" : "'Ray Direction'" }, { "kind" : "IdRef", "name" : "'Ray Tmax'" }, - { "kind" : "IdRef", "name" : "'Time'" }, - { "kind" : "IdRef", "name" : "'Payload'" } + { "kind" : "IdRef", "name" : "'PayloadId'" } ], - "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,55 +9578,55 @@ "version" : "1.3" }, { - "enumerant" : "SubgroupEqMaskKHR", - "value" : 4416, + "enumerant" : "SubgroupGeMask", + "value" : 4417, "capabilities" : [ "SubgroupBallotKHR", "GroupNonUniformBallot" ], - "extensions" : [ "SPV_KHR_shader_ballot" ], "version" : "1.3" }, { - "enumerant" : "SubgroupGeMask", - "value" : 4417, + "enumerant" : "SubgroupGtMask", + "value" : 4418, "capabilities" : [ "SubgroupBallotKHR", "GroupNonUniformBallot" ], "version" : "1.3" }, { - "enumerant" : "SubgroupGeMaskKHR", - "value" : 4417, + "enumerant" : "SubgroupLeMask", + "value" : 4419, "capabilities" : [ "SubgroupBallotKHR", "GroupNonUniformBallot" ], - "extensions" : [ "SPV_KHR_shader_ballot" ], "version" : "1.3" }, { - "enumerant" : "SubgroupGtMask", - "value" : 4418, + "enumerant" : "SubgroupLtMask", + "value" : 4420, "capabilities" : [ "SubgroupBallotKHR", "GroupNonUniformBallot" ], "version" : "1.3" }, { - "enumerant" : "SubgroupGtMaskKHR", - "value" : 4418, + "enumerant" : "SubgroupEqMaskKHR", + "value" : 4416, "capabilities" : [ "SubgroupBallotKHR", "GroupNonUniformBallot" ], "extensions" : [ "SPV_KHR_shader_ballot" ], "version" : "1.3" }, { - "enumerant" : "SubgroupLeMask", - "value" : 4419, + "enumerant" : "SubgroupGeMaskKHR", + "value" : 4417, "capabilities" : [ "SubgroupBallotKHR", "GroupNonUniformBallot" ], + "extensions" : [ "SPV_KHR_shader_ballot" ], "version" : "1.3" }, { - "enumerant" : "SubgroupLeMaskKHR", - "value" : 4419, + "enumerant" : "SubgroupGtMaskKHR", + "value" : 4418, "capabilities" : [ "SubgroupBallotKHR", "GroupNonUniformBallot" ], "extensions" : [ "SPV_KHR_shader_ballot" ], "version" : "1.3" }, { - "enumerant" : "SubgroupLtMask", - "value" : 4420, + "enumerant" : "SubgroupLeMaskKHR", + "value" : 4419, "capabilities" : [ "SubgroupBallotKHR", "GroupNonUniformBallot" ], + "extensions" : [ "SPV_KHR_shader_ballot" ], "version" : "1.3" }, { @@ -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" : "HitKindNV", - "value" : 5333, - "capabilities" : [ "RayTracingNV" , "RayTracingKHR" ], + "enumerant" : "HitTKHR", + "value" : 5332, + "capabilities" : [ "RayTracingNV" , "RayTracingProvisionalKHR" ], "extensions" : [ "SPV_NV_ray_tracing" , "SPV_KHR_ray_tracing" ], "version" : "None" }, { - "enumerant" : "HitKindKHR", + "enumerant" : "HitKindNV", "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" ], + "enumerant" : "HitKindKHR", + "value" : 5333, + "capabilities" : [ "RayTracingNV" , "RayTracingProvisionalKHR" ], + "extensions" : [ "SPV_NV_ray_tracing" , "SPV_KHR_ray_tracing" ], "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 @@ namespace Spv { 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 @@ namespace Spv OpenCL_C = 3, OpenCL_CPP = 4, HLSL = 5, - CPP_for_OpenCL = 6, } public enum ExecutionModel @@ -147,7 +146,6 @@ namespace Spv SubgroupsPerWorkgroupId = 37, LocalSizeId = 38, LocalSizeHintId = 39, - SubgroupUniformControlFlowKHR = 4421, PostDepthCoverage = 4446, DenormPreserve = 4459, DenormFlushToZero = 4460, @@ -166,16 +164,6 @@ namespace Spv 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 @@ namespace Spv ShaderRecordBufferNV = 5343, PhysicalStorageBuffer = 5349, PhysicalStorageBufferEXT = 5349, - CodeSectionINTEL = 5605, - DeviceOnlyINTEL = 5936, - HostOnlyINTEL = 5937, } public enum Dim @@ -280,8 +265,6 @@ namespace Spv Rg8ui = 37, R16ui = 38, R8ui = 39, - R64ui = 40, - R64i = 41, } public enum ImageChannelOrder @@ -381,8 +364,6 @@ namespace Spv NSZ = 2, AllowRecip = 3, Fast = 4, - AllowContractFastINTEL = 16, - AllowReassocINTEL = 17, } public enum FPFastMathModeMask @@ -393,8 +374,6 @@ namespace Spv NSZ = 0x00000004, AllowRecip = 0x00000008, Fast = 0x00000010, - AllowContractFastINTEL = 0x00010000, - AllowReassocINTEL = 0x00020000, } public enum FPRoundingMode @@ -409,7 +388,6 @@ namespace Spv { Export = 0, Import = 1, - LinkOnceODR = 2, } public enum AccessQualifier @@ -497,45 +475,11 @@ namespace Spv 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 @@ namespace Spv BaseVertex = 4424, BaseInstance = 4425, DrawIndex = 4426, - PrimitiveShadingRateKHR = 4432, DeviceIndex = 4438, ViewIndex = 4440, - ShadingRateKHR = 4444, BaryCoordNoPerspAMD = 4992, BaryCoordNoPerspCentroidAMD = 4993, BaryCoordNoPerspSampleAMD = 4994, @@ -648,10 +590,10 @@ namespace Spv 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 @@ namespace Spv 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 @@ namespace Spv 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 @@ namespace Spv DontInline = 1, Pure = 2, Const = 3, - OptNoneINTEL = 16, } public enum FunctionControlMask @@ -733,7 +658,6 @@ namespace Spv DontInline = 0x00000002, Pure = 0x00000004, Const = 0x00000008, - OptNoneINTEL = 0x00010000, } public enum MemorySemanticsShift @@ -918,12 +842,8 @@ namespace Spv 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 @@ namespace Spv 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 @@ namespace Spv StorageTexelBufferArrayNonUniformIndexing = 5312, StorageTexelBufferArrayNonUniformIndexingEXT = 5312, RayTracingNV = 5340, - RayTracingMotionBlurNV = 5341, VulkanMemoryModel = 5345, VulkanMemoryModelKHR = 5345, VulkanMemoryModelDeviceScope = 5346, @@ -1015,51 +931,10 @@ namespace Spv 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 @@ namespace Spv 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 @@ namespace Spv 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 @@ namespace Spv 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 @@ namespace Spv 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 @@ namespace Spv 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 @@ namespace Spv 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 @@ typedef enum SpvSourceLanguage_ { SpvSourceLanguageOpenCL_C = 3, SpvSourceLanguageOpenCL_CPP = 4, SpvSourceLanguageHLSL = 5, - SpvSourceLanguageCPP_for_OpenCL = 6, SpvSourceLanguageMax = 0x7fffffff, } SpvSourceLanguage; @@ -155,7 +154,6 @@ typedef enum SpvExecutionMode_ { SpvExecutionModeSubgroupsPerWorkgroupId = 37, SpvExecutionModeLocalSizeId = 38, SpvExecutionModeLocalSizeHintId = 39, - SpvExecutionModeSubgroupUniformControlFlowKHR = 4421, SpvExecutionModePostDepthCoverage = 4446, SpvExecutionModeDenormPreserve = 4459, SpvExecutionModeDenormFlushToZero = 4460, @@ -174,16 +172,6 @@ typedef enum SpvExecutionMode_ { 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 @@ typedef enum SpvStorageClass_ { SpvStorageClassShaderRecordBufferNV = 5343, SpvStorageClassPhysicalStorageBuffer = 5349, SpvStorageClassPhysicalStorageBufferEXT = 5349, - SpvStorageClassCodeSectionINTEL = 5605, - SpvStorageClassDeviceOnlyINTEL = 5936, - SpvStorageClassHostOnlyINTEL = 5937, SpvStorageClassMax = 0x7fffffff, } SpvStorageClass; @@ -288,8 +273,6 @@ typedef enum SpvImageFormat_ { SpvImageFormatRg8ui = 37, SpvImageFormatR16ui = 38, SpvImageFormatR8ui = 39, - SpvImageFormatR64ui = 40, - SpvImageFormatR64i = 41, SpvImageFormatMax = 0x7fffffff, } SpvImageFormat; @@ -388,8 +371,6 @@ typedef enum SpvFPFastMathModeShift_ { SpvFPFastMathModeNSZShift = 2, SpvFPFastMathModeAllowRecipShift = 3, SpvFPFastMathModeFastShift = 4, - SpvFPFastMathModeAllowContractFastINTELShift = 16, - SpvFPFastMathModeAllowReassocINTELShift = 17, SpvFPFastMathModeMax = 0x7fffffff, } SpvFPFastMathModeShift; @@ -400,8 +381,6 @@ typedef enum SpvFPFastMathModeMask_ { SpvFPFastMathModeNSZMask = 0x00000004, SpvFPFastMathModeAllowRecipMask = 0x00000008, SpvFPFastMathModeFastMask = 0x00000010, - SpvFPFastMathModeAllowContractFastINTELMask = 0x00010000, - SpvFPFastMathModeAllowReassocINTELMask = 0x00020000, } SpvFPFastMathModeMask; typedef enum SpvFPRoundingMode_ { @@ -415,7 +394,6 @@ typedef enum SpvFPRoundingMode_ { typedef enum SpvLinkageType_ { SpvLinkageTypeExport = 0, SpvLinkageTypeImport = 1, - SpvLinkageTypeLinkOnceODR = 2, SpvLinkageTypeMax = 0x7fffffff, } SpvLinkageType; @@ -503,45 +481,11 @@ typedef enum SpvDecoration_ { 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 @@ typedef enum SpvBuiltIn_ { SpvBuiltInBaseVertex = 4424, SpvBuiltInBaseInstance = 4425, SpvBuiltInDrawIndex = 4426, - SpvBuiltInPrimitiveShadingRateKHR = 4432, SpvBuiltInDeviceIndex = 4438, SpvBuiltInViewIndex = 4440, - SpvBuiltInShadingRateKHR = 4444, SpvBuiltInBaryCoordNoPerspAMD = 4992, SpvBuiltInBaryCoordNoPerspCentroidAMD = 4993, SpvBuiltInBaryCoordNoPerspSampleAMD = 4994, @@ -654,10 +596,10 @@ typedef enum SpvBuiltIn_ { 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 @@ typedef enum SpvLoopControlShift_ { 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 @@ typedef enum SpvLoopControlMask_ { 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 @@ typedef enum SpvFunctionControlShift_ { SpvFunctionControlDontInlineShift = 1, SpvFunctionControlPureShift = 2, SpvFunctionControlConstShift = 3, - SpvFunctionControlOptNoneINTELShift = 16, SpvFunctionControlMax = 0x7fffffff, } SpvFunctionControlShift; @@ -737,7 +662,6 @@ typedef enum SpvFunctionControlMask_ { SpvFunctionControlDontInlineMask = 0x00000002, SpvFunctionControlPureMask = 0x00000004, SpvFunctionControlConstMask = 0x00000008, - SpvFunctionControlOptNoneINTELMask = 0x00010000, } SpvFunctionControlMask; typedef enum SpvMemorySemanticsShift_ { @@ -918,12 +842,8 @@ typedef enum SpvCapability_ { 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 @@ typedef enum SpvCapability_ { 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 @@ typedef enum SpvCapability_ { SpvCapabilityStorageTexelBufferArrayNonUniformIndexing = 5312, SpvCapabilityStorageTexelBufferArrayNonUniformIndexingEXT = 5312, SpvCapabilityRayTracingNV = 5340, - SpvCapabilityRayTracingMotionBlurNV = 5341, SpvCapabilityVulkanMemoryModel = 5345, SpvCapabilityVulkanMemoryModelKHR = 5345, SpvCapabilityVulkanMemoryModelDeviceScope = 5346, @@ -1015,51 +931,10 @@ typedef enum SpvCapability_ { 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 @@ typedef enum SpvRayQueryCandidateIntersectionType_ { 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 @@ typedef enum SpvOp_ { 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 @@ typedef enum SpvOp_ { 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 @@ typedef enum SpvOp_ { 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 @@ typedef enum SpvOp_ { 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 @@ typedef enum SpvOp_ { SpvOpRayQueryGetWorldRayOriginKHR = 6030, SpvOpRayQueryGetIntersectionObjectToWorldKHR = 6031, SpvOpRayQueryGetIntersectionWorldToObjectKHR = 6032, - SpvOpAtomicFAddEXT = 6035, - SpvOpTypeBufferSurfaceINTEL = 6086, - SpvOpTypeStructContinuedINTEL = 6090, - SpvOpConstantCompositeContinuedINTEL = 6091, - SpvOpSpecConstantCompositeContinuedINTEL = 6092, SpvOpMax = 0x7fffffff, } SpvOp; @@ -2156,31 +1893,12 @@ inline void SpvHasResultAndType(SpvOp opcode, bool *hasResult, bool *hasResultTy 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 @@ inline void SpvHasResultAndType(SpvOp opcode, bool *hasResult, bool *hasResultTy 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 @@ inline void SpvHasResultAndType(SpvOp opcode, bool *hasResult, bool *hasResultTy 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 @@ inline void SpvHasResultAndType(SpvOp opcode, bool *hasResult, bool *hasResultTy 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 @@ namespace spv { 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 @@ enum SourceLanguage { SourceLanguageOpenCL_C = 3, SourceLanguageOpenCL_CPP = 4, SourceLanguageHLSL = 5, - SourceLanguageCPP_for_OpenCL = 6, SourceLanguageMax = 0x7fffffff, }; @@ -151,7 +150,6 @@ enum ExecutionMode { ExecutionModeSubgroupsPerWorkgroupId = 37, ExecutionModeLocalSizeId = 38, ExecutionModeLocalSizeHintId = 39, - ExecutionModeSubgroupUniformControlFlowKHR = 4421, ExecutionModePostDepthCoverage = 4446, ExecutionModeDenormPreserve = 4459, ExecutionModeDenormFlushToZero = 4460, @@ -170,16 +168,6 @@ enum ExecutionMode { 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 @@ enum StorageClass { StorageClassShaderRecordBufferNV = 5343, StorageClassPhysicalStorageBuffer = 5349, StorageClassPhysicalStorageBufferEXT = 5349, - StorageClassCodeSectionINTEL = 5605, - StorageClassDeviceOnlyINTEL = 5936, - StorageClassHostOnlyINTEL = 5937, StorageClassMax = 0x7fffffff, }; @@ -284,8 +269,6 @@ enum ImageFormat { ImageFormatRg8ui = 37, ImageFormatR16ui = 38, ImageFormatR8ui = 39, - ImageFormatR64ui = 40, - ImageFormatR64i = 41, ImageFormatMax = 0x7fffffff, }; @@ -384,8 +367,6 @@ enum FPFastMathModeShift { FPFastMathModeNSZShift = 2, FPFastMathModeAllowRecipShift = 3, FPFastMathModeFastShift = 4, - FPFastMathModeAllowContractFastINTELShift = 16, - FPFastMathModeAllowReassocINTELShift = 17, FPFastMathModeMax = 0x7fffffff, }; @@ -396,8 +377,6 @@ enum FPFastMathModeMask { FPFastMathModeNSZMask = 0x00000004, FPFastMathModeAllowRecipMask = 0x00000008, FPFastMathModeFastMask = 0x00000010, - FPFastMathModeAllowContractFastINTELMask = 0x00010000, - FPFastMathModeAllowReassocINTELMask = 0x00020000, }; enum FPRoundingMode { @@ -411,7 +390,6 @@ enum FPRoundingMode { enum LinkageType { LinkageTypeExport = 0, LinkageTypeImport = 1, - LinkageTypeLinkOnceODR = 2, LinkageTypeMax = 0x7fffffff, }; @@ -499,45 +477,11 @@ enum Decoration { 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 @@ enum BuiltIn { BuiltInBaseVertex = 4424, BuiltInBaseInstance = 4425, BuiltInDrawIndex = 4426, - BuiltInPrimitiveShadingRateKHR = 4432, BuiltInDeviceIndex = 4438, BuiltInViewIndex = 4440, - BuiltInShadingRateKHR = 4444, BuiltInBaryCoordNoPerspAMD = 4992, BuiltInBaryCoordNoPerspCentroidAMD = 4993, BuiltInBaryCoordNoPerspSampleAMD = 4994, @@ -650,10 +592,10 @@ enum BuiltIn { 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 @@ enum LoopControlShift { 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 @@ enum LoopControlMask { 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 @@ enum FunctionControlShift { FunctionControlDontInlineShift = 1, FunctionControlPureShift = 2, FunctionControlConstShift = 3, - FunctionControlOptNoneINTELShift = 16, FunctionControlMax = 0x7fffffff, }; @@ -733,7 +658,6 @@ enum FunctionControlMask { FunctionControlDontInlineMask = 0x00000002, FunctionControlPureMask = 0x00000004, FunctionControlConstMask = 0x00000008, - FunctionControlOptNoneINTELMask = 0x00010000, }; enum MemorySemanticsShift { @@ -914,12 +838,8 @@ enum Capability { 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 @@ enum Capability { 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 @@ enum Capability { CapabilityStorageTexelBufferArrayNonUniformIndexing = 5312, CapabilityStorageTexelBufferArrayNonUniformIndexingEXT = 5312, CapabilityRayTracingNV = 5340, - CapabilityRayTracingMotionBlurNV = 5341, CapabilityVulkanMemoryModel = 5345, CapabilityVulkanMemoryModelKHR = 5345, CapabilityVulkanMemoryModelDeviceScope = 5346, @@ -1011,51 +927,10 @@ enum Capability { 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 @@ enum RayQueryCandidateIntersectionType { 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 @@ enum Op { 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 @@ enum Op { 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 @@ enum Op { 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 @@ enum Op { 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 @@ enum Op { OpRayQueryGetWorldRayOriginKHR = 6030, OpRayQueryGetIntersectionObjectToWorldKHR = 6031, OpRayQueryGetIntersectionWorldToObjectKHR = 6032, - OpAtomicFAddEXT = 6035, - OpTypeBufferSurfaceINTEL = 6086, - OpTypeStructContinuedINTEL = 6090, - OpConstantCompositeContinuedINTEL = 6091, - OpSpecConstantCompositeContinuedINTEL = 6092, OpMax = 0x7fffffff, }; @@ -2152,31 +1889,12 @@ inline void HasResultAndType(Op opcode, bool *hasResult, bool *hasResultType) { 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 @@ inline void HasResultAndType(Op opcode, bool *hasResult, bool *hasResultType) { 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 @@ inline void HasResultAndType(Op opcode, bool *hasResult, bool *hasResultType) { 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 @@ inline void HasResultAndType(Op opcode, bool *hasResult, bool *hasResultType) { 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 MemorySemanticsMask operator|(MemorySemanticsMask a, MemorySemanticsMask 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 @@ namespace spv { 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 @@ enum class SourceLanguage : unsigned { OpenCL_C = 3, OpenCL_CPP = 4, HLSL = 5, - CPP_for_OpenCL = 6, Max = 0x7fffffff, }; @@ -151,7 +150,6 @@ enum class ExecutionMode : unsigned { SubgroupsPerWorkgroupId = 37, LocalSizeId = 38, LocalSizeHintId = 39, - SubgroupUniformControlFlowKHR = 4421, PostDepthCoverage = 4446, DenormPreserve = 4459, DenormFlushToZero = 4460, @@ -170,16 +168,6 @@ enum class ExecutionMode : unsigned { 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 @@ enum class StorageClass : unsigned { ShaderRecordBufferNV = 5343, PhysicalStorageBuffer = 5349, PhysicalStorageBufferEXT = 5349, - CodeSectionINTEL = 5605, - DeviceOnlyINTEL = 5936, - HostOnlyINTEL = 5937, Max = 0x7fffffff, }; @@ -284,8 +269,6 @@ enum class ImageFormat : unsigned { Rg8ui = 37, R16ui = 38, R8ui = 39, - R64ui = 40, - R64i = 41, Max = 0x7fffffff, }; @@ -384,8 +367,6 @@ enum class FPFastMathModeShift : unsigned { NSZ = 2, AllowRecip = 3, Fast = 4, - AllowContractFastINTEL = 16, - AllowReassocINTEL = 17, Max = 0x7fffffff, }; @@ -396,8 +377,6 @@ enum class FPFastMathModeMask : unsigned { NSZ = 0x00000004, AllowRecip = 0x00000008, Fast = 0x00000010, - AllowContractFastINTEL = 0x00010000, - AllowReassocINTEL = 0x00020000, }; enum class FPRoundingMode : unsigned { @@ -411,7 +390,6 @@ enum class FPRoundingMode : unsigned { enum class LinkageType : unsigned { Export = 0, Import = 1, - LinkOnceODR = 2, Max = 0x7fffffff, }; @@ -499,45 +477,11 @@ enum class Decoration : unsigned { 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 @@ enum class BuiltIn : unsigned { BaseVertex = 4424, BaseInstance = 4425, DrawIndex = 4426, - PrimitiveShadingRateKHR = 4432, DeviceIndex = 4438, ViewIndex = 4440, - ShadingRateKHR = 4444, BaryCoordNoPerspAMD = 4992, BaryCoordNoPerspCentroidAMD = 4993, BaryCoordNoPerspSampleAMD = 4994, @@ -650,10 +592,10 @@ enum class BuiltIn : unsigned { 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 @@ enum class LoopControlShift : unsigned { 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 @@ enum class LoopControlMask : unsigned { 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 @@ enum class FunctionControlShift : unsigned { DontInline = 1, Pure = 2, Const = 3, - OptNoneINTEL = 16, Max = 0x7fffffff, }; @@ -733,7 +658,6 @@ enum class FunctionControlMask : unsigned { DontInline = 0x00000002, Pure = 0x00000004, Const = 0x00000008, - OptNoneINTEL = 0x00010000, }; enum class MemorySemanticsShift : unsigned { @@ -914,12 +838,8 @@ enum class Capability : unsigned { 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 @@ enum class Capability : unsigned { 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 @@ enum class Capability : unsigned { StorageTexelBufferArrayNonUniformIndexing = 5312, StorageTexelBufferArrayNonUniformIndexingEXT = 5312, RayTracingNV = 5340, - RayTracingMotionBlurNV = 5341, VulkanMemoryModel = 5345, VulkanMemoryModelKHR = 5345, VulkanMemoryModelDeviceScope = 5346, @@ -1011,51 +927,10 @@ enum class Capability : unsigned { 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 @@ enum class RayQueryCandidateIntersectionType : unsigned { 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 @@ enum class Op : unsigned { 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 @@ enum class Op : unsigned { 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 @@ enum class Op : unsigned { 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 @@ enum class Op : unsigned { 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 @@ enum class Op : unsigned { OpRayQueryGetWorldRayOriginKHR = 6030, OpRayQueryGetIntersectionObjectToWorldKHR = 6031, OpRayQueryGetIntersectionWorldToObjectKHR = 6032, - OpAtomicFAddEXT = 6035, - OpTypeBufferSurfaceINTEL = 6086, - OpTypeStructContinuedINTEL = 6090, - OpConstantCompositeContinuedINTEL = 6091, - OpSpecConstantCompositeContinuedINTEL = 6092, Max = 0x7fffffff, }; @@ -2152,31 +1889,12 @@ inline void HasResultAndType(Op opcode, bool *hasResult, bool *hasResultType) { 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 @@ inline void HasResultAndType(Op opcode, bool *hasResult, bool *hasResultType) { 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 @@ inline void HasResultAndType(Op opcode, bool *hasResult, bool *hasResultType) { 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 @@ inline void HasResultAndType(Op opcode, bool *hasResult, bool *hasResultType) { 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 MemorySemanticsMask operator|(MemorySemanticsMask a, MemorySemanticsMask 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 @@ spv = { OpenCL_C = 3, OpenCL_CPP = 4, HLSL = 5, - CPP_for_OpenCL = 6, }, ExecutionModel = { @@ -138,7 +137,6 @@ spv = { SubgroupsPerWorkgroupId = 37, LocalSizeId = 38, LocalSizeHintId = 39, - SubgroupUniformControlFlowKHR = 4421, PostDepthCoverage = 4446, DenormPreserve = 4459, DenormFlushToZero = 4460, @@ -157,16 +155,6 @@ spv = { 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 @@ spv = { ShaderRecordBufferNV = 5343, PhysicalStorageBuffer = 5349, PhysicalStorageBufferEXT = 5349, - CodeSectionINTEL = 5605, - DeviceOnlyINTEL = 5936, - HostOnlyINTEL = 5937, }, Dim = { @@ -266,8 +251,6 @@ spv = { Rg8ui = 37, R16ui = 38, R8ui = 39, - R64ui = 40, - R64i = 41, }, ImageChannelOrder = { @@ -362,8 +345,6 @@ spv = { NSZ = 2, AllowRecip = 3, Fast = 4, - AllowContractFastINTEL = 16, - AllowReassocINTEL = 17, }, FPFastMathModeMask = { @@ -373,8 +354,6 @@ spv = { NSZ = 0x00000004, AllowRecip = 0x00000008, Fast = 0x00000010, - AllowContractFastINTEL = 0x00010000, - AllowReassocINTEL = 0x00020000, }, FPRoundingMode = { @@ -387,7 +366,6 @@ spv = { LinkageType = { Export = 0, Import = 1, - LinkOnceODR = 2, }, AccessQualifier = { @@ -472,45 +450,11 @@ spv = { 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 @@ spv = { BaseVertex = 4424, BaseInstance = 4425, DrawIndex = 4426, - PrimitiveShadingRateKHR = 4432, DeviceIndex = 4438, ViewIndex = 4440, - ShadingRateKHR = 4444, BaryCoordNoPerspAMD = 4992, BaryCoordNoPerspCentroidAMD = 4993, BaryCoordNoPerspSampleAMD = 4994, @@ -622,10 +564,10 @@ spv = { 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 @@ spv = { 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 @@ spv = { 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 @@ spv = { DontInline = 1, Pure = 2, Const = 3, - OptNoneINTEL = 16, }, FunctionControlMask = { @@ -701,7 +626,6 @@ spv = { DontInline = 0x00000002, Pure = 0x00000004, Const = 0x00000008, - OptNoneINTEL = 0x00010000, }, MemorySemanticsShift = { @@ -876,12 +800,8 @@ spv = { 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 @@ spv = { 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 @@ spv = { StorageTexelBufferArrayNonUniformIndexing = 5312, StorageTexelBufferArrayNonUniformIndexingEXT = 5312, RayTracingNV = 5340, - RayTracingMotionBlurNV = 5341, VulkanMemoryModel = 5345, VulkanMemoryModelKHR = 5345, VulkanMemoryModelDeviceScope = 5346, @@ -973,51 +889,10 @@ spv = { 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 @@ spv = { 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 @@ spv = { 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 @@ spv = { 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 @@ spv = { 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 @@ spv = { 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 @@ spv = { 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 @@ spv = { 'OpenCL_C' : 3, 'OpenCL_CPP' : 4, 'HLSL' : 5, - 'CPP_for_OpenCL' : 6, }, 'ExecutionModel' : { @@ -138,7 +137,6 @@ spv = { 'SubgroupsPerWorkgroupId' : 37, 'LocalSizeId' : 38, 'LocalSizeHintId' : 39, - 'SubgroupUniformControlFlowKHR' : 4421, 'PostDepthCoverage' : 4446, 'DenormPreserve' : 4459, 'DenormFlushToZero' : 4460, @@ -157,16 +155,6 @@ spv = { '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 @@ spv = { 'ShaderRecordBufferNV' : 5343, 'PhysicalStorageBuffer' : 5349, 'PhysicalStorageBufferEXT' : 5349, - 'CodeSectionINTEL' : 5605, - 'DeviceOnlyINTEL' : 5936, - 'HostOnlyINTEL' : 5937, }, 'Dim' : { @@ -266,8 +251,6 @@ spv = { 'Rg8ui' : 37, 'R16ui' : 38, 'R8ui' : 39, - 'R64ui' : 40, - 'R64i' : 41, }, 'ImageChannelOrder' : { @@ -362,8 +345,6 @@ spv = { 'NSZ' : 2, 'AllowRecip' : 3, 'Fast' : 4, - 'AllowContractFastINTEL' : 16, - 'AllowReassocINTEL' : 17, }, 'FPFastMathModeMask' : { @@ -373,8 +354,6 @@ spv = { 'NSZ' : 0x00000004, 'AllowRecip' : 0x00000008, 'Fast' : 0x00000010, - 'AllowContractFastINTEL' : 0x00010000, - 'AllowReassocINTEL' : 0x00020000, }, 'FPRoundingMode' : { @@ -387,7 +366,6 @@ spv = { 'LinkageType' : { 'Export' : 0, 'Import' : 1, - 'LinkOnceODR' : 2, }, 'AccessQualifier' : { @@ -472,45 +450,11 @@ spv = { '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 @@ spv = { 'BaseVertex' : 4424, 'BaseInstance' : 4425, 'DrawIndex' : 4426, - 'PrimitiveShadingRateKHR' : 4432, 'DeviceIndex' : 4438, 'ViewIndex' : 4440, - 'ShadingRateKHR' : 4444, 'BaryCoordNoPerspAMD' : 4992, 'BaryCoordNoPerspCentroidAMD' : 4993, 'BaryCoordNoPerspSampleAMD' : 4994, @@ -622,10 +564,10 @@ spv = { '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 @@ spv = { '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 @@ spv = { '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 @@ spv = { 'DontInline' : 1, 'Pure' : 2, 'Const' : 3, - 'OptNoneINTEL' : 16, }, 'FunctionControlMask' : { @@ -701,7 +626,6 @@ spv = { 'DontInline' : 0x00000002, 'Pure' : 0x00000004, 'Const' : 0x00000008, - 'OptNoneINTEL' : 0x00010000, }, 'MemorySemanticsShift' : { @@ -876,12 +800,8 @@ spv = { '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 @@ spv = { '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 @@ spv = { 'StorageTexelBufferArrayNonUniformIndexing' : 5312, 'StorageTexelBufferArrayNonUniformIndexingEXT' : 5312, 'RayTracingNV' : 5340, - 'RayTracingMotionBlurNV' : 5341, 'VulkanMemoryModel' : 5345, 'VulkanMemoryModelKHR' : 5345, 'VulkanMemoryModelDeviceScope' : 5346, @@ -973,51 +889,10 @@ spv = { '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 @@ spv = { '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 @@ spv = { '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 @@ spv = { '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 @@ spv = { '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 @@ spv = { '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 @@ spv = { '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 @@ module spv; 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 @@ enum SourceLanguage : uint OpenCL_C = 3, OpenCL_CPP = 4, HLSL = 5, - CPP_for_OpenCL = 6, } enum ExecutionModel : uint @@ -150,7 +149,6 @@ enum ExecutionMode : uint SubgroupsPerWorkgroupId = 37, LocalSizeId = 38, LocalSizeHintId = 39, - SubgroupUniformControlFlowKHR = 4421, PostDepthCoverage = 4446, DenormPreserve = 4459, DenormFlushToZero = 4460, @@ -169,16 +167,6 @@ enum ExecutionMode : uint 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 @@ enum StorageClass : uint ShaderRecordBufferNV = 5343, PhysicalStorageBuffer = 5349, PhysicalStorageBufferEXT = 5349, - CodeSectionINTEL = 5605, - DeviceOnlyINTEL = 5936, - HostOnlyINTEL = 5937, } enum Dim : uint @@ -283,8 +268,6 @@ enum ImageFormat : uint Rg8ui = 37, R16ui = 38, R8ui = 39, - R64ui = 40, - R64i = 41, } enum ImageChannelOrder : uint @@ -384,8 +367,6 @@ enum FPFastMathModeShift : uint NSZ = 2, AllowRecip = 3, Fast = 4, - AllowContractFastINTEL = 16, - AllowReassocINTEL = 17, } enum FPFastMathModeMask : uint @@ -396,8 +377,6 @@ enum FPFastMathModeMask : uint NSZ = 0x00000004, AllowRecip = 0x00000008, Fast = 0x00000010, - AllowContractFastINTEL = 0x00010000, - AllowReassocINTEL = 0x00020000, } enum FPRoundingMode : uint @@ -412,7 +391,6 @@ enum LinkageType : uint { Export = 0, Import = 1, - LinkOnceODR = 2, } enum AccessQualifier : uint @@ -500,45 +478,11 @@ enum Decoration : uint 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 @@ enum BuiltIn : uint BaseVertex = 4424, BaseInstance = 4425, DrawIndex = 4426, - PrimitiveShadingRateKHR = 4432, DeviceIndex = 4438, ViewIndex = 4440, - ShadingRateKHR = 4444, BaryCoordNoPerspAMD = 4992, BaryCoordNoPerspCentroidAMD = 4993, BaryCoordNoPerspSampleAMD = 4994, @@ -651,10 +593,10 @@ enum BuiltIn : uint 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 @@ enum LoopControlShift : uint 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 @@ enum LoopControlMask : uint 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 @@ enum FunctionControlShift : uint DontInline = 1, Pure = 2, Const = 3, - OptNoneINTEL = 16, } enum FunctionControlMask : uint @@ -736,7 +661,6 @@ enum FunctionControlMask : uint DontInline = 0x00000002, Pure = 0x00000004, Const = 0x00000008, - OptNoneINTEL = 0x00010000, } enum MemorySemanticsShift : uint @@ -921,12 +845,8 @@ enum Capability : uint 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 @@ enum Capability : uint 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 @@ enum Capability : uint StorageTexelBufferArrayNonUniformIndexing = 5312, StorageTexelBufferArrayNonUniformIndexingEXT = 5312, RayTracingNV = 5340, - RayTracingMotionBlurNV = 5341, VulkanMemoryModel = 5345, VulkanMemoryModelKHR = 5345, VulkanMemoryModelDeviceScope = 5346, @@ -1018,51 +934,10 @@ enum Capability : uint 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 @@ enum RayQueryCandidateIntersectionType : uint 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 @@ enum Op : uint 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 @@ enum Op : uint 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 @@ enum Op : uint 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 @@ enum Op : uint 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 @@ enum Op : uint 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_ballot', 'extinst.spv-amd-shader-ballot.grammar.json') 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 @@ python3 bin/makeExtinstHeaders.py 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 @@ namespace { 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 @@ namespace { 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 @@ namespace { } // 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 ImageChannelDataTypeParams; 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 RayFlagsParams; EnumValues RayQueryIntersectionParams; EnumValues RayQueryCommittedIntersectionTypeParams; EnumValues RayQueryCandidateIntersectionTypeParams; -EnumValues FragmentShadingRateParams; -EnumValues PackedVectorFormatParams; std::pair<bool, std::string> ReadFile(const std::string& path) { @@ -184,14 +177,6 @@ ClassOptionality ToOperandClassAndOptionality(const std::string& operandKind, co 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 @@ ClassOptionality ToOperandClassAndOptionality(const std::string& operandKind, co 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 @@ void jsonToSpirv(const std::string& jsonPath, bool buildingHeaders) // 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 @@ void jsonToSpirv(const std::string& jsonPath, bool buildingHeaders) } 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 @@ void jsonToSpirv(const std::string& jsonPath, bool buildingHeaders) 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 @@ void jsonToSpirv(const std::string& jsonPath, bool buildingHeaders) 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 @@ void jsonToSpirv(const std::string& jsonPath, bool buildingHeaders) 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 @@ std::pair<bool, std::string> ReadFile(const std::string& path); 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 @@ enum OperandClass { OperandMemorySemantics, OperandMemoryOperands, OperandScope, - OperandGroupOperation, + OperandGroupOperation, OperandKernelEnqueueFlags, OperandKernelProfilingInfo, OperandCapability, @@ -90,12 +88,6 @@ enum OperandClass { OperandRayQueryIntersection, OperandRayQueryCommittedIntersectionType, OperandRayQueryCandidateIntersectionType, - OperandFragmentShadingRate, - OperandFPDenormMode, - OperandFPOperationMode, - OperandQuantizationModes, - OperandOverflowModes, - OperandPackedVectorFormat, OperandOpcode, |