diff --git a/CMakeLists.txt b/CMakeLists.txt index 5d48618..83d4bde 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -38,71 +38,6 @@ set(3RDPARTY_INCLUDES "") set(3RDPARTY_DIR ${CMAKE_CURRENT_SOURCE_DIR}/Extern/3rdParty) add_subdirectory(${3RDPARTY_DIR}) -function(CompileShader shader_path shader_type) - get_filename_component(dir ${shader_path} DIRECTORY) - get_filename_component(file_name ${shader_path} NAME) - get_filename_component(shader_name ${shader_path} NAME_WLE) - - set(depends_option "") - - if (${CMAKE_SYSTEM_NAME} MATCHES "Windows") - set(platform_options --platform windows) - set(target_types spirv) - elseif (${CMAKE_SYSTEM_NAME} MATCHES "Linux") - set(platform_options --platform linux) - set(target_types spirv) - endif() - - set(compile_options ${depends_option} ${platform_options}) - if (NOT (${shader_type} MATCHES "compute")) - set(compile_options ${compile_options} --varyingdef varying.def.sc) - endif() - - set(target_headers "") - foreach(target_type ${target_types}) - list(APPEND target_headers - ${CMAKE_CURRENT_BINARY_DIR}/Shader/${target_type}/${shader_name}.h - ) - endforeach() - - list(LENGTH target_types num_target_types) - math(EXPR max_index_target_types "${num_target_types} - 1") - foreach(i RANGE ${max_index_target_types}) - list(GET target_types ${i} target_type) - list(GET target_headers ${i} target_name) - set(append_tag "") - if(NOT (i EQUAL 0)) - set(append_tag APPEND) - endif() - - if(${target_type} MATCHES "glsl") - set(profile_options -p 430) - elseif(${target_type} MATCHES "spirv") - set(profile_options -p spirv) - endif() - - add_custom_command(OUTPUT ${target_headers} - COMMAND $ -f ${file_name} -o ${target_name} --bin2c ${target_type}_${shader_name} ${compile_options} ${profile_options} --type ${shader_type} - MAIN_DEPENDENCY ${shader_path} - DEPENDS ${speedcg_render_shader_header} - WORKING_DIRECTORY ${dir} - COMMENT "Compiling ${file_name} to ${target_types} ..." - ${append_tag} - VERBATIM - ) - endforeach() -endfunction() - -function(CompileVertexShader shader_path) - CompileShader(${shader_path} "vertex") -endfunction() -function(CompileFragmentShader shader_path) - CompileShader(${shader_path} "fragment") -endfunction() -function(CompileComputeShader shader_path) - CompileShader(${shader_path} "compute") -endfunction() - # ------------------------------------------------------------------ # EvoEngine - SDK # ------------------------------------------------------------------ diff --git a/EvoEngine_App/Demo/Demo.cpp b/EvoEngine_App/Demo/Demo.cpp index 00bf455..e915838 100644 --- a/EvoEngine_App/Demo/Demo.cpp +++ b/EvoEngine_App/Demo/Demo.cpp @@ -4,28 +4,27 @@ #include "EditorLayer.hpp" #include "MeshRenderer.hpp" -#include "PlanetTerrainSystem.hpp" -#include "StarClusterSystem.hpp" #include "PerlinNoiseStage.hpp" +#include "PlanetTerrainSystem.hpp" #include "PlayerController.hpp" #include "Prefab.hpp" #include "RenderLayer.hpp" +#include "StarClusterSystem.hpp" #include "Times.hpp" #include "WindowLayer.hpp" #include "PostProcessingStack.hpp" #include "Resources.hpp" #ifdef OPTIX_RAY_TRACER_PLUGIN -#include -#include +# include +# include #endif #ifdef PHYSICS_PLUGIN -#include "PhysicsLayer.hpp" -#include "RigidBody.hpp" -#ifdef RAY_TRACER_PLUGIN -#include "CpuRayTracerCamera.hpp" +# include "PhysicsLayer.hpp" +# include "RigidBody.hpp" #endif - +#ifdef RAY_TRACER_PLUGIN +# include "CpuRayTracerCamera.hpp" #endif using namespace evo_engine; using namespace planet; @@ -69,7 +68,7 @@ int main() { #ifdef PHYSICS_PLUGIN Application::PushLayer(); #endif - + #ifdef RAY_TRACER_PLUGIN PrivateComponentRegistration("CpuRayTracerCamera"); #endif @@ -467,7 +466,7 @@ void SetupDemoScene(DemoSetup demo_setup, ApplicationInfo& application_info) { #ifdef PHYSICS_PLUGIN Entity LoadPhysicsScene(const std::shared_ptr& scene, const std::string& base_entity_name) { const auto base_entity = scene->CreateEntity(base_entity_name); -#pragma region Create 9 spheres in different PBR properties +# pragma region Create 9 spheres in different PBR properties const int amount = 5; constexpr float scale_factor = 0.03f; const auto collection = scene->CreateEntity("Spheres"); @@ -502,8 +501,8 @@ Entity LoadPhysicsScene(const std::shared_ptr& scene, const std::string& } } scene->SetParent(collection, base_entity); -#pragma endregion -#pragma region Create Boundaries +# pragma endregion +# pragma region Create Boundaries { const auto ground = CreateSolidCube(1.0, glm::vec3(1.0f), glm::vec3(0, -35, 0) * scale_factor, glm::vec3(0), glm::vec3(30, 1, 60) * scale_factor, "Ground"); @@ -565,11 +564,10 @@ Entity LoadPhysicsScene(const std::shared_ptr& scene, const std::string& joint->SetMotion(MotionAxis::SwingZ, MotionType::Free); */ } -#pragma endregion +# pragma endregion return base_entity; } - Entity CreateSolidCube(const float& mass, const glm::vec3& color, const glm::vec3& position, const glm::vec3& rotation, const glm::vec3& scale, const std::string& name) { auto scene = Application::GetActiveScene(); diff --git a/EvoEngine_Plugins/EcoSysLab/CMakeLists.txt b/EvoEngine_Plugins/EcoSysLab/CMakeLists.txt index d24d657..9dbef55 100644 --- a/EvoEngine_Plugins/EcoSysLab/CMakeLists.txt +++ b/EvoEngine_Plugins/EcoSysLab/CMakeLists.txt @@ -1,6 +1,6 @@ set(ECOSYSLAB_DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR}) set(ECOSYSLAB_INCLUDES - ${3RD_PARTY_DIR}/pinchot/include + ${3RDPARTY_DIR}/pinchot/pinchot/include ${ECOSYSLAB_DIRECTORY} ${ECOSYSLAB_DIRECTORY}/include ${ECOSYSLAB_DIRECTORY}/include @@ -56,7 +56,7 @@ target_precompile_headers(EcoSysLabPlugin ) if (WIN32) - set(PINCHOT_LIB ${3RD_PARTY_DIR}/pinchot/lib/windows/x64/pinchot.lib) + set(PINCHOT_LIB ${3RDPARTY_DIR}/pinchot/pinchot/lib/windows/x64/pinchot.lib) # Compiler settings for Windows platform set(CMAKE_WINDOWS_EXPORT_ALL_SYMBOLS ON) endif () @@ -71,7 +71,7 @@ set(EVOENGINE_PLUGINS_PCHS ${EVOENGINE_PLUGINS_PCHS} ${ECOSYSLAB_PCH} PARENT_SCO set(EVOENGINE_PLUGINS_DEFS ${EVOENGINE_PLUGINS_DEFS} ECOSYSLAB_PLUGIN PARENT_SCOPE) if (WIN32) - set(PINCHOT_DLL ${3RD_PARTY_DIR}/pinchot/lib/windows/x64/pinchot.dll) + set(PINCHOT_DLL ${3RDPARTY_DIR}/pinchot/pinchot/lib/windows/x64/pinchot.dll) endif () set(EVOENGINE_PLUGINS_DLLS ${EVOENGINE_PLUGINS_DLLS} ${PINCHOT_DLL} PARENT_SCOPE) diff --git a/EvoEngine_Plugins/EcoSysLab/include/JoeScan/jsSetupConfigParser.hpp b/EvoEngine_Plugins/EcoSysLab/include/JoeScan/jsSetupConfigParser.hpp index 8787244..565426c 100644 --- a/EvoEngine_Plugins/EcoSysLab/include/JoeScan/jsSetupConfigParser.hpp +++ b/EvoEngine_Plugins/EcoSysLab/include/JoeScan/jsSetupConfigParser.hpp @@ -11,8 +11,9 @@ #include #include #include "joescan_pinchot.h" -#include "json.h" -using namespace treeio; +#include "nlohmann/json.hpp" +using namespace nlohmann; + namespace joescan { /// Internal function diff --git a/EvoEngine_Plugins/EcoSysLab/include/Json.hpp b/EvoEngine_Plugins/EcoSysLab/include/Json.hpp index 5dc8172..2546f11 100644 --- a/EvoEngine_Plugins/EcoSysLab/include/Json.hpp +++ b/EvoEngine_Plugins/EcoSysLab/include/Json.hpp @@ -1,5 +1,5 @@ #pragma once -#include "json.h" +#include "nlohmann/json.hpp" using namespace evo_engine; namespace eco_sys_lab { class Json : public IAsset { @@ -8,7 +8,7 @@ class Json : public IAsset { bool LoadInternal(const std::filesystem::path& path) override; public: - treeio::json m_json; + nlohmann::json m_json; bool OnInspect(const std::shared_ptr& editorLayer) override; }; } // namespace eco_sys_lab \ No newline at end of file diff --git a/EvoEngine_Plugins/EcoSysLab/include/Tree.hpp b/EvoEngine_Plugins/EcoSysLab/include/Tree.hpp index 767e84b..bcdc356 100644 --- a/EvoEngine_Plugins/EcoSysLab/include/Tree.hpp +++ b/EvoEngine_Plugins/EcoSysLab/include/Tree.hpp @@ -91,7 +91,8 @@ class Tree : public IPrivateComponent { const std::shared_ptr& climate); ShootGrowthController shoot_growth_controller_{}; - void GenerateTreeParts(const TreeMeshGeneratorSettings& mesh_generator_settings, std::vector& tree_parts); + void GenerateTreeParts(const TreeMeshGeneratorSettings& mesh_generator_settings, + std::vector& tree_parts); public: StrandModelParameters strand_model_parameters{}; @@ -183,7 +184,7 @@ class Tree : public IPrivateComponent { void FromTreeGraph(const std::shared_ptr& tree_graph); void FromTreeGraphV2(const std::shared_ptr& tree_graph_v2); void ExportTreeParts(const TreeMeshGeneratorSettings& mesh_generator_settings, YAML::Emitter& out); - void ExportTreeParts(const TreeMeshGeneratorSettings& mesh_generator_settings, treeio::json& out); + void ExportTreeParts(const TreeMeshGeneratorSettings& mesh_generator_settings, nlohmann::json& out); void ExportTreeParts(const TreeMeshGeneratorSettings& mesh_generator_settings, const std::filesystem::path& path); [[maybe_unused]] bool ExportIoTree(const std::filesystem::path& path) const; @@ -231,9 +232,10 @@ void BranchPhysicsParameters::Link(const std::shared_ptr& scene, joint->SetType(JointType::D6); joint->SetMotion(MotionAxis::SwingY, MotionType::Free); joint->SetMotion(MotionAxis::SwingZ, MotionType::Free); - joint->SetDrive( - DriveType::Swing, glm::pow(child_thickness, joint_drive_stiffness_thickness_factor) * joint_drive_stiffness, - glm::pow(child_thickness, joint_drive_damping_thickness_factor) * joint_drive_damping, enable_acceleration_for_drive); + joint->SetDrive(DriveType::Swing, + glm::pow(child_thickness, joint_drive_stiffness_thickness_factor) * joint_drive_stiffness, + glm::pow(child_thickness, joint_drive_damping_thickness_factor) * joint_drive_damping, + enable_acceleration_for_drive); #endif } diff --git a/EvoEngine_Plugins/EcoSysLab/include/TreeIO/TreeIOTree.hpp b/EvoEngine_Plugins/EcoSysLab/include/TreeIO/TreeIOTree.hpp index 17a65f0..e9329c5 100644 --- a/EvoEngine_Plugins/EcoSysLab/include/TreeIO/TreeIOTree.hpp +++ b/EvoEngine_Plugins/EcoSysLab/include/TreeIO/TreeIOTree.hpp @@ -78,7 +78,7 @@ struct TreeDynamicMetaData { void deserialize(const std::string &serialized); /// Internal data holder. - json data{}; + nlohmann::json data{}; }; // struct TreeDynamicMetaData /// @brief Holds meta data containing information regarding the tree @@ -200,12 +200,12 @@ struct TreeMetaData { } /// @brief Access the dynamic meta-data. - const json &dynamicData() const { + const nlohmann::json &dynamicData() const { return mDynamicMetaData->data; } /// @brief Access the dynamic meta-data. - json &dynamicData() { + nlohmann::json &dynamicData() { return mDynamicMetaData->data; } @@ -1571,8 +1571,8 @@ ArrayTreeT ArrayTreeT::parseTreeFromTreeStri namespace impl { inline auto getRootJSONObject(const std::string &serialized) { - const auto data{treeutil::containsOnlyWhiteSpaces(serialized) ? treeio::json{} : json::parse(serialized)}; - const auto isArray{data.type() == json::value_t::array}; + const auto data{treeutil::containsOnlyWhiteSpaces(serialized) ? nlohmann::json{} : nlohmann::json::parse(serialized)}; + const auto isArray{data.type() == nlohmann::json::value_t::array}; return isArray ? *data.begin() : data; } diff --git a/EvoEngine_Plugins/EcoSysLab/include/TreeIO/TreeIOUtils.hpp b/EvoEngine_Plugins/EcoSysLab/include/TreeIO/TreeIOUtils.hpp index fb250b5..36ad2a3 100644 --- a/EvoEngine_Plugins/EcoSysLab/include/TreeIO/TreeIOUtils.hpp +++ b/EvoEngine_Plugins/EcoSysLab/include/TreeIO/TreeIOUtils.hpp @@ -26,7 +26,7 @@ #include #include -#include +#include #include #define HAS_GLM diff --git a/EvoEngine_Plugins/EcoSysLab/src/Json.cpp b/EvoEngine_Plugins/EcoSysLab/src/Json.cpp index e40c13d..80b38dc 100644 --- a/EvoEngine_Plugins/EcoSysLab/src/Json.cpp +++ b/EvoEngine_Plugins/EcoSysLab/src/Json.cpp @@ -10,7 +10,7 @@ bool Json::SaveInternal(const std::filesystem::path& path) const { bool Json::LoadInternal(const std::filesystem::path& path) { std::ifstream ifs(path); - m_json = treeio::json::parse(ifs); + m_json = nlohmann::json::parse(ifs); return true; } diff --git a/EvoEngine_Plugins/EcoSysLab/src/Tree.cpp b/EvoEngine_Plugins/EcoSysLab/src/Tree.cpp index 392232d..31e665b 100644 --- a/EvoEngine_Plugins/EcoSysLab/src/Tree.cpp +++ b/EvoEngine_Plugins/EcoSysLab/src/Tree.cpp @@ -23,7 +23,9 @@ #include "Strands.hpp" #include "StrandsRenderer.hpp" #include "TreeSkinnedMeshGenerator.hpp" -#include "RigidBody.hpp" +#ifdef PHYSICS_PLUGIN +# include "RigidBody.hpp" +#endif using namespace eco_sys_lab; void Tree::SerializeTreeGrowthSettings(const TreeGrowthSettings& tree_growth_settings, YAML::Emitter& out) { out << YAML::Key << "node_developmental_vigor_filling_rate" << YAML::Value @@ -109,7 +111,7 @@ bool Tree::ParseBinvox(const std::filesystem::path& file_path, VoxelGrid& point_mesh_sample, +void Tree::GenerateSkeletalGraph(const SkeletalGraphSettings& skeletal_graph_settings, + SkeletonNodeHandle base_node_handle, const std::shared_ptr& point_mesh_sample, const std::shared_ptr& line_mesh_sample) const { const auto scene = GetScene(); const auto self = GetOwner(); @@ -222,7 +224,7 @@ void Tree::GenerateSkeletalGraph(const SkeletalGraphSettings& skeletal_graph_set std::vector line_particle_infos; std::vector point_particle_infos; const int node_size = strand_ready ? strand_model.strand_model_skeleton.PeekSortedNodeList().size() - : tree_model.PeekShootSkeleton().PeekSortedNodeList().size(); + : tree_model.PeekShootSkeleton().PeekSortedNodeList().size(); if (strand_ready) { line_particle_infos.resize(node_size); point_particle_infos.resize(node_size); @@ -252,8 +254,7 @@ void Tree::GenerateSkeletalGraph(const SkeletalGraphSettings& skeletal_graph_set rotation *= glm::quat(glm::vec3(glm::radians(90.0f), 0.0f, 0.0f)); const glm::mat4 rotation_transform = glm::mat4_cast(rotation); line_particle_infos[internode_index].instance_matrix.value = - glm::translate(position + (node.info.length / 2.0f) * node.info.GetGlobalDirection()) * - rotation_transform * + glm::translate(position + (node.info.length / 2.0f) * node.info.GetGlobalDirection()) * rotation_transform * glm::scale(glm::vec3(skeletal_graph_settings.fixed_line_thickness * (sub_tree ? 1.25f : 1.0f), node.info.length, skeletal_graph_settings.fixed_line_thickness * (sub_tree ? 1.25f : 1.0f))); @@ -303,8 +304,7 @@ void Tree::GenerateSkeletalGraph(const SkeletalGraphSettings& skeletal_graph_set rotation *= glm::quat(glm::vec3(glm::radians(90.0f), 0.0f, 0.0f)); const glm::mat4 rotation_transform = glm::mat4_cast(rotation); line_particle_infos[internode_index].instance_matrix.value = - glm::translate(position + (node.info.length / 2.0f) * node.info.GetGlobalDirection()) * - rotation_transform * + glm::translate(position + (node.info.length / 2.0f) * node.info.GetGlobalDirection()) * rotation_transform * glm::scale(glm::vec3(skeletal_graph_settings.fixed_line_thickness * (sub_tree ? 1.25f : 1.0f), node.info.length, skeletal_graph_settings.fixed_line_thickness * (sub_tree ? 1.25f : 1.0f))); @@ -381,21 +381,20 @@ bool Tree::OnInspect(const std::shared_ptr& editor_layer) { } if (ImGui::TreeNode("Sagging")) { bool bending_changed = false; - bending_changed = ImGui::DragFloat("Bending strength", &sd->gravity_bending_strength, 0.01f, 0.0f, - 1.0f, "%.3f") || - bending_changed; bending_changed = - ImGui::DragFloat("Bending thickness factor", &sd->gravity_bending_thickness_factor, 0.1f, - 0.0f, 10.f, "%.3f") || + ImGui::DragFloat("Bending strength", &sd->gravity_bending_strength, 0.01f, 0.0f, 1.0f, "%.3f") || + bending_changed; + bending_changed = ImGui::DragFloat("Bending thickness factor", &sd->gravity_bending_thickness_factor, 0.1f, + 0.0f, 10.f, "%.3f") || + bending_changed; + bending_changed = + ImGui::DragFloat("Bending angle factor", &sd->gravity_bending_max, 0.01f, 0.0f, 1.0f, "%.3f") || bending_changed; - bending_changed = ImGui::DragFloat("Bending angle factor", &sd->gravity_bending_max, 0.01f, 0.0f, - 1.0f, "%.3f") || - bending_changed; if (bending_changed) { shoot_growth_controller_.m_sagging = [=](const SkeletonNode& internode) { - float strength = internode.data.sagging_force * sd->gravity_bending_strength / - glm::pow(internode.info.thickness / sd->end_node_thickness, - sd->gravity_bending_thickness_factor); + float strength = + internode.data.sagging_force * sd->gravity_bending_strength / + glm::pow(internode.info.thickness / sd->end_node_thickness, sd->gravity_bending_thickness_factor); strength = sd->gravity_bending_max * (1.f - glm::exp(-glm::abs(strength))); return strength; }; @@ -418,8 +417,7 @@ bool Tree::OnInspect(const std::shared_ptr& editor_layer) { if (VoxelGrid input_grid{}; ParseBinvox(path, input_grid, 1.f)) { occupancy_grid.Initialize( input_grid, glm::vec3(-radius, 0, -radius), glm::vec3(radius, 2.0f * radius, radius), - sd->internode_length, - tree_model.tree_growth_settings.space_colonization_removal_distance_factor, + sd->internode_length, tree_model.tree_growth_settings.space_colonization_removal_distance_factor, tree_model.tree_growth_settings.space_colonization_theta, tree_model.tree_growth_settings.space_colonization_detection_distance_factor, markers_per_voxel); } @@ -497,8 +495,8 @@ bool Tree::OnInspect(const std::shared_ptr& editor_layer) { for (const auto& marker : voxel.markers) { scalar_matrices.resize(i + 1); scalar_matrices[i].instance_matrix.value = glm::translate(marker.position) * - glm::mat4_cast(glm::quat(glm::vec3(0.0f))) * - glm::scale(glm::vec3(voxel_grid.GetVoxelSize() * 0.2f)); + glm::mat4_cast(glm::quat(glm::vec3(0.0f))) * + glm::scale(glm::vec3(voxel_grid.GetVoxelSize() * 0.2f)); if (marker.node_handle == -1) scalar_matrices[i].instance_color = glm::vec4(1.0f, 1.0f, 1.0f, 0.75f); else { @@ -513,8 +511,8 @@ bool Tree::OnInspect(const std::shared_ptr& editor_layer) { GizmoSettings gizmo_settings{}; gizmo_settings.draw_settings.blending = true; editor_layer->DrawGizmoMeshInstancedColored(Resources::GetResource("PRIMITIVE_CUBE"), - space_colonization_grid_particle_info_list, glm::mat4(1.0f), 1.0f, - gizmo_settings); + space_colonization_grid_particle_info_list, glm::mat4(1.0f), 1.0f, + gizmo_settings); } } @@ -537,17 +535,20 @@ bool Tree::OnInspect(const std::shared_ptr& editor_layer) { if (ImGui::TreeNode("Strand Model")) { if (ImGui::TreeNodeEx("Profile settings", ImGuiTreeNodeFlags_DefaultOpen)) { if (ImGui::TreeNode("Physics settings")) { - ImGui::DragFloat("Physics damping", &strand_model_parameters.profile_physics_settings.damping, 0.01f, 0.0f, 1.0f); + ImGui::DragFloat("Physics damping", &strand_model_parameters.profile_physics_settings.damping, 0.01f, 0.0f, + 1.0f); ImGui::DragFloat("Physics max speed", &strand_model_parameters.profile_physics_settings.max_speed, 0.01f, 0.0f, 100.0f); - ImGui::DragFloat("Physics particle softness", &strand_model_parameters.profile_physics_settings.particle_softness, - 0.01f, 0.0f, 1.0f); + ImGui::DragFloat("Physics particle softness", + &strand_model_parameters.profile_physics_settings.particle_softness, 0.01f, 0.0f, 1.0f); ImGui::TreePop(); } ImGui::DragFloat("Center attraction strength", &strand_model_parameters.center_attraction_strength, 100.f, 0.0f, 10000.0f); - ImGui::DragInt("Max iteration cell factor", &strand_model_parameters.max_simulation_iteration_cell_factor, 1, 0, 500); - ImGui::DragInt("Branch Packing Timeout", &strand_model_parameters.branch_profile_packing_max_iteration, 1, 0, 10000); + ImGui::DragInt("Max iteration cell factor", &strand_model_parameters.max_simulation_iteration_cell_factor, 1, 0, + 500); + ImGui::DragInt("Branch Packing Timeout", &strand_model_parameters.branch_profile_packing_max_iteration, 1, 0, + 10000); ImGui::DragInt("Junction Packing Timeout", &strand_model_parameters.junction_profile_packing_max_iteration, 1, 20, 10000); ImGui::DragInt("Modified Packing Timeout", &strand_model_parameters.modified_profile_packing_max_iteration, 1, 20, @@ -570,18 +571,18 @@ bool Tree::OnInspect(const std::shared_ptr& editor_layer) { ImGui::DragFloat("Cladoptosis Range", &strand_model_parameters.cladoptosis_range, 0.01f, 0.0f, 50.f); strand_model_parameters.cladoptosis_distribution.OnInspect("Cladoptosis", plotted_distribution_settings); - ImGui::Text(("Strand count: " + - std::to_string(strand_model.strand_model_skeleton.data.strand_group.PeekStrands().size())) - .c_str()); - ImGui::Text(("Total particle count: " + std::to_string(strand_model.strand_model_skeleton.data.num_of_particles)) - .c_str()); + ImGui::Text( + ("Strand count: " + std::to_string(strand_model.strand_model_skeleton.data.strand_group.PeekStrands().size())) + .c_str()); + ImGui::Text( + ("Total particle count: " + std::to_string(strand_model.strand_model_skeleton.data.num_of_particles)).c_str()); if (ImGui::TreeNodeEx("Graph Adjustment settings", ImGuiTreeNodeFlags_DefaultOpen)) { ImGui::DragFloat("Side factor", &strand_model_parameters.side_push_factor, 0.01f, 0.0f, 2.0f); ImGui::DragFloat("Apical Side factor", &strand_model_parameters.apical_side_push_factor, 0.01f, 0.0f, 2.0f); ImGui::DragFloat("Rotation factor", &strand_model_parameters.rotation_push_factor, 0.01f, 0.0f, 2.0f); - ImGui::DragFloat("Apical Rotation factor", &strand_model_parameters.apical_branch_rotation_push_factor, 0.01f, 0.0f, - 2.0f); + ImGui::DragFloat("Apical Rotation factor", &strand_model_parameters.apical_branch_rotation_push_factor, 0.01f, + 0.0f, 2.0f); ImGui::TreePop(); } ImGui::DragInt("Max node count", &strand_model_parameters.node_max_count, 1, -1, 999); @@ -723,8 +724,8 @@ void Tree::CalculateProfiles() { const float profile_calculation_time = Times::Now() - time; std::string output; output += "\nProfile count: [" + std::to_string(strand_model.strand_model_skeleton.PeekSortedNodeList().size()); - output += "], Strand count: [" + - std::to_string(strand_model.strand_model_skeleton.data.strand_group.PeekStrands().size()); + output += + "], Strand count: [" + std::to_string(strand_model.strand_model_skeleton.data.strand_group.PeekStrands().size()); output += "], Particle count: [" + std::to_string(strand_model.strand_model_skeleton.data.num_of_particles); output += "]\nCalculate Profile Used time: " + std::to_string(profile_calculation_time) + "\n"; EVOENGINE_LOG(output); @@ -939,11 +940,11 @@ std::shared_ptr Tree::GenerateFoliageParticleInfoList( const bool sm = strand_model.strand_model_skeleton.RefRawNodes().size() == tree_model.shoot_skeleton_.RefRawNodes().size(); const auto tree_dim = sm ? strand_model.strand_model_skeleton.max - strand_model.strand_model_skeleton.min - : tree_model.PeekShootSkeleton().max - tree_model.PeekShootSkeleton().min; + : tree_model.PeekShootSkeleton().max - tree_model.PeekShootSkeleton().min; for (const auto& internode_handle : node_list) { const auto& internode_info = sm ? strand_model.strand_model_skeleton.PeekNode(internode_handle).info - : tree_model.PeekShootSkeleton().PeekNode(internode_handle).info; + : tree_model.PeekShootSkeleton().PeekNode(internode_handle).info; std::vector leaf_matrices{}; fd->GenerateFoliageMatrices(leaf_matrices, internode_info, glm::length(tree_dim)); @@ -1362,7 +1363,7 @@ bool Tree::TryGrow(float delta_time, bool pruning) { PrepareController(sd, s, c); const bool grown = tree_model.Grow(delta_time, scene->GetDataComponent(owner).value, - c->climate_model, shoot_growth_controller_, pruning); + c->climate_model, shoot_growth_controller_, pruning); if (grown) { if (pruning) tree_visualizer.ClearSelections(); @@ -1417,7 +1418,7 @@ bool Tree::TryGrowSubTree(const float delta_time, const SkeletonNodeHandle base_ PrepareController(shoot_descriptor, s, c); const bool grown = tree_model.Grow(delta_time, base_internode_handle, scene->GetDataComponent(owner).value, - c->climate_model, shoot_growth_controller_, pruning); + c->climate_model, shoot_growth_controller_, pruning); if (grown) { if (pruning) tree_visualizer.ClearSelections(); @@ -1445,8 +1446,7 @@ void Tree::Serialize(YAML::Emitter& out) const { node_out << YAML::Key << "profile" << YAML::Value << YAML::BeginMap; { StrandModelProfileSerializer::Serialize( - node_out, node_data.profile, - [&](YAML::Emitter&, const CellParticlePhysicsData&) { + node_out, node_data.profile, [&](YAML::Emitter&, const CellParticlePhysicsData&) { }); } node_out << YAML::EndMap; @@ -1467,19 +1467,22 @@ void Tree::Serialize(YAML::Emitter& out) const { const auto strand_segment_size = skeleton_data.strand_group.PeekStrandSegments().size(); auto node_handle = std::vector(strand_segment_size); auto profile_particle_handles = std::vector(strand_segment_size); - for (int strand_segment_index = 0; strand_segment_index < strand_segment_size; strand_segment_index++) { - const auto& strand_segment = skeleton_data.strand_group.PeekStrandSegment(strand_segment_index); + for (int strand_segment_index = 0; strand_segment_index < strand_segment_size; + strand_segment_index++) { + const auto& strand_segment = + skeleton_data.strand_group.PeekStrandSegment(strand_segment_index); node_handle.at(strand_segment_index) = strand_segment.data.node_handle; - profile_particle_handles.at(strand_segment_index) = strand_segment.data.profile_particle_handle; + profile_particle_handles.at(strand_segment_index) = + strand_segment.data.profile_particle_handle; } if (strand_segment_size != 0) { group_out << YAML::Key << "ss.data.node_handle" << YAML::Value - << YAML::Binary(reinterpret_cast(node_handle.data()), - node_handle.size() * sizeof(SkeletonNodeHandle)); + << YAML::Binary(reinterpret_cast(node_handle.data()), + node_handle.size() * sizeof(SkeletonNodeHandle)); group_out << YAML::Key << "ss.data.profile_particle_handle" << YAML::Value - << YAML::Binary( - reinterpret_cast(profile_particle_handles.data()), - profile_particle_handles.size() * sizeof(ParticleHandle)); + << YAML::Binary( + reinterpret_cast(profile_particle_handles.data()), + profile_particle_handles.size() * sizeof(ParticleHandle)); } }); } @@ -1502,20 +1505,20 @@ void Tree::Serialize(YAML::Emitter& out) const { } if (node_size != 0) { skeleton_out << YAML::Key << "node.data.offset" << YAML::Value - << YAML::Binary(reinterpret_cast(offset.data()), - offset.size() * sizeof(glm::vec2)); + << YAML::Binary(reinterpret_cast(offset.data()), + offset.size() * sizeof(glm::vec2)); skeleton_out << YAML::Key << "node.data.twist_angle" << YAML::Value - << YAML::Binary(reinterpret_cast(twist_angle.data()), - twist_angle.size() * sizeof(float)); + << YAML::Binary(reinterpret_cast(twist_angle.data()), + twist_angle.size() * sizeof(float)); skeleton_out << YAML::Key << "node.data.split" << YAML::Value - << YAML::Binary(reinterpret_cast(split.data()), - split.size() * sizeof(int)); + << YAML::Binary(reinterpret_cast(split.data()), + split.size() * sizeof(int)); skeleton_out << YAML::Key << "node.data.strand_radius" << YAML::Value - << YAML::Binary(reinterpret_cast(strand_radius.data()), - strand_radius.size() * sizeof(float)); + << YAML::Binary(reinterpret_cast(strand_radius.data()), + strand_radius.size() * sizeof(float)); skeleton_out << YAML::Key << "node.data.strand_count" << YAML::Value - << YAML::Binary(reinterpret_cast(strand_count.data()), - strand_count.size() * sizeof(float)); + << YAML::Binary(reinterpret_cast(strand_count.data()), + strand_count.size() * sizeof(float)); } }); } @@ -1587,41 +1590,41 @@ void Tree::Serialize(YAML::Emitter& out) const { } if (node_size != 0) { skeleton_out << YAML::Key << "node.data.internode_length" << YAML::Value - << YAML::Binary(reinterpret_cast(internode_length.data()), - internode_length.size() * sizeof(float)); + << YAML::Binary(reinterpret_cast(internode_length.data()), + internode_length.size() * sizeof(float)); skeleton_out << YAML::Key << "node.data.index_of_parent_bud" << YAML::Value - << YAML::Binary(reinterpret_cast(index_of_parent_bud.data()), - index_of_parent_bud.size() * sizeof(int)); + << YAML::Binary(reinterpret_cast(index_of_parent_bud.data()), + index_of_parent_bud.size() * sizeof(int)); skeleton_out << YAML::Key << "node.data.start_age" << YAML::Value - << YAML::Binary(reinterpret_cast(start_age.data()), - start_age.size() * sizeof(float)); + << YAML::Binary(reinterpret_cast(start_age.data()), + start_age.size() * sizeof(float)); skeleton_out << YAML::Key << "node.data.finish_age" << YAML::Value - << YAML::Binary(reinterpret_cast(finish_age.data()), - finish_age.size() * sizeof(float)); + << YAML::Binary(reinterpret_cast(finish_age.data()), + finish_age.size() * sizeof(float)); skeleton_out << YAML::Key << "node.data.desired_local_rotation" << YAML::Value - << YAML::Binary(reinterpret_cast(desired_local_rotation.data()), - desired_local_rotation.size() * sizeof(glm::quat)); + << YAML::Binary(reinterpret_cast(desired_local_rotation.data()), + desired_local_rotation.size() * sizeof(glm::quat)); skeleton_out << YAML::Key << "node.data.desired_global_rotation" << YAML::Value - << YAML::Binary(reinterpret_cast(desired_global_rotation.data()), - desired_global_rotation.size() * sizeof(glm::quat)); + << YAML::Binary(reinterpret_cast(desired_global_rotation.data()), + desired_global_rotation.size() * sizeof(glm::quat)); skeleton_out << YAML::Key << "node.data.desired_global_position" << YAML::Value - << YAML::Binary(reinterpret_cast(desired_global_position.data()), - desired_global_position.size() * sizeof(glm::vec3)); + << YAML::Binary(reinterpret_cast(desired_global_position.data()), + desired_global_position.size() * sizeof(glm::vec3)); skeleton_out << YAML::Key << "node.data.sagging" << YAML::Value - << YAML::Binary(reinterpret_cast(sagging.data()), - sagging.size() * sizeof(float)); + << YAML::Binary(reinterpret_cast(sagging.data()), + sagging.size() * sizeof(float)); skeleton_out << YAML::Key << "node.data.order" << YAML::Value - << YAML::Binary(reinterpret_cast(order.data()), - order.size() * sizeof(int)); + << YAML::Binary(reinterpret_cast(order.data()), + order.size() * sizeof(int)); skeleton_out << YAML::Key << "node.data.extra_mass" << YAML::Value - << YAML::Binary(reinterpret_cast(extra_mass.data()), - extra_mass.size() * sizeof(float)); + << YAML::Binary(reinterpret_cast(extra_mass.data()), + extra_mass.size() * sizeof(float)); skeleton_out << YAML::Key << "node.data.density" << YAML::Value - << YAML::Binary(reinterpret_cast(density.data()), - density.size() * sizeof(float)); + << YAML::Binary(reinterpret_cast(density.data()), + density.size() * sizeof(float)); skeleton_out << YAML::Key << "node.data.strength" << YAML::Value - << YAML::Binary(reinterpret_cast(strength.data()), - strength.size() * sizeof(float)); + << YAML::Binary(reinterpret_cast(strength.data()), + strength.size() * sizeof(float)); } }); } @@ -1642,8 +1645,7 @@ void Tree::Deserialize(const YAML::Node& in) { if (node_in["profile"]) { const auto& in_strand_group = node_in["profile"]; StrandModelProfileSerializer::Deserialize( - in_strand_group, node_data.profile, - [&](const YAML::Node&, CellParticlePhysicsData&) { + in_strand_group, node_data.profile, [&](const YAML::Node&, CellParticlePhysicsData&) { }); } }, @@ -1991,8 +1993,8 @@ void Tree::GenerateBillboardClouds(const BillboardCloud::GenerateSettings& folia } } -void Tree::GenerateAnimatedGeometryEntities(const TreeMeshGeneratorSettings& mesh_generator_settings, const int iteration, - const bool enable_physics) { +void Tree::GenerateAnimatedGeometryEntities(const TreeMeshGeneratorSettings& mesh_generator_settings, + const int iteration, const bool enable_physics) { const auto scene = GetScene(); const auto self = GetOwner(); const auto children = scene->GetChildren(self); @@ -2032,7 +2034,7 @@ void Tree::GenerateAnimatedGeometryEntities(const TreeMeshGeneratorSettings& mes GlobalTransform global_transform; global_transform.value = tree_global_transform.value * (glm::translate(flow.info.global_start_position) * - glm::mat4_cast(flow.info.global_start_rotation)); + glm::mat4_cast(flow.info.global_start_rotation)); scene->SetDataComponent(bound_entities[matrixIndex], global_transform); bone_indices_lists[matrixIndex] = matrixIndex; @@ -2235,7 +2237,7 @@ void Tree::GenerateAnimatedGeometryEntities(const TreeMeshGeneratorSettings& mes const auto fruit_entity = scene->CreateEntity("Animated Fruit Mesh"); scene->SetParent(fruit_entity, self); } - +#ifdef PHYSICS_PLUGIN if (enable_physics) { const auto descendants = scene->GetDescendants(rag_doll); auto root_rigid_body = scene->GetOrSetPrivateComponent(rag_doll).lock(); @@ -2245,7 +2247,7 @@ void Tree::GenerateAnimatedGeometryEntities(const TreeMeshGeneratorSettings& mes root_rigid_body->SetLinearDamping(branch_physics_parameters.linear_damping); root_rigid_body->SetAngularDamping(branch_physics_parameters.angular_damping); root_rigid_body->SetSolverIterations(branch_physics_parameters.position_solver_iteration, - branch_physics_parameters.velocity_solver_iteration); + branch_physics_parameters.velocity_solver_iteration); root_rigid_body->SetAngularVelocity(glm::vec3(0.0f)); root_rigid_body->SetLinearVelocity(glm::vec3(0.0f)); @@ -2254,6 +2256,7 @@ void Tree::GenerateAnimatedGeometryEntities(const TreeMeshGeneratorSettings& mes branch_physics_parameters.Link(scene, skeleton, corresponding_entities, parent, child); } } +#endif } void Tree::ClearAnimatedGeometryEntities() const { @@ -2465,9 +2468,11 @@ void Tree::GenerateTreeParts(const TreeMeshGeneratorSettings& mesh_generator_set compare_radius = parent_flow.info.end_thickness; } int tree_part_type = 0; - if (has_multiple_children && distance_to_chain_end <= mesh_generator_settings.tree_part_base_distance * compare_radius) { + if (has_multiple_children && + distance_to_chain_end <= mesh_generator_settings.tree_part_base_distance * compare_radius) { tree_part_type = 1; - } else if (!only_child && distance_to_chain_start <= mesh_generator_settings.tree_part_end_distance * compare_radius) { + } else if (!only_child && + distance_to_chain_start <= mesh_generator_settings.tree_part_end_distance * compare_radius) { tree_part_type = 2; } int current_tree_part_index = -1; @@ -2475,9 +2480,12 @@ void Tree::GenerateTreeParts(const TreeMeshGeneratorSettings& mesh_generator_set if (tree_part_type == 0) { // IShape // If root or parent is Y Shape or length exceeds limit, create a new IShape from this node. - bool restart_i_shape = parent_internode_handle == -1 || tree_part_infos[parent_internode_handle].tree_part_type != 0; + bool restart_i_shape = + parent_internode_handle == -1 || tree_part_infos[parent_internode_handle].tree_part_type != 0; if (!restart_i_shape) { - if (const auto& parent_junction_info = tree_part_infos[parent_internode_handle]; parent_junction_info.distance_to_start / internode_info.thickness > mesh_generator_settings.tree_part_break_ratio) + if (const auto& parent_junction_info = tree_part_infos[parent_internode_handle]; + parent_junction_info.distance_to_start / internode_info.thickness > + mesh_generator_settings.tree_part_break_ratio) restart_i_shape = true; } if (restart_i_shape) { @@ -2619,7 +2627,7 @@ void Tree::GenerateTreeParts(const TreeMeshGeneratorSettings& mesh_generator_set } } -void Tree::ExportTreeParts(const TreeMeshGeneratorSettings& mesh_generator_settings, treeio::json& out) { +void Tree::ExportTreeParts(const TreeMeshGeneratorSettings& mesh_generator_settings, nlohmann::json& out) { } void Tree::ExportTreeParts(const TreeMeshGeneratorSettings& mesh_generator_settings, YAML::Emitter& out) { @@ -2678,7 +2686,8 @@ void Tree::ExportTreeParts(const TreeMeshGeneratorSettings& mesh_generator_setti out << YAML::EndMap; } -void Tree::ExportTreeParts(const TreeMeshGeneratorSettings& mesh_generator_settings, const std::filesystem::path& path) { +void Tree::ExportTreeParts(const TreeMeshGeneratorSettings& mesh_generator_settings, + const std::filesystem::path& path) { try { auto directory = path; directory.remove_filename(); @@ -2822,13 +2831,12 @@ void SkeletalGraphSettings::OnInspect() { ImGui::ColorEdit4("Junction point color", &junction_point_color.x); } -void Tree::PrepareController(const std::shared_ptr& shoot_descriptor, const std::shared_ptr& soil, - const std::shared_ptr& climate) { +void Tree::PrepareController(const std::shared_ptr& shoot_descriptor, + const std::shared_ptr& soil, const std::shared_ptr& climate) { shoot_descriptor->PrepareController(shoot_growth_controller_); - shoot_growth_controller_.m_endToRootPruningFactor = [&](const glm::mat4&, ClimateModel& , - const ShootSkeleton& , - const SkeletonNode& internode) { + shoot_growth_controller_.m_endToRootPruningFactor = [&](const glm::mat4&, ClimateModel&, const ShootSkeleton&, + const SkeletonNode& internode) { if (shoot_descriptor->trunk_protection && internode.data.order == 0) { return 0.f; } @@ -2842,49 +2850,50 @@ void Tree::PrepareController(const std::shared_ptr& shoot_descr } if (internode.data.sagging_stress > 1.) { pruning_probability += shoot_descriptor->branch_breaking_multiplier * - glm::pow(internode.data.sagging_stress, shoot_descriptor->branch_breaking_multiplier); + glm::pow(internode.data.sagging_stress, shoot_descriptor->branch_breaking_multiplier); } return pruning_probability; }; - shoot_growth_controller_.m_rootToEndPruningFactor = [&](const glm::mat4& global_transform, ClimateModel& climate_model, - const ShootSkeleton& shoot_skeleton, - const SkeletonNode& internode) { - if (shoot_descriptor->trunk_protection && internode.data.order == 0) { - return 0.f; - } + shoot_growth_controller_.m_rootToEndPruningFactor = + [&](const glm::mat4& global_transform, ClimateModel& climate_model, const ShootSkeleton& shoot_skeleton, + const SkeletonNode& internode) { + if (shoot_descriptor->trunk_protection && internode.data.order == 0) { + return 0.f; + } - if (shoot_descriptor->max_flow_length != 0 && shoot_descriptor->max_flow_length < internode.info.chain_index) { - return 999.f; - } - if (const auto max_distance = shoot_skeleton.PeekNode(0).info.end_distance; max_distance > 5.0f * shoot_growth_controller_.m_internodeLength && internode.data.order > 0 && - internode.info.root_distance / max_distance < low_branch_pruning) { - if (const auto parent_handle = internode.GetParentHandle(); parent_handle != -1) { - const auto& parent = shoot_skeleton.PeekNode(parent_handle); - if (parent.PeekChildHandles().size() > 1) { + if (shoot_descriptor->max_flow_length != 0 && shoot_descriptor->max_flow_length < internode.info.chain_index) { return 999.f; } - } - } - if (crown_shyness_distance > 0.f && internode.IsEndNode()) { - const glm::vec3 end_position = global_transform * glm::vec4(internode.info.GetGlobalEndPosition(), 1.0f); - bool prune_by_crown_shyness = false; - climate_model.environment_grid.voxel_grid.ForEach( - end_position, crown_shyness_distance * 2.0f, [&](const EnvironmentVoxel& data) { - if (prune_by_crown_shyness) - return; - for (const auto& i : data.internode_voxel_registrations) { - if (i.tree_skeleton_index == shoot_skeleton.data.index) - continue; - if (glm::distance(end_position, i.position) < crown_shyness_distance) - prune_by_crown_shyness = true; + if (const auto max_distance = shoot_skeleton.PeekNode(0).info.end_distance; + max_distance > 5.0f * shoot_growth_controller_.m_internodeLength && internode.data.order > 0 && + internode.info.root_distance / max_distance < low_branch_pruning) { + if (const auto parent_handle = internode.GetParentHandle(); parent_handle != -1) { + const auto& parent = shoot_skeleton.PeekNode(parent_handle); + if (parent.PeekChildHandles().size() > 1) { + return 999.f; } - }); - if (prune_by_crown_shyness) - return 999.f; - } - constexpr float pruningProbability = 0.0f; - return pruningProbability; - }; + } + } + if (crown_shyness_distance > 0.f && internode.IsEndNode()) { + const glm::vec3 end_position = global_transform * glm::vec4(internode.info.GetGlobalEndPosition(), 1.0f); + bool prune_by_crown_shyness = false; + climate_model.environment_grid.voxel_grid.ForEach( + end_position, crown_shyness_distance * 2.0f, [&](const EnvironmentVoxel& data) { + if (prune_by_crown_shyness) + return; + for (const auto& i : data.internode_voxel_registrations) { + if (i.tree_skeleton_index == shoot_skeleton.data.index) + continue; + if (glm::distance(end_position, i.position) < crown_shyness_distance) + prune_by_crown_shyness = true; + } + }); + if (prune_by_crown_shyness) + return 999.f; + } + constexpr float pruningProbability = 0.0f; + return pruningProbability; + }; } void Tree::InitializeStrandRenderer() { @@ -2892,8 +2901,7 @@ void Tree::InitializeStrandRenderer() { const auto owner = GetOwner(); ClearStrandRenderer(); - if (strand_model.strand_model_skeleton.RefRawNodes().size() != - tree_model.PeekShootSkeleton().PeekRawNodes().size()) { + if (strand_model.strand_model_skeleton.RefRawNodes().size() != tree_model.PeekShootSkeleton().PeekRawNodes().size()) { BuildStrandModel(); } const auto strands_entity = scene->CreateEntity("Branch Strands"); @@ -2929,10 +2937,10 @@ void Tree::InitializeStrandRenderer(const std::shared_ptr& strands) con material->material_properties.albedo_color = glm::vec3(0.6f, 0.3f, 0.0f); } -void Tree::InitializeStrandModelMeshRenderer(const StrandModelMeshGeneratorSettings& strand_model_mesh_generator_settings) { +void Tree::InitializeStrandModelMeshRenderer( + const StrandModelMeshGeneratorSettings& strand_model_mesh_generator_settings) { ClearStrandModelMeshRenderer(); - if (strand_model.strand_model_skeleton.RefRawNodes().size() != - tree_model.PeekShootSkeleton().PeekRawNodes().size()) { + if (strand_model.strand_model_skeleton.RefRawNodes().size() != tree_model.PeekShootSkeleton().PeekRawNodes().size()) { BuildStrandModel(); } const float time = Times::Now(); diff --git a/EvoEngine_Plugins/EcoSysLab/src/TreeIOTree.cpp b/EvoEngine_Plugins/EcoSysLab/src/TreeIOTree.cpp index b1b5bbd..6b34539 100644 --- a/EvoEngine_Plugins/EcoSysLab/src/TreeIOTree.cpp +++ b/EvoEngine_Plugins/EcoSysLab/src/TreeIOTree.cpp @@ -51,7 +51,7 @@ std::string TreeDynamicMetaData::serialize() const { } void TreeDynamicMetaData::deserialize(const std::string &serialized) { - data = treeutil::containsOnlyWhiteSpaces(serialized) ? treeio::json{} : json::parse(serialized); + data = treeutil::containsOnlyWhiteSpaces(serialized) ? nlohmann::json{} : nlohmann::json::parse(serialized); } TreeMetaData::TreeMetaData() : mDynamicMetaData{std::make_shared()} { diff --git a/EvoEngine_Plugins/OptiXRayTracer/include/RayTracer/RayTracerUtilities.cuh b/EvoEngine_Plugins/OptiXRayTracer/include/RayTracer/RayTracerUtilities.cuh index cfc7c21..1b3d5c5 100644 --- a/EvoEngine_Plugins/OptiXRayTracer/include/RayTracer/RayTracerUtilities.cuh +++ b/EvoEngine_Plugins/OptiXRayTracer/include/RayTracer/RayTracerUtilities.cuh @@ -1,7 +1,7 @@ #pragma once #include - +#define GLM_ENABLE_EXPERIMENTAL #include "glm/glm.hpp" #include #include diff --git a/EvoEngine_Plugins/OptiXRayTracer/src/stb.cpp b/EvoEngine_Plugins/OptiXRayTracer/src/stb.cpp index 4f8ff4e..c178e6a 100644 --- a/EvoEngine_Plugins/OptiXRayTracer/src/stb.cpp +++ b/EvoEngine_Plugins/OptiXRayTracer/src/stb.cpp @@ -6,5 +6,5 @@ #define STB_IMAGE_WRITE_IMPLEMENTATION #define STB_IMAGE_RESIZE_IMPLEMENTATION -#include +#include #include \ No newline at end of file diff --git a/EvoEngine_SDK/CMakeLists.txt b/EvoEngine_SDK/CMakeLists.txt index a9a7dcf..02f1e08 100644 --- a/EvoEngine_SDK/CMakeLists.txt +++ b/EvoEngine_SDK/CMakeLists.txt @@ -49,8 +49,6 @@ target_precompile_headers(EvoEngine_SDK ${EVOENGINE_SDK_PCH} ) -CompileVertexShader(${CMAKE_CURRENT_SOURCE_DIR}/Internals/Shaders/Vertex/Screen.vert) - # ------------------------------------------------------------------ # EvoEngine SDK - linkings # ------------------------------------------------------------------ @@ -60,11 +58,15 @@ target_link_libraries(EvoEngine_SDK meshoptimizer GPUOpen::VulkanMemoryAllocator csvpp - JSON + nlohmann_json xatlas - Base64 + base64 + zlib assimp glfw + glslang::glslang + glslang::SPIRV + glslang::glslang-default-resource-limits ) set(EVOENGINE_SDK_INTERNALS_DIR ${CMAKE_CURRENT_BINARY_DIR}/Internals/) @@ -80,16 +82,6 @@ target_compile_definitions(EvoEngine_SDK ) if (WIN32) - if (CMAKE_BUILD_TYPE MATCHES "^[Rr]elease") - set(SHADERC_LIB ${SHADERC_DIR}/lib/windows/shaderc_combined.lib) - elseif (CMAKE_BUILD_TYPE MATCHES "^[Rr]elWithDebInfo") - set(SHADERC_LIB ${SHADERC_DIR}/lib/windows/shaderc_combined.lib) - else() - set(SHADERC_LIB ${SHADERC_DIR}/lib/windows/shaderc_combined_d.lib) - endif () - target_link_libraries(EvoEngine_SDK - ${SHADERC_LIB} - ) # Compiler settings for Windows platform set(CMAKE_WINDOWS_EXPORT_ALL_SYMBOLS ON) target_compile_definitions(EvoEngine_SDK @@ -98,30 +90,16 @@ if (WIN32) USE_ASSIMP ) else() - # Linker and compiler settings for Linux platform - if (CMAKE_BUILD_TYPE MATCHES "^[Rr]elease") - file(GLOB SHADERC_LIBS "3rdParty/shaderc/lib/linux/release/*.a") - set(CMAKE_CXX_FLAGS_RELEASE "-O3") - elseif (CMAKE_BUILD_TYPE MATCHES "^[Rr]elWithDebInfo") - file(GLOB SHADERC_LIBS "3rdParty/shaderc/lib/linux/release/*.a") - set(CMAKE_CXX_FLAGS_RELWITHDEBINGO "-O2 -g -NDEBUG") - elseif (CMAKE_BUILD_TYPE MATCHES "[Dd]ebug") - file(GLOB SHADERC_LIBS "3rdParty/shaderc/lib/linux/debug/*.a") - set(CMAKE_CXX_FLAGS_DEBUG "-g") - endif () target_link_libraries(EvoEngine_SDK m ${Vulkan_LIBRARIES} stdc++ - glfw dl Xau X11 pthread Xrandr Xi - assimp - ${SHADERC_LIBS} ) endif () diff --git a/EvoEngine_SDK/include/Utilities/Utilities.hpp b/EvoEngine_SDK/include/Utilities/Utilities.hpp index f416c62..361ba85 100644 --- a/EvoEngine_SDK/include/Utilities/Utilities.hpp +++ b/EvoEngine_SDK/include/Utilities/Utilities.hpp @@ -1,6 +1,8 @@ #pragma once -#include #include "RandomSampler.hpp" +#include "Shader.hpp" +#include "ShaderLang.h" + namespace evo_engine { class FileUtils { public: @@ -11,47 +13,17 @@ class FileUtils { static void OpenFile(const std::string& dialog_title, const std::string& file_type, const std::vector& extensions, - const std::function& func, bool project_dir_check = true); + const std::function& func, + bool project_dir_check = true); static void SaveFile(const std::string& dialog_title, const std::string& file_type, const std::vector& extensions, - const std::function& func, bool project_dir_check = true); + const std::function& func, + bool project_dir_check = true); }; class ShaderUtils { public: - /** - * \brief Preprocess Shader - * \param source_name - * \param kind - * \param source - * \return Returns GLSL shader source text after preprocessing. - */ - static std::string PreprocessShader(const std::string& source_name, shaderc_shader_kind kind, - const std::string& source); - - /** - * \brief Compiles a shader to SPIR-V assembly. - * \param source_name - * \param kind - * \param source - * \param optimize - * \return Returns the assembly text as a string. - */ - static std::string CompileFileToAssembly(const std::string& source_name, shaderc_shader_kind kind, - const std::string& source, bool optimize = false); - /** - * \brief Compiles a shader to a SPIR-V binary. - * \param source_name - * \param kind - * \param source - * \param optimize - * \return Returns the binary as a vector of 32-bit words. - */ - static std::vector CompileFile(const std::string& source_name, shaderc_shader_kind kind, - const std::string& source, bool optimize = false); - - static std::vector Get(const std::string& source_name, shaderc_shader_kind kind, const std::string& source, - bool optimize = false); + static std::vector CompileGlsl(ShaderType shader_type, const std::string& source, bool optimize = false); }; class SphereMeshGenerator { diff --git a/EvoEngine_SDK/src/Shader.cpp b/EvoEngine_SDK/src/Shader.cpp index a09fa4f..b8c1d74 100644 --- a/EvoEngine_SDK/src/Shader.cpp +++ b/EvoEngine_SDK/src/Shader.cpp @@ -9,40 +9,9 @@ bool Shader::Compiled() const { void Shader::Set(const ShaderType shader_type, const std::string& shader_code) { shader_type_ = shader_type; code_ = shader_code; - shaderc_shader_kind shader_kind; - switch (shader_type) { - case ShaderType::Task: - shader_kind = shaderc_task_shader; - break; - case ShaderType::Mesh: - shader_kind = shaderc_mesh_shader; - break; - case ShaderType::Vertex: - shader_kind = shaderc_vertex_shader; - break; - case ShaderType::TessellationControl: - shader_kind = shaderc_tess_control_shader; - break; - case ShaderType::TessellationEvaluation: - shader_kind = shaderc_tess_evaluation_shader; - break; - case ShaderType::Geometry: - shader_kind = shaderc_geometry_shader; - break; - case ShaderType::Fragment: - shader_kind = shaderc_fragment_shader; - break; - case ShaderType::Compute: - shader_kind = shaderc_compute_shader; - break; - case ShaderType::Unknown: - shader_kind = shaderc_glsl_infer_from_source; - break; - } - VkShaderModuleCreateInfo create_info{}; create_info.sType = VK_STRUCTURE_TYPE_SHADER_MODULE_CREATE_INFO; - const auto binary = ShaderUtils::Get("Shader", shader_kind, code_); + const auto binary = ShaderUtils::CompileGlsl(shader_type, code_); create_info.pCode = binary.data(); create_info.codeSize = binary.size() * sizeof(uint32_t); shader_module_ = std::make_unique(create_info); diff --git a/EvoEngine_SDK/src/Utilities.cpp b/EvoEngine_SDK/src/Utilities.cpp index d9dd1f8..d1763c4 100644 --- a/EvoEngine_SDK/src/Utilities.cpp +++ b/EvoEngine_SDK/src/Utilities.cpp @@ -7,6 +7,8 @@ #include "EditorLayer.hpp" #include "ProjectManager.hpp" #include "WindowLayer.hpp" +#include "glslang_c_interface.h" +#include "resource_limits_c.h" using namespace evo_engine; std::string FileUtils::LoadFileAsString(const std::filesystem::path& path) { std::ifstream file; @@ -268,70 +270,10 @@ void FileUtils::SaveFile(const std::string& dialog_title, const std::string& fil #endif } -std::string ShaderUtils::PreprocessShader(const std::string& source_name, shaderc_shader_kind kind, - const std::string& source) { - shaderc::Compiler compiler; - shaderc::CompileOptions options; - - // Like -DMY_DEFINE=1 - options.AddMacroDefinition("MY_DEFINE", "1"); - - shaderc::PreprocessedSourceCompilationResult result = - compiler.PreprocessGlsl(source, kind, source_name.c_str(), options); - - if (result.GetCompilationStatus() != shaderc_compilation_status_success) { - std::cerr << result.GetErrorMessage(); - return ""; - } - - return {result.cbegin(), result.cend()}; -} - -std::string ShaderUtils::CompileFileToAssembly(const std::string& source_name, shaderc_shader_kind kind, - const std::string& source, bool optimize) { - shaderc::Compiler compiler; - shaderc::CompileOptions options; - - // Like -DMY_DEFINE=1 - options.AddMacroDefinition("MY_DEFINE", "1"); - if (optimize) - options.SetOptimizationLevel(shaderc_optimization_level_size); - - shaderc::AssemblyCompilationResult result = - compiler.CompileGlslToSpvAssembly(source, kind, source_name.c_str(), options); - - if (result.GetCompilationStatus() != shaderc_compilation_status_success) { - std::cerr << result.GetErrorMessage(); - return ""; - } - - return {result.cbegin(), result.cend()}; -} -std::vector ShaderUtils::CompileFile(const std::string& source_name, shaderc_shader_kind kind, - const std::string& source, bool optimize) { - shaderc::Compiler compiler; - shaderc::CompileOptions options; - - // Like -DMY_DEFINE=1 - // options.AddMacroDefinition("MY_DEFINE", "1"); - if (optimize) - options.SetOptimizationLevel(shaderc_optimization_level_size); - options.SetTargetSpirv(shaderc_spirv_version_1_4); - shaderc::SpvCompilationResult module = compiler.CompileGlslToSpv(source, kind, source_name.c_str(), options); - - if (module.GetCompilationStatus() != shaderc_compilation_status_success) { - std::cerr << module.GetErrorMessage(); - return {}; - } - - return {module.cbegin(), module.cend()}; -} - -std::vector ShaderUtils::Get(const std::string& source_name, shaderc_shader_kind kind, - const std::string& source, bool optimize) { +std::vector ShaderUtils::CompileGlsl(const ShaderType shader_type, const std::string& source, bool optimize) { // 1. Look for compiled resource. const auto binary_search_path = std::filesystem::path("./DefaultResources") / "CompiledShaderBinaries" / - (std::to_string(std::hash{}(source)) + ".yml"); + (std::to_string(std::hash{}(source)) + ".yml"); std::vector ret_val; if (std::filesystem::exists(binary_search_path)) { const std::ifstream stream(binary_search_path.string()); @@ -343,7 +285,72 @@ std::vector ShaderUtils::Get(const std::string& source_name, shaderc_s ret_val.resize(binaries.size() / sizeof(uint32_t)); std::memcpy(ret_val.data(), binaries.data(), binaries.size()); } else { - ret_val = CompileFile(source_name, kind, source, optimize); + glslang_initialize_process(); + glslang_input_t input; + + input.language = GLSLANG_SOURCE_GLSL; + + switch (shader_type) { + case ShaderType::Task: + input.stage = GLSLANG_STAGE_TASK; + break; + case ShaderType::Mesh: + input.stage = GLSLANG_STAGE_MESH; + break; + case ShaderType::Vertex: + input.stage = GLSLANG_STAGE_VERTEX; + break; + case ShaderType::TessellationControl: + input.stage = GLSLANG_STAGE_TESSCONTROL; + break; + case ShaderType::TessellationEvaluation: + input.stage = GLSLANG_STAGE_TESSEVALUATION; + break; + case ShaderType::Geometry: + input.stage = GLSLANG_STAGE_GEOMETRY; + break; + case ShaderType::Fragment: + input.stage = GLSLANG_STAGE_FRAGMENT; + break; + case ShaderType::Compute: + input.stage = GLSLANG_STAGE_COMPUTE; + break; + case ShaderType::Unknown: + EVOENGINE_ERROR("Unknown type shader!"); + return {}; + } + + input.client = GLSLANG_CLIENT_VULKAN; + input.client_version = GLSLANG_TARGET_VULKAN_1_3; + input.target_language = GLSLANG_TARGET_SPV; + input.target_language_version = GLSLANG_TARGET_SPV_1_4; + input.code = source.c_str(); + input.default_version = 460; + input.default_profile = GLSLANG_CORE_PROFILE; + input.force_default_version_and_profile = 0; + input.forward_compatible = 0; + input.messages = GLSLANG_MSG_DEFAULT_BIT; + input.resource = glslang_default_resource(); // Load defaults or create resource manually! + + glslang_shader_t* shader = glslang_shader_create(&input); + if (!glslang_shader_preprocess(shader, &input)) { /* errors and logs */ + } + if (!glslang_shader_parse(shader, &input)) { /* errors and logs */ + } + glslang_program_t* program = glslang_program_create(); + glslang_program_add_shader(program, shader); + if (!glslang_program_link(program, + GLSLANG_MSG_SPV_RULES_BIT | GLSLANG_MSG_VULKAN_RULES_BIT)) { /* errors and logs */ + } + glslang_program_SPIRV_generate(program, input.stage); + if (glslang_program_SPIRV_get_messages(program)) { /* errors and logs */ + EVOENGINE_ERROR(glslang_program_SPIRV_get_messages(program)); + return {}; + } + ret_val.resize(glslang_program_SPIRV_get_size(program)); + std::memcpy(ret_val.data(), glslang_program_SPIRV_get_ptr(program), + glslang_program_SPIRV_get_size(program) * sizeof(uint32_t)); + glslang_finalize_process(); YAML::Emitter out; out << YAML::BeginMap; out << YAML::Key << "CompiledBinaries" << YAML::Value diff --git a/Extern/3rdParty/CMakeLists.txt b/Extern/3rdParty/CMakeLists.txt index c9783e5..55de2f4 100644 --- a/Extern/3rdParty/CMakeLists.txt +++ b/Extern/3rdParty/CMakeLists.txt @@ -38,6 +38,7 @@ add_subdirectory(glm EXCLUDE_FROM_ALL) add_subdirectory(imgui EXCLUDE_FROM_ALL) set(IMGUI_SOURCES ${IMGUI_SOURCES} PARENT_SCOPE) add_subdirectory(json EXCLUDE_FROM_ALL) +add_subdirectory(glslang EXCLUDE_FROM_ALL) add_subdirectory(meshoptimizer EXCLUDE_FROM_ALL) add_subdirectory(pybind11 EXCLUDE_FROM_ALL) add_subdirectory(stb EXCLUDE_FROM_ALL) @@ -48,7 +49,6 @@ add_subdirectory(yaml-cpp EXCLUDE_FROM_ALL) set(SHADERC_DIR ${CMAKE_CURRENT_SOURCE_DIR}/shaderc/shaderc PARENT_SCOPE) -add_subdirectory(shaderc EXCLUDE_FROM_ALL) # Turn off warnings for 3rd party code, part 1. Some projects set their own warnings by compile options. # Need to turn them off as well. diff --git a/Extern/3rdParty/base64/CMakeLists.txt b/Extern/3rdParty/base64/CMakeLists.txt index e8f1c37..c216e96 100644 --- a/Extern/3rdParty/base64/CMakeLists.txt +++ b/Extern/3rdParty/base64/CMakeLists.txt @@ -1,4 +1,4 @@ -set (PROJECT_NAME Base64) +set (PROJECT_NAME base64) project (${PROJECT_NAME}) set (PROJECT_HEADERS @@ -26,3 +26,4 @@ add_library ( ALIAS ${PROJECT_NAME} ) +set(3RDPARTY_INCLUDES ${3RDPARTY_INCLUDES} ${CMAKE_CURRENT_SOURCE_DIR}/base64/include PARENT_SCOPE) \ No newline at end of file diff --git a/Extern/3rdParty/base64/base64/CMakeLists.txt b/Extern/3rdParty/base64/base64/CMakeLists.txt deleted file mode 100644 index 81abc41..0000000 --- a/Extern/3rdParty/base64/base64/CMakeLists.txt +++ /dev/null @@ -1,36 +0,0 @@ -################################################################################# -# @project Common -# @brief Common libraries used throughout the project. -# @author Tomas Polasek -################################################################################# - -cmake_minimum_required (VERSION 3.9) - -set (PROJECT_NAME Base64) -project (${PROJECT_NAME}) - -set (PROJECT_HEADERS - include/base64.h -) - -set (PROJECT_SOURCES - include/base64.cpp -) - -add_library ( - ${PROJECT_NAME} - STATIC - ${PROJECT_HEADERS} - ${PROJECT_SOURCES} -) - -target_include_directories ( - ${PROJECT_NAME} - PUBLIC ${CMAKE_CURRENT_SOURCE_DIR} -) - -add_library ( - ${COMMON_LIB}::${PROJECT_NAME} - ALIAS - ${PROJECT_NAME} -) diff --git a/Extern/3rdParty/csvpp/CMakeLists.txt b/Extern/3rdParty/csvpp/CMakeLists.txt index 13da341..0599364 100644 --- a/Extern/3rdParty/csvpp/CMakeLists.txt +++ b/Extern/3rdParty/csvpp/CMakeLists.txt @@ -28,3 +28,4 @@ add_library ( ALIAS ${PROJECT_NAME} ) +set(3RDPARTY_INCLUDES ${3RDPARTY_INCLUDES} ${CMAKE_CURRENT_SOURCE_DIR}/csvpp/include PARENT_SCOPE) \ No newline at end of file diff --git a/Extern/3rdParty/csvpp/csvpp/CMakeLists.txt b/Extern/3rdParty/csvpp/csvpp/CMakeLists.txt deleted file mode 100644 index 489a24a..0000000 --- a/Extern/3rdParty/csvpp/csvpp/CMakeLists.txt +++ /dev/null @@ -1,38 +0,0 @@ -################################################################################# -# @project Common -# @brief Common libraries used throughout the project. -# @author Tomas Polasek -################################################################################# - -cmake_minimum_required (VERSION 3.9) - -set (PROJECT_NAME csvpp) -project (${PROJECT_NAME}) - -set (PROJECT_HEADERS - include/csvpp.h - include/stringhelper.h -) - -set (PROJECT_SOURCES - include/csvpp.cpp - include/stringhelper.cpp -) - -add_library ( - ${PROJECT_NAME} - STATIC - ${PROJECT_HEADERS} - ${PROJECT_SOURCES} -) - -target_include_directories ( - ${PROJECT_NAME} - PUBLIC ${CMAKE_CURRENT_SOURCE_DIR} -) - -add_library ( - ${COMMON_LIB}::${PROJECT_NAME} - ALIAS - ${PROJECT_NAME} -) diff --git a/Extern/3rdParty/eigen/CMakeLists.txt b/Extern/3rdParty/eigen/CMakeLists.txt index 67a6a09..773993f 100644 --- a/Extern/3rdParty/eigen/CMakeLists.txt +++ b/Extern/3rdParty/eigen/CMakeLists.txt @@ -9,3 +9,4 @@ if(${CMAKE_SYSTEM_NAME} MATCHES "Windows") endif() add_subdirectory(eigen EXCLUDE_FROM_ALL) +set(3RDPARTY_INCLUDES ${3RDPARTY_INCLUDES} ${CMAKE_CURRENT_SOURCE_DIR}/eigen/Eigen PARENT_SCOPE) \ No newline at end of file diff --git a/Extern/3rdParty/glslang/CMakeLists.txt b/Extern/3rdParty/glslang/CMakeLists.txt index e69de29..06fec61 100644 --- a/Extern/3rdParty/glslang/CMakeLists.txt +++ b/Extern/3rdParty/glslang/CMakeLists.txt @@ -0,0 +1,14 @@ +set(GLSLANG_TESTS_DEFAULT OFF CACHE BOOL "" FORCE) +set(GLSLANG_ENABLE_INSTALL_DEFAULT OFF CACHE BOOL "" FORCE) +set(BUILD_SHARED_LIBS OFF CACHE BOOL "" FORCE) +set(BUILD_EXTERNAL OFF CACHE BOOL "" FORCE) +set(ENABLE_OPT OFF CACHE BOOL "" FORCE) +add_subdirectory(glslang EXCLUDE_FROM_ALL) + +set(3RDPARTY_INCLUDES + ${3RDPARTY_INCLUDES} + ${CMAKE_CURRENT_SOURCE_DIR}/glslang/glslang/HLSL + ${CMAKE_CURRENT_SOURCE_DIR}/glslang/glslang/Include + ${CMAKE_CURRENT_SOURCE_DIR}/glslang/glslang/MachineIndependent + ${CMAKE_CURRENT_SOURCE_DIR}/glslang/glslang/Public + PARENT_SCOPE) \ No newline at end of file diff --git a/Extern/3rdParty/json/CMakeLists.txt b/Extern/3rdParty/json/CMakeLists.txt index 1334a8d..865f9da 100644 --- a/Extern/3rdParty/json/CMakeLists.txt +++ b/Extern/3rdParty/json/CMakeLists.txt @@ -1,20 +1,3 @@ -cmake_minimum_required (VERSION 3.9) +add_subdirectory(json EXCLUDE_FROM_ALL) -set (PROJECT_NAME JSON) -project (${PROJECT_NAME}) - -add_library ( - ${PROJECT_NAME} - INTERFACE -) - -target_include_directories ( - ${PROJECT_NAME} - INTERFACE ${CMAKE_CURRENT_SOURCE_DIR}/json -) - -add_library ( - ${COMMON_LIB}::${PROJECT_NAME} - ALIAS - ${PROJECT_NAME} -) +set(3RDPARTY_INCLUDES ${3RDPARTY_INCLUDES} ${CMAKE_CURRENT_SOURCE_DIR}/json/include PARENT_SCOPE) \ No newline at end of file diff --git a/Extern/3rdParty/shaderc/CMakeLists.txt b/Extern/3rdParty/shaderc/CMakeLists.txt deleted file mode 100644 index 6bad63d..0000000 --- a/Extern/3rdParty/shaderc/CMakeLists.txt +++ /dev/null @@ -1 +0,0 @@ -set(3RDPARTY_INCLUDES ${3RDPARTY_INCLUDES} ${CMAKE_CURRENT_SOURCE_DIR}/shaderc/include PARENT_SCOPE) \ No newline at end of file diff --git a/Extern/3rdParty/shaderc/shaderc.zip.001 b/Extern/3rdParty/shaderc/shaderc.zip.001 deleted file mode 100644 index 10697f1..0000000 Binary files a/Extern/3rdParty/shaderc/shaderc.zip.001 and /dev/null differ diff --git a/Extern/3rdParty/shaderc/shaderc.zip.002 b/Extern/3rdParty/shaderc/shaderc.zip.002 deleted file mode 100644 index a6f205c..0000000 Binary files a/Extern/3rdParty/shaderc/shaderc.zip.002 and /dev/null differ diff --git a/Extern/3rdParty/shaderc/shaderc.zip.003 b/Extern/3rdParty/shaderc/shaderc.zip.003 deleted file mode 100644 index ed84ac5..0000000 Binary files a/Extern/3rdParty/shaderc/shaderc.zip.003 and /dev/null differ diff --git a/Extern/3rdParty/shaderc/shaderc.zip.004 b/Extern/3rdParty/shaderc/shaderc.zip.004 deleted file mode 100644 index 69aad2a..0000000 Binary files a/Extern/3rdParty/shaderc/shaderc.zip.004 and /dev/null differ diff --git a/Extern/3rdParty/shaderc/shaderc.zip.005 b/Extern/3rdParty/shaderc/shaderc.zip.005 deleted file mode 100644 index 85032d3..0000000 Binary files a/Extern/3rdParty/shaderc/shaderc.zip.005 and /dev/null differ diff --git a/Extern/3rdParty/shaderc/shaderc.zip.006 b/Extern/3rdParty/shaderc/shaderc.zip.006 deleted file mode 100644 index 972eec5..0000000 Binary files a/Extern/3rdParty/shaderc/shaderc.zip.006 and /dev/null differ diff --git a/Extern/3rdParty/shaderc/shaderc.zip.007 b/Extern/3rdParty/shaderc/shaderc.zip.007 deleted file mode 100644 index b207036..0000000 Binary files a/Extern/3rdParty/shaderc/shaderc.zip.007 and /dev/null differ diff --git a/Extern/3rdParty/shaderc/shaderc.zip.008 b/Extern/3rdParty/shaderc/shaderc.zip.008 deleted file mode 100644 index 98c10e5..0000000 Binary files a/Extern/3rdParty/shaderc/shaderc.zip.008 and /dev/null differ diff --git a/Extern/3rdParty/shaderc/shaderc.zip.009 b/Extern/3rdParty/shaderc/shaderc.zip.009 deleted file mode 100644 index ddb1c3d..0000000 Binary files a/Extern/3rdParty/shaderc/shaderc.zip.009 and /dev/null differ diff --git a/Extern/3rdParty/shaderc/shaderc.zip.010 b/Extern/3rdParty/shaderc/shaderc.zip.010 deleted file mode 100644 index 4fedecc..0000000 Binary files a/Extern/3rdParty/shaderc/shaderc.zip.010 and /dev/null differ diff --git a/Extern/3rdParty/shaderc/shaderc/include/glslang/build_info.h b/Extern/3rdParty/shaderc/shaderc/include/glslang/build_info.h deleted file mode 100644 index 8bffae5..0000000 --- a/Extern/3rdParty/shaderc/shaderc/include/glslang/build_info.h +++ /dev/null @@ -1,62 +0,0 @@ -// Copyright (C) 2020 The Khronos Group Inc. -// -// All rights reserved. -// -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions -// are met: -// -// Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// -// Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// -// Neither the name of The Khronos Group Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS -// FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE -// COPYRIGHT HOLDERS OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, -// INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, -// BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; -// LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER -// CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT -// LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN -// ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE -// POSSIBILITY OF SUCH DAMAGE. - -#ifndef GLSLANG_BUILD_INFO -#define GLSLANG_BUILD_INFO - -#define GLSLANG_VERSION_MAJOR 12 -#define GLSLANG_VERSION_MINOR 3 -#define GLSLANG_VERSION_PATCH 1 -#define GLSLANG_VERSION_FLAVOR "" - -#define GLSLANG_VERSION_GREATER_THAN(major, minor, patch) \ - ((GLSLANG_VERSION_MAJOR) > (major) || ((major) == GLSLANG_VERSION_MAJOR && \ - ((GLSLANG_VERSION_MINOR) > (minor) || ((minor) == GLSLANG_VERSION_MINOR && \ - (GLSLANG_VERSION_PATCH) > (patch))))) - -#define GLSLANG_VERSION_GREATER_OR_EQUAL_TO(major, minor, patch) \ - ((GLSLANG_VERSION_MAJOR) > (major) || ((major) == GLSLANG_VERSION_MAJOR && \ - ((GLSLANG_VERSION_MINOR) > (minor) || ((minor) == GLSLANG_VERSION_MINOR && \ - (GLSLANG_VERSION_PATCH >= (patch)))))) - -#define GLSLANG_VERSION_LESS_THAN(major, minor, patch) \ - ((GLSLANG_VERSION_MAJOR) < (major) || ((major) == GLSLANG_VERSION_MAJOR && \ - ((GLSLANG_VERSION_MINOR) < (minor) || ((minor) == GLSLANG_VERSION_MINOR && \ - (GLSLANG_VERSION_PATCH) < (patch))))) - -#define GLSLANG_VERSION_LESS_OR_EQUAL_TO(major, minor, patch) \ - ((GLSLANG_VERSION_MAJOR) < (major) || ((major) == GLSLANG_VERSION_MAJOR && \ - ((GLSLANG_VERSION_MINOR) < (minor) || ((minor) == GLSLANG_VERSION_MINOR && \ - (GLSLANG_VERSION_PATCH <= (patch)))))) - -#endif // GLSLANG_BUILD_INFO diff --git a/Extern/3rdParty/shaderc/shaderc/include/glslang/glsl_intrinsic_header.h b/Extern/3rdParty/shaderc/shaderc/include/glslang/glsl_intrinsic_header.h deleted file mode 100644 index 9032027..0000000 --- a/Extern/3rdParty/shaderc/shaderc/include/glslang/glsl_intrinsic_header.h +++ /dev/null @@ -1,68 +0,0 @@ -/*************************************************************************** - * - * Copyright (c) 2015-2021 The Khronos Group Inc. - * Copyright (c) 2015-2021 Valve Corporation - * Copyright (c) 2015-2021 LunarG, Inc. - * Copyright (c) 2015-2021 Google Inc. - * Copyright (c) 2021 Advanced Micro Devices, Inc.All rights reserved. - * - ****************************************************************************/ -#pragma once - -#ifndef _INTRINSIC_EXTENSION_HEADER_H_ -#define _INTRINSIC_EXTENSION_HEADER_H_ - -std::string GL_EXT_shader_realtime_clock_GLSL = R"( -// -// Copyright (C) 2002-2005 3Dlabs Inc. Ltd. -// Copyright (C) 2013-2016 LunarG, Inc. -// Copyright (C) 2016-2020 Google, Inc. -// Modifications Copyright(C) 2021 Advanced Micro Devices, Inc.All rights reserved. -// -// All rights reserved. -// -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions -// are met: -// -// Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// -// Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// -// Neither the name of 3Dlabs Inc. Ltd. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS -// FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE -// COPYRIGHT HOLDERS OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, -// INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, -// BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; -// LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER -// CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT -// LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN -// ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE -// POSSIBILITY OF SUCH DAMAGE. -// - - -)"; - - -std::string getIntrinsic(const char* const* shaders, int n) { - std::string shaderString = ""; - for (int i = 0; i < n; i++) { - if (strstr(shaders[i], "GL_EXT_shader_realtime_clock") != nullptr) { - shaderString.append(GL_EXT_shader_realtime_clock_GLSL); - } - } - return shaderString; -} - -#endif diff --git a/Extern/3rdParty/shaderc/shaderc/include/libshaderc_util/args.h b/Extern/3rdParty/shaderc/shaderc/include/libshaderc_util/args.h deleted file mode 100644 index 1d08604..0000000 --- a/Extern/3rdParty/shaderc/shaderc/include/libshaderc_util/args.h +++ /dev/null @@ -1,41 +0,0 @@ -// Copyright 2019 The Shaderc Authors. All rights reserved. -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -#ifndef LIBSHADERC_UTIL_INC_ARGS_H -#define LIBSHADERC_UTIL_INC_ARGS_H - -#include -#include - -#include "libshaderc_util/string_piece.h" - -namespace shaderc_util { - -// Gets the option argument for the option at *index in argv in a way consistent -// with clang/gcc. On success, returns true and writes the parsed argument into -// *option_argument. Returns false if any errors occur. After calling this -// function, *index will be the index of the last command line argument -// consumed. -bool GetOptionArgument(int argc, char** argv, int* index, - const std::string& option, - string_piece* option_argument); - -// Parses the given string as a number of the specified type. Returns true -// if parsing succeeded, and stores the parsed value via |value|. -// (I've worked out the general case for this in -// SPIRV-Tools source/util/parse_number.h. -- dneto) -bool ParseUint32(const std::string& str, uint32_t* value); - -} // namespace shaderc_util -#endif // LIBSHADERC_UTIL_INC_ARGS_H diff --git a/Extern/3rdParty/shaderc/shaderc/include/libshaderc_util/compiler.h b/Extern/3rdParty/shaderc/shaderc/include/libshaderc_util/compiler.h deleted file mode 100644 index ffd7c24..0000000 --- a/Extern/3rdParty/shaderc/shaderc/include/libshaderc_util/compiler.h +++ /dev/null @@ -1,638 +0,0 @@ -// Copyright 2015 The Shaderc Authors. All rights reserved. -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -#ifndef LIBSHADERC_UTIL_INC_COMPILER_H -#define LIBSHADERC_UTIL_INC_COMPILER_H - -#include -#include -#include -#include -#include -#include -#include -#include - -#include "glslang/Public/ShaderLang.h" - -#include "counting_includer.h" -#include "file_finder.h" -#include "mutex.h" -#include "resources.h" -#include "string_piece.h" - -// Fix a typo in glslang/Public/ShaderLang.h -#define EShTargetClientVersion EshTargetClientVersion - -namespace shaderc_util { - -// To break recursive including. This header is already included in -// spirv_tools_wrapper.h, so cannot include spirv_tools_wrapper.h here. -enum class PassId; - -// Initializes glslang on creation, and destroys it on completion. -// Used to tie gslang process operations to object lifetimes. -// Additionally initialization/finalization of glslang is not thread safe, so -// synchronizes these operations. -class GlslangInitializer { - public: - GlslangInitializer(); - ~GlslangInitializer(); - - private: - static unsigned int initialize_count_; - - // Using a bare pointer here to avoid any global class construction at the - // beginning of the execution. - static std::mutex* glslang_mutex_; -}; - -// Maps macro names to their definitions. Stores string_pieces, so the -// underlying strings must outlive it. -using MacroDictionary = std::unordered_map; - -// Holds all of the state required to compile source GLSL into SPIR-V. -class Compiler { - public: - // Source language - enum class SourceLanguage { - GLSL, // The default - HLSL, - }; - - // Target environment. - enum class TargetEnv { - Vulkan, // Default to Vulkan 1.0 - OpenGL, // Default to OpenGL 4.5 - OpenGLCompat, // Support removed. Generates error if used. - }; - - // Target environment versions. These numbers match those used by Glslang. - enum class TargetEnvVersion : uint32_t { - Default = 0, // Default for the corresponding target environment - // For Vulkan, use numbering scheme from vulkan.h - Vulkan_1_0 = ((1 << 22)), // Vulkan 1.0 - Vulkan_1_1 = ((1 << 22) | (1 << 12)), // Vulkan 1.1 - Vulkan_1_2 = ((1 << 22) | (2 << 12)), // Vulkan 1.2 - Vulkan_1_3 = ((1 << 22) | (3 << 12)), // Vulkan 1.2 - // For OpenGL, use the numbering from #version in shaders. - OpenGL_4_5 = 450, - }; - - // SPIR-V version. - enum class SpirvVersion : uint32_t { - v1_0 = 0x010000u, - v1_1 = 0x010100u, - v1_2 = 0x010200u, - v1_3 = 0x010300u, - v1_4 = 0x010400u, - v1_5 = 0x010500u, - v1_6 = 0x010600u, - }; - - enum class OutputType { - SpirvBinary, // A binary module, as defined by the SPIR-V specification. - SpirvAssemblyText, // Assembly syntax defined by the SPIRV-Tools project. - PreprocessedText, // Preprocessed source code. - }; - - // Supported optimization levels. - enum class OptimizationLevel { - Zero, // No optimization. - Size, // Optimization towards reducing code size. - Performance, // Optimization towards better performance. - }; - - // Resource limits. These map to the "max*" fields in - // glslang::TBuiltInResource. - enum class Limit { -#define RESOURCE(NAME, FIELD, CNAME) NAME, -#include "resources.inc" -#undef RESOURCE - }; - - // Types of uniform variables. - enum class UniformKind { - // Image, and image buffer. - Image = 0, - // Pure sampler. - Sampler = 1, - // Sampled texture in GLSL. - // Shader Resource View, for HLSL. (Read-only image or storage buffer.) - Texture = 2, - // Uniform Buffer Object, or UBO, in GLSL. - // Also a Cbuffer in HLSL. - Buffer = 3, - // Shader Storage Buffer Object, or SSBO - StorageBuffer = 4, - // Uniform Access View, in HLSL. (Writable storage image or storage - // buffer.) - UnorderedAccessView = 5, - }; - enum { kNumUniformKinds = int(UniformKind::UnorderedAccessView) + 1 }; - - // Shader pipeline stage. - // TODO(dneto): Replaces interface uses of EShLanguage with this enum. - enum class Stage { - Vertex, - TessEval, - TessControl, - Geometry, - Fragment, - Compute, - RayGenNV, - IntersectNV, - AnyHitNV, - ClosestHitNV, - MissNV, - CallableNV, - TaskNV, - MeshNV, - StageEnd, - }; - enum { kNumStages = int(Stage::StageEnd) }; - - // Returns a std::array of all the Stage values. - const std::array& stages() const { - static std::array values{{ - Stage::Vertex, - Stage::TessEval, - Stage::TessControl, - Stage::Geometry, - Stage::Fragment, - Stage::Compute, - Stage::RayGenNV, - Stage::IntersectNV, - Stage::AnyHitNV, - Stage::ClosestHitNV, - Stage::MissNV, - Stage::CallableNV, - Stage::TaskNV, - Stage::MeshNV, - }}; - return values; - } - - // Creates an default compiler instance targeting at Vulkan environment. Uses - // version 110 and no profile specification as the default for GLSL. - Compiler() - // The default version for glsl is 110, or 100 if you are using an es - // profile. But we want to default to a non-es profile. - : default_version_(110), - default_profile_(ENoProfile), - force_version_profile_(false), - warnings_as_errors_(false), - suppress_warnings_(false), - generate_debug_info_(false), - enabled_opt_passes_(), - target_env_(TargetEnv::Vulkan), - target_env_version_(TargetEnvVersion::Default), - target_spirv_version_(SpirvVersion::v1_0), - target_spirv_version_is_forced_(false), - source_language_(SourceLanguage::GLSL), - limits_(kDefaultTBuiltInResource), - auto_bind_uniforms_(false), - auto_combined_image_sampler_(false), - auto_binding_base_(), - auto_map_locations_(false), - preserve_bindings_(false), - hlsl_iomap_(false), - hlsl_offsets_(false), - hlsl_legalization_enabled_(true), - hlsl_functionality1_enabled_(false), - hlsl_16bit_types_enabled_(false), - invert_y_enabled_(false), - nan_clamp_(false), - hlsl_explicit_bindings_() {} - - // Requests that the compiler place debug information into the object code, - // such as identifier names and line numbers. - void SetGenerateDebugInfo(); - - // Sets the optimization level to the given level. Only the last one takes - // effect if multiple calls of this method exist. - void SetOptimizationLevel(OptimizationLevel level); - - // Enables or disables HLSL legalization passes. - void EnableHlslLegalization(bool hlsl_legalization_enabled); - - // Enables or disables extension SPV_GOOGLE_hlsl_functionality1 - void EnableHlslFunctionality1(bool enable); - - // Enables or disables HLSL 16-bit types. - void EnableHlsl16BitTypes(bool enable); - - // Enables or disables invert position.Y output in vertex shader. - void EnableInvertY(bool enable); - - // Sets whether the compiler generates code for max and min builtins which, - // if given a NaN operand, will return the other operand. Also, the clamp - // builtin will favour the non-NaN operands, as if clamp were implemented - // as a composition of max and min. - void SetNanClamp(bool enable); - - // When a warning is encountered it treat it as an error. - void SetWarningsAsErrors(); - - // Any warning message generated is suppressed before it is output. - void SetSuppressWarnings(); - - // Adds an implicit macro definition obeyed by subsequent CompileShader() - // calls. The macro and definition should be passed in with their char* - // pointer and their lengths. They can be modified or deleted after this - // function has returned. - void AddMacroDefinition(const char* macro, size_t macro_length, - const char* definition, size_t definition_length); - - // Sets the target environment, including version. The version value should - // be 0 or one of the values from TargetEnvVersion. The default value maps - // to Vulkan 1.0 if the target environment is Vulkan, and it maps to OpenGL - // 4.5 if the target environment is OpenGL. - void SetTargetEnv(TargetEnv env, - TargetEnvVersion version = TargetEnvVersion::Default); - - // Sets the target version of SPIR-V. The module will use this version - // of SPIR-V. Defaults to the highest version of SPIR-V required to be - // supported by the target environment. E.g. default to SPIR-V 1.0 for - // Vulkan 1.0, and SPIR-V 1.3 for Vulkan 1.1. - void SetTargetSpirv(SpirvVersion version); - - // Sets the souce language. - void SetSourceLanguage(SourceLanguage lang); - - // Forces (without any verification) the default version and profile for - // subsequent CompileShader() calls. - void SetForcedVersionProfile(int version, EProfile profile); - - // Sets a resource limit. - void SetLimit(Limit limit, int value); - - // Returns the current limit. - int GetLimit(Limit limit) const; - - // Set whether the compiler automatically assigns bindings to - // uniform variables that don't have explicit bindings. - void SetAutoBindUniforms(bool auto_bind) { auto_bind_uniforms_ = auto_bind; } - - // Sets whether the compiler should automatically remove sampler variables - // and convert image variables to combined image-sampler variables. - void SetAutoCombinedImageSampler(bool auto_combine) { - auto_combined_image_sampler_ = auto_combine; - } - - // Sets the lowest binding number used when automatically assigning bindings - // for uniform resources of the given type, for all shader stages. The default - // base is zero. - void SetAutoBindingBase(UniformKind kind, uint32_t base) { - for (auto stage : stages()) { - SetAutoBindingBaseForStage(stage, kind, base); - } - } - - // Sets the lowest binding number used when automatically assigning bindings - // for uniform resources of the given type for a specific shader stage. The - // default base is zero. - void SetAutoBindingBaseForStage(Stage stage, UniformKind kind, - uint32_t base) { - auto_binding_base_[static_cast(stage)][static_cast(kind)] = base; - } - - // Sets whether the compiler should preserve all bindings, even when those - // bindings are not used. - void SetPreserveBindings(bool preserve_bindings) { - preserve_bindings_ = preserve_bindings; - } - - // Sets whether the compiler automatically assigns locations to - // uniform variables that don't have explicit locations. - void SetAutoMapLocations(bool auto_map) { auto_map_locations_ = auto_map; } - - // Use HLSL IO mapping rules for bindings. Default is false. - void SetHlslIoMapping(bool hlsl_iomap) { hlsl_iomap_ = hlsl_iomap; } - - // Use HLSL rules for offsets in "transparent" memory. These allow for - // tighter packing of some combinations of types than standard GLSL packings. - void SetHlslOffsets(bool hlsl_offsets) { hlsl_offsets_ = hlsl_offsets; } - - // Sets an explicit set and binding for the given HLSL register. - void SetHlslRegisterSetAndBinding(const std::string& reg, - const std::string& set, - const std::string& binding) { - for (auto stage : stages()) { - SetHlslRegisterSetAndBindingForStage(stage, reg, set, binding); - } - } - - // Sets an explicit set and binding for the given HLSL register in the given - // shader stage. For example, - // SetHlslRegisterSetAndBinding(Stage::Fragment, "t1", "4", "5") - // means register "t1" in a fragment shader should map to binding 5 in set 4. - // (Glslang wants this data as strings, not ints or enums.) The string data is - // copied. - void SetHlslRegisterSetAndBindingForStage(Stage stage, const std::string& reg, - const std::string& set, - const std::string& binding) { - hlsl_explicit_bindings_[static_cast(stage)].push_back(reg); - hlsl_explicit_bindings_[static_cast(stage)].push_back(set); - hlsl_explicit_bindings_[static_cast(stage)].push_back(binding); - } - - // Compiles the shader source in the input_source_string parameter. - // - // If the forced_shader stage parameter is not EShLangCount then - // the shader is assumed to be of the given stage. - // - // For HLSL compilation, entry_point_name is the null-terminated string for - // the entry point. For GLSL compilation, entry_point_name is ignored, and - // compilation assumes the entry point is named "main". - // - // The stage_callback function will be called if a shader_stage has - // not been forced and the stage can not be determined - // from the shader text. Any #include directives are parsed with the given - // includer. - // - // The initializer parameter must be a valid GlslangInitializer object. - // Acquire will be called on the initializer and the result will be - // destroyed before the function ends. - // - // The output_type parameter determines what kind of output should be - // produced. - // - // Any error messages are written as if the file name were error_tag. - // Any errors are written to the error_stream parameter. - // total_warnings and total_errors are incremented once for every - // warning or error encountered respectively. - // - // Returns a tuple consisting of three fields. 1) a boolean which is true when - // the compilation succeeded, and false otherwise; 2) a vector of 32-bit words - // which contains the compilation output data, either compiled SPIR-V binary - // code, or the text string generated in preprocessing-only or disassembly - // mode; 3) the size of the output data in bytes. When the output is SPIR-V - // binary code, the size is the number of bytes of valid data in the vector. - // If the output is a text string, the size equals the length of that string. - std::tuple, size_t> Compile( - const string_piece& input_source_string, EShLanguage forced_shader_stage, - const std::string& error_tag, const char* entry_point_name, - const std::function& - stage_callback, - CountingIncluder& includer, OutputType output_type, - std::ostream* error_stream, size_t* total_warnings, size_t* total_errors) const; - - static EShMessages GetDefaultRules() { - return static_cast(EShMsgSpvRules | EShMsgVulkanRules | - EShMsgCascadingErrors); - } - - protected: - // Preprocesses a shader whose filename is filename and content is - // shader_source. If preprocessing is successful, returns true, the - // preprocessed shader, and any warning message as a tuple. Otherwise, - // returns false, an empty string, and error messages as a tuple. - // - // The error_tag parameter is the name to use for outputting errors. - // The shader_source parameter is the input shader's source text. - // The shader_preamble parameter is a context-specific preamble internally - // prepended to shader_text without affecting the validity of its #version - // position. - // - // Any #include directives are processed with the given includer. - // - // If force_version_profile_ is set, the shader's version/profile is forced - // to be default_version_/default_profile_ regardless of the #version - // directive in the source code. - std::tuple PreprocessShader( - const std::string& error_tag, const string_piece& shader_source, - const string_piece& shader_preamble, CountingIncluder& includer) const; - - // Cleans up the preamble in a given preprocessed shader. - // - // The error_tag parameter is the name to be given for the main file. - // The pound_extension parameter is the #extension directive we prepended to - // the original shader source code via preamble. - // The num_include_directives parameter is the number of #include directives - // appearing in the original shader source code. - // The is_for_next_line means whether the #line sets the line number for the - // next line. - // - // If no #include directive is used in the shader source code, we can safely - // delete the #extension directive we injected via preamble. Otherwise, we - // need to adjust it if there exists a #version directive in the original - // shader source code. - std::string CleanupPreamble(const string_piece& preprocessed_shader, - const string_piece& error_tag, - const string_piece& pound_extension, - int num_include_directives, - bool is_for_next_line) const; - - // Determines version and profile from command line, or the source code. - // Returns the decoded version and profile pair on success. Otherwise, - // returns (0, ENoProfile). - std::pair DeduceVersionProfile( - const std::string& preprocessed_shader) const; - - // Determines the shader stage from pragmas embedded in the source text if - // possible. In the returned pair, the glslang EShLanguage is the shader - // stage deduced. If no #pragma directives for shader stage exist, it's - // EShLangCount. If errors occur, the second element in the pair is the - // error message. Otherwise, it's an empty string. - std::pair GetShaderStageFromSourceCode( - string_piece filename, const std::string& preprocessed_shader) const; - - // Determines version and profile from command line, or the source code. - // Returns the decoded version and profile pair on success. Otherwise, - // returns (0, ENoProfile). - std::pair DeduceVersionProfile( - const std::string& preprocessed_shader); - - // Gets version and profile specification from the given preprocessedshader. - // Returns the decoded version and profile pair on success. Otherwise, - // returns (0, ENoProfile). - std::pair GetVersionProfileFromSourceCode( - const std::string& preprocessed_shader) const; - - // Version to use when force_version_profile_ is true. - int default_version_; - // Profile to use when force_version_profile_ is true. - EProfile default_profile_; - // When true, use the default version and profile from eponymous data members. - bool force_version_profile_; - - // Macro definitions that must be available to reference in the shader source. - MacroDictionary predefined_macros_; - - // When true, treat warnings as errors. - bool warnings_as_errors_; - // Supress warnings when true. - bool suppress_warnings_; - - // When true, compilation will generate debug info with the binary SPIR-V - // output. - bool generate_debug_info_; - - // Optimization passes to be applied. - std::vector enabled_opt_passes_; - - // The target environment to compile with. This controls the glslang - // EshMessages bitmask, which determines which dialect of GLSL and which - // SPIR-V codegen semantics are used. This impacts the warning & error - // messages as well as the set of available builtins, as per the - // implementation of glslang. - TargetEnv target_env_; - - // The version number of the target environment. The numbering scheme is - // particular to each target environment. If this is 0, then use a default - // for that particular target environment. See libshaders/shaderc/shaderc.h - // for those defaults. - TargetEnvVersion target_env_version_; - - // The SPIR-V version to be used for the generated module. Defaults to 1.0. - SpirvVersion target_spirv_version_; - // True if the user explicitly set the target SPIR-V version. - bool target_spirv_version_is_forced_; - - // The source language. Defaults to GLSL. - SourceLanguage source_language_; - - // The resource limits to be used. - TBuiltInResource limits_; - - // True if the compiler should automatically bind uniforms that don't - // have explicit bindings. - bool auto_bind_uniforms_; - - // True if the compiler should automatically remove sampler variables - // and convert image variables to combined image-sampler variables. - bool auto_combined_image_sampler_; - - // The base binding number per uniform type, per stage, used when automatically - // binding uniforms that don't hzve explicit bindings in the shader source. - // The default is zero. - uint32_t auto_binding_base_[kNumStages][kNumUniformKinds]; - - // True if the compiler should automatically map uniforms that don't - // have explicit locations. - bool auto_map_locations_; - - // True if the compiler should preserve all bindings, even when unused. - bool preserve_bindings_; - - // True if the compiler should use HLSL IO mapping rules when compiling HLSL. - bool hlsl_iomap_; - - // True if the compiler should determine block member offsets using HLSL - // packing rules instead of standard GLSL rules. - bool hlsl_offsets_; - - // True if the compiler should perform legalization optimization passes if - // source language is HLSL. - bool hlsl_legalization_enabled_; - - // True if the compiler should support extension SPV_GOOGLE_hlsl_functionality1. - bool hlsl_functionality1_enabled_; - - // True if the compiler should support 16-bit HLSL types. - bool hlsl_16bit_types_enabled_; - - // True if the compiler should invert position.Y output in vertex shader. - bool invert_y_enabled_; - - // True if the compiler generates code for max and min builtins which, - // if given a NaN operand, will return the other operand. Also, the clamp - // builtin will favour the non-NaN operands, as if clamp were implemented - // as a composition of max and min. - bool nan_clamp_; - - // A sequence of triples, each triple representing a specific HLSL register - // name, and the set and binding numbers it should be mapped to, but in - // the form of strings. This is how Glslang wants to consume the data. - std::vector hlsl_explicit_bindings_[kNumStages]; -}; - -// Converts a string to a vector of uint32_t by copying the content of a given -// string to the vector and returns it. Appends '\0' at the end if extra bytes -// are required to complete the last element. -std::vector ConvertStringToVector(const std::string& str); - -// Converts a valid Glslang shader stage value to a Compiler::Stage value. -inline Compiler::Stage ConvertToStage(EShLanguage stage) { - switch (stage) { - case EShLangVertex: - return Compiler::Stage::Vertex; - case EShLangTessControl: - return Compiler::Stage::TessEval; - case EShLangTessEvaluation: - return Compiler::Stage::TessControl; - case EShLangGeometry: - return Compiler::Stage::Geometry; - case EShLangFragment: - return Compiler::Stage::Fragment; - case EShLangCompute: - return Compiler::Stage::Compute; - case EShLangRayGenNV: - return Compiler::Stage::RayGenNV; - case EShLangIntersectNV: - return Compiler::Stage::IntersectNV; - case EShLangAnyHitNV: - return Compiler::Stage::AnyHitNV; - case EShLangClosestHitNV: - return Compiler::Stage::ClosestHitNV; - case EShLangMissNV: - return Compiler::Stage::MissNV; - case EShLangCallableNV: - return Compiler::Stage::CallableNV; - case EShLangTaskNV: - return Compiler::Stage::TaskNV; - case EShLangMeshNV: - return Compiler::Stage::MeshNV; - default: - break; - } - assert(false && "Invalid case"); - return Compiler::Stage::Compute; -} - -// A GlslangClientInfo captures target client version and desired SPIR-V -// version. -struct GlslangClientInfo { - GlslangClientInfo() {} - GlslangClientInfo(const std::string& e, glslang::EShClient c, - glslang::EShTargetClientVersion cv, - glslang::EShTargetLanguage l, - glslang::EShTargetLanguageVersion lv) - : error(e), - client(c), - client_version(cv), - target_language(l), - target_language_version(lv) {} - - std::string error; // Empty if ok, otherwise contains the error message. - glslang::EShClient client = glslang::EShClientNone; - glslang::EShTargetClientVersion client_version; - glslang::EShTargetLanguage target_language = glslang::EShTargetSpv; - glslang::EShTargetLanguageVersion target_language_version = - glslang::EShTargetSpv_1_0; -}; - -// Returns the mappings to Glslang client, client version, and SPIR-V version. -// Also indicates whether the input values were valid. -GlslangClientInfo GetGlslangClientInfo( - const std::string& error_tag, // Indicates source location, for errors. - shaderc_util::Compiler::TargetEnv env, - shaderc_util::Compiler::TargetEnvVersion env_version, - shaderc_util::Compiler::SpirvVersion spv_version, - bool spv_version_is_forced); - -} // namespace shaderc_util -#endif // LIBSHADERC_UTIL_INC_COMPILER_H diff --git a/Extern/3rdParty/shaderc/shaderc/include/libshaderc_util/counting_includer.h b/Extern/3rdParty/shaderc/shaderc/include/libshaderc_util/counting_includer.h deleted file mode 100644 index 3e6b0a6..0000000 --- a/Extern/3rdParty/shaderc/shaderc/include/libshaderc_util/counting_includer.h +++ /dev/null @@ -1,101 +0,0 @@ -// Copyright 2015 The Shaderc Authors. All rights reserved. -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -#ifndef LIBSHADERC_UTIL_COUNTING_INCLUDER_H -#define LIBSHADERC_UTIL_COUNTING_INCLUDER_H - -#include - -#include "glslang/Public/ShaderLang.h" - -#include "libshaderc_util/mutex.h" - -namespace shaderc_util { - -// An Includer that counts how many #include directives it saw. -// Inclusions are internally serialized, but releasing a previous result -// can occur concurrently. -class CountingIncluder : public glslang::TShader::Includer { - public: - // Done as .store(0) instead of in the initializer list for the following - // reasons: - // Clang > 3.6 will complain about it if it is written as ({0}). - // VS2013 fails if it is written as {0}. - // G++-4.8 does not correctly support std::atomic_init. - CountingIncluder() { - num_include_directives_.store(0); - } - - enum class IncludeType { - System, // Only do < > include search - Local, // Only do " " include search - }; - - // Resolves an include request for a source by name, type, and name of the - // requesting source. For the semantics of the result, see the base class. - // Also increments num_include_directives and returns the results of - // include_delegate(filename). Subclasses should override include_delegate() - // instead of this method. Inclusions are serialized. - glslang::TShader::Includer::IncludeResult* includeSystem( - const char* requested_source, const char* requesting_source, - size_t include_depth) final { - ++num_include_directives_; - include_mutex_.lock(); - auto result = include_delegate(requested_source, requesting_source, - IncludeType::System, include_depth); - include_mutex_.unlock(); - return result; - } - - // Like includeSystem, but for "local" include search. - glslang::TShader::Includer::IncludeResult* includeLocal( - const char* requested_source, const char* requesting_source, - size_t include_depth) final { - ++num_include_directives_; - include_mutex_.lock(); - auto result = include_delegate(requested_source, requesting_source, - IncludeType::Local, include_depth); - include_mutex_.unlock(); - return result; - } - - // Releases the given IncludeResult. - void releaseInclude(glslang::TShader::Includer::IncludeResult* result) final { - release_delegate(result); - } - - int num_include_directives() const { return num_include_directives_.load(); } - - private: - - // Invoked by this class to provide results to - // glslang::TShader::Includer::include. - virtual glslang::TShader::Includer::IncludeResult* include_delegate( - const char* requested_source, const char* requesting_source, - IncludeType type, size_t include_depth) = 0; - - // Release the given IncludeResult. - virtual void release_delegate( - glslang::TShader::Includer::IncludeResult* result) = 0; - - // The number of #include directive encountered. - std::atomic_int num_include_directives_; - - // A mutex to protect against concurrent inclusions. We can't trust - // our delegates to be safe for concurrent inclusions. - shaderc_util::mutex include_mutex_; -}; -} - -#endif // LIBSHADERC_UTIL_COUNTING_INCLUDER_H diff --git a/Extern/3rdParty/shaderc/shaderc/include/libshaderc_util/exceptions.h b/Extern/3rdParty/shaderc/shaderc/include/libshaderc_util/exceptions.h deleted file mode 100644 index 93a03aa..0000000 --- a/Extern/3rdParty/shaderc/shaderc/include/libshaderc_util/exceptions.h +++ /dev/null @@ -1,26 +0,0 @@ -// Copyright 2018 The Shaderc Authors. All rights reserved. -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -#ifndef LIBSHADERC_UTIL_EXCEPTIONS_H_ -#define LIBSHADERC_UTIL_EXCEPTIONS_H_ - -#if (defined(_MSC_VER) && !defined(_CPPUNWIND)) || !defined(__EXCEPTIONS) -#define TRY_IF_EXCEPTIONS_ENABLED -#define CATCH_IF_EXCEPTIONS_ENABLED(X) if (0) -#else -#define TRY_IF_EXCEPTIONS_ENABLED try -#define CATCH_IF_EXCEPTIONS_ENABLED(X) catch (X) -#endif - -#endif // LIBSHADERC_UTIL_EXCEPTIONS_H_ diff --git a/Extern/3rdParty/shaderc/shaderc/include/libshaderc_util/file_finder.h b/Extern/3rdParty/shaderc/shaderc/include/libshaderc_util/file_finder.h deleted file mode 100644 index a5f91cf..0000000 --- a/Extern/3rdParty/shaderc/shaderc/include/libshaderc_util/file_finder.h +++ /dev/null @@ -1,57 +0,0 @@ -// Copyright 2015 The Shaderc Authors. All rights reserved. -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -#ifndef LIBSHADERC_UTIL_SRC_FILE_FINDER_H_ -#define LIBSHADERC_UTIL_SRC_FILE_FINDER_H_ - -#include -#include - -namespace shaderc_util { - -// Finds files within a search path. -class FileFinder { - public: - // Searches for a read-openable file based on filename, which must be - // non-empty. The search is attempted on filename prefixed by each element of - // search_path() in turn. The first hit is returned, or an empty string if - // there are no hits. Search attempts treat their argument the way - // std::fopen() treats its filename argument, ignoring whether the path is - // absolute or relative. - // - // If a search_path() element is non-empty and not ending in a slash, then a - // slash is inserted between it and filename before its search attempt. An - // empty string in search_path() means that the filename is tried as-is. - std::string FindReadableFilepath(const std::string& filename) const; - - // Searches for a read-openable file based on filename, which must be - // non-empty. The search is first attempted as a path relative to - // the requesting_file parameter. If no file is found relative to the - // requesting_file then this acts as FindReadableFilepath does. If - // requesting_file does not contain a '/' or a '\' character then it is - // assumed to be a filename and the request will be relative to the - // current directory. - std::string FindRelativeReadableFilepath(const std::string& requesting_file, - const std::string& filename) const; - - // Search path for Find(). Users may add/remove elements as desired. - std::vector& search_path() { return search_path_; } - - private: - std::vector search_path_; -}; - -} // namespace shaderc_util - -#endif // LIBSHADERC_UTIL_SRC_FILE_FINDER_H_ diff --git a/Extern/3rdParty/shaderc/shaderc/include/libshaderc_util/format.h b/Extern/3rdParty/shaderc/shaderc/include/libshaderc_util/format.h deleted file mode 100644 index 182f050..0000000 --- a/Extern/3rdParty/shaderc/shaderc/include/libshaderc_util/format.h +++ /dev/null @@ -1,36 +0,0 @@ -// Copyright 2015 The Shaderc Authors. All rights reserved. -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -#ifndef LIBSHADERC_UTIL_FORMAT_H_ -#define LIBSHADERC_UTIL_FORMAT_H_ - -#include - -namespace shaderc_util { - -// Returns a string containing for every -// key-value entry in map. -template -std::string format(const Map& map, const std::string& prefix, - const std::string& infix, const std::string& postfix) { - std::stringstream s; - for (const auto& pair : map) { - s << prefix << pair.first << infix << pair.second << postfix; - } - return s.str(); -} - -} // namespace shaderc_util - -#endif // LIBSHADERC_UTIL_FORMAT_H_ diff --git a/Extern/3rdParty/shaderc/shaderc/include/libshaderc_util/io_shaderc.h b/Extern/3rdParty/shaderc/shaderc/include/libshaderc_util/io_shaderc.h deleted file mode 100644 index b9116c1..0000000 --- a/Extern/3rdParty/shaderc/shaderc/include/libshaderc_util/io_shaderc.h +++ /dev/null @@ -1,69 +0,0 @@ -// Copyright 2015 The Shaderc Authors. All rights reserved. -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -#ifndef LIBSHADERC_UTIL_IO_H_ -#define LIBSHADERC_UTIL_IO_H_ - -#include -#include - -#include "string_piece.h" - -namespace shaderc_util { - -// Returns true if the given path is an absolute path. -bool IsAbsolutePath(const std::string& path); - -// A helper function to return the base file name from either absolute path or -// relative path representation of a file. It keeps the component from the last -// '/' or '\' to the end of the given string. If the component is '..' or '.', -// returns an empty string. If '/' or '\' is the last char of the given string, -// also returns an empty string. -// e.g.: dir_a/dir_b/file_c.vert => file_c.vert -// dir_a/dir_b/.. => -// dir_a/dir_b/. => -// dir_a/dirb/c/ => -// Note that this method doesn't check whether the given path is a valid one or -// not. -std::string GetBaseFileName(const std::string& file_path); - -// Reads all of the characters in a given file into input_data. Outputs an -// error message to std::cerr if the file could not be read and returns false if -// there was an error. If the input_file is "-", then input is read from -// std::cin. -bool ReadFile(const std::string& input_file_name, - std::vector* input_data); - -// Returns and initializes the file_stream parameter if the output_filename -// refers to a file, or returns &std::cout if the output_filename is "-". -// Returns nullptr and emits an error message to err if the file could -// not be opened for writing. If the output refers to a file, and the open -// failed for writing, file_stream is left with its fail_bit set. -std::ostream* GetOutputStream(const string_piece& output_filename, - std::ofstream* file_stream, std::ostream* err); - -// Writes output_data to a file, overwriting if it exists. If output_file_name -// is "-", writes to std::cout. -bool WriteFile(std::ostream* output_stream, const string_piece& output_data); - -// Flush the standard output stream and set it to binary mode. Subsequent -// output will not translate newlines to carriage-return newline pairs. -void FlushAndSetBinaryModeOnStdout(); -// Flush the standard output stream and set it to text mode. Subsequent -// output will translate newlines to carriage-return newline pairs. -void FlushAndSetTextModeOnStdout(); - -} // namespace shaderc_util - -#endif // LIBSHADERC_UTIL_IO_H_ diff --git a/Extern/3rdParty/shaderc/shaderc/include/libshaderc_util/message.h b/Extern/3rdParty/shaderc/shaderc/include/libshaderc_util/message.h deleted file mode 100644 index 8a77790..0000000 --- a/Extern/3rdParty/shaderc/shaderc/include/libshaderc_util/message.h +++ /dev/null @@ -1,86 +0,0 @@ -// Copyright 2015 The Shaderc Authors. All rights reserved. -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -#ifndef LIBSHADERC_UTIL_SRC_MESSAGE_H_ -#define LIBSHADERC_UTIL_SRC_MESSAGE_H_ - -#include "libshaderc_util/string_piece.h" - -namespace shaderc_util { - -// TODO(antiagainst): document the differences of the following message types. -enum class MessageType { - Warning, - Error, - ErrorSummary, - WarningSummary, - GlobalWarning, - GlobalError, - Unknown, - Ignored -}; - -// Given a glslang warning/error message, processes it in the following way and -// returns its message type. -// -// * Places the source name into the source_name parameter, if found. -// Otherwise, clears the source_name parameter. -// * Places the line number into the line_number parameter, if found. -// Otherwise, clears the line_number parameter. -// * Places the rest of the message (the text past warning/error prefix, source -// name, and line number) into the rest parameter. -// -// If warnings_as_errors is set to true, then all warnings will be treated as -// errors. -// If suppress_warnings is set to true, then no warnings will be emitted. This -// takes precedence over warnings_as_errors. -// -// Examples: -// "ERROR: 0:2: Message" -// source_name="0", line_number="2", rest="Message" -// "Warning, Message" -// source_name="", line_number="", rest="Message" -// "ERROR: 2 errors found." -// source_name="2", line_number="", rest="errors found". -// -// Note that filenames can contain colons: -// "ERROR: foo:bar.comp.hlsl:2: 'a' : unknown variable" -MessageType ParseGlslangOutput(const shaderc_util::string_piece& message, - bool warnings_as_errors, bool suppress_warnings, - shaderc_util::string_piece* source_name, - shaderc_util::string_piece* line_number, - shaderc_util::string_piece* rest); - -// Filters error_messages received from glslang, and outputs, to error_stream, -// any that are not ignored in a clang like format. If the warnings_as_errors -// boolean is set, then all warnings will be treated as errors. If the -// suppress_warnings boolean is set then any warning messages are ignored. This -// takes precedence over warnings_as_errors. Increments total_warnings and -// total_errors based on the message types. -// Returns true if no new errors were found when parsing the messages. -// "" will substitute "-1" appearing at the string name/number -// segment. -bool PrintFilteredErrors(const shaderc_util::string_piece& file_name, - std::ostream* error_stream, bool warnings_as_errors, - bool suppress_warnings, const char* error_list, - size_t* total_warnings, size_t* total_errors); - -// Outputs, to error_stream, the number of warnings and errors if there are -// any. -void OutputMessages(std::ostream* error_stream, size_t total_warnings, - size_t total_errors); - -} // namespace glslc - -#endif // LIBSHADERC_UTIL_SRC_MESSAGE_H_ diff --git a/Extern/3rdParty/shaderc/shaderc/include/libshaderc_util/mutex.h b/Extern/3rdParty/shaderc/shaderc/include/libshaderc_util/mutex.h deleted file mode 100644 index 4147cac..0000000 --- a/Extern/3rdParty/shaderc/shaderc/include/libshaderc_util/mutex.h +++ /dev/null @@ -1,107 +0,0 @@ -// Copyright 2015 The Shaderc Authors. All rights reserved. -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -#ifndef LIBSHADERC_UTIL_INC_MUTEX_H -#define LIBSHADERC_UTIL_INC_MUTEX_H - -// shaderc_util::mutex will be defined and specialized -// depending on the platform that is being compiled. -// It is more or less conformant to the C++11 specification of std::mutex. -// However it does not implement try_lock. - -#ifdef _WIN32 -// windows.h #defines min and max if we don't define this. -// this means things like std::min and std::max break -#ifndef NOMINMAX -#define NOMINMAX -#endif - -#include -namespace shaderc_util { - -// As the name suggests, this mutex class is for running on windows. -// It conforms to the c++11 mutex implementation, and should be a -// drop in replacement. -class windows_mutex { - public: - using native_handle_type = HANDLE; - - windows_mutex() { mutex_ = CreateMutex(nullptr, false, nullptr); } - - ~windows_mutex() { - if (mutex_ != INVALID_HANDLE_VALUE) { - CloseHandle(mutex_); - } - } - - windows_mutex(const windows_mutex&) = delete; - windows_mutex& operator=(const windows_mutex&) = delete; - - // Locks this mutex, waiting until the mutex is unlocked if it is not already. - // It is not valid to lock a mutex that has already been locked. - void lock() { WaitForSingleObject(mutex_, INFINITE); } - - // Unlocks this mutex. It is invalid to unlock a mutex that this thread - // has not already locked. - void unlock() { ReleaseMutex(mutex_); } - - // Returns the native handle for this mutex. In this case a HANDLE object. - native_handle_type native_handle() { return mutex_; } - - private: - HANDLE mutex_; -}; - -using mutex = windows_mutex; -} - -#else -#include -#include -namespace shaderc_util { - -// As the name suggests, this mutex class is for running with pthreads. -// It conforms to the c++11 mutex implementation, and should be a -// drop in replacement. -class posix_mutex { - public: - using native_handle_type = pthread_mutex_t*; - - posix_mutex() { pthread_mutex_init(&mutex_, nullptr); } - - ~posix_mutex() { pthread_mutex_destroy(&mutex_); } - - posix_mutex(const posix_mutex&) = delete; - posix_mutex& operator=(const posix_mutex&) = delete; - - // Locks this mutex, waiting until the mutex is unlocked if it is not already. - // It is not valid to lock a mutex that has already been locked. - void lock() { pthread_mutex_lock(&mutex_); } - - // Unlocks this mutex. It is invalid to unlock a mutex that this thread - // has not already locked. - void unlock() { pthread_mutex_unlock(&mutex_); } - - // Returns the native handle for this mutex. In this case a pthread_mutex_t*. - native_handle_type native_handle() { return &mutex_; } - - private: - pthread_mutex_t mutex_; -}; - -using mutex = posix_mutex; -} -#endif - -#endif // LIBSHADERC_UTIL_INC_MUTEX_H diff --git a/Extern/3rdParty/shaderc/shaderc/include/libshaderc_util/resources.h b/Extern/3rdParty/shaderc/shaderc/include/libshaderc_util/resources.h deleted file mode 100644 index a8f635b..0000000 --- a/Extern/3rdParty/shaderc/shaderc/include/libshaderc_util/resources.h +++ /dev/null @@ -1,30 +0,0 @@ -// Copyright 2015 The Shaderc Authors. All rights reserved. -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -#ifndef LIBSHADERC_UTIL_RESOURCES_H_ -#define LIBSHADERC_UTIL_RESOURCES_H_ - -// We want TBuiltInResource -#include "glslang/Include/ResourceLimits.h" - -namespace shaderc_util { - -using TBuiltInResource = ::TBuiltInResource; - -// A set of suitable defaults. -extern const TBuiltInResource kDefaultTBuiltInResource; - -} // namespace shaderc_util - -#endif // LIBSHADERC_UTIL_RESOURCES_H_ diff --git a/Extern/3rdParty/shaderc/shaderc/include/libshaderc_util/resources.inc b/Extern/3rdParty/shaderc/shaderc/include/libshaderc_util/resources.inc deleted file mode 100644 index 147f31f..0000000 --- a/Extern/3rdParty/shaderc/shaderc/include/libshaderc_util/resources.inc +++ /dev/null @@ -1,143 +0,0 @@ -// Copyright 2016 The Shaderc Authors. All rights reserved. -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -// These are the resource limits in a glslang::TBuiltInResource. -// The first field is the string name to be used in a configuration setting. -// The second field is the fieldname in TBuiltInResource. -// The third field is the enum name fragment for shaderc_limit. -// -// TODO(dneto): Consider using a single list of names, but use a Python script -// to generate *this* file. The original data file would have the first field, -// then generate the second field by lowering the case of the first letter, and -// generate the third field by taking the second field, and converting a -// lower-to-upper case transition into an underscore with lower-case. -RESOURCE(MaxLights,maxLights,max_lights) -RESOURCE(MaxClipPlanes,maxClipPlanes,max_clip_planes) -RESOURCE(MaxTextureUnits,maxTextureUnits,max_texture_units) -RESOURCE(MaxTextureCoords,maxTextureCoords,max_texture_coords) -RESOURCE(MaxVertexAttribs,maxVertexAttribs,max_vertex_attribs) -RESOURCE(MaxVertexUniformComponents,maxVertexUniformComponents,max_vertex_uniform_components) -RESOURCE(MaxVaryingFloats,maxVaryingFloats,max_varying_floats) -RESOURCE(MaxVertexTextureImageUnits,maxVertexTextureImageUnits,max_vertex_texture_image_units) -RESOURCE(MaxCombinedTextureImageUnits,maxCombinedTextureImageUnits,max_combined_texture_image_units) -RESOURCE(MaxTextureImageUnits,maxTextureImageUnits,max_texture_image_units) -RESOURCE(MaxFragmentUniformComponents,maxFragmentUniformComponents,max_fragment_uniform_components) -RESOURCE(MaxDrawBuffers,maxDrawBuffers,max_draw_buffers) -RESOURCE(MaxVertexUniformVectors,maxVertexUniformVectors,max_vertex_uniform_vectors) -RESOURCE(MaxVaryingVectors,maxVaryingVectors,max_varying_vectors) -RESOURCE(MaxFragmentUniformVectors,maxFragmentUniformVectors,max_fragment_uniform_vectors) -RESOURCE(MaxVertexOutputVectors,maxVertexOutputVectors,max_vertex_output_vectors) -RESOURCE(MaxFragmentInputVectors,maxFragmentInputVectors,max_fragment_input_vectors) -RESOURCE(MinProgramTexelOffset,minProgramTexelOffset,min_program_texel_offset) -RESOURCE(MaxProgramTexelOffset,maxProgramTexelOffset,max_program_texel_offset) -RESOURCE(MaxClipDistances,maxClipDistances,max_clip_distances) -RESOURCE(MaxComputeWorkGroupCountX,maxComputeWorkGroupCountX,max_compute_work_group_count_x) -RESOURCE(MaxComputeWorkGroupCountY,maxComputeWorkGroupCountY,max_compute_work_group_count_y) -RESOURCE(MaxComputeWorkGroupCountZ,maxComputeWorkGroupCountZ,max_compute_work_group_count_z) -RESOURCE(MaxComputeWorkGroupSizeX,maxComputeWorkGroupSizeX,max_compute_work_group_size_x) -RESOURCE(MaxComputeWorkGroupSizeY,maxComputeWorkGroupSizeY,max_compute_work_group_size_y) -RESOURCE(MaxComputeWorkGroupSizeZ,maxComputeWorkGroupSizeZ,max_compute_work_group_size_z) -RESOURCE(MaxComputeUniformComponents,maxComputeUniformComponents,max_compute_uniform_components) -RESOURCE(MaxComputeTextureImageUnits,maxComputeTextureImageUnits,max_compute_texture_image_units) -RESOURCE(MaxComputeImageUniforms,maxComputeImageUniforms,max_compute_image_uniforms) -RESOURCE(MaxComputeAtomicCounters,maxComputeAtomicCounters,max_compute_atomic_counters) -RESOURCE(MaxComputeAtomicCounterBuffers,maxComputeAtomicCounterBuffers,max_compute_atomic_counter_buffers) -RESOURCE(MaxVaryingComponents,maxVaryingComponents,max_varying_components) -RESOURCE(MaxVertexOutputComponents,maxVertexOutputComponents,max_vertex_output_components) -RESOURCE(MaxGeometryInputComponents,maxGeometryInputComponents,max_geometry_input_components) -RESOURCE(MaxGeometryOutputComponents,maxGeometryOutputComponents,max_geometry_output_components) -RESOURCE(MaxFragmentInputComponents,maxFragmentInputComponents,max_fragment_input_components) -RESOURCE(MaxImageUnits,maxImageUnits,max_image_units) -RESOURCE(MaxCombinedImageUnitsAndFragmentOutputs,maxCombinedImageUnitsAndFragmentOutputs,max_combined_image_units_and_fragment_outputs) -RESOURCE(MaxCombinedShaderOutputResources,maxCombinedShaderOutputResources,max_combined_shader_output_resources) -RESOURCE(MaxImageSamples,maxImageSamples,max_image_samples) -RESOURCE(MaxVertexImageUniforms,maxVertexImageUniforms,max_vertex_image_uniforms) -RESOURCE(MaxTessControlImageUniforms,maxTessControlImageUniforms,max_tess_control_image_uniforms) -RESOURCE(MaxTessEvaluationImageUniforms,maxTessEvaluationImageUniforms,max_tess_evaluation_image_uniforms) -RESOURCE(MaxGeometryImageUniforms,maxGeometryImageUniforms,max_geometry_image_uniforms) -RESOURCE(MaxFragmentImageUniforms,maxFragmentImageUniforms,max_fragment_image_uniforms) -RESOURCE(MaxCombinedImageUniforms,maxCombinedImageUniforms,max_combined_image_uniforms) -RESOURCE(MaxGeometryTextureImageUnits,maxGeometryTextureImageUnits,max_geometry_texture_image_units) -RESOURCE(MaxGeometryOutputVertices,maxGeometryOutputVertices,max_geometry_output_vertices) -RESOURCE(MaxGeometryTotalOutputComponents,maxGeometryTotalOutputComponents,max_geometry_total_output_components) -RESOURCE(MaxGeometryUniformComponents,maxGeometryUniformComponents,max_geometry_uniform_components) -RESOURCE(MaxGeometryVaryingComponents,maxGeometryVaryingComponents,max_geometry_varying_components) -RESOURCE(MaxTessControlInputComponents,maxTessControlInputComponents,max_tess_control_input_components) -RESOURCE(MaxTessControlOutputComponents,maxTessControlOutputComponents,max_tess_control_output_components) -RESOURCE(MaxTessControlTextureImageUnits,maxTessControlTextureImageUnits,max_tess_control_texture_image_units) -RESOURCE(MaxTessControlUniformComponents,maxTessControlUniformComponents,max_tess_control_uniform_components) -RESOURCE(MaxTessControlTotalOutputComponents,maxTessControlTotalOutputComponents,max_tess_control_total_output_components) -RESOURCE(MaxTessEvaluationInputComponents,maxTessEvaluationInputComponents,max_tess_evaluation_input_components) -RESOURCE(MaxTessEvaluationOutputComponents,maxTessEvaluationOutputComponents,max_tess_evaluation_output_components) -RESOURCE(MaxTessEvaluationTextureImageUnits,maxTessEvaluationTextureImageUnits,max_tess_evaluation_texture_image_units) -RESOURCE(MaxTessEvaluationUniformComponents,maxTessEvaluationUniformComponents,max_tess_evaluation_uniform_components) -RESOURCE(MaxTessPatchComponents,maxTessPatchComponents,max_tess_patch_components) -RESOURCE(MaxPatchVertices,maxPatchVertices,max_patch_vertices) -RESOURCE(MaxTessGenLevel,maxTessGenLevel,max_tess_gen_level) -RESOURCE(MaxViewports,maxViewports,max_viewports) -RESOURCE(MaxVertexAtomicCounters,maxVertexAtomicCounters,max_vertex_atomic_counters) -RESOURCE(MaxTessControlAtomicCounters,maxTessControlAtomicCounters,max_tess_control_atomic_counters) -RESOURCE(MaxTessEvaluationAtomicCounters,maxTessEvaluationAtomicCounters,max_tess_evaluation_atomic_counters) -RESOURCE(MaxGeometryAtomicCounters,maxGeometryAtomicCounters,max_geometry_atomic_counters) -RESOURCE(MaxFragmentAtomicCounters,maxFragmentAtomicCounters,max_fragment_atomic_counters) -RESOURCE(MaxCombinedAtomicCounters,maxCombinedAtomicCounters,max_combined_atomic_counters) -RESOURCE(MaxAtomicCounterBindings,maxAtomicCounterBindings,max_atomic_counter_bindings) -RESOURCE(MaxVertexAtomicCounterBuffers,maxVertexAtomicCounterBuffers,max_vertex_atomic_counter_buffers) -RESOURCE(MaxTessControlAtomicCounterBuffers,maxTessControlAtomicCounterBuffers,max_tess_control_atomic_counter_buffers) -RESOURCE(MaxTessEvaluationAtomicCounterBuffers,maxTessEvaluationAtomicCounterBuffers,max_tess_evaluation_atomic_counter_buffers) -RESOURCE(MaxGeometryAtomicCounterBuffers,maxGeometryAtomicCounterBuffers,max_geometry_atomic_counter_buffers) -RESOURCE(MaxFragmentAtomicCounterBuffers,maxFragmentAtomicCounterBuffers,max_fragment_atomic_counter_buffers) -RESOURCE(MaxCombinedAtomicCounterBuffers,maxCombinedAtomicCounterBuffers,max_combined_atomic_counter_buffers) -RESOURCE(MaxAtomicCounterBufferSize,maxAtomicCounterBufferSize,max_atomic_counter_buffer_size) -RESOURCE(MaxTransformFeedbackBuffers,maxTransformFeedbackBuffers,max_transform_feedback_buffers) -RESOURCE(MaxTransformFeedbackInterleavedComponents,maxTransformFeedbackInterleavedComponents,max_transform_feedback_interleaved_components) -RESOURCE(MaxCullDistances,maxCullDistances,max_cull_distances) -RESOURCE(MaxCombinedClipAndCullDistances,maxCombinedClipAndCullDistances,max_combined_clip_and_cull_distances) -RESOURCE(MaxSamples,maxSamples,max_samples) -RESOURCE(MaxMeshOutputVerticesNV, maxMeshOutputVerticesNV, - max_mesh_output_vertices_nv) -RESOURCE(MaxMeshOutputPrimitivesNV, maxMeshOutputPrimitivesNV, - max_mesh_output_primitives_nv) -RESOURCE(MaxMeshWorkGroupSizeX_NV, maxMeshWorkGroupSizeX_NV, - max_mesh_work_group_size_x_nv) -RESOURCE(MaxMeshWorkGroupSizeY_NV, maxMeshWorkGroupSizeY_NV, - max_mesh_work_group_size_y_nv) -RESOURCE(MaxMeshWorkGroupSizeZ_NV, maxMeshWorkGroupSizeZ_NV, - max_mesh_work_group_size_z_nv) -RESOURCE(MaxTaskWorkGroupSizeX_NV, maxTaskWorkGroupSizeX_NV, - max_task_work_group_size_x_nv) -RESOURCE(MaxTaskWorkGroupSizeY_NV, maxTaskWorkGroupSizeY_NV, - max_task_work_group_size_y_nv) -RESOURCE(MaxTaskWorkGroupSizeZ_NV, maxTaskWorkGroupSizeZ_NV, - max_task_work_group_size_z_nv) -RESOURCE(MaxMeshViewCountNV, maxMeshViewCountNV, max_mesh_view_count_nv) -RESOURCE(MaxMeshOutputVerticesEXT, maxMeshOutputVerticesEXT, - max_mesh_output_vertices_ext) -RESOURCE(MaxMeshOutputPrimitivesEXT, maxMeshOutputPrimitivesEXT, - max_mesh_output_primitives_ext) -RESOURCE(MaxMeshWorkGroupSizeX_EXT, maxMeshWorkGroupSizeX_EXT, - max_mesh_work_group_size_x_ext) -RESOURCE(MaxMeshWorkGroupSizeY_EXT, maxMeshWorkGroupSizeY_EXT, - max_mesh_work_group_size_y_ext) -RESOURCE(MaxMeshWorkGroupSizeZ_EXT, maxMeshWorkGroupSizeZ_EXT, - max_mesh_work_group_size_z_ext) -RESOURCE(MaxTaskWorkGroupSizeX_EXT, maxTaskWorkGroupSizeX_EXT, - max_task_work_group_size_x_ext) -RESOURCE(MaxTaskWorkGroupSizeY_EXT, maxTaskWorkGroupSizeY_EXT, - max_task_work_group_size_y_ext) -RESOURCE(MaxTaskWorkGroupSizeZ_EXT, maxTaskWorkGroupSizeZ_EXT, - max_task_work_group_size_z_ext) -RESOURCE(MaxMeshViewCountEXT, maxMeshViewCountEXT, max_mesh_view_count_ext) -RESOURCE(MaxDualSourceDrawBuffersEXT, maxDualSourceDrawBuffersEXT, - max_dual_source_draw_buffers_ext) diff --git a/Extern/3rdParty/shaderc/shaderc/include/libshaderc_util/shader_stage.h b/Extern/3rdParty/shaderc/shaderc/include/libshaderc_util/shader_stage.h deleted file mode 100644 index a939cb2..0000000 --- a/Extern/3rdParty/shaderc/shaderc/include/libshaderc_util/shader_stage.h +++ /dev/null @@ -1,36 +0,0 @@ -// Copyright 2015 The Shaderc Authors. All rights reserved. -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -#ifndef LIBSHADERC_UTIL_SHADER_STAGE_H_ -#define LIBSHADERC_UTIL_SHADER_STAGE_H_ - -#include -#include -#include -#include - -#include "glslang/Public/ShaderLang.h" - -#include "libshaderc_util/string_piece.h" - -namespace shaderc_util { - -// Given a string representing a stage, returns the glslang EShLanguage for it. -// If the stage string is not recognized, returns EShLangCount. -EShLanguage MapStageNameToLanguage( - const shaderc_util::string_piece& stage_name); - -} // namespace shaderc_util - -#endif // LIBSHADERC_UTIL_SHADER_STAGE_H_ diff --git a/Extern/3rdParty/shaderc/shaderc/include/libshaderc_util/spirv_tools_wrapper.h b/Extern/3rdParty/shaderc/shaderc/include/libshaderc_util/spirv_tools_wrapper.h deleted file mode 100644 index dcf5503..0000000 --- a/Extern/3rdParty/shaderc/shaderc/include/libshaderc_util/spirv_tools_wrapper.h +++ /dev/null @@ -1,68 +0,0 @@ -// Copyright 2016 The Shaderc Authors. All rights reserved. -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -#ifndef LIBSHADERC_UTIL_INC_SPIRV_TOOLS_WRAPPER_H -#define LIBSHADERC_UTIL_INC_SPIRV_TOOLS_WRAPPER_H - -#include -#include - -#include "spirv-tools/libspirv.hpp" - -#include "libshaderc_util/compiler.h" -#include "libshaderc_util/string_piece.h" - -namespace shaderc_util { -// Assembles the given assembly. On success, returns true, writes the assembled -// binary to *binary, and clears *errors. Otherwise, writes the error message -// into *errors. -bool SpirvToolsAssemble(Compiler::TargetEnv env, - Compiler::TargetEnvVersion version, - const string_piece assembly, spv_binary* binary, - std::string* errors); - -// Disassembles the given binary. Returns true and writes the disassembled text -// to *text_or_error if successful. Otherwise, writes the error message to -// *text_or_error. -bool SpirvToolsDisassemble(Compiler::TargetEnv env, - Compiler::TargetEnvVersion version, - const std::vector& binary, - std::string* text_or_error); - -// The ids of a list of supported optimization passes. -enum class PassId { - // SPIRV-Tools standard recipes - kLegalizationPasses, - kPerformancePasses, - kSizePasses, - - // SPIRV-Tools specific passes - kNullPass, - kStripDebugInfo, - kCompactIds, -}; - -// Optimizes the given binary. Passes are registered in the exact order as shown -// in enabled_passes, without de-duplication. Returns true and writes the -// optimized binary back to *binary if successful. Otherwise, writes errors to -// *errors and the content of binary may be in an invalid state. -bool SpirvToolsOptimize(Compiler::TargetEnv env, - Compiler::TargetEnvVersion version, - const std::vector& enabled_passes, - spvtools::OptimizerOptions& optimizer_options, - std::vector* binary, std::string* errors); - -} // namespace shaderc_util - -#endif // LIBSHADERC_UTIL_INC_SPIRV_TOOLS_WRAPPER_H diff --git a/Extern/3rdParty/shaderc/shaderc/include/libshaderc_util/string_piece.h b/Extern/3rdParty/shaderc/shaderc/include/libshaderc_util/string_piece.h deleted file mode 100644 index 8d334df..0000000 --- a/Extern/3rdParty/shaderc/shaderc/include/libshaderc_util/string_piece.h +++ /dev/null @@ -1,357 +0,0 @@ -// Copyright 2015 The Shaderc Authors. All rights reserved. -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -#ifndef LIBSHADERC_UTIL_STRING_PIECE_H_ -#define LIBSHADERC_UTIL_STRING_PIECE_H_ - -#include -#include -#include -#include - -namespace shaderc_util { -// Provides a read-only view into a string (cstring or std::string). -// This must be created after the string in question, and cannot -// outlive the memory of the string in question. -// Any operations that may modify the location or size of the -// original data render the associated string_piece invalid. - -class string_piece { - public: - typedef const char* iterator; - static const size_t npos = -1; - - string_piece() {} - - string_piece(const char* begin, const char* end) : begin_(begin), end_(end) { - assert((begin == nullptr) == (end == nullptr) && - "either both begin and end must be nullptr or neither must be"); - } - - string_piece(const char* string) : begin_(string), end_(string) { - if (string) { - end_ += strlen(string); - } - } - - string_piece(const std::string& str) { - if (!str.empty()) { - begin_ = &(str.front()); - end_ = &(str.back()) + 1; - } - } - - string_piece(const string_piece& other) { - begin_ = other.begin_; - end_ = other.end_; - } - - string_piece& operator=(const string_piece& other) = default; - - // Clears the string_piece removing any reference to the original string. - void clear() { - begin_ = nullptr; - end_ = nullptr; - } - - // Returns a pointer to the data contained in the underlying string. - // If there is no underlying string, returns a nullptr. - const char* data() const { return begin_; } - - // Returns an std::string copy of the internal data. - std::string str() const { return std::string(begin_, end_); } - - // Returns a string_piece that points to a substring in the original string. - string_piece substr(size_t pos, size_t len = npos) const { - assert(len == npos || pos + len <= size()); - return string_piece(begin_ + pos, len == npos ? end_ : begin_ + pos + len); - } - - // Takes any function object predicate that takes a char and returns a - // boolean. - // Returns the index of the first element that does not return true for the - // predicate. - // Returns string_piece::npos if all elements match. - template - size_t find_first_not_matching(T callee) { - for (auto it = begin_; it != end_; ++it) { - if (!callee(*it)) { - return it - begin_; - } - } - return npos; - } - - // Returns the index of the first character that does not match any character - // in the input string_piece. - // The search only includes characters at or after position pos. - // Returns string_piece::npos if all match. - size_t find_first_not_of(const string_piece& to_search, - size_t pos = 0) const { - if (pos >= size()) { - return npos; - } - for (auto it = begin_ + pos; it != end_; ++it) { - if (to_search.find_first_of(*it) == npos) { - return it - begin_; - } - } - return npos; - } - - // Returns find_first_not_of(str, pos) where str is a string_piece - // containing only to_search. - size_t find_first_not_of(char to_search, size_t pos = 0) const { - return find_first_not_of(string_piece(&to_search, &to_search + 1), pos); - } - - // Returns the index of the first character that matches any character in the - // input string_piece. - // The search only includes characters at or after position pos. - // Returns string_piece::npos if there is no match. - size_t find_first_of(const string_piece& to_search, size_t pos = 0) const { - if (pos >= size()) { - return npos; - } - for (auto it = begin_ + pos; it != end_; ++it) { - for (char c : to_search) { - if (c == *it) { - return it - begin_; - } - } - } - return npos; - } - - // Returns find_first_of(str, pos) where str is a string_piece - // containing only to_search. - size_t find_first_of(char to_search, size_t pos = 0) const { - return find_first_of(string_piece(&to_search, &to_search + 1), pos); - } - - // Returns the index of the last character that matches any character in the - // input string_piece. - // The search only includes characters at or before position pos. - // Returns string_piece::npos if there is no match. - size_t find_last_of(const string_piece& to_search, size_t pos = npos) const { - if (empty()) return npos; - if (pos >= size()) { - pos = size(); - } - auto it = begin_ + pos + 1; - do { - --it; - if (to_search.find_first_of(*it) != npos) { - return it - begin_; - } - } while (it != begin_); - return npos; - } - - // Returns find_last_of(str, pos) where str is a string_piece - // containing only to_search. - size_t find_last_of(char to_search, size_t pos = npos) const { - return find_last_of(string_piece(&to_search, &to_search + 1), pos); - } - - // Returns the index of the last character that does not match any character - // in the input string_piece. - // The search only includes characters at or before position pos. - // Returns string_piece::npos if there is no match. - size_t find_last_not_of(const string_piece& to_search, - size_t pos = npos) const { - if (empty()) return npos; - if (pos >= size()) { - pos = size(); - } - auto it = begin_ + pos + 1; - do { - --it; - if (to_search.find_first_of(*it) == npos) { - return it - begin_; - } - } while (it != begin_); - return npos; - } - - // Returns find_last_not_of(str, pos) where str is a string_piece - // containing only to_search. - size_t find_last_not_of(char to_search, size_t pos = 0) const { - return find_last_not_of(string_piece(&to_search, &to_search + 1), pos); - } - - // Continuously removes characters appearing in chars_to_strip from the left. - string_piece lstrip(const string_piece& chars_to_strip) const { - iterator begin = begin_; - for (; begin < end_; ++begin) - if (chars_to_strip.find_first_of(*begin) == npos) break; - if (begin >= end_) return string_piece(); - return string_piece(begin, end_); - } - - // Continuously removes characters appearing in chars_to_strip from the right. - string_piece rstrip(const string_piece& chars_to_strip) const { - iterator end = end_; - for (; begin_ < end; --end) - if (chars_to_strip.find_first_of(*(end - 1)) == npos) break; - if (begin_ >= end) return string_piece(); - return string_piece(begin_, end); - } - - // Continuously removes characters appearing in chars_to_strip from both - // sides. - string_piece strip(const string_piece& chars_to_strip) const { - return lstrip(chars_to_strip).rstrip(chars_to_strip); - } - - string_piece strip_whitespace() const { return strip(" \t\n\r\f\v"); } - - // Returns the character at index i in the string_piece. - const char& operator[](size_t i) const { return *(begin_ + i); } - - // Standard comparison operator. - bool operator==(const string_piece& other) const { - // Either end_ and _begin_ are nullptr or neither of them are. - assert(((end_ == nullptr) == (begin_ == nullptr))); - assert(((other.end_ == nullptr) == (other.begin_ == nullptr))); - if (size() != other.size()) { - return false; - } - return (memcmp(begin_, other.begin_, end_ - begin_) == 0); - } - - bool operator!=(const string_piece& other) const { - return !operator==(other); - } - - // Returns an iterator to the first element. - iterator begin() const { return begin_; } - - // Returns an iterator to one past the last element. - iterator end() const { return end_; } - - const char& front() const { - assert(!empty()); - return *begin_; - } - - const char& back() const { - assert(!empty()); - return *(end_ - 1); - } - - // Returns true is this string_piece starts with the same - // characters as other. - bool starts_with(const string_piece& other) const { - const char* iter = begin_; - const char* other_iter = other.begin(); - while (iter != end_ && other_iter != other.end()) { - if (*iter++ != *other_iter++) { - return false; - } - } - return other_iter == other.end(); - } - - // Returns the index of the start of the first substring that matches - // the input string_piece. - // The search only includes substrings starting at or after position pos. - // Returns npos if the string cannot be found. - size_t find(const string_piece& substr, size_t pos = 0) const { - if (empty()) return npos; - if (pos >= size()) return npos; - if (substr.empty()) return 0; - for (auto it = begin_ + pos; - end() - it >= static_cast(substr.size()); ++it) { - if (string_piece(it, end()).starts_with(substr)) return it - begin_; - } - return npos; - } - - // Returns the index of the start of the first character that matches - // the input character. - // The search only includes substrings starting at or after position pos. - // Returns npos if the character cannot be found. - size_t find(char character, size_t pos = 0) const { - return find_first_of(character, pos); - } - - // Returns true if the string_piece is empty. - bool empty() const { return begin_ == end_; } - - // Returns the number of characters in the string_piece. - size_t size() const { return end_ - begin_; } - - // Returns a vector of string_pieces representing delimiter delimited - // fields found. If the keep_delimiter parameter is true, then each - // delimiter character is kept with the string to its left. - std::vector get_fields(char delimiter, - bool keep_delimiter = false) const { - std::vector fields; - size_t first = 0; - size_t field_break = find_first_of(delimiter); - while (field_break != npos) { - fields.push_back(substr(first, field_break - first + keep_delimiter)); - first = field_break + 1; - field_break = find_first_of(delimiter, first); - } - if (size() - first > 0) { - fields.push_back(substr(first, size() - first)); - } - return fields; - } - - friend std::ostream& operator<<(std::ostream& os, const string_piece& piece); - - private: - // It is expected that begin_ and end_ will both be null or - // they will both point to valid pieces of memory, but it is invalid - // to have one of them being nullptr and the other not. - string_piece::iterator begin_ = nullptr; - string_piece::iterator end_ = nullptr; -}; - -inline std::ostream& operator<<(std::ostream& os, const string_piece& piece) { - // Either end_ and _begin_ are nullptr or neither of them are. - assert(((piece.end_ == nullptr) == (piece.begin_ == nullptr))); - if (piece.end_ != piece.begin_) { - os.write(piece.begin_, piece.end_ - piece.begin_); - } - return os; -} - -inline bool operator==(const char* first, const string_piece second) { - return second == string_piece(first); -} - -inline bool operator!=(const char* first, const string_piece second) { - return !operator==(first, second); -} -} - -namespace std { -template <> -struct hash { - size_t operator()(const shaderc_util::string_piece& piece) const { - // djb2 algorithm. - size_t hash = 5381; - for (char c : piece) { - hash = ((hash << 5) + hash) + c; - } - return hash; - } -}; -} - -#endif // LIBSHADERC_UTIL_STRING_PIECE_H_ diff --git a/Extern/3rdParty/shaderc/shaderc/include/libshaderc_util/universal_unistd.h b/Extern/3rdParty/shaderc/shaderc/include/libshaderc_util/universal_unistd.h deleted file mode 100644 index 9f6e74f..0000000 --- a/Extern/3rdParty/shaderc/shaderc/include/libshaderc_util/universal_unistd.h +++ /dev/null @@ -1,32 +0,0 @@ -// Copyright 2015 The Shaderc Authors. All rights reserved. -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -#ifndef LIBSHADERC_UTIL_UNIVERSAL_UNISTD_H_ -#define LIBSHADERC_UTIL_UNIVERSAL_UNISTD_H_ - -#ifndef _MSC_VER -#include -#else -// Minimal set of needed to compile on windows. - -#include -#define access _access - -// https://msdn.microsoft.com/en-us/library/1w06ktdy.aspx -// Defines these constants. -#define R_OK 4 -#define W_OK 2 -#endif //_MSC_VER - -#endif // LIBSHADERC_UTIL_UNIVERSAL_UNISTD_H_ diff --git a/Extern/3rdParty/shaderc/shaderc/include/libshaderc_util/version_profile.h b/Extern/3rdParty/shaderc/shaderc/include/libshaderc_util/version_profile.h deleted file mode 100644 index f536b30..0000000 --- a/Extern/3rdParty/shaderc/shaderc/include/libshaderc_util/version_profile.h +++ /dev/null @@ -1,61 +0,0 @@ -// Copyright 2015 The Shaderc Authors. All rights reserved. -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -#ifndef LIBSHADERC_UTIL_INC_VERSION_PROFILE_H_ -#define LIBSHADERC_UTIL_INC_VERSION_PROFILE_H_ - -#include - -#include "glslang/MachineIndependent/Versions.h" - -namespace shaderc_util { - -// Returns true if the given version is an accepted GLSL (ES) version. -inline bool IsKnownVersion(int version) { - switch (version) { - case 100: - case 110: - case 120: - case 130: - case 140: - case 150: - case 300: - case 310: - case 320: - case 330: - case 400: - case 410: - case 420: - case 430: - case 440: - case 450: - case 460: - return true; - default: - break; - } - return false; -} - -// Given a string version_profile containing both version and profile, decodes -// it and puts the decoded version in version, decoded profile in profile. -// Returns true if decoding is successful and version and profile are accepted. -// This does not validate the version number against the profile. For example, -// "460es" doesn't make sense (yet), but is still accepted. -bool ParseVersionProfile(const std::string& version_profile, int* version, - EProfile* profile); - -} // namespace shaderc_util - -#endif // LIBSHADERC_UTIL_INC_VERSION_PROFILE_H_ diff --git a/Extern/3rdParty/shaderc/shaderc/include/shaderc/env.h b/Extern/3rdParty/shaderc/shaderc/include/shaderc/env.h deleted file mode 100644 index 14b418d..0000000 --- a/Extern/3rdParty/shaderc/shaderc/include/shaderc/env.h +++ /dev/null @@ -1,72 +0,0 @@ -// Copyright 2018 The Shaderc Authors. All rights reserved. -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -#ifndef SHADERC_ENV_H_ -#define SHADERC_ENV_H_ - -#include - -#ifdef __cplusplus -extern "C" { -#endif - -typedef enum { - shaderc_target_env_vulkan, // SPIR-V under Vulkan semantics - shaderc_target_env_opengl, // SPIR-V under OpenGL semantics - // NOTE: SPIR-V code generation is not supported for shaders under OpenGL - // compatibility profile. - shaderc_target_env_opengl_compat, // SPIR-V under OpenGL semantics, - // including compatibility profile - // functions - shaderc_target_env_webgpu, // Deprecated, SPIR-V under WebGPU - // semantics - shaderc_target_env_default = shaderc_target_env_vulkan -} shaderc_target_env; - -typedef enum { - // For Vulkan, use Vulkan's mapping of version numbers to integers. - // See vulkan.h - shaderc_env_version_vulkan_1_0 = ((1u << 22)), - shaderc_env_version_vulkan_1_1 = ((1u << 22) | (1 << 12)), - shaderc_env_version_vulkan_1_2 = ((1u << 22) | (2 << 12)), - shaderc_env_version_vulkan_1_3 = ((1u << 22) | (3 << 12)), - // For OpenGL, use the number from #version in shaders. - // TODO(dneto): Currently no difference between OpenGL 4.5 and 4.6. - // See glslang/Standalone/Standalone.cpp - // TODO(dneto): Glslang doesn't accept a OpenGL client version of 460. - shaderc_env_version_opengl_4_5 = 450, - shaderc_env_version_webgpu, // Deprecated, WebGPU env never defined versions -} shaderc_env_version; - -// The known versions of SPIR-V. -typedef enum { - // Use the values used for word 1 of a SPIR-V binary: - // - bits 24 to 31: zero - // - bits 16 to 23: major version number - // - bits 8 to 15: minor version number - // - bits 0 to 7: zero - shaderc_spirv_version_1_0 = 0x010000u, - shaderc_spirv_version_1_1 = 0x010100u, - shaderc_spirv_version_1_2 = 0x010200u, - shaderc_spirv_version_1_3 = 0x010300u, - shaderc_spirv_version_1_4 = 0x010400u, - shaderc_spirv_version_1_5 = 0x010500u, - shaderc_spirv_version_1_6 = 0x010600u -} shaderc_spirv_version; - -#ifdef __cplusplus -} -#endif // __cplusplus - -#endif // SHADERC_ENV_H_ diff --git a/Extern/3rdParty/shaderc/shaderc/include/shaderc/shaderc.h b/Extern/3rdParty/shaderc/shaderc/include/shaderc/shaderc.h deleted file mode 100644 index 235f607..0000000 --- a/Extern/3rdParty/shaderc/shaderc/include/shaderc/shaderc.h +++ /dev/null @@ -1,613 +0,0 @@ -// Copyright 2015 The Shaderc Authors. All rights reserved. -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -#ifndef SHADERC_SHADERC_H_ -#define SHADERC_SHADERC_H_ - -#ifdef __cplusplus -extern "C" { -#endif - -#include -#include -#include - -#include "shaderc/env.h" -#include "shaderc/status.h" -#include "shaderc/visibility.h" - -// Source language kind. -typedef enum { - shaderc_source_language_glsl, - shaderc_source_language_hlsl, -} shaderc_source_language; - -typedef enum { - // Forced shader kinds. These shader kinds force the compiler to compile the - // source code as the specified kind of shader. - shaderc_vertex_shader, - shaderc_fragment_shader, - shaderc_compute_shader, - shaderc_geometry_shader, - shaderc_tess_control_shader, - shaderc_tess_evaluation_shader, - - shaderc_glsl_vertex_shader = shaderc_vertex_shader, - shaderc_glsl_fragment_shader = shaderc_fragment_shader, - shaderc_glsl_compute_shader = shaderc_compute_shader, - shaderc_glsl_geometry_shader = shaderc_geometry_shader, - shaderc_glsl_tess_control_shader = shaderc_tess_control_shader, - shaderc_glsl_tess_evaluation_shader = shaderc_tess_evaluation_shader, - - // Deduce the shader kind from #pragma annotation in the source code. Compiler - // will emit error if #pragma annotation is not found. - shaderc_glsl_infer_from_source, - // Default shader kinds. Compiler will fall back to compile the source code as - // the specified kind of shader when #pragma annotation is not found in the - // source code. - shaderc_glsl_default_vertex_shader, - shaderc_glsl_default_fragment_shader, - shaderc_glsl_default_compute_shader, - shaderc_glsl_default_geometry_shader, - shaderc_glsl_default_tess_control_shader, - shaderc_glsl_default_tess_evaluation_shader, - shaderc_spirv_assembly, - shaderc_raygen_shader, - shaderc_anyhit_shader, - shaderc_closesthit_shader, - shaderc_miss_shader, - shaderc_intersection_shader, - shaderc_callable_shader, - shaderc_glsl_raygen_shader = shaderc_raygen_shader, - shaderc_glsl_anyhit_shader = shaderc_anyhit_shader, - shaderc_glsl_closesthit_shader = shaderc_closesthit_shader, - shaderc_glsl_miss_shader = shaderc_miss_shader, - shaderc_glsl_intersection_shader = shaderc_intersection_shader, - shaderc_glsl_callable_shader = shaderc_callable_shader, - shaderc_glsl_default_raygen_shader, - shaderc_glsl_default_anyhit_shader, - shaderc_glsl_default_closesthit_shader, - shaderc_glsl_default_miss_shader, - shaderc_glsl_default_intersection_shader, - shaderc_glsl_default_callable_shader, - shaderc_task_shader, - shaderc_mesh_shader, - shaderc_glsl_task_shader = shaderc_task_shader, - shaderc_glsl_mesh_shader = shaderc_mesh_shader, - shaderc_glsl_default_task_shader, - shaderc_glsl_default_mesh_shader, -} shaderc_shader_kind; - -typedef enum { - shaderc_profile_none, // Used if and only if GLSL version did not specify - // profiles. - shaderc_profile_core, - shaderc_profile_compatibility, // Disabled. This generates an error - shaderc_profile_es, -} shaderc_profile; - -// Optimization level. -typedef enum { - shaderc_optimization_level_zero, // no optimization - shaderc_optimization_level_size, // optimize towards reducing code size - shaderc_optimization_level_performance, // optimize towards performance -} shaderc_optimization_level; - -// Resource limits. -typedef enum { - shaderc_limit_max_lights, - shaderc_limit_max_clip_planes, - shaderc_limit_max_texture_units, - shaderc_limit_max_texture_coords, - shaderc_limit_max_vertex_attribs, - shaderc_limit_max_vertex_uniform_components, - shaderc_limit_max_varying_floats, - shaderc_limit_max_vertex_texture_image_units, - shaderc_limit_max_combined_texture_image_units, - shaderc_limit_max_texture_image_units, - shaderc_limit_max_fragment_uniform_components, - shaderc_limit_max_draw_buffers, - shaderc_limit_max_vertex_uniform_vectors, - shaderc_limit_max_varying_vectors, - shaderc_limit_max_fragment_uniform_vectors, - shaderc_limit_max_vertex_output_vectors, - shaderc_limit_max_fragment_input_vectors, - shaderc_limit_min_program_texel_offset, - shaderc_limit_max_program_texel_offset, - shaderc_limit_max_clip_distances, - shaderc_limit_max_compute_work_group_count_x, - shaderc_limit_max_compute_work_group_count_y, - shaderc_limit_max_compute_work_group_count_z, - shaderc_limit_max_compute_work_group_size_x, - shaderc_limit_max_compute_work_group_size_y, - shaderc_limit_max_compute_work_group_size_z, - shaderc_limit_max_compute_uniform_components, - shaderc_limit_max_compute_texture_image_units, - shaderc_limit_max_compute_image_uniforms, - shaderc_limit_max_compute_atomic_counters, - shaderc_limit_max_compute_atomic_counter_buffers, - shaderc_limit_max_varying_components, - shaderc_limit_max_vertex_output_components, - shaderc_limit_max_geometry_input_components, - shaderc_limit_max_geometry_output_components, - shaderc_limit_max_fragment_input_components, - shaderc_limit_max_image_units, - shaderc_limit_max_combined_image_units_and_fragment_outputs, - shaderc_limit_max_combined_shader_output_resources, - shaderc_limit_max_image_samples, - shaderc_limit_max_vertex_image_uniforms, - shaderc_limit_max_tess_control_image_uniforms, - shaderc_limit_max_tess_evaluation_image_uniforms, - shaderc_limit_max_geometry_image_uniforms, - shaderc_limit_max_fragment_image_uniforms, - shaderc_limit_max_combined_image_uniforms, - shaderc_limit_max_geometry_texture_image_units, - shaderc_limit_max_geometry_output_vertices, - shaderc_limit_max_geometry_total_output_components, - shaderc_limit_max_geometry_uniform_components, - shaderc_limit_max_geometry_varying_components, - shaderc_limit_max_tess_control_input_components, - shaderc_limit_max_tess_control_output_components, - shaderc_limit_max_tess_control_texture_image_units, - shaderc_limit_max_tess_control_uniform_components, - shaderc_limit_max_tess_control_total_output_components, - shaderc_limit_max_tess_evaluation_input_components, - shaderc_limit_max_tess_evaluation_output_components, - shaderc_limit_max_tess_evaluation_texture_image_units, - shaderc_limit_max_tess_evaluation_uniform_components, - shaderc_limit_max_tess_patch_components, - shaderc_limit_max_patch_vertices, - shaderc_limit_max_tess_gen_level, - shaderc_limit_max_viewports, - shaderc_limit_max_vertex_atomic_counters, - shaderc_limit_max_tess_control_atomic_counters, - shaderc_limit_max_tess_evaluation_atomic_counters, - shaderc_limit_max_geometry_atomic_counters, - shaderc_limit_max_fragment_atomic_counters, - shaderc_limit_max_combined_atomic_counters, - shaderc_limit_max_atomic_counter_bindings, - shaderc_limit_max_vertex_atomic_counter_buffers, - shaderc_limit_max_tess_control_atomic_counter_buffers, - shaderc_limit_max_tess_evaluation_atomic_counter_buffers, - shaderc_limit_max_geometry_atomic_counter_buffers, - shaderc_limit_max_fragment_atomic_counter_buffers, - shaderc_limit_max_combined_atomic_counter_buffers, - shaderc_limit_max_atomic_counter_buffer_size, - shaderc_limit_max_transform_feedback_buffers, - shaderc_limit_max_transform_feedback_interleaved_components, - shaderc_limit_max_cull_distances, - shaderc_limit_max_combined_clip_and_cull_distances, - shaderc_limit_max_samples, - shaderc_limit_max_mesh_output_vertices_nv, - shaderc_limit_max_mesh_output_primitives_nv, - shaderc_limit_max_mesh_work_group_size_x_nv, - shaderc_limit_max_mesh_work_group_size_y_nv, - shaderc_limit_max_mesh_work_group_size_z_nv, - shaderc_limit_max_task_work_group_size_x_nv, - shaderc_limit_max_task_work_group_size_y_nv, - shaderc_limit_max_task_work_group_size_z_nv, - shaderc_limit_max_mesh_view_count_nv, - shaderc_limit_max_mesh_output_vertices_ext, - shaderc_limit_max_mesh_output_primitives_ext, - shaderc_limit_max_mesh_work_group_size_x_ext, - shaderc_limit_max_mesh_work_group_size_y_ext, - shaderc_limit_max_mesh_work_group_size_z_ext, - shaderc_limit_max_task_work_group_size_x_ext, - shaderc_limit_max_task_work_group_size_y_ext, - shaderc_limit_max_task_work_group_size_z_ext, - shaderc_limit_max_mesh_view_count_ext, - shaderc_limit_max_dual_source_draw_buffers_ext, -} shaderc_limit; - -// Uniform resource kinds. -// In Vulkan, uniform resources are bound to the pipeline via descriptors -// with numbered bindings and sets. -typedef enum { - // Image and image buffer. - shaderc_uniform_kind_image, - // Pure sampler. - shaderc_uniform_kind_sampler, - // Sampled texture in GLSL, and Shader Resource View in HLSL. - shaderc_uniform_kind_texture, - // Uniform Buffer Object (UBO) in GLSL. Cbuffer in HLSL. - shaderc_uniform_kind_buffer, - // Shader Storage Buffer Object (SSBO) in GLSL. - shaderc_uniform_kind_storage_buffer, - // Unordered Access View, in HLSL. (Writable storage image or storage - // buffer.) - shaderc_uniform_kind_unordered_access_view, -} shaderc_uniform_kind; - -// Usage examples: -// -// Aggressively release compiler resources, but spend time in initialization -// for each new use. -// shaderc_compiler_t compiler = shaderc_compiler_initialize(); -// shaderc_compilation_result_t result = shaderc_compile_into_spv( -// compiler, "#version 450\nvoid main() {}", 27, -// shaderc_glsl_vertex_shader, "main.vert", "main", nullptr); -// // Do stuff with compilation results. -// shaderc_result_release(result); -// shaderc_compiler_release(compiler); -// -// Keep the compiler object around for a long time, but pay for extra space -// occupied. -// shaderc_compiler_t compiler = shaderc_compiler_initialize(); -// // On the same, other or multiple simultaneous threads. -// shaderc_compilation_result_t result = shaderc_compile_into_spv( -// compiler, "#version 450\nvoid main() {}", 27, -// shaderc_glsl_vertex_shader, "main.vert", "main", nullptr); -// // Do stuff with compilation results. -// shaderc_result_release(result); -// // Once no more compilations are to happen. -// shaderc_compiler_release(compiler); - -// An opaque handle to an object that manages all compiler state. -typedef struct shaderc_compiler* shaderc_compiler_t; - -// Returns a shaderc_compiler_t that can be used to compile modules. -// A return of NULL indicates that there was an error initializing the compiler. -// Any function operating on shaderc_compiler_t must offer the basic -// thread-safety guarantee. -// [http://herbsutter.com/2014/01/13/gotw-95-solution-thread-safety-and-synchronization/] -// That is: concurrent invocation of these functions on DIFFERENT objects needs -// no synchronization; concurrent invocation of these functions on the SAME -// object requires synchronization IF AND ONLY IF some of them take a non-const -// argument. -SHADERC_EXPORT shaderc_compiler_t shaderc_compiler_initialize(void); - -// Releases the resources held by the shaderc_compiler_t. -// After this call it is invalid to make any future calls to functions -// involving this shaderc_compiler_t. -SHADERC_EXPORT void shaderc_compiler_release(shaderc_compiler_t); - -// An opaque handle to an object that manages options to a single compilation -// result. -typedef struct shaderc_compile_options* shaderc_compile_options_t; - -// Returns a default-initialized shaderc_compile_options_t that can be used -// to modify the functionality of a compiled module. -// A return of NULL indicates that there was an error initializing the options. -// Any function operating on shaderc_compile_options_t must offer the -// basic thread-safety guarantee. -SHADERC_EXPORT shaderc_compile_options_t - shaderc_compile_options_initialize(void); - -// Returns a copy of the given shaderc_compile_options_t. -// If NULL is passed as the parameter the call is the same as -// shaderc_compile_options_init. -SHADERC_EXPORT shaderc_compile_options_t shaderc_compile_options_clone( - const shaderc_compile_options_t options); - -// Releases the compilation options. It is invalid to use the given -// shaderc_compile_options_t object in any future calls. It is safe to pass -// NULL to this function, and doing such will have no effect. -SHADERC_EXPORT void shaderc_compile_options_release( - shaderc_compile_options_t options); - -// Adds a predefined macro to the compilation options. This has the same -// effect as passing -Dname=value to the command-line compiler. If value -// is NULL, it has the same effect as passing -Dname to the command-line -// compiler. If a macro definition with the same name has previously been -// added, the value is replaced with the new value. The macro name and -// value are passed in with char pointers, which point to their data, and -// the lengths of their data. The strings that the name and value pointers -// point to must remain valid for the duration of the call, but can be -// modified or deleted after this function has returned. In case of adding -// a valueless macro, the value argument should be a null pointer or the -// value_length should be 0u. -SHADERC_EXPORT void shaderc_compile_options_add_macro_definition( - shaderc_compile_options_t options, const char* name, size_t name_length, - const char* value, size_t value_length); - -// Sets the source language. The default is GLSL. -SHADERC_EXPORT void shaderc_compile_options_set_source_language( - shaderc_compile_options_t options, shaderc_source_language lang); - -// Sets the compiler mode to generate debug information in the output. -SHADERC_EXPORT void shaderc_compile_options_set_generate_debug_info( - shaderc_compile_options_t options); - -// Sets the compiler optimization level to the given level. Only the last one -// takes effect if multiple calls of this function exist. -SHADERC_EXPORT void shaderc_compile_options_set_optimization_level( - shaderc_compile_options_t options, shaderc_optimization_level level); - -// Forces the GLSL language version and profile to a given pair. The version -// number is the same as would appear in the #version annotation in the source. -// Version and profile specified here overrides the #version annotation in the -// source. Use profile: 'shaderc_profile_none' for GLSL versions that do not -// define profiles, e.g. versions below 150. -SHADERC_EXPORT void shaderc_compile_options_set_forced_version_profile( - shaderc_compile_options_t options, int version, shaderc_profile profile); - -// Source text inclusion via #include is supported with a pair of callbacks -// to an "includer" on the client side. The first callback processes an -// inclusion request, and returns an include result. The includer owns -// the contents of the result, and those contents must remain valid until the -// second callback is invoked to release the result. Both callbacks take a -// user_data argument to specify the client context. -// To return an error, set the source_name to an empty string and put your -// error message in content. - -// An include result. -typedef struct shaderc_include_result { - // The name of the source file. The name should be fully resolved - // in the sense that it should be a unique name in the context of the - // includer. For example, if the includer maps source names to files in - // a filesystem, then this name should be the absolute path of the file. - // For a failed inclusion, this string is empty. - const char* source_name; - size_t source_name_length; - // The text contents of the source file in the normal case. - // For a failed inclusion, this contains the error message. - const char* content; - size_t content_length; - // User data to be passed along with this request. - void* user_data; -} shaderc_include_result; - -// The kinds of include requests. -enum shaderc_include_type { - shaderc_include_type_relative, // E.g. #include "source" - shaderc_include_type_standard // E.g. #include -}; - -// An includer callback type for mapping an #include request to an include -// result. The user_data parameter specifies the client context. The -// requested_source parameter specifies the name of the source being requested. -// The type parameter specifies the kind of inclusion request being made. -// The requesting_source parameter specifies the name of the source containing -// the #include request. The includer owns the result object and its contents, -// and both must remain valid until the release callback is called on the result -// object. -typedef shaderc_include_result* (*shaderc_include_resolve_fn)( - void* user_data, const char* requested_source, int type, - const char* requesting_source, size_t include_depth); - -// An includer callback type for destroying an include result. -typedef void (*shaderc_include_result_release_fn)( - void* user_data, shaderc_include_result* include_result); - -// Sets includer callback functions. -SHADERC_EXPORT void shaderc_compile_options_set_include_callbacks( - shaderc_compile_options_t options, shaderc_include_resolve_fn resolver, - shaderc_include_result_release_fn result_releaser, void* user_data); - -// Sets the compiler mode to suppress warnings, overriding warnings-as-errors -// mode. When both suppress-warnings and warnings-as-errors modes are -// turned on, warning messages will be inhibited, and will not be emitted -// as error messages. -SHADERC_EXPORT void shaderc_compile_options_set_suppress_warnings( - shaderc_compile_options_t options); - -// Sets the target shader environment, affecting which warnings or errors will -// be issued. The version will be for distinguishing between different versions -// of the target environment. The version value should be either 0 or -// a value listed in shaderc_env_version. The 0 value maps to Vulkan 1.0 if -// |target| is Vulkan, and it maps to OpenGL 4.5 if |target| is OpenGL. -SHADERC_EXPORT void shaderc_compile_options_set_target_env( - shaderc_compile_options_t options, - shaderc_target_env target, - uint32_t version); - -// Sets the target SPIR-V version. The generated module will use this version -// of SPIR-V. Each target environment determines what versions of SPIR-V -// it can consume. Defaults to the highest version of SPIR-V 1.0 which is -// required to be supported by the target environment. E.g. Default to SPIR-V -// 1.0 for Vulkan 1.0 and SPIR-V 1.3 for Vulkan 1.1. -SHADERC_EXPORT void shaderc_compile_options_set_target_spirv( - shaderc_compile_options_t options, shaderc_spirv_version version); - -// Sets the compiler mode to treat all warnings as errors. Note the -// suppress-warnings mode overrides this option, i.e. if both -// warning-as-errors and suppress-warnings modes are set, warnings will not -// be emitted as error messages. -SHADERC_EXPORT void shaderc_compile_options_set_warnings_as_errors( - shaderc_compile_options_t options); - -// Sets a resource limit. -SHADERC_EXPORT void shaderc_compile_options_set_limit( - shaderc_compile_options_t options, shaderc_limit limit, int value); - -// Sets whether the compiler should automatically assign bindings to uniforms -// that aren't already explicitly bound in the shader source. -SHADERC_EXPORT void shaderc_compile_options_set_auto_bind_uniforms( - shaderc_compile_options_t options, bool auto_bind); - -// Sets whether the compiler should automatically remove sampler variables -// and convert image variables to combined image-sampler variables. -SHADERC_EXPORT void shaderc_compile_options_set_auto_combined_image_sampler( - shaderc_compile_options_t options, bool upgrade); - -// Sets whether the compiler should use HLSL IO mapping rules for bindings. -// Defaults to false. -SHADERC_EXPORT void shaderc_compile_options_set_hlsl_io_mapping( - shaderc_compile_options_t options, bool hlsl_iomap); - -// Sets whether the compiler should determine block member offsets using HLSL -// packing rules instead of standard GLSL rules. Defaults to false. Only -// affects GLSL compilation. HLSL rules are always used when compiling HLSL. -SHADERC_EXPORT void shaderc_compile_options_set_hlsl_offsets( - shaderc_compile_options_t options, bool hlsl_offsets); - -// Sets the base binding number used for for a uniform resource type when -// automatically assigning bindings. For GLSL compilation, sets the lowest -// automatically assigned number. For HLSL compilation, the regsiter number -// assigned to the resource is added to this specified base. -SHADERC_EXPORT void shaderc_compile_options_set_binding_base( - shaderc_compile_options_t options, - shaderc_uniform_kind kind, - uint32_t base); - -// Like shaderc_compile_options_set_binding_base, but only takes effect when -// compiling a given shader stage. The stage is assumed to be one of vertex, -// fragment, tessellation evaluation, tesselation control, geometry, or compute. -SHADERC_EXPORT void shaderc_compile_options_set_binding_base_for_stage( - shaderc_compile_options_t options, shaderc_shader_kind shader_kind, - shaderc_uniform_kind kind, uint32_t base); - -// Sets whether the compiler should preserve all bindings, even when those -// bindings are not used. -SHADERC_EXPORT void shaderc_compile_options_set_preserve_bindings( - shaderc_compile_options_t options, bool preserve_bindings); - -// Sets whether the compiler should automatically assign locations to -// uniform variables that don't have explicit locations in the shader source. -SHADERC_EXPORT void shaderc_compile_options_set_auto_map_locations( - shaderc_compile_options_t options, bool auto_map); - -// Sets a descriptor set and binding for an HLSL register in the given stage. -// This method keeps a copy of the string data. -SHADERC_EXPORT void shaderc_compile_options_set_hlsl_register_set_and_binding_for_stage( - shaderc_compile_options_t options, shaderc_shader_kind shader_kind, - const char* reg, const char* set, const char* binding); - -// Like shaderc_compile_options_set_hlsl_register_set_and_binding_for_stage, -// but affects all shader stages. -SHADERC_EXPORT void shaderc_compile_options_set_hlsl_register_set_and_binding( - shaderc_compile_options_t options, const char* reg, const char* set, - const char* binding); - -// Sets whether the compiler should enable extension -// SPV_GOOGLE_hlsl_functionality1. -SHADERC_EXPORT void shaderc_compile_options_set_hlsl_functionality1( - shaderc_compile_options_t options, bool enable); - -// Sets whether 16-bit types are supported in HLSL or not. -SHADERC_EXPORT void shaderc_compile_options_set_hlsl_16bit_types( - shaderc_compile_options_t options, bool enable); - -// Sets whether the compiler should invert position.Y output in vertex shader. -SHADERC_EXPORT void shaderc_compile_options_set_invert_y( - shaderc_compile_options_t options, bool enable); - -// Sets whether the compiler generates code for max and min builtins which, -// if given a NaN operand, will return the other operand. Similarly, the clamp -// builtin will favour the non-NaN operands, as if clamp were implemented -// as a composition of max and min. -SHADERC_EXPORT void shaderc_compile_options_set_nan_clamp( - shaderc_compile_options_t options, bool enable); - -// An opaque handle to the results of a call to any shaderc_compile_into_*() -// function. -typedef struct shaderc_compilation_result* shaderc_compilation_result_t; - -// Takes a GLSL source string and the associated shader kind, input file -// name, compiles it according to the given additional_options. If the shader -// kind is not set to a specified kind, but shaderc_glslc_infer_from_source, -// the compiler will try to deduce the shader kind from the source -// string and a failure in deducing will generate an error. Currently only -// #pragma annotation is supported. If the shader kind is set to one of the -// default shader kinds, the compiler will fall back to the default shader -// kind in case it failed to deduce the shader kind from source string. -// The input_file_name is a null-termintated string. It is used as a tag to -// identify the source string in cases like emitting error messages. It -// doesn't have to be a 'file name'. -// The source string will be compiled into SPIR-V binary and a -// shaderc_compilation_result will be returned to hold the results. -// The entry_point_name null-terminated string defines the name of the entry -// point to associate with this GLSL source. If the additional_options -// parameter is not null, then the compilation is modified by any options -// present. May be safely called from multiple threads without explicit -// synchronization. If there was failure in allocating the compiler object, -// null will be returned. -SHADERC_EXPORT shaderc_compilation_result_t shaderc_compile_into_spv( - const shaderc_compiler_t compiler, const char* source_text, - size_t source_text_size, shaderc_shader_kind shader_kind, - const char* input_file_name, const char* entry_point_name, - const shaderc_compile_options_t additional_options); - -// Like shaderc_compile_into_spv, but the result contains SPIR-V assembly text -// instead of a SPIR-V binary module. The SPIR-V assembly syntax is as defined -// by the SPIRV-Tools open source project. -SHADERC_EXPORT shaderc_compilation_result_t shaderc_compile_into_spv_assembly( - const shaderc_compiler_t compiler, const char* source_text, - size_t source_text_size, shaderc_shader_kind shader_kind, - const char* input_file_name, const char* entry_point_name, - const shaderc_compile_options_t additional_options); - -// Like shaderc_compile_into_spv, but the result contains preprocessed source -// code instead of a SPIR-V binary module -SHADERC_EXPORT shaderc_compilation_result_t shaderc_compile_into_preprocessed_text( - const shaderc_compiler_t compiler, const char* source_text, - size_t source_text_size, shaderc_shader_kind shader_kind, - const char* input_file_name, const char* entry_point_name, - const shaderc_compile_options_t additional_options); - -// Takes an assembly string of the format defined in the SPIRV-Tools project -// (https://github.com/KhronosGroup/SPIRV-Tools/blob/master/syntax.md), -// assembles it into SPIR-V binary and a shaderc_compilation_result will be -// returned to hold the results. -// The assembling will pick options suitable for assembling specified in the -// additional_options parameter. -// May be safely called from multiple threads without explicit synchronization. -// If there was failure in allocating the compiler object, null will be -// returned. -SHADERC_EXPORT shaderc_compilation_result_t shaderc_assemble_into_spv( - const shaderc_compiler_t compiler, const char* source_assembly, - size_t source_assembly_size, - const shaderc_compile_options_t additional_options); - -// The following functions, operating on shaderc_compilation_result_t objects, -// offer only the basic thread-safety guarantee. - -// Releases the resources held by the result object. It is invalid to use the -// result object for any further operations. -SHADERC_EXPORT void shaderc_result_release(shaderc_compilation_result_t result); - -// Returns the number of bytes of the compilation output data in a result -// object. -SHADERC_EXPORT size_t shaderc_result_get_length(const shaderc_compilation_result_t result); - -// Returns the number of warnings generated during the compilation. -SHADERC_EXPORT size_t shaderc_result_get_num_warnings( - const shaderc_compilation_result_t result); - -// Returns the number of errors generated during the compilation. -SHADERC_EXPORT size_t shaderc_result_get_num_errors(const shaderc_compilation_result_t result); - -// Returns the compilation status, indicating whether the compilation succeeded, -// or failed due to some reasons, like invalid shader stage or compilation -// errors. -SHADERC_EXPORT shaderc_compilation_status shaderc_result_get_compilation_status( - const shaderc_compilation_result_t); - -// Returns a pointer to the start of the compilation output data bytes, either -// SPIR-V binary or char string. When the source string is compiled into SPIR-V -// binary, this is guaranteed to be castable to a uint32_t*. If the result -// contains assembly text or preprocessed source text, the pointer will point to -// the resulting array of characters. -SHADERC_EXPORT const char* shaderc_result_get_bytes(const shaderc_compilation_result_t result); - -// Returns a null-terminated string that contains any error messages generated -// during the compilation. -SHADERC_EXPORT const char* shaderc_result_get_error_message( - const shaderc_compilation_result_t result); - -// Provides the version & revision of the SPIR-V which will be produced -SHADERC_EXPORT void shaderc_get_spv_version(unsigned int* version, unsigned int* revision); - -// Parses the version and profile from a given null-terminated string -// containing both version and profile, like: '450core'. Returns false if -// the string can not be parsed. Returns true when the parsing succeeds. The -// parsed version and profile are returned through arguments. -SHADERC_EXPORT bool shaderc_parse_version_profile(const char* str, int* version, - shaderc_profile* profile); - -#ifdef __cplusplus -} -#endif // __cplusplus - -#endif // SHADERC_SHADERC_H_ diff --git a/Extern/3rdParty/shaderc/shaderc/include/shaderc/shaderc.hpp b/Extern/3rdParty/shaderc/shaderc/include/shaderc/shaderc.hpp deleted file mode 100644 index bc057c1..0000000 --- a/Extern/3rdParty/shaderc/shaderc/include/shaderc/shaderc.hpp +++ /dev/null @@ -1,613 +0,0 @@ -// Copyright 2015 The Shaderc Authors. All rights reserved. -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -#ifndef SHADERC_SHADERC_HPP_ -#define SHADERC_SHADERC_HPP_ - -#include -#include -#include - -#include "shaderc.h" - -namespace shaderc { -// A CompilationResult contains the compiler output, compilation status, -// and messages. -// -// The compiler output is stored as an array of elements and accessed -// via random access iterators provided by cbegin() and cend(). The iterators -// are contiguous in the sense of "Contiguous Iterators: A Refinement of -// Random Access Iterators", Nevin Liber, C++ Library Evolution Working -// Group Working Paper N3884. -// http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2014/n3884.pdf -// -// Methods begin() and end() are also provided to enable range-based for. -// They are synonyms to cbegin() and cend(), respectively. -template -class CompilationResult { - public: - typedef OutputElementType element_type; - // The type used to describe the begin and end iterators on the - // compiler output. - typedef const OutputElementType* const_iterator; - - // Upon creation, the CompilationResult takes ownership of the - // shaderc_compilation_result instance. During destruction of the - // CompilationResult, the shaderc_compilation_result will be released. - explicit CompilationResult(shaderc_compilation_result_t compilation_result) - : compilation_result_(compilation_result) {} - CompilationResult() : compilation_result_(nullptr) {} - ~CompilationResult() { shaderc_result_release(compilation_result_); } - - CompilationResult(CompilationResult&& other) : compilation_result_(nullptr) { - *this = std::move(other); - } - - CompilationResult& operator=(CompilationResult&& other) { - if (compilation_result_) { - shaderc_result_release(compilation_result_); - } - compilation_result_ = other.compilation_result_; - other.compilation_result_ = nullptr; - return *this; - } - - // Returns any error message found during compilation. - std::string GetErrorMessage() const { - if (!compilation_result_) { - return ""; - } - return shaderc_result_get_error_message(compilation_result_); - } - - // Returns the compilation status, indicating whether the compilation - // succeeded, or failed due to some reasons, like invalid shader stage or - // compilation errors. - shaderc_compilation_status GetCompilationStatus() const { - if (!compilation_result_) { - return shaderc_compilation_status_null_result_object; - } - return shaderc_result_get_compilation_status(compilation_result_); - } - - // Returns a random access (contiguous) iterator pointing to the start - // of the compilation output. It is valid for the lifetime of this object. - // If there is no compilation result, then returns nullptr. - const_iterator cbegin() const { - if (!compilation_result_) return nullptr; - return reinterpret_cast( - shaderc_result_get_bytes(compilation_result_)); - } - - // Returns a random access (contiguous) iterator pointing to the end of - // the compilation output. It is valid for the lifetime of this object. - // If there is no compilation result, then returns nullptr. - const_iterator cend() const { - if (!compilation_result_) return nullptr; - return cbegin() + - shaderc_result_get_length(compilation_result_) / - sizeof(OutputElementType); - } - - // Returns the same iterator as cbegin(). - const_iterator begin() const { return cbegin(); } - // Returns the same iterator as cend(). - const_iterator end() const { return cend(); } - - // Returns the number of warnings generated during the compilation. - size_t GetNumWarnings() const { - if (!compilation_result_) { - return 0; - } - return shaderc_result_get_num_warnings(compilation_result_); - } - - // Returns the number of errors generated during the compilation. - size_t GetNumErrors() const { - if (!compilation_result_) { - return 0; - } - return shaderc_result_get_num_errors(compilation_result_); - } - - private: - CompilationResult(const CompilationResult& other) = delete; - CompilationResult& operator=(const CompilationResult& other) = delete; - - shaderc_compilation_result_t compilation_result_; -}; - -// A compilation result for a SPIR-V binary module, which is an array -// of uint32_t words. -using SpvCompilationResult = CompilationResult; -// A compilation result in SPIR-V assembly syntax. -using AssemblyCompilationResult = CompilationResult; -// Preprocessed source text. -using PreprocessedSourceCompilationResult = CompilationResult; - -// Contains any options that can have default values for a compilation. -class CompileOptions { - public: - CompileOptions() { options_ = shaderc_compile_options_initialize(); } - ~CompileOptions() { shaderc_compile_options_release(options_); } - CompileOptions(const CompileOptions& other) { - options_ = shaderc_compile_options_clone(other.options_); - } - CompileOptions(CompileOptions&& other) { - options_ = other.options_; - other.options_ = nullptr; - } - - // Adds a predefined macro to the compilation options. It behaves the same as - // shaderc_compile_options_add_macro_definition in shaderc.h. - void AddMacroDefinition(const char* name, size_t name_length, - const char* value, size_t value_length) { - shaderc_compile_options_add_macro_definition(options_, name, name_length, - value, value_length); - } - - // Adds a valueless predefined macro to the compilation options. - void AddMacroDefinition(const std::string& name) { - AddMacroDefinition(name.c_str(), name.size(), nullptr, 0u); - } - - // Adds a predefined macro to the compilation options. - void AddMacroDefinition(const std::string& name, const std::string& value) { - AddMacroDefinition(name.c_str(), name.size(), value.c_str(), value.size()); - } - - // Sets the compiler mode to generate debug information in the output. - void SetGenerateDebugInfo() { - shaderc_compile_options_set_generate_debug_info(options_); - } - - // Sets the compiler optimization level to the given level. Only the last one - // takes effect if multiple calls of this function exist. - void SetOptimizationLevel(shaderc_optimization_level level) { - shaderc_compile_options_set_optimization_level(options_, level); - } - - // A C++ version of the libshaderc includer interface. - class IncluderInterface { - public: - // Handles shaderc_include_resolver_fn callbacks. - virtual shaderc_include_result* GetInclude(const char* requested_source, - shaderc_include_type type, - const char* requesting_source, - size_t include_depth) = 0; - - // Handles shaderc_include_result_release_fn callbacks. - virtual void ReleaseInclude(shaderc_include_result* data) = 0; - - virtual ~IncluderInterface() = default; - }; - - // Sets the includer instance for libshaderc to call during compilation, as - // described in shaderc_compile_options_set_include_callbacks(). Callbacks - // are routed to this includer's methods. - void SetIncluder(std::unique_ptr&& includer) { - includer_ = std::move(includer); - shaderc_compile_options_set_include_callbacks( - options_, - [](void* user_data, const char* requested_source, int type, - const char* requesting_source, size_t include_depth) { - auto* sub_includer = static_cast(user_data); - return sub_includer->GetInclude( - requested_source, static_cast(type), - requesting_source, include_depth); - }, - [](void* user_data, shaderc_include_result* include_result) { - auto* sub_includer = static_cast(user_data); - return sub_includer->ReleaseInclude(include_result); - }, - includer_.get()); - } - - // Forces the GLSL language version and profile to a given pair. The version - // number is the same as would appear in the #version annotation in the - // source. Version and profile specified here overrides the #version - // annotation in the source. Use profile: 'shaderc_profile_none' for GLSL - // versions that do not define profiles, e.g. versions below 150. - void SetForcedVersionProfile(int version, shaderc_profile profile) { - shaderc_compile_options_set_forced_version_profile(options_, version, - profile); - } - - // Sets the compiler mode to suppress warnings. Note this option overrides - // warnings-as-errors mode. When both suppress-warnings and warnings-as-errors - // modes are turned on, warning messages will be inhibited, and will not be - // emitted as error message. - void SetSuppressWarnings() { - shaderc_compile_options_set_suppress_warnings(options_); - } - - // Sets the source language. The default is GLSL. - void SetSourceLanguage(shaderc_source_language lang) { - shaderc_compile_options_set_source_language(options_, lang); - } - - // Sets the target shader environment, affecting which warnings or errors will - // be issued. The version will be for distinguishing between different - // versions of the target environment. The version value should be either 0 - // or a value listed in shaderc_env_version. The 0 value maps to Vulkan 1.0 - // if |target| is Vulkan, and it maps to OpenGL 4.5 if |target| is OpenGL. - void SetTargetEnvironment(shaderc_target_env target, uint32_t version) { - shaderc_compile_options_set_target_env(options_, target, version); - } - - // Sets the target SPIR-V version. The generated module will use this version - // of SPIR-V. Each target environment determines what versions of SPIR-V - // it can consume. Defaults to the highest version of SPIR-V 1.0 which is - // required to be supported by the target environment. E.g. Default to SPIR-V - // 1.0 for Vulkan 1.0 and SPIR-V 1.3 for Vulkan 1.1. - void SetTargetSpirv(shaderc_spirv_version version) { - shaderc_compile_options_set_target_spirv(options_, version); - } - - // Sets the compiler mode to make all warnings into errors. Note the - // suppress-warnings mode overrides this option, i.e. if both - // warning-as-errors and suppress-warnings modes are set on, warnings will not - // be emitted as error message. - void SetWarningsAsErrors() { - shaderc_compile_options_set_warnings_as_errors(options_); - } - - // Sets a resource limit. - void SetLimit(shaderc_limit limit, int value) { - shaderc_compile_options_set_limit(options_, limit, value); - } - - // Sets whether the compiler should automatically assign bindings to uniforms - // that aren't already explicitly bound in the shader source. - void SetAutoBindUniforms(bool auto_bind) { - shaderc_compile_options_set_auto_bind_uniforms(options_, auto_bind); - } - - // Sets whether the compiler should automatically remove sampler variables - // and convert image variables to combined image sampler variables. - void SetAutoSampledTextures(bool auto_sampled) { - shaderc_compile_options_set_auto_combined_image_sampler(options_, - auto_sampled); - } - - // Sets whether the compiler should use HLSL IO mapping rules for bindings. - // Defaults to false. - void SetHlslIoMapping(bool hlsl_iomap) { - shaderc_compile_options_set_hlsl_io_mapping(options_, hlsl_iomap); - } - - // Sets whether the compiler should determine block member offsets using HLSL - // packing rules instead of standard GLSL rules. Defaults to false. Only - // affects GLSL compilation. HLSL rules are always used when compiling HLSL. - void SetHlslOffsets(bool hlsl_offsets) { - shaderc_compile_options_set_hlsl_offsets(options_, hlsl_offsets); - } - - // Sets the base binding number used for for a uniform resource type when - // automatically assigning bindings. For GLSL compilation, sets the lowest - // automatically assigned number. For HLSL compilation, the regsiter number - // assigned to the resource is added to this specified base. - void SetBindingBase(shaderc_uniform_kind kind, uint32_t base) { - shaderc_compile_options_set_binding_base(options_, kind, base); - } - - // Like SetBindingBase, but only takes effect when compiling a given shader - // stage. The stage is assumed to be one of vertex, fragment, tessellation - // evaluation, tesselation control, geometry, or compute. - void SetBindingBaseForStage(shaderc_shader_kind shader_kind, - shaderc_uniform_kind kind, uint32_t base) { - shaderc_compile_options_set_binding_base_for_stage(options_, shader_kind, - kind, base); - } - - // Sets whether the compiler should preserve all bindings, even when those - // bindings are not used. - void SetPreserveBindings(bool preserve_bindings) { - shaderc_compile_options_set_preserve_bindings(options_, preserve_bindings); - } - - // Sets whether the compiler automatically assigns locations to - // uniform variables that don't have explicit locations. - void SetAutoMapLocations(bool auto_map) { - shaderc_compile_options_set_auto_map_locations(options_, auto_map); - } - - // Sets a descriptor set and binding for an HLSL register in the given stage. - // Copies the parameter strings. - void SetHlslRegisterSetAndBindingForStage(shaderc_shader_kind shader_kind, - const std::string& reg, - const std::string& set, - const std::string& binding) { - shaderc_compile_options_set_hlsl_register_set_and_binding_for_stage( - options_, shader_kind, reg.c_str(), set.c_str(), binding.c_str()); - } - - // Sets a descriptor set and binding for an HLSL register in any stage. - // Copies the parameter strings. - void SetHlslRegisterSetAndBinding(const std::string& reg, - const std::string& set, - const std::string& binding) { - shaderc_compile_options_set_hlsl_register_set_and_binding( - options_, reg.c_str(), set.c_str(), binding.c_str()); - } - - // Sets whether the compiler should enable extension - // SPV_GOOGLE_hlsl_functionality1. - void SetHlslFunctionality1(bool enable) { - shaderc_compile_options_set_hlsl_functionality1(options_, enable); - } - - // Sets whether 16-bit types are supported in HLSL or not. - void SetHlsl16BitTypes(bool enable) { - shaderc_compile_options_set_hlsl_16bit_types(options_, enable); - } - - // Sets whether the compiler should invert position.Y output in vertex shader. - void SetInvertY(bool enable) { - shaderc_compile_options_set_invert_y(options_, enable); - } - - // Sets whether the compiler should generates code for max an min which, - // if given a NaN operand, will return the other operand. Similarly, the - // clamp builtin will favour the non-NaN operands, as if clamp were - // implemented as a composition of max and min. - void SetNanClamp(bool enable) { - shaderc_compile_options_set_nan_clamp(options_, enable); - } - - private: - CompileOptions& operator=(const CompileOptions& other) = delete; - shaderc_compile_options_t options_; - std::unique_ptr includer_; - - friend class Compiler; -}; - -// The compilation context for compiling source to SPIR-V. -class Compiler { - public: - Compiler() : compiler_(shaderc_compiler_initialize()) {} - ~Compiler() { shaderc_compiler_release(compiler_); } - - Compiler(Compiler&& other) { - compiler_ = other.compiler_; - other.compiler_ = nullptr; - } - - bool IsValid() const { return compiler_ != nullptr; } - - // Compiles the given source GLSL and returns a SPIR-V binary module - // compilation result. - // The source_text parameter must be a valid pointer. - // The source_text_size parameter must be the length of the source text. - // The shader_kind parameter either forces the compilation to be done with a - // specified shader kind, or hint the compiler how to determine the exact - // shader kind. If the shader kind is set to shaderc_glslc_infer_from_source, - // the compiler will try to deduce the shader kind from the source string and - // a failure in this proess will generate an error. Currently only #pragma - // annotation is supported. If the shader kind is set to one of the default - // shader kinds, the compiler will fall back to the specified default shader - // kind in case it failed to deduce the shader kind from the source string. - // The input_file_name is a null-termintated string. It is used as a tag to - // identify the source string in cases like emitting error messages. It - // doesn't have to be a 'file name'. - // The entry_point_name parameter is a null-terminated string specifying - // the entry point name for HLSL compilation. For GLSL compilation, the - // entry point name is assumed to be "main". - // The compilation is passed any options specified in the CompileOptions - // parameter. - // It is valid for the returned CompilationResult object to outlive this - // compiler object. - // Note when the options_ has disassembly mode or preprocessing only mode set - // on, the returned CompilationResult will hold a text string, instead of a - // SPIR-V binary generated with default options. - SpvCompilationResult CompileGlslToSpv(const char* source_text, - size_t source_text_size, - shaderc_shader_kind shader_kind, - const char* input_file_name, - const char* entry_point_name, - const CompileOptions& options) const { - shaderc_compilation_result_t compilation_result = shaderc_compile_into_spv( - compiler_, source_text, source_text_size, shader_kind, input_file_name, - entry_point_name, options.options_); - return SpvCompilationResult(compilation_result); - } - - // Compiles the given source shader and returns a SPIR-V binary module - // compilation result. - // Like the first CompileGlslToSpv method but assumes the entry point name - // is "main". - SpvCompilationResult CompileGlslToSpv(const char* source_text, - size_t source_text_size, - shaderc_shader_kind shader_kind, - const char* input_file_name, - const CompileOptions& options) const { - return CompileGlslToSpv(source_text, source_text_size, shader_kind, - input_file_name, "main", options); - } - - // Compiles the given source GLSL and returns a SPIR-V binary module - // compilation result. - // Like the previous CompileGlslToSpv method but uses default options. - SpvCompilationResult CompileGlslToSpv(const char* source_text, - size_t source_text_size, - shaderc_shader_kind shader_kind, - const char* input_file_name) const { - shaderc_compilation_result_t compilation_result = - shaderc_compile_into_spv(compiler_, source_text, source_text_size, - shader_kind, input_file_name, "main", nullptr); - return SpvCompilationResult(compilation_result); - } - - // Compiles the given source shader and returns a SPIR-V binary module - // compilation result. - // Like the first CompileGlslToSpv method but the source is provided as - // a std::string, and we assume the entry point is "main". - SpvCompilationResult CompileGlslToSpv(const std::string& source_text, - shaderc_shader_kind shader_kind, - const char* input_file_name, - const CompileOptions& options) const { - return CompileGlslToSpv(source_text.data(), source_text.size(), shader_kind, - input_file_name, options); - } - - // Compiles the given source shader and returns a SPIR-V binary module - // compilation result. - // Like the first CompileGlslToSpv method but the source is provided as - // a std::string. - SpvCompilationResult CompileGlslToSpv(const std::string& source_text, - shaderc_shader_kind shader_kind, - const char* input_file_name, - const char* entry_point_name, - const CompileOptions& options) const { - return CompileGlslToSpv(source_text.data(), source_text.size(), shader_kind, - input_file_name, entry_point_name, options); - } - - // Compiles the given source GLSL and returns a SPIR-V binary module - // compilation result. - // Like the previous CompileGlslToSpv method but assumes the entry point - // name is "main". - SpvCompilationResult CompileGlslToSpv(const std::string& source_text, - shaderc_shader_kind shader_kind, - const char* input_file_name) const { - return CompileGlslToSpv(source_text.data(), source_text.size(), shader_kind, - input_file_name); - } - - // Assembles the given SPIR-V assembly and returns a SPIR-V binary module - // compilation result. - // The assembly should follow the syntax defined in the SPIRV-Tools project - // (https://github.com/KhronosGroup/SPIRV-Tools/blob/master/syntax.md). - // It is valid for the returned CompilationResult object to outlive this - // compiler object. - // The assembling will pick options suitable for assembling specified in the - // CompileOptions parameter. - SpvCompilationResult AssembleToSpv(const char* source_assembly, - size_t source_assembly_size, - const CompileOptions& options) const { - return SpvCompilationResult(shaderc_assemble_into_spv( - compiler_, source_assembly, source_assembly_size, options.options_)); - } - - // Assembles the given SPIR-V assembly and returns a SPIR-V binary module - // compilation result. - // Like the first AssembleToSpv method but uses the default compiler options. - SpvCompilationResult AssembleToSpv(const char* source_assembly, - size_t source_assembly_size) const { - return SpvCompilationResult(shaderc_assemble_into_spv( - compiler_, source_assembly, source_assembly_size, nullptr)); - } - - // Assembles the given SPIR-V assembly and returns a SPIR-V binary module - // compilation result. - // Like the first AssembleToSpv method but the source is provided as a - // std::string. - SpvCompilationResult AssembleToSpv(const std::string& source_assembly, - const CompileOptions& options) const { - return SpvCompilationResult( - shaderc_assemble_into_spv(compiler_, source_assembly.data(), - source_assembly.size(), options.options_)); - } - - // Assembles the given SPIR-V assembly and returns a SPIR-V binary module - // compilation result. - // Like the first AssembleToSpv method but the source is provided as a - // std::string and also uses default compiler options. - SpvCompilationResult AssembleToSpv(const std::string& source_assembly) const { - return SpvCompilationResult(shaderc_assemble_into_spv( - compiler_, source_assembly.data(), source_assembly.size(), nullptr)); - } - - // Compiles the given source GLSL and returns the SPIR-V assembly text - // compilation result. - // Options are similar to the first CompileToSpv method. - AssemblyCompilationResult CompileGlslToSpvAssembly( - const char* source_text, size_t source_text_size, - shaderc_shader_kind shader_kind, const char* input_file_name, - const char* entry_point_name, const CompileOptions& options) const { - shaderc_compilation_result_t compilation_result = - shaderc_compile_into_spv_assembly( - compiler_, source_text, source_text_size, shader_kind, - input_file_name, entry_point_name, options.options_); - return AssemblyCompilationResult(compilation_result); - } - - // Compiles the given source GLSL and returns the SPIR-V assembly text - // compilation result. - // Similare to the previous method, but assumes entry point name is "main". - AssemblyCompilationResult CompileGlslToSpvAssembly( - const char* source_text, size_t source_text_size, - shaderc_shader_kind shader_kind, const char* input_file_name, - const CompileOptions& options) const { - return CompileGlslToSpvAssembly(source_text, source_text_size, shader_kind, - input_file_name, "main", options); - } - - // Compiles the given source GLSL and returns the SPIR-V assembly text - // result. Like the first CompileGlslToSpvAssembly method but the source - // is provided as a std::string. Options are otherwise similar to - // the first CompileToSpv method. - AssemblyCompilationResult CompileGlslToSpvAssembly( - const std::string& source_text, shaderc_shader_kind shader_kind, - const char* input_file_name, const char* entry_point_name, - const CompileOptions& options) const { - return CompileGlslToSpvAssembly(source_text.data(), source_text.size(), - shader_kind, input_file_name, - entry_point_name, options); - } - - // Compiles the given source GLSL and returns the SPIR-V assembly text - // result. Like the previous CompileGlslToSpvAssembly method but assumes - // the entry point name is "main". - AssemblyCompilationResult CompileGlslToSpvAssembly( - const std::string& source_text, shaderc_shader_kind shader_kind, - const char* input_file_name, const CompileOptions& options) const { - return CompileGlslToSpvAssembly(source_text, shader_kind, input_file_name, - "main", options); - } - - // Preprocesses the given source GLSL and returns the preprocessed - // source text as a compilation result. - // Options are similar to the first CompileToSpv method. - PreprocessedSourceCompilationResult PreprocessGlsl( - const char* source_text, size_t source_text_size, - shaderc_shader_kind shader_kind, const char* input_file_name, - const CompileOptions& options) const { - shaderc_compilation_result_t compilation_result = - shaderc_compile_into_preprocessed_text( - compiler_, source_text, source_text_size, shader_kind, - input_file_name, "main", options.options_); - return PreprocessedSourceCompilationResult(compilation_result); - } - - // Preprocesses the given source GLSL and returns text result. Like the first - // PreprocessGlsl method but the source is provided as a std::string. - // Options are otherwise similar to the first CompileToSpv method. - PreprocessedSourceCompilationResult PreprocessGlsl( - const std::string& source_text, shaderc_shader_kind shader_kind, - const char* input_file_name, const CompileOptions& options) const { - return PreprocessGlsl(source_text.data(), source_text.size(), shader_kind, - input_file_name, options); - } - - private: - Compiler(const Compiler&) = delete; - Compiler& operator=(const Compiler& other) = delete; - - shaderc_compiler_t compiler_; -}; -} // namespace shaderc - -#endif // SHADERC_SHADERC_HPP_ diff --git a/Extern/3rdParty/shaderc/shaderc/include/shaderc/status.h b/Extern/3rdParty/shaderc/shaderc/include/shaderc/status.h deleted file mode 100644 index 57ac70d..0000000 --- a/Extern/3rdParty/shaderc/shaderc/include/shaderc/status.h +++ /dev/null @@ -1,39 +0,0 @@ -// Copyright 2018 The Shaderc Authors. All rights reserved. -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -#ifndef SHADERC_STATUS_H_ -#define SHADERC_STATUS_H_ - -#ifdef __cplusplus -extern "C" { -#endif - -// Indicate the status of a compilation. -typedef enum { - shaderc_compilation_status_success = 0, - shaderc_compilation_status_invalid_stage = 1, // error stage deduction - shaderc_compilation_status_compilation_error = 2, - shaderc_compilation_status_internal_error = 3, // unexpected failure - shaderc_compilation_status_null_result_object = 4, - shaderc_compilation_status_invalid_assembly = 5, - shaderc_compilation_status_validation_error = 6, - shaderc_compilation_status_transformation_error = 7, - shaderc_compilation_status_configuration_error = 8, -} shaderc_compilation_status; - -#ifdef __cplusplus -} -#endif // __cplusplus - -#endif // SHADERC_STATUS_H_ diff --git a/Extern/3rdParty/shaderc/shaderc/include/shaderc/visibility.h b/Extern/3rdParty/shaderc/shaderc/include/shaderc/visibility.h deleted file mode 100644 index 88ec151..0000000 --- a/Extern/3rdParty/shaderc/shaderc/include/shaderc/visibility.h +++ /dev/null @@ -1,37 +0,0 @@ -// Copyright 2018 The Shaderc Authors. All rights reserved. -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -#ifndef SHADERC_VISIBILITY_H_ -#define SHADERC_VISIBILITY_H_ - -// SHADERC_EXPORT tags symbol that will be exposed by the shared libraries. -#if defined(SHADERC_SHAREDLIB) -#if defined(_WIN32) -#if defined(SHADERC_IMPLEMENTATION) -#define SHADERC_EXPORT __declspec(dllexport) -#else -#define SHADERC_EXPORT __declspec(dllimport) -#endif -#else -#if defined(SHADERC_IMPLEMENTATION) -#define SHADERC_EXPORT __attribute__((visibility("default"))) -#else -#define SHADERC_EXPORT -#endif -#endif -#else -#define SHADERC_EXPORT -#endif - -#endif // SHADERC_VISIBILITY_H_ diff --git a/Extern/3rdParty/shaderc/shaderc/include/spirv-tools/instrument.hpp b/Extern/3rdParty/shaderc/shaderc/include/spirv-tools/instrument.hpp deleted file mode 100644 index 34e169a..0000000 --- a/Extern/3rdParty/shaderc/shaderc/include/spirv-tools/instrument.hpp +++ /dev/null @@ -1,278 +0,0 @@ -// Copyright (c) 2018 The Khronos Group Inc. -// Copyright (c) 2018 Valve Corporation -// Copyright (c) 2018 LunarG Inc. -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -#ifndef INCLUDE_SPIRV_TOOLS_INSTRUMENT_HPP_ -#define INCLUDE_SPIRV_TOOLS_INSTRUMENT_HPP_ - -// Shader Instrumentation Interface -// -// This file provides an external interface for applications that wish to -// communicate with shaders instrumented by passes created by: -// -// CreateInstBindlessCheckPass -// CreateInstBuffAddrCheckPass -// CreateInstDebugPrintfPass -// -// More detailed documentation of these routines can be found in optimizer.hpp - -namespace spvtools { - -// Stream Output Buffer Offsets -// -// The following values provide offsets into the output buffer struct -// generated by InstrumentPass::GenDebugStreamWrite. This method is utilized -// by InstBindlessCheckPass, InstBuffAddrCheckPass, and InstDebugPrintfPass. -// -// The 1st member of the debug output buffer contains a set of flags -// controlling the behavior of instrumentation code. -static const int kDebugOutputFlagsOffset = 0; - -// Values stored at kDebugOutputFlagsOffset -enum kInstFlags : unsigned int { - kInstBufferOOBEnable = 0x1, -}; - -// The 2nd member of the debug output buffer contains the next available word -// in the data stream to be written. Shaders will atomically read and update -// this value so as not to overwrite each others records. This value must be -// initialized to zero -static const int kDebugOutputSizeOffset = 1; - -// The 3rd member of the output buffer is the start of the stream of records -// written by the instrumented shaders. Each record represents a validation -// error. The format of the records is documented below. -static const int kDebugOutputDataOffset = 2; - -// Common Stream Record Offsets -// -// The following are offsets to fields which are common to all records written -// to the output stream. -// -// Each record first contains the size of the record in 32-bit words, including -// the size word. -static const int kInstCommonOutSize = 0; - -// This is the shader id passed by the layer when the instrumentation pass is -// created. -static const int kInstCommonOutShaderId = 1; - -// This is the ordinal position of the instruction within the SPIR-V shader -// which generated the validation error. -static const int kInstCommonOutInstructionIdx = 2; - -// This is the stage which generated the validation error. This word is used -// to determine the contents of the next two words in the record. -// 0:Vert, 1:TessCtrl, 2:TessEval, 3:Geom, 4:Frag, 5:Compute -static const int kInstCommonOutStageIdx = 3; -static const int kInstCommonOutCnt = 4; - -// Stage-specific Stream Record Offsets -// -// Each stage will contain different values in the next set of words of the -// record used to identify which instantiation of the shader generated the -// validation error. -// -// Vertex Shader Output Record Offsets -static const int kInstVertOutVertexIndex = kInstCommonOutCnt; -static const int kInstVertOutInstanceIndex = kInstCommonOutCnt + 1; -static const int kInstVertOutUnused = kInstCommonOutCnt + 2; - -// Frag Shader Output Record Offsets -static const int kInstFragOutFragCoordX = kInstCommonOutCnt; -static const int kInstFragOutFragCoordY = kInstCommonOutCnt + 1; -static const int kInstFragOutUnused = kInstCommonOutCnt + 2; - -// Compute Shader Output Record Offsets -static const int kInstCompOutGlobalInvocationIdX = kInstCommonOutCnt; -static const int kInstCompOutGlobalInvocationIdY = kInstCommonOutCnt + 1; -static const int kInstCompOutGlobalInvocationIdZ = kInstCommonOutCnt + 2; - -// Tessellation Control Shader Output Record Offsets -static const int kInstTessCtlOutInvocationId = kInstCommonOutCnt; -static const int kInstTessCtlOutPrimitiveId = kInstCommonOutCnt + 1; -static const int kInstTessCtlOutUnused = kInstCommonOutCnt + 2; - -// Tessellation Eval Shader Output Record Offsets -static const int kInstTessEvalOutPrimitiveId = kInstCommonOutCnt; -static const int kInstTessEvalOutTessCoordU = kInstCommonOutCnt + 1; -static const int kInstTessEvalOutTessCoordV = kInstCommonOutCnt + 2; - -// Geometry Shader Output Record Offsets -static const int kInstGeomOutPrimitiveId = kInstCommonOutCnt; -static const int kInstGeomOutInvocationId = kInstCommonOutCnt + 1; -static const int kInstGeomOutUnused = kInstCommonOutCnt + 2; - -// Ray Tracing Shader Output Record Offsets -static const int kInstRayTracingOutLaunchIdX = kInstCommonOutCnt; -static const int kInstRayTracingOutLaunchIdY = kInstCommonOutCnt + 1; -static const int kInstRayTracingOutLaunchIdZ = kInstCommonOutCnt + 2; - -// Mesh Shader Output Record Offsets -static const int kInstMeshOutGlobalInvocationIdX = kInstCommonOutCnt; -static const int kInstMeshOutGlobalInvocationIdY = kInstCommonOutCnt + 1; -static const int kInstMeshOutGlobalInvocationIdZ = kInstCommonOutCnt + 2; - -// Task Shader Output Record Offsets -static const int kInstTaskOutGlobalInvocationIdX = kInstCommonOutCnt; -static const int kInstTaskOutGlobalInvocationIdY = kInstCommonOutCnt + 1; -static const int kInstTaskOutGlobalInvocationIdZ = kInstCommonOutCnt + 2; - -// Size of Common and Stage-specific Members -static const int kInstStageOutCnt = kInstCommonOutCnt + 3; - -// Validation Error Code Offset -// -// This identifies the validation error. It also helps to identify -// how many words follow in the record and their meaning. -static const int kInstValidationOutError = kInstStageOutCnt; - -// Validation-specific Output Record Offsets -// -// Each different validation will generate a potentially different -// number of words at the end of the record giving more specifics -// about the validation error. -// -// A bindless bounds error will output the index and the bound. -static const int kInstBindlessBoundsOutDescSet = kInstStageOutCnt + 1; -static const int kInstBindlessBoundsOutDescBinding = kInstStageOutCnt + 2; -static const int kInstBindlessBoundsOutDescIndex = kInstStageOutCnt + 3; -static const int kInstBindlessBoundsOutDescBound = kInstStageOutCnt + 4; -static const int kInstBindlessBoundsOutUnused = kInstStageOutCnt + 5; -static const int kInstBindlessBoundsOutCnt = kInstStageOutCnt + 6; - -// A descriptor uninitialized error will output the index. -static const int kInstBindlessUninitOutDescSet = kInstStageOutCnt + 1; -static const int kInstBindlessUninitOutBinding = kInstStageOutCnt + 2; -static const int kInstBindlessUninitOutDescIndex = kInstStageOutCnt + 3; -static const int kInstBindlessUninitOutUnused = kInstStageOutCnt + 4; -static const int kInstBindlessUninitOutUnused2 = kInstStageOutCnt + 5; -static const int kInstBindlessUninitOutCnt = kInstStageOutCnt + 6; - -// A buffer out-of-bounds error will output the descriptor -// index, the buffer offset and the buffer size -static const int kInstBindlessBuffOOBOutDescSet = kInstStageOutCnt + 1; -static const int kInstBindlessBuffOOBOutDescBinding = kInstStageOutCnt + 2; -static const int kInstBindlessBuffOOBOutDescIndex = kInstStageOutCnt + 3; -static const int kInstBindlessBuffOOBOutBuffOff = kInstStageOutCnt + 4; -static const int kInstBindlessBuffOOBOutBuffSize = kInstStageOutCnt + 5; -static const int kInstBindlessBuffOOBOutCnt = kInstStageOutCnt + 6; - -// A buffer address unalloc error will output the 64-bit pointer in -// two 32-bit pieces, lower bits first. -static const int kInstBuffAddrUnallocOutDescPtrLo = kInstStageOutCnt + 1; -static const int kInstBuffAddrUnallocOutDescPtrHi = kInstStageOutCnt + 2; -static const int kInstBuffAddrUnallocOutCnt = kInstStageOutCnt + 3; - -// Maximum Output Record Member Count -static const int kInstMaxOutCnt = kInstStageOutCnt + 6; - -// Validation Error Codes -// -// These are the possible validation error codes. -static const int kInstErrorBindlessBounds = 1; -static const int kInstErrorBindlessUninit = 2; -static const int kInstErrorBuffAddrUnallocRef = 3; -static const int kInstErrorOOB = 4; -static const int kInstErrorMax = kInstErrorOOB; - -// Direct Input Buffer Offsets -// -// The following values provide member offsets into the input buffers -// consumed by InstrumentPass::GenDebugDirectRead(). This method is utilized -// by InstBindlessCheckPass. -// -// The only object in an input buffer is a runtime array of unsigned -// integers. Each validation will have its own formatting of this array. -static const int kDebugInputDataOffset = 0; - -// Debug Buffer Bindings -// -// These are the bindings for the different buffers which are -// read or written by the instrumentation passes. -// -// This is the output buffer written by InstBindlessCheckPass, -// InstBuffAddrCheckPass, and possibly other future validations. -static const int kDebugOutputBindingStream = 0; - -// The binding for the input buffer read by InstBindlessCheckPass. -static const int kDebugInputBindingBindless = 1; - -// The binding for the input buffer read by InstBuffAddrCheckPass. -static const int kDebugInputBindingBuffAddr = 2; - -// This is the output buffer written by InstDebugPrintfPass. -static const int kDebugOutputPrintfStream = 3; - -// clang-format off -// Bindless Validation Input Buffer Format -// -// An input buffer for bindless validation has this structure: -// GLSL: -// layout(buffer_reference, std430, buffer_reference_align = 8) buffer DescriptorSetData { -// uint num_bindings; -// uint data[]; -// }; -// -// layout(set = 7, binding = 1, std430) buffer inst_bindless_InputBuffer -// { -// DescriptorSetData desc_sets[32]; -// } inst_bindless_input_buffer; -// -// -// To look up the length of a binding: -// uint length = inst_bindless_input_buffer[set].data[binding]; -// Scalar bindings have a length of 1. -// -// To look up the initialization state of a descriptor in a binding: -// uint num_bindings = inst_bindless_input_buffer[set].num_bindings; -// uint binding_state_start = inst_bindless_input_buffer[set].data[num_bindings + binding]; -// uint init_state = inst_bindless_input_buffer[set].data[binding_state_start + index]; -// -// For scalar bindings, use 0 for the index. -// clang-format on -// -// The size of the inst_bindless_input_buffer array, regardless of how many -// descriptor sets the device supports. -static const int kDebugInputBindlessMaxDescSets = 32; - -// Buffer Device Address Input Buffer Format -// -// An input buffer for buffer device address validation consists of a single -// array of unsigned 64-bit integers we will call Data[]. This array is -// formatted as follows: -// -// At offset kDebugInputBuffAddrPtrOffset is a list of sorted valid buffer -// addresses. The list is terminated with the address 0xffffffffffffffff. -// If 0x0 is not a valid buffer address, this address is inserted at the -// start of the list. -// -static const int kDebugInputBuffAddrPtrOffset = 1; -// -// At offset kDebugInputBuffAddrLengthOffset in Data[] is a single uint64 which -// gives an offset to the start of the buffer length data. More -// specifically, for a buffer whose pointer is located at input buffer offset -// i, the length is located at: -// -// Data[ i - kDebugInputBuffAddrPtrOffset -// + Data[ kDebugInputBuffAddrLengthOffset ] ] -// -// The length associated with the 0xffffffffffffffff address is zero. If -// not a valid buffer, the length associated with the 0x0 address is zero. -static const int kDebugInputBuffAddrLengthOffset = 0; - -} // namespace spvtools - -#endif // INCLUDE_SPIRV_TOOLS_INSTRUMENT_HPP_ diff --git a/Extern/3rdParty/shaderc/shaderc/include/spirv-tools/libspirv.h b/Extern/3rdParty/shaderc/shaderc/include/spirv-tools/libspirv.h deleted file mode 100644 index 0208097..0000000 --- a/Extern/3rdParty/shaderc/shaderc/include/spirv-tools/libspirv.h +++ /dev/null @@ -1,987 +0,0 @@ -// Copyright (c) 2015-2020 The Khronos Group Inc. -// Modifications Copyright (C) 2020 Advanced Micro Devices, Inc. All rights -// reserved. -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -#ifndef INCLUDE_SPIRV_TOOLS_LIBSPIRV_H_ -#define INCLUDE_SPIRV_TOOLS_LIBSPIRV_H_ - -#ifdef __cplusplus -extern "C" { -#else -#include -#endif - -#include -#include - -#if defined(SPIRV_TOOLS_SHAREDLIB) -#if defined(_WIN32) -#if defined(SPIRV_TOOLS_IMPLEMENTATION) -#define SPIRV_TOOLS_EXPORT __declspec(dllexport) -#else -#define SPIRV_TOOLS_EXPORT __declspec(dllimport) -#endif -#else -#if defined(SPIRV_TOOLS_IMPLEMENTATION) -#define SPIRV_TOOLS_EXPORT __attribute__((visibility("default"))) -#else -#define SPIRV_TOOLS_EXPORT -#endif -#endif -#else -#define SPIRV_TOOLS_EXPORT -#endif - -// Helpers - -#define SPV_BIT(shift) (1 << (shift)) - -#define SPV_FORCE_16_BIT_ENUM(name) SPV_FORCE_16BIT_##name = 0x7fff -#define SPV_FORCE_32_BIT_ENUM(name) SPV_FORCE_32BIT_##name = 0x7fffffff - -// Enumerations - -typedef enum spv_result_t { - SPV_SUCCESS = 0, - SPV_UNSUPPORTED = 1, - SPV_END_OF_STREAM = 2, - SPV_WARNING = 3, - SPV_FAILED_MATCH = 4, - SPV_REQUESTED_TERMINATION = 5, // Success, but signals early termination. - SPV_ERROR_INTERNAL = -1, - SPV_ERROR_OUT_OF_MEMORY = -2, - SPV_ERROR_INVALID_POINTER = -3, - SPV_ERROR_INVALID_BINARY = -4, - SPV_ERROR_INVALID_TEXT = -5, - SPV_ERROR_INVALID_TABLE = -6, - SPV_ERROR_INVALID_VALUE = -7, - SPV_ERROR_INVALID_DIAGNOSTIC = -8, - SPV_ERROR_INVALID_LOOKUP = -9, - SPV_ERROR_INVALID_ID = -10, - SPV_ERROR_INVALID_CFG = -11, - SPV_ERROR_INVALID_LAYOUT = -12, - SPV_ERROR_INVALID_CAPABILITY = -13, - SPV_ERROR_INVALID_DATA = -14, // Indicates data rules validation failure. - SPV_ERROR_MISSING_EXTENSION = -15, - SPV_ERROR_WRONG_VERSION = -16, // Indicates wrong SPIR-V version - SPV_FORCE_32_BIT_ENUM(spv_result_t) -} spv_result_t; - -// Severity levels of messages communicated to the consumer. -typedef enum spv_message_level_t { - SPV_MSG_FATAL, // Unrecoverable error due to environment. - // Will exit the program immediately. E.g., - // out of memory. - SPV_MSG_INTERNAL_ERROR, // Unrecoverable error due to SPIRV-Tools - // internals. - // Will exit the program immediately. E.g., - // unimplemented feature. - SPV_MSG_ERROR, // Normal error due to user input. - SPV_MSG_WARNING, // Warning information. - SPV_MSG_INFO, // General information. - SPV_MSG_DEBUG, // Debug information. -} spv_message_level_t; - -typedef enum spv_endianness_t { - SPV_ENDIANNESS_LITTLE, - SPV_ENDIANNESS_BIG, - SPV_FORCE_32_BIT_ENUM(spv_endianness_t) -} spv_endianness_t; - -// The kinds of operands that an instruction may have. -// -// Some operand types are "concrete". The binary parser uses a concrete -// operand type to describe an operand of a parsed instruction. -// -// The assembler uses all operand types. In addition to determining what -// kind of value an operand may be, non-concrete operand types capture the -// fact that an operand might be optional (may be absent, or present exactly -// once), or might occur zero or more times. -// -// Sometimes we also need to be able to express the fact that an operand -// is a member of an optional tuple of values. In that case the first member -// would be optional, and the subsequent members would be required. -// -// NOTE: Although we don't promise binary compatibility, as a courtesy, please -// add new enum values at the end. -typedef enum spv_operand_type_t { - // A sentinel value. - SPV_OPERAND_TYPE_NONE = 0, - - // Set 1: Operands that are IDs. - SPV_OPERAND_TYPE_ID, - SPV_OPERAND_TYPE_TYPE_ID, - SPV_OPERAND_TYPE_RESULT_ID, - SPV_OPERAND_TYPE_MEMORY_SEMANTICS_ID, // SPIR-V Sec 3.25 - SPV_OPERAND_TYPE_SCOPE_ID, // SPIR-V Sec 3.27 - - // Set 2: Operands that are literal numbers. - SPV_OPERAND_TYPE_LITERAL_INTEGER, // Always unsigned 32-bits. - // The Instruction argument to OpExtInst. It's an unsigned 32-bit literal - // number indicating which instruction to use from an extended instruction - // set. - SPV_OPERAND_TYPE_EXTENSION_INSTRUCTION_NUMBER, - // The Opcode argument to OpSpecConstantOp. It determines the operation - // to be performed on constant operands to compute a specialization constant - // result. - SPV_OPERAND_TYPE_SPEC_CONSTANT_OP_NUMBER, - // A literal number whose format and size are determined by a previous operand - // in the same instruction. It's a signed integer, an unsigned integer, or a - // floating point number. It also has a specified bit width. The width - // may be larger than 32, which would require such a typed literal value to - // occupy multiple SPIR-V words. - SPV_OPERAND_TYPE_TYPED_LITERAL_NUMBER, - SPV_OPERAND_TYPE_LITERAL_FLOAT, // Always 32-bit float. - - // Set 3: The literal string operand type. - SPV_OPERAND_TYPE_LITERAL_STRING, - - // Set 4: Operands that are a single word enumerated value. - SPV_OPERAND_TYPE_SOURCE_LANGUAGE, // SPIR-V Sec 3.2 - SPV_OPERAND_TYPE_EXECUTION_MODEL, // SPIR-V Sec 3.3 - SPV_OPERAND_TYPE_ADDRESSING_MODEL, // SPIR-V Sec 3.4 - SPV_OPERAND_TYPE_MEMORY_MODEL, // SPIR-V Sec 3.5 - SPV_OPERAND_TYPE_EXECUTION_MODE, // SPIR-V Sec 3.6 - SPV_OPERAND_TYPE_STORAGE_CLASS, // SPIR-V Sec 3.7 - SPV_OPERAND_TYPE_DIMENSIONALITY, // SPIR-V Sec 3.8 - SPV_OPERAND_TYPE_SAMPLER_ADDRESSING_MODE, // SPIR-V Sec 3.9 - SPV_OPERAND_TYPE_SAMPLER_FILTER_MODE, // SPIR-V Sec 3.10 - SPV_OPERAND_TYPE_SAMPLER_IMAGE_FORMAT, // SPIR-V Sec 3.11 - SPV_OPERAND_TYPE_IMAGE_CHANNEL_ORDER, // SPIR-V Sec 3.12 - SPV_OPERAND_TYPE_IMAGE_CHANNEL_DATA_TYPE, // SPIR-V Sec 3.13 - SPV_OPERAND_TYPE_FP_ROUNDING_MODE, // SPIR-V Sec 3.16 - SPV_OPERAND_TYPE_LINKAGE_TYPE, // SPIR-V Sec 3.17 - SPV_OPERAND_TYPE_ACCESS_QUALIFIER, // SPIR-V Sec 3.18 - SPV_OPERAND_TYPE_FUNCTION_PARAMETER_ATTRIBUTE, // SPIR-V Sec 3.19 - SPV_OPERAND_TYPE_DECORATION, // SPIR-V Sec 3.20 - SPV_OPERAND_TYPE_BUILT_IN, // SPIR-V Sec 3.21 - SPV_OPERAND_TYPE_GROUP_OPERATION, // SPIR-V Sec 3.28 - SPV_OPERAND_TYPE_KERNEL_ENQ_FLAGS, // SPIR-V Sec 3.29 - SPV_OPERAND_TYPE_KERNEL_PROFILING_INFO, // SPIR-V Sec 3.30 - SPV_OPERAND_TYPE_CAPABILITY, // SPIR-V Sec 3.31 - - // NOTE: New concrete enum values should be added at the end. - - // Set 5: Operands that are a single word bitmask. - // Sometimes a set bit indicates the instruction requires still more operands. - SPV_OPERAND_TYPE_IMAGE, // SPIR-V Sec 3.14 - SPV_OPERAND_TYPE_FP_FAST_MATH_MODE, // SPIR-V Sec 3.15 - SPV_OPERAND_TYPE_SELECTION_CONTROL, // SPIR-V Sec 3.22 - SPV_OPERAND_TYPE_LOOP_CONTROL, // SPIR-V Sec 3.23 - SPV_OPERAND_TYPE_FUNCTION_CONTROL, // SPIR-V Sec 3.24 - SPV_OPERAND_TYPE_MEMORY_ACCESS, // SPIR-V Sec 3.26 - SPV_OPERAND_TYPE_FRAGMENT_SHADING_RATE, // SPIR-V Sec 3.FSR - -// NOTE: New concrete enum values should be added at the end. - -// The "optional" and "variable" operand types are only used internally by -// the assembler and the binary parser. -// There are two categories: -// Optional : expands to 0 or 1 operand, like ? in regular expressions. -// Variable : expands to 0, 1 or many operands or pairs of operands. -// This is similar to * in regular expressions. - -// NOTE: These FIRST_* and LAST_* enum values are DEPRECATED. -// The concept of "optional" and "variable" operand types are only intended -// for use as an implementation detail of parsing SPIR-V, either in text or -// binary form. Instead of using enum ranges, use characteristic function -// spvOperandIsConcrete. -// The use of enum value ranges in a public API makes it difficult to insert -// new values into a range without also breaking binary compatibility. -// -// Macros for defining bounds on optional and variable operand types. -// Any variable operand type is also optional. -// TODO(dneto): Remove SPV_OPERAND_TYPE_FIRST_* and SPV_OPERAND_TYPE_LAST_* -#define FIRST_OPTIONAL(ENUM) ENUM, SPV_OPERAND_TYPE_FIRST_OPTIONAL_TYPE = ENUM -#define FIRST_VARIABLE(ENUM) ENUM, SPV_OPERAND_TYPE_FIRST_VARIABLE_TYPE = ENUM -#define LAST_VARIABLE(ENUM) \ - ENUM, SPV_OPERAND_TYPE_LAST_VARIABLE_TYPE = ENUM, \ - SPV_OPERAND_TYPE_LAST_OPTIONAL_TYPE = ENUM - - // An optional operand represents zero or one logical operands. - // In an instruction definition, this may only appear at the end of the - // operand types. - FIRST_OPTIONAL(SPV_OPERAND_TYPE_OPTIONAL_ID), - // An optional image operand type. - SPV_OPERAND_TYPE_OPTIONAL_IMAGE, - // An optional memory access type. - SPV_OPERAND_TYPE_OPTIONAL_MEMORY_ACCESS, - // An optional literal integer. - SPV_OPERAND_TYPE_OPTIONAL_LITERAL_INTEGER, - // An optional literal number, which may be either integer or floating point. - SPV_OPERAND_TYPE_OPTIONAL_LITERAL_NUMBER, - // Like SPV_OPERAND_TYPE_TYPED_LITERAL_NUMBER, but optional, and integral. - SPV_OPERAND_TYPE_OPTIONAL_TYPED_LITERAL_INTEGER, - // An optional literal string. - SPV_OPERAND_TYPE_OPTIONAL_LITERAL_STRING, - // An optional access qualifier - SPV_OPERAND_TYPE_OPTIONAL_ACCESS_QUALIFIER, - // An optional context-independent value, or CIV. CIVs are tokens that we can - // assemble regardless of where they occur -- literals, IDs, immediate - // integers, etc. - SPV_OPERAND_TYPE_OPTIONAL_CIV, - - // A variable operand represents zero or more logical operands. - // In an instruction definition, this may only appear at the end of the - // operand types. - FIRST_VARIABLE(SPV_OPERAND_TYPE_VARIABLE_ID), - SPV_OPERAND_TYPE_VARIABLE_LITERAL_INTEGER, - // A sequence of zero or more pairs of (typed literal integer, Id). - // Expands to zero or more: - // (SPV_OPERAND_TYPE_TYPED_LITERAL_INTEGER, SPV_OPERAND_TYPE_ID) - // where the literal number must always be an integer of some sort. - SPV_OPERAND_TYPE_VARIABLE_LITERAL_INTEGER_ID, - // A sequence of zero or more pairs of (Id, Literal integer) - LAST_VARIABLE(SPV_OPERAND_TYPE_VARIABLE_ID_LITERAL_INTEGER), - - // The following are concrete enum types from the DebugInfo extended - // instruction set. - SPV_OPERAND_TYPE_DEBUG_INFO_FLAGS, // DebugInfo Sec 3.2. A mask. - SPV_OPERAND_TYPE_DEBUG_BASE_TYPE_ATTRIBUTE_ENCODING, // DebugInfo Sec 3.3 - SPV_OPERAND_TYPE_DEBUG_COMPOSITE_TYPE, // DebugInfo Sec 3.4 - SPV_OPERAND_TYPE_DEBUG_TYPE_QUALIFIER, // DebugInfo Sec 3.5 - SPV_OPERAND_TYPE_DEBUG_OPERATION, // DebugInfo Sec 3.6 - - // The following are concrete enum types from the OpenCL.DebugInfo.100 - // extended instruction set. - SPV_OPERAND_TYPE_CLDEBUG100_DEBUG_INFO_FLAGS, // Sec 3.2. A Mask - SPV_OPERAND_TYPE_CLDEBUG100_DEBUG_BASE_TYPE_ATTRIBUTE_ENCODING, // Sec 3.3 - SPV_OPERAND_TYPE_CLDEBUG100_DEBUG_COMPOSITE_TYPE, // Sec 3.4 - SPV_OPERAND_TYPE_CLDEBUG100_DEBUG_TYPE_QUALIFIER, // Sec 3.5 - SPV_OPERAND_TYPE_CLDEBUG100_DEBUG_OPERATION, // Sec 3.6 - SPV_OPERAND_TYPE_CLDEBUG100_DEBUG_IMPORTED_ENTITY, // Sec 3.7 - - // The following are concrete enum types from SPV_INTEL_float_controls2 - // https://github.com/intel/llvm/blob/39fa9b0cbfbae88327118990a05c5b387b56d2ef/sycl/doc/extensions/SPIRV/SPV_INTEL_float_controls2.asciidoc - SPV_OPERAND_TYPE_FPDENORM_MODE, // Sec 3.17 FP Denorm Mode - SPV_OPERAND_TYPE_FPOPERATION_MODE, // Sec 3.18 FP Operation Mode - // A value enum from https://github.com/KhronosGroup/SPIRV-Headers/pull/177 - SPV_OPERAND_TYPE_QUANTIZATION_MODES, - // A value enum from https://github.com/KhronosGroup/SPIRV-Headers/pull/177 - SPV_OPERAND_TYPE_OVERFLOW_MODES, - - // Concrete operand types for the provisional Vulkan ray tracing feature. - SPV_OPERAND_TYPE_RAY_FLAGS, // SPIR-V Sec 3.RF - SPV_OPERAND_TYPE_RAY_QUERY_INTERSECTION, // SPIR-V Sec 3.RQIntersection - SPV_OPERAND_TYPE_RAY_QUERY_COMMITTED_INTERSECTION_TYPE, // SPIR-V Sec - // 3.RQCommitted - SPV_OPERAND_TYPE_RAY_QUERY_CANDIDATE_INTERSECTION_TYPE, // SPIR-V Sec - // 3.RQCandidate - - // Concrete operand types for integer dot product. - // Packed vector format - SPV_OPERAND_TYPE_PACKED_VECTOR_FORMAT, // SPIR-V Sec 3.x - // An optional packed vector format - SPV_OPERAND_TYPE_OPTIONAL_PACKED_VECTOR_FORMAT, - - // Concrete operand types for cooperative matrix. - SPV_OPERAND_TYPE_COOPERATIVE_MATRIX_OPERANDS, - // An optional cooperative matrix operands - SPV_OPERAND_TYPE_OPTIONAL_COOPERATIVE_MATRIX_OPERANDS, - SPV_OPERAND_TYPE_COOPERATIVE_MATRIX_LAYOUT, - SPV_OPERAND_TYPE_COOPERATIVE_MATRIX_USE, - - // This is a sentinel value, and does not represent an operand type. - // It should come last. - SPV_OPERAND_TYPE_NUM_OPERAND_TYPES, - - SPV_FORCE_32_BIT_ENUM(spv_operand_type_t) -} spv_operand_type_t; - -// Returns true if the given type is concrete. -bool spvOperandIsConcrete(spv_operand_type_t type); - -// Returns true if the given type is concrete and also a mask. -bool spvOperandIsConcreteMask(spv_operand_type_t type); - -typedef enum spv_ext_inst_type_t { - SPV_EXT_INST_TYPE_NONE = 0, - SPV_EXT_INST_TYPE_GLSL_STD_450, - SPV_EXT_INST_TYPE_OPENCL_STD, - SPV_EXT_INST_TYPE_SPV_AMD_SHADER_EXPLICIT_VERTEX_PARAMETER, - SPV_EXT_INST_TYPE_SPV_AMD_SHADER_TRINARY_MINMAX, - SPV_EXT_INST_TYPE_SPV_AMD_GCN_SHADER, - SPV_EXT_INST_TYPE_SPV_AMD_SHADER_BALLOT, - SPV_EXT_INST_TYPE_DEBUGINFO, - SPV_EXT_INST_TYPE_OPENCL_DEBUGINFO_100, - SPV_EXT_INST_TYPE_NONSEMANTIC_CLSPVREFLECTION, - SPV_EXT_INST_TYPE_NONSEMANTIC_SHADER_DEBUGINFO_100, - - // Multiple distinct extended instruction set types could return this - // value, if they are prefixed with NonSemantic. and are otherwise - // unrecognised - SPV_EXT_INST_TYPE_NONSEMANTIC_UNKNOWN, - - SPV_FORCE_32_BIT_ENUM(spv_ext_inst_type_t) -} spv_ext_inst_type_t; - -// This determines at a high level the kind of a binary-encoded literal -// number, but not the bit width. -// In principle, these could probably be folded into new entries in -// spv_operand_type_t. But then we'd have some special case differences -// between the assembler and disassembler. -typedef enum spv_number_kind_t { - SPV_NUMBER_NONE = 0, // The default for value initialization. - SPV_NUMBER_UNSIGNED_INT, - SPV_NUMBER_SIGNED_INT, - SPV_NUMBER_FLOATING, -} spv_number_kind_t; - -typedef enum spv_text_to_binary_options_t { - SPV_TEXT_TO_BINARY_OPTION_NONE = SPV_BIT(0), - // Numeric IDs in the binary will have the same values as in the source. - // Non-numeric IDs are allocated by filling in the gaps, starting with 1 - // and going up. - SPV_TEXT_TO_BINARY_OPTION_PRESERVE_NUMERIC_IDS = SPV_BIT(1), - SPV_FORCE_32_BIT_ENUM(spv_text_to_binary_options_t) -} spv_text_to_binary_options_t; - -typedef enum spv_binary_to_text_options_t { - SPV_BINARY_TO_TEXT_OPTION_NONE = SPV_BIT(0), - SPV_BINARY_TO_TEXT_OPTION_PRINT = SPV_BIT(1), - SPV_BINARY_TO_TEXT_OPTION_COLOR = SPV_BIT(2), - SPV_BINARY_TO_TEXT_OPTION_INDENT = SPV_BIT(3), - SPV_BINARY_TO_TEXT_OPTION_SHOW_BYTE_OFFSET = SPV_BIT(4), - // Do not output the module header as leading comments in the assembly. - SPV_BINARY_TO_TEXT_OPTION_NO_HEADER = SPV_BIT(5), - // Use friendly names where possible. The heuristic may expand over - // time, but will use common names for scalar types, and debug names from - // OpName instructions. - SPV_BINARY_TO_TEXT_OPTION_FRIENDLY_NAMES = SPV_BIT(6), - // Add some comments to the generated assembly - SPV_BINARY_TO_TEXT_OPTION_COMMENT = SPV_BIT(7), - SPV_FORCE_32_BIT_ENUM(spv_binary_to_text_options_t) -} spv_binary_to_text_options_t; - -// Constants - -// The default id bound is to the minimum value for the id limit -// in the spir-v specification under the section "Universal Limits". -const uint32_t kDefaultMaxIdBound = 0x3FFFFF; - -// Structures - -// Information about an operand parsed from a binary SPIR-V module. -// Note that the values are not included. You still need access to the binary -// to extract the values. -typedef struct spv_parsed_operand_t { - // Location of the operand, in words from the start of the instruction. - uint16_t offset; - // Number of words occupied by this operand. - uint16_t num_words; - // The "concrete" operand type. See the definition of spv_operand_type_t - // for details. - spv_operand_type_t type; - // If type is a literal number type, then number_kind says whether it's - // a signed integer, an unsigned integer, or a floating point number. - spv_number_kind_t number_kind; - // The number of bits for a literal number type. - uint32_t number_bit_width; -} spv_parsed_operand_t; - -// An instruction parsed from a binary SPIR-V module. -typedef struct spv_parsed_instruction_t { - // An array of words for this instruction, in native endianness. - const uint32_t* words; - // The number of words in this instruction. - uint16_t num_words; - uint16_t opcode; - // The extended instruction type, if opcode is OpExtInst. Otherwise - // this is the "none" value. - spv_ext_inst_type_t ext_inst_type; - // The type id, or 0 if this instruction doesn't have one. - uint32_t type_id; - // The result id, or 0 if this instruction doesn't have one. - uint32_t result_id; - // The array of parsed operands. - const spv_parsed_operand_t* operands; - uint16_t num_operands; -} spv_parsed_instruction_t; - -typedef struct spv_parsed_header_t { - // The magic number of the SPIR-V module. - uint32_t magic; - // Version number. - uint32_t version; - // Generator's magic number. - uint32_t generator; - // IDs bound for this module (0 < id < bound). - uint32_t bound; - // reserved. - uint32_t reserved; -} spv_parsed_header_t; - -typedef struct spv_const_binary_t { - const uint32_t* code; - const size_t wordCount; -} spv_const_binary_t; - -typedef struct spv_binary_t { - uint32_t* code; - size_t wordCount; -} spv_binary_t; - -typedef struct spv_text_t { - const char* str; - size_t length; -} spv_text_t; - -typedef struct spv_position_t { - size_t line; - size_t column; - size_t index; -} spv_position_t; - -typedef struct spv_diagnostic_t { - spv_position_t position; - char* error; - bool isTextSource; -} spv_diagnostic_t; - -// Opaque struct containing the context used to operate on a SPIR-V module. -// Its object is used by various translation API functions. -typedef struct spv_context_t spv_context_t; - -typedef struct spv_validator_options_t spv_validator_options_t; - -typedef struct spv_optimizer_options_t spv_optimizer_options_t; - -typedef struct spv_reducer_options_t spv_reducer_options_t; - -typedef struct spv_fuzzer_options_t spv_fuzzer_options_t; - -typedef struct spv_optimizer_t spv_optimizer_t; - -// Type Definitions - -typedef spv_const_binary_t* spv_const_binary; -typedef spv_binary_t* spv_binary; -typedef spv_text_t* spv_text; -typedef spv_position_t* spv_position; -typedef spv_diagnostic_t* spv_diagnostic; -typedef const spv_context_t* spv_const_context; -typedef spv_context_t* spv_context; -typedef spv_validator_options_t* spv_validator_options; -typedef const spv_validator_options_t* spv_const_validator_options; -typedef spv_optimizer_options_t* spv_optimizer_options; -typedef const spv_optimizer_options_t* spv_const_optimizer_options; -typedef spv_reducer_options_t* spv_reducer_options; -typedef const spv_reducer_options_t* spv_const_reducer_options; -typedef spv_fuzzer_options_t* spv_fuzzer_options; -typedef const spv_fuzzer_options_t* spv_const_fuzzer_options; - -// Platform API - -// Returns the SPIRV-Tools software version as a null-terminated string. -// The contents of the underlying storage is valid for the remainder of -// the process. -SPIRV_TOOLS_EXPORT const char* spvSoftwareVersionString(void); -// Returns a null-terminated string containing the name of the project, -// the software version string, and commit details. -// The contents of the underlying storage is valid for the remainder of -// the process. -SPIRV_TOOLS_EXPORT const char* spvSoftwareVersionDetailsString(void); - -// Certain target environments impose additional restrictions on SPIR-V, so it's -// often necessary to specify which one applies. SPV_ENV_UNIVERSAL_* implies an -// environment-agnostic SPIR-V. -// -// When an API method needs to derive a SPIR-V version from a target environment -// (from the spv_context object), the method will choose the highest version of -// SPIR-V supported by the target environment. Examples: -// SPV_ENV_VULKAN_1_0 -> SPIR-V 1.0 -// SPV_ENV_VULKAN_1_1 -> SPIR-V 1.3 -// SPV_ENV_VULKAN_1_1_SPIRV_1_4 -> SPIR-V 1.4 -// SPV_ENV_VULKAN_1_2 -> SPIR-V 1.5 -// SPV_ENV_VULKAN_1_3 -> SPIR-V 1.6 -// Consult the description of API entry points for specific rules. -typedef enum { - SPV_ENV_UNIVERSAL_1_0, // SPIR-V 1.0 latest revision, no other restrictions. - SPV_ENV_VULKAN_1_0, // Vulkan 1.0 latest revision. - SPV_ENV_UNIVERSAL_1_1, // SPIR-V 1.1 latest revision, no other restrictions. - SPV_ENV_OPENCL_2_1, // OpenCL Full Profile 2.1 latest revision. - SPV_ENV_OPENCL_2_2, // OpenCL Full Profile 2.2 latest revision. - SPV_ENV_OPENGL_4_0, // OpenGL 4.0 plus GL_ARB_gl_spirv, latest revisions. - SPV_ENV_OPENGL_4_1, // OpenGL 4.1 plus GL_ARB_gl_spirv, latest revisions. - SPV_ENV_OPENGL_4_2, // OpenGL 4.2 plus GL_ARB_gl_spirv, latest revisions. - SPV_ENV_OPENGL_4_3, // OpenGL 4.3 plus GL_ARB_gl_spirv, latest revisions. - // There is no variant for OpenGL 4.4. - SPV_ENV_OPENGL_4_5, // OpenGL 4.5 plus GL_ARB_gl_spirv, latest revisions. - SPV_ENV_UNIVERSAL_1_2, // SPIR-V 1.2, latest revision, no other restrictions. - SPV_ENV_OPENCL_1_2, // OpenCL Full Profile 1.2 plus cl_khr_il_program, - // latest revision. - SPV_ENV_OPENCL_EMBEDDED_1_2, // OpenCL Embedded Profile 1.2 plus - // cl_khr_il_program, latest revision. - SPV_ENV_OPENCL_2_0, // OpenCL Full Profile 2.0 plus cl_khr_il_program, - // latest revision. - SPV_ENV_OPENCL_EMBEDDED_2_0, // OpenCL Embedded Profile 2.0 plus - // cl_khr_il_program, latest revision. - SPV_ENV_OPENCL_EMBEDDED_2_1, // OpenCL Embedded Profile 2.1 latest revision. - SPV_ENV_OPENCL_EMBEDDED_2_2, // OpenCL Embedded Profile 2.2 latest revision. - SPV_ENV_UNIVERSAL_1_3, // SPIR-V 1.3 latest revision, no other restrictions. - SPV_ENV_VULKAN_1_1, // Vulkan 1.1 latest revision. - SPV_ENV_WEBGPU_0, // DEPRECATED, may be removed in the future. - SPV_ENV_UNIVERSAL_1_4, // SPIR-V 1.4 latest revision, no other restrictions. - - // Vulkan 1.1 with VK_KHR_spirv_1_4, i.e. SPIR-V 1.4 binary. - SPV_ENV_VULKAN_1_1_SPIRV_1_4, - - SPV_ENV_UNIVERSAL_1_5, // SPIR-V 1.5 latest revision, no other restrictions. - SPV_ENV_VULKAN_1_2, // Vulkan 1.2 latest revision. - - SPV_ENV_UNIVERSAL_1_6, // SPIR-V 1.6 latest revision, no other restrictions. - SPV_ENV_VULKAN_1_3, // Vulkan 1.3 latest revision. - - SPV_ENV_MAX // Keep this as the last enum value. -} spv_target_env; - -// SPIR-V Validator can be parameterized with the following Universal Limits. -typedef enum { - spv_validator_limit_max_struct_members, - spv_validator_limit_max_struct_depth, - spv_validator_limit_max_local_variables, - spv_validator_limit_max_global_variables, - spv_validator_limit_max_switch_branches, - spv_validator_limit_max_function_args, - spv_validator_limit_max_control_flow_nesting_depth, - spv_validator_limit_max_access_chain_indexes, - spv_validator_limit_max_id_bound, -} spv_validator_limit; - -// Returns a string describing the given SPIR-V target environment. -SPIRV_TOOLS_EXPORT const char* spvTargetEnvDescription(spv_target_env env); - -// Parses s into *env and returns true if successful. If unparsable, returns -// false and sets *env to SPV_ENV_UNIVERSAL_1_0. -SPIRV_TOOLS_EXPORT bool spvParseTargetEnv(const char* s, spv_target_env* env); - -// Determines the target env value with the least features but which enables -// the given Vulkan and SPIR-V versions. If such a target is supported, returns -// true and writes the value to |env|, otherwise returns false. -// -// The Vulkan version is given as an unsigned 32-bit number as specified in -// Vulkan section "29.2.1 Version Numbers": the major version number appears -// in bits 22 to 21, and the minor version is in bits 12 to 21. The SPIR-V -// version is given in the SPIR-V version header word: major version in bits -// 16 to 23, and minor version in bits 8 to 15. -SPIRV_TOOLS_EXPORT bool spvParseVulkanEnv(uint32_t vulkan_ver, - uint32_t spirv_ver, - spv_target_env* env); - -// Creates a context object for most of the SPIRV-Tools API. -// Returns null if env is invalid. -// -// See specific API calls for how the target environment is interpreted -// (particularly assembly and validation). -SPIRV_TOOLS_EXPORT spv_context spvContextCreate(spv_target_env env); - -// Destroys the given context object. -SPIRV_TOOLS_EXPORT void spvContextDestroy(spv_context context); - -// Creates a Validator options object with default options. Returns a valid -// options object. The object remains valid until it is passed into -// spvValidatorOptionsDestroy. -SPIRV_TOOLS_EXPORT spv_validator_options spvValidatorOptionsCreate(void); - -// Destroys the given Validator options object. -SPIRV_TOOLS_EXPORT void spvValidatorOptionsDestroy( - spv_validator_options options); - -// Records the maximum Universal Limit that is considered valid in the given -// Validator options object. argument must be a valid options object. -SPIRV_TOOLS_EXPORT void spvValidatorOptionsSetUniversalLimit( - spv_validator_options options, spv_validator_limit limit_type, - uint32_t limit); - -// Record whether or not the validator should relax the rules on types for -// stores to structs. When relaxed, it will allow a type mismatch as long as -// the types are structs with the same layout. Two structs have the same layout -// if -// -// 1) the members of the structs are either the same type or are structs with -// same layout, and -// -// 2) the decorations that affect the memory layout are identical for both -// types. Other decorations are not relevant. -SPIRV_TOOLS_EXPORT void spvValidatorOptionsSetRelaxStoreStruct( - spv_validator_options options, bool val); - -// Records whether or not the validator should relax the rules on pointer usage -// in logical addressing mode. -// -// When relaxed, it will allow the following usage cases of pointers: -// 1) OpVariable allocating an object whose type is a pointer type -// 2) OpReturnValue returning a pointer value -SPIRV_TOOLS_EXPORT void spvValidatorOptionsSetRelaxLogicalPointer( - spv_validator_options options, bool val); - -// Records whether or not the validator should relax the rules because it is -// expected that the optimizations will make the code legal. -// -// When relaxed, it will allow the following: -// 1) It will allow relaxed logical pointers. Setting this option will also -// set that option. -// 2) Pointers that are pass as parameters to function calls do not have to -// match the storage class of the formal parameter. -// 3) Pointers that are actual parameters on function calls do not have to point -// to the same type pointed as the formal parameter. The types just need to -// logically match. -// 4) GLSLstd450 Interpolate* instructions can have a load of an interpolant -// for a first argument. -SPIRV_TOOLS_EXPORT void spvValidatorOptionsSetBeforeHlslLegalization( - spv_validator_options options, bool val); - -// Records whether the validator should use "relaxed" block layout rules. -// Relaxed layout rules are described by Vulkan extension -// VK_KHR_relaxed_block_layout, and they affect uniform blocks, storage blocks, -// and push constants. -// -// This is enabled by default when targeting Vulkan 1.1 or later. -// Relaxed layout is more permissive than the default rules in Vulkan 1.0. -SPIRV_TOOLS_EXPORT void spvValidatorOptionsSetRelaxBlockLayout( - spv_validator_options options, bool val); - -// Records whether the validator should use standard block layout rules for -// uniform blocks. -SPIRV_TOOLS_EXPORT void spvValidatorOptionsSetUniformBufferStandardLayout( - spv_validator_options options, bool val); - -// Records whether the validator should use "scalar" block layout rules. -// Scalar layout rules are more permissive than relaxed block layout. -// -// See Vulkan extension VK_EXT_scalar_block_layout. The scalar alignment is -// defined as follows: -// - scalar alignment of a scalar is the scalar size -// - scalar alignment of a vector is the scalar alignment of its component -// - scalar alignment of a matrix is the scalar alignment of its component -// - scalar alignment of an array is the scalar alignment of its element -// - scalar alignment of a struct is the max scalar alignment among its -// members -// -// For a struct in Uniform, StorageClass, or PushConstant: -// - a member Offset must be a multiple of the member's scalar alignment -// - ArrayStride or MatrixStride must be a multiple of the array or matrix -// scalar alignment -SPIRV_TOOLS_EXPORT void spvValidatorOptionsSetScalarBlockLayout( - spv_validator_options options, bool val); - -// Records whether the validator should use "scalar" block layout -// rules (as defined above) for Workgroup blocks. See Vulkan -// extension VK_KHR_workgroup_memory_explicit_layout. -SPIRV_TOOLS_EXPORT void spvValidatorOptionsSetWorkgroupScalarBlockLayout( - spv_validator_options options, bool val); - -// Records whether or not the validator should skip validating standard -// uniform/storage block layout. -SPIRV_TOOLS_EXPORT void spvValidatorOptionsSetSkipBlockLayout( - spv_validator_options options, bool val); - -// Records whether or not the validator should allow the LocalSizeId -// decoration where the environment otherwise would not allow it. -SPIRV_TOOLS_EXPORT void spvValidatorOptionsSetAllowLocalSizeId( - spv_validator_options options, bool val); - -// Whether friendly names should be used in validation error messages. -SPIRV_TOOLS_EXPORT void spvValidatorOptionsSetFriendlyNames( - spv_validator_options options, bool val); - -// Creates an optimizer options object with default options. Returns a valid -// options object. The object remains valid until it is passed into -// |spvOptimizerOptionsDestroy|. -SPIRV_TOOLS_EXPORT spv_optimizer_options spvOptimizerOptionsCreate(void); - -// Destroys the given optimizer options object. -SPIRV_TOOLS_EXPORT void spvOptimizerOptionsDestroy( - spv_optimizer_options options); - -// Records whether or not the optimizer should run the validator before -// optimizing. If |val| is true, the validator will be run. -SPIRV_TOOLS_EXPORT void spvOptimizerOptionsSetRunValidator( - spv_optimizer_options options, bool val); - -// Records the validator options that should be passed to the validator if it is -// run. -SPIRV_TOOLS_EXPORT void spvOptimizerOptionsSetValidatorOptions( - spv_optimizer_options options, spv_validator_options val); - -// Records the maximum possible value for the id bound. -SPIRV_TOOLS_EXPORT void spvOptimizerOptionsSetMaxIdBound( - spv_optimizer_options options, uint32_t val); - -// Records whether all bindings within the module should be preserved. -SPIRV_TOOLS_EXPORT void spvOptimizerOptionsSetPreserveBindings( - spv_optimizer_options options, bool val); - -// Records whether all specialization constants within the module -// should be preserved. -SPIRV_TOOLS_EXPORT void spvOptimizerOptionsSetPreserveSpecConstants( - spv_optimizer_options options, bool val); - -// Creates a reducer options object with default options. Returns a valid -// options object. The object remains valid until it is passed into -// |spvReducerOptionsDestroy|. -SPIRV_TOOLS_EXPORT spv_reducer_options spvReducerOptionsCreate(void); - -// Destroys the given reducer options object. -SPIRV_TOOLS_EXPORT void spvReducerOptionsDestroy(spv_reducer_options options); - -// Sets the maximum number of reduction steps that should run before the reducer -// gives up. -SPIRV_TOOLS_EXPORT void spvReducerOptionsSetStepLimit( - spv_reducer_options options, uint32_t step_limit); - -// Sets the fail-on-validation-error option; if true, the reducer will return -// kStateInvalid if a reduction step yields a state that fails SPIR-V -// validation. Otherwise, an invalid state is treated as uninteresting and the -// reduction backtracks and continues. -SPIRV_TOOLS_EXPORT void spvReducerOptionsSetFailOnValidationError( - spv_reducer_options options, bool fail_on_validation_error); - -// Sets the function that the reducer should target. If set to zero the reducer -// will target all functions as well as parts of the module that lie outside -// functions. Otherwise the reducer will restrict reduction to the function -// with result id |target_function|, which is required to exist. -SPIRV_TOOLS_EXPORT void spvReducerOptionsSetTargetFunction( - spv_reducer_options options, uint32_t target_function); - -// Creates a fuzzer options object with default options. Returns a valid -// options object. The object remains valid until it is passed into -// |spvFuzzerOptionsDestroy|. -SPIRV_TOOLS_EXPORT spv_fuzzer_options spvFuzzerOptionsCreate(void); - -// Destroys the given fuzzer options object. -SPIRV_TOOLS_EXPORT void spvFuzzerOptionsDestroy(spv_fuzzer_options options); - -// Enables running the validator after every transformation is applied during -// a replay. -SPIRV_TOOLS_EXPORT void spvFuzzerOptionsEnableReplayValidation( - spv_fuzzer_options options); - -// Sets the seed with which the random number generator used by the fuzzer -// should be initialized. -SPIRV_TOOLS_EXPORT void spvFuzzerOptionsSetRandomSeed( - spv_fuzzer_options options, uint32_t seed); - -// Sets the range of transformations that should be applied during replay: 0 -// means all transformations, +N means the first N transformations, -N means all -// except the final N transformations. -SPIRV_TOOLS_EXPORT void spvFuzzerOptionsSetReplayRange( - spv_fuzzer_options options, int32_t replay_range); - -// Sets the maximum number of steps that the shrinker should take before giving -// up. -SPIRV_TOOLS_EXPORT void spvFuzzerOptionsSetShrinkerStepLimit( - spv_fuzzer_options options, uint32_t shrinker_step_limit); - -// Enables running the validator after every pass is applied during a fuzzing -// run. -SPIRV_TOOLS_EXPORT void spvFuzzerOptionsEnableFuzzerPassValidation( - spv_fuzzer_options options); - -// Enables all fuzzer passes during a fuzzing run (instead of a random subset -// of passes). -SPIRV_TOOLS_EXPORT void spvFuzzerOptionsEnableAllPasses( - spv_fuzzer_options options); - -// Encodes the given SPIR-V assembly text to its binary representation. The -// length parameter specifies the number of bytes for text. Encoded binary will -// be stored into *binary. Any error will be written into *diagnostic if -// diagnostic is non-null, otherwise the context's message consumer will be -// used. The generated binary is independent of the context and may outlive it. -// The SPIR-V binary version is set to the highest version of SPIR-V supported -// by the context's target environment. -SPIRV_TOOLS_EXPORT spv_result_t spvTextToBinary(const spv_const_context context, - const char* text, - const size_t length, - spv_binary* binary, - spv_diagnostic* diagnostic); - -// Encodes the given SPIR-V assembly text to its binary representation. Same as -// spvTextToBinary but with options. The options parameter is a bit field of -// spv_text_to_binary_options_t. -SPIRV_TOOLS_EXPORT spv_result_t spvTextToBinaryWithOptions( - const spv_const_context context, const char* text, const size_t length, - const uint32_t options, spv_binary* binary, spv_diagnostic* diagnostic); - -// Frees an allocated text stream. This is a no-op if the text parameter -// is a null pointer. -SPIRV_TOOLS_EXPORT void spvTextDestroy(spv_text text); - -// Decodes the given SPIR-V binary representation to its assembly text. The -// word_count parameter specifies the number of words for binary. The options -// parameter is a bit field of spv_binary_to_text_options_t. Decoded text will -// be stored into *text. Any error will be written into *diagnostic if -// diagnostic is non-null, otherwise the context's message consumer will be -// used. -SPIRV_TOOLS_EXPORT spv_result_t spvBinaryToText(const spv_const_context context, - const uint32_t* binary, - const size_t word_count, - const uint32_t options, - spv_text* text, - spv_diagnostic* diagnostic); - -// Frees a binary stream from memory. This is a no-op if binary is a null -// pointer. -SPIRV_TOOLS_EXPORT void spvBinaryDestroy(spv_binary binary); - -// Validates a SPIR-V binary for correctness. Any errors will be written into -// *diagnostic if diagnostic is non-null, otherwise the context's message -// consumer will be used. -// -// Validate for SPIR-V spec rules for the SPIR-V version named in the -// binary's header (at word offset 1). Additionally, if the context target -// environment is a client API (such as Vulkan 1.1), then validate for that -// client API version, to the extent that it is verifiable from data in the -// binary itself. -SPIRV_TOOLS_EXPORT spv_result_t spvValidate(const spv_const_context context, - const spv_const_binary binary, - spv_diagnostic* diagnostic); - -// Validates a SPIR-V binary for correctness. Uses the provided Validator -// options. Any errors will be written into *diagnostic if diagnostic is -// non-null, otherwise the context's message consumer will be used. -// -// Validate for SPIR-V spec rules for the SPIR-V version named in the -// binary's header (at word offset 1). Additionally, if the context target -// environment is a client API (such as Vulkan 1.1), then validate for that -// client API version, to the extent that it is verifiable from data in the -// binary itself, or in the validator options. -SPIRV_TOOLS_EXPORT spv_result_t spvValidateWithOptions( - const spv_const_context context, const spv_const_validator_options options, - const spv_const_binary binary, spv_diagnostic* diagnostic); - -// Validates a raw SPIR-V binary for correctness. Any errors will be written -// into *diagnostic if diagnostic is non-null, otherwise the context's message -// consumer will be used. -SPIRV_TOOLS_EXPORT spv_result_t -spvValidateBinary(const spv_const_context context, const uint32_t* words, - const size_t num_words, spv_diagnostic* diagnostic); - -// Creates a diagnostic object. The position parameter specifies the location in -// the text/binary stream. The message parameter, copied into the diagnostic -// object, contains the error message to display. -SPIRV_TOOLS_EXPORT spv_diagnostic -spvDiagnosticCreate(const spv_position position, const char* message); - -// Destroys a diagnostic object. This is a no-op if diagnostic is a null -// pointer. -SPIRV_TOOLS_EXPORT void spvDiagnosticDestroy(spv_diagnostic diagnostic); - -// Prints the diagnostic to stderr. -SPIRV_TOOLS_EXPORT spv_result_t -spvDiagnosticPrint(const spv_diagnostic diagnostic); - -// Gets the name of an instruction, without the "Op" prefix. -SPIRV_TOOLS_EXPORT const char* spvOpcodeString(const uint32_t opcode); - -// The binary parser interface. - -// A pointer to a function that accepts a parsed SPIR-V header. -// The integer arguments are the 32-bit words from the header, as specified -// in SPIR-V 1.0 Section 2.3 Table 1. -// The function should return SPV_SUCCESS if parsing should continue. -typedef spv_result_t (*spv_parsed_header_fn_t)( - void* user_data, spv_endianness_t endian, uint32_t magic, uint32_t version, - uint32_t generator, uint32_t id_bound, uint32_t reserved); - -// A pointer to a function that accepts a parsed SPIR-V instruction. -// The parsed_instruction value is transient: it may be overwritten -// or released immediately after the function has returned. That also -// applies to the words array member of the parsed instruction. The -// function should return SPV_SUCCESS if and only if parsing should -// continue. -typedef spv_result_t (*spv_parsed_instruction_fn_t)( - void* user_data, const spv_parsed_instruction_t* parsed_instruction); - -// Parses a SPIR-V binary, specified as counted sequence of 32-bit words. -// Parsing feedback is provided via two callbacks provided as function -// pointers. Each callback function pointer can be a null pointer, in -// which case it is never called. Otherwise, in a valid parse the -// parsed-header callback is called once, and then the parsed-instruction -// callback once for each instruction in the stream. The user_data parameter -// is supplied as context to the callbacks. Returns SPV_SUCCESS on successful -// parse where the callbacks always return SPV_SUCCESS. For an invalid parse, -// returns a status code other than SPV_SUCCESS, and if diagnostic is non-null -// also emits a diagnostic. If diagnostic is null the context's message consumer -// will be used to emit any errors. If a callback returns anything other than -// SPV_SUCCESS, then that status code is returned, no further callbacks are -// issued, and no additional diagnostics are emitted. -SPIRV_TOOLS_EXPORT spv_result_t spvBinaryParse( - const spv_const_context context, void* user_data, const uint32_t* words, - const size_t num_words, spv_parsed_header_fn_t parse_header, - spv_parsed_instruction_fn_t parse_instruction, spv_diagnostic* diagnostic); - -// The optimizer interface. - -// A pointer to a function that accepts a log message from an optimizer. -typedef void (*spv_message_consumer)( - spv_message_level_t, const char*, const spv_position_t*, const char*); - -// Creates and returns an optimizer object. This object must be passed to -// optimizer APIs below and is valid until passed to spvOptimizerDestroy. -SPIRV_TOOLS_EXPORT spv_optimizer_t* spvOptimizerCreate(spv_target_env env); - -// Destroys the given optimizer object. -SPIRV_TOOLS_EXPORT void spvOptimizerDestroy(spv_optimizer_t* optimizer); - -// Sets an spv_message_consumer on an optimizer object. -SPIRV_TOOLS_EXPORT void spvOptimizerSetMessageConsumer( - spv_optimizer_t* optimizer, spv_message_consumer consumer); - -// Registers passes that attempt to legalize the generated code. -SPIRV_TOOLS_EXPORT void spvOptimizerRegisterLegalizationPasses( - spv_optimizer_t* optimizer); - -// Registers passes that attempt to improve performance of generated code. -SPIRV_TOOLS_EXPORT void spvOptimizerRegisterPerformancePasses( - spv_optimizer_t* optimizer); - -// Registers passes that attempt to improve the size of generated code. -SPIRV_TOOLS_EXPORT void spvOptimizerRegisterSizePasses( - spv_optimizer_t* optimizer); - -// Registers a pass specified by a flag in an optimizer object. -SPIRV_TOOLS_EXPORT bool spvOptimizerRegisterPassFromFlag( - spv_optimizer_t* optimizer, const char* flag); - -// Registers passes specified by length number of flags in an optimizer object. -SPIRV_TOOLS_EXPORT bool spvOptimizerRegisterPassesFromFlags( - spv_optimizer_t* optimizer, const char** flags, const size_t flag_count); - -// Optimizes the SPIR-V code of size |word_count| pointed to by |binary| and -// returns an optimized spv_binary in |optimized_binary|. -// -// Returns SPV_SUCCESS on successful optimization, whether or not the module is -// modified. Returns an SPV_ERROR_* if the module fails to validate or if -// errors occur when processing using any of the registered passes. In that -// case, no further passes are executed and the |optimized_binary| contents may -// be invalid. -// -// By default, the binary is validated before any transforms are performed, -// and optionally after each transform. Validation uses SPIR-V spec rules -// for the SPIR-V version named in the binary's header (at word offset 1). -// Additionally, if the target environment is a client API (such as -// Vulkan 1.1), then validate for that client API version, to the extent -// that it is verifiable from data in the binary itself, or from the -// validator options set on the optimizer options. -SPIRV_TOOLS_EXPORT spv_result_t spvOptimizerRun( - spv_optimizer_t* optimizer, const uint32_t* binary, const size_t word_count, - spv_binary* optimized_binary, const spv_optimizer_options options); - -#ifdef __cplusplus -} -#endif - -#endif // INCLUDE_SPIRV_TOOLS_LIBSPIRV_H_ diff --git a/Extern/3rdParty/shaderc/shaderc/include/spirv-tools/libspirv.hpp b/Extern/3rdParty/shaderc/shaderc/include/spirv-tools/libspirv.hpp deleted file mode 100644 index ee6c846..0000000 --- a/Extern/3rdParty/shaderc/shaderc/include/spirv-tools/libspirv.hpp +++ /dev/null @@ -1,397 +0,0 @@ -// Copyright (c) 2016 Google Inc. -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -#ifndef INCLUDE_SPIRV_TOOLS_LIBSPIRV_HPP_ -#define INCLUDE_SPIRV_TOOLS_LIBSPIRV_HPP_ - -#include -#include -#include -#include - -#include "spirv-tools/libspirv.h" - -namespace spvtools { - -// Message consumer. The C strings for source and message are only alive for the -// specific invocation. -using MessageConsumer = std::function; - -using HeaderParser = std::function; -using InstructionParser = - std::function; - -// C++ RAII wrapper around the C context object spv_context. -class Context { - public: - // Constructs a context targeting the given environment |env|. - // - // See specific API calls for how the target environment is interpreted - // (particularly assembly and validation). - // - // The constructed instance will have an empty message consumer, which just - // ignores all messages from the library. Use SetMessageConsumer() to supply - // one if messages are of concern. - explicit Context(spv_target_env env); - - // Enables move constructor/assignment operations. - Context(Context&& other); - Context& operator=(Context&& other); - - // Disables copy constructor/assignment operations. - Context(const Context&) = delete; - Context& operator=(const Context&) = delete; - - // Destructs this instance. - ~Context(); - - // Sets the message consumer to the given |consumer|. The |consumer| will be - // invoked once for each message communicated from the library. - void SetMessageConsumer(MessageConsumer consumer); - - // Returns the underlying spv_context. - spv_context& CContext(); - const spv_context& CContext() const; - - private: - spv_context context_; -}; - -// A RAII wrapper around a validator options object. -class ValidatorOptions { - public: - ValidatorOptions() : options_(spvValidatorOptionsCreate()) {} - ~ValidatorOptions() { spvValidatorOptionsDestroy(options_); } - // Allow implicit conversion to the underlying object. - operator spv_validator_options() const { return options_; } - - // Sets a limit. - void SetUniversalLimit(spv_validator_limit limit_type, uint32_t limit) { - spvValidatorOptionsSetUniversalLimit(options_, limit_type, limit); - } - - void SetRelaxStructStore(bool val) { - spvValidatorOptionsSetRelaxStoreStruct(options_, val); - } - - // Enables VK_KHR_relaxed_block_layout when validating standard - // uniform/storage buffer/push-constant layout. If true, disables - // scalar block layout rules. - void SetRelaxBlockLayout(bool val) { - spvValidatorOptionsSetRelaxBlockLayout(options_, val); - } - - // Enables VK_KHR_uniform_buffer_standard_layout when validating standard - // uniform layout. If true, disables scalar block layout rules. - void SetUniformBufferStandardLayout(bool val) { - spvValidatorOptionsSetUniformBufferStandardLayout(options_, val); - } - - // Enables VK_EXT_scalar_block_layout when validating standard - // uniform/storage buffer/push-constant layout. If true, disables - // relaxed block layout rules. - void SetScalarBlockLayout(bool val) { - spvValidatorOptionsSetScalarBlockLayout(options_, val); - } - - // Enables scalar layout when validating Workgroup blocks. See - // VK_KHR_workgroup_memory_explicit_layout. - void SetWorkgroupScalarBlockLayout(bool val) { - spvValidatorOptionsSetWorkgroupScalarBlockLayout(options_, val); - } - - // Skips validating standard uniform/storage buffer/push-constant layout. - void SetSkipBlockLayout(bool val) { - spvValidatorOptionsSetSkipBlockLayout(options_, val); - } - - // Enables LocalSizeId decorations where the environment would not otherwise - // allow them. - void SetAllowLocalSizeId(bool val) { - spvValidatorOptionsSetAllowLocalSizeId(options_, val); - } - - // Records whether or not the validator should relax the rules on pointer - // usage in logical addressing mode. - // - // When relaxed, it will allow the following usage cases of pointers: - // 1) OpVariable allocating an object whose type is a pointer type - // 2) OpReturnValue returning a pointer value - void SetRelaxLogicalPointer(bool val) { - spvValidatorOptionsSetRelaxLogicalPointer(options_, val); - } - - // Records whether or not the validator should relax the rules because it is - // expected that the optimizations will make the code legal. - // - // When relaxed, it will allow the following: - // 1) It will allow relaxed logical pointers. Setting this option will also - // set that option. - // 2) Pointers that are pass as parameters to function calls do not have to - // match the storage class of the formal parameter. - // 3) Pointers that are actual parameters on function calls do not have to - // point to the same type pointed as the formal parameter. The types just - // need to logically match. - // 4) GLSLstd450 Interpolate* instructions can have a load of an interpolant - // for a first argument. - void SetBeforeHlslLegalization(bool val) { - spvValidatorOptionsSetBeforeHlslLegalization(options_, val); - } - - // Whether friendly names should be used in validation error messages. - void SetFriendlyNames(bool val) { - spvValidatorOptionsSetFriendlyNames(options_, val); - } - - private: - spv_validator_options options_; -}; - -// A C++ wrapper around an optimization options object. -class OptimizerOptions { - public: - OptimizerOptions() : options_(spvOptimizerOptionsCreate()) {} - ~OptimizerOptions() { spvOptimizerOptionsDestroy(options_); } - - // Allow implicit conversion to the underlying object. - operator spv_optimizer_options() const { return options_; } - - // Records whether or not the optimizer should run the validator before - // optimizing. If |run| is true, the validator will be run. - void set_run_validator(bool run) { - spvOptimizerOptionsSetRunValidator(options_, run); - } - - // Records the validator options that should be passed to the validator if it - // is run. - void set_validator_options(const ValidatorOptions& val_options) { - spvOptimizerOptionsSetValidatorOptions(options_, val_options); - } - - // Records the maximum possible value for the id bound. - void set_max_id_bound(uint32_t new_bound) { - spvOptimizerOptionsSetMaxIdBound(options_, new_bound); - } - - // Records whether all bindings within the module should be preserved. - void set_preserve_bindings(bool preserve_bindings) { - spvOptimizerOptionsSetPreserveBindings(options_, preserve_bindings); - } - - // Records whether all specialization constants within the module - // should be preserved. - void set_preserve_spec_constants(bool preserve_spec_constants) { - spvOptimizerOptionsSetPreserveSpecConstants(options_, - preserve_spec_constants); - } - - private: - spv_optimizer_options options_; -}; - -// A C++ wrapper around a reducer options object. -class ReducerOptions { - public: - ReducerOptions() : options_(spvReducerOptionsCreate()) {} - ~ReducerOptions() { spvReducerOptionsDestroy(options_); } - - // Allow implicit conversion to the underlying object. - operator spv_reducer_options() const { // NOLINT(google-explicit-constructor) - return options_; - } - - // See spvReducerOptionsSetStepLimit. - void set_step_limit(uint32_t step_limit) { - spvReducerOptionsSetStepLimit(options_, step_limit); - } - - // See spvReducerOptionsSetFailOnValidationError. - void set_fail_on_validation_error(bool fail_on_validation_error) { - spvReducerOptionsSetFailOnValidationError(options_, - fail_on_validation_error); - } - - // See spvReducerOptionsSetTargetFunction. - void set_target_function(uint32_t target_function) { - spvReducerOptionsSetTargetFunction(options_, target_function); - } - - private: - spv_reducer_options options_; -}; - -// A C++ wrapper around a fuzzer options object. -class FuzzerOptions { - public: - FuzzerOptions() : options_(spvFuzzerOptionsCreate()) {} - ~FuzzerOptions() { spvFuzzerOptionsDestroy(options_); } - - // Allow implicit conversion to the underlying object. - operator spv_fuzzer_options() const { // NOLINT(google-explicit-constructor) - return options_; - } - - // See spvFuzzerOptionsEnableReplayValidation. - void enable_replay_validation() { - spvFuzzerOptionsEnableReplayValidation(options_); - } - - // See spvFuzzerOptionsSetRandomSeed. - void set_random_seed(uint32_t seed) { - spvFuzzerOptionsSetRandomSeed(options_, seed); - } - - // See spvFuzzerOptionsSetReplayRange. - void set_replay_range(int32_t replay_range) { - spvFuzzerOptionsSetReplayRange(options_, replay_range); - } - - // See spvFuzzerOptionsSetShrinkerStepLimit. - void set_shrinker_step_limit(uint32_t shrinker_step_limit) { - spvFuzzerOptionsSetShrinkerStepLimit(options_, shrinker_step_limit); - } - - // See spvFuzzerOptionsEnableFuzzerPassValidation. - void enable_fuzzer_pass_validation() { - spvFuzzerOptionsEnableFuzzerPassValidation(options_); - } - - // See spvFuzzerOptionsEnableAllPasses. - void enable_all_passes() { spvFuzzerOptionsEnableAllPasses(options_); } - - private: - spv_fuzzer_options options_; -}; - -// C++ interface for SPIRV-Tools functionalities. It wraps the context -// (including target environment and the corresponding SPIR-V grammar) and -// provides methods for assembling, disassembling, and validating. -// -// Instances of this class provide basic thread-safety guarantee. -class SpirvTools { - public: - enum { - // Default assembling option used by assemble(): - kDefaultAssembleOption = SPV_TEXT_TO_BINARY_OPTION_NONE, - - // Default disassembling option used by Disassemble(): - // * Avoid prefix comments from decoding the SPIR-V module header, and - // * Use friendly names for variables. - kDefaultDisassembleOption = SPV_BINARY_TO_TEXT_OPTION_NO_HEADER | - SPV_BINARY_TO_TEXT_OPTION_FRIENDLY_NAMES - }; - - // Constructs an instance targeting the given environment |env|. - // - // The constructed instance will have an empty message consumer, which just - // ignores all messages from the library. Use SetMessageConsumer() to supply - // one if messages are of concern. - explicit SpirvTools(spv_target_env env); - - // Disables copy/move constructor/assignment operations. - SpirvTools(const SpirvTools&) = delete; - SpirvTools(SpirvTools&&) = delete; - SpirvTools& operator=(const SpirvTools&) = delete; - SpirvTools& operator=(SpirvTools&&) = delete; - - // Destructs this instance. - ~SpirvTools(); - - // Sets the message consumer to the given |consumer|. The |consumer| will be - // invoked once for each message communicated from the library. - void SetMessageConsumer(MessageConsumer consumer); - - // Assembles the given assembly |text| and writes the result to |binary|. - // Returns true on successful assembling. |binary| will be kept untouched if - // assembling is unsuccessful. - // The SPIR-V binary version is set to the highest version of SPIR-V supported - // by the target environment with which this SpirvTools object was created. - bool Assemble(const std::string& text, std::vector* binary, - uint32_t options = kDefaultAssembleOption) const; - // |text_size| specifies the number of bytes in |text|. A terminating null - // character is not required to present in |text| as long as |text| is valid. - // The SPIR-V binary version is set to the highest version of SPIR-V supported - // by the target environment with which this SpirvTools object was created. - bool Assemble(const char* text, size_t text_size, - std::vector* binary, - uint32_t options = kDefaultAssembleOption) const; - - // Disassembles the given SPIR-V |binary| with the given |options| and writes - // the assembly to |text|. Returns true on successful disassembling. |text| - // will be kept untouched if diassembling is unsuccessful. - bool Disassemble(const std::vector& binary, std::string* text, - uint32_t options = kDefaultDisassembleOption) const; - // |binary_size| specifies the number of words in |binary|. - bool Disassemble(const uint32_t* binary, size_t binary_size, - std::string* text, - uint32_t options = kDefaultDisassembleOption) const; - - // Parses a SPIR-V binary, specified as counted sequence of 32-bit words. - // Parsing feedback is provided via two callbacks provided as std::function. - // In a valid parse the parsed-header callback is called once, and - // then the parsed-instruction callback is called once for each instruction - // in the stream. - // Returns true on successful parsing. - // If diagnostic is non-null, a diagnostic is emitted on failed parsing. - // If diagnostic is null the context's message consumer - // will be used to emit any errors. If a callback returns anything other than - // SPV_SUCCESS, then that status code is returned, no further callbacks are - // issued, and no additional diagnostics are emitted. - // This is a wrapper around the C API spvBinaryParse. - bool Parse(const std::vector& binary, - const HeaderParser& header_parser, - const InstructionParser& instruction_parser, - spv_diagnostic* diagnostic = nullptr); - - // Validates the given SPIR-V |binary|. Returns true if no issues are found. - // Otherwise, returns false and communicates issues via the message consumer - // registered. - // Validates for SPIR-V spec rules for the SPIR-V version named in the - // binary's header (at word offset 1). Additionally, if the target - // environment is a client API (such as Vulkan 1.1), then validate for that - // client API version, to the extent that it is verifiable from data in the - // binary itself. - bool Validate(const std::vector& binary) const; - // Like the previous overload, but provides the binary as a pointer and size: - // |binary_size| specifies the number of words in |binary|. - // Validates for SPIR-V spec rules for the SPIR-V version named in the - // binary's header (at word offset 1). Additionally, if the target - // environment is a client API (such as Vulkan 1.1), then validate for that - // client API version, to the extent that it is verifiable from data in the - // binary itself. - bool Validate(const uint32_t* binary, size_t binary_size) const; - // Like the previous overload, but takes an options object. - // Validates for SPIR-V spec rules for the SPIR-V version named in the - // binary's header (at word offset 1). Additionally, if the target - // environment is a client API (such as Vulkan 1.1), then validate for that - // client API version, to the extent that it is verifiable from data in the - // binary itself, or in the validator options. - bool Validate(const uint32_t* binary, size_t binary_size, - spv_validator_options options) const; - - // Was this object successfully constructed. - bool IsValid() const; - - private: - struct Impl; // Opaque struct for holding the data fields used by this class. - std::unique_ptr impl_; // Unique pointer to implementation data. -}; - -} // namespace spvtools - -#endif // INCLUDE_SPIRV_TOOLS_LIBSPIRV_HPP_ diff --git a/Extern/3rdParty/shaderc/shaderc/include/spirv-tools/linker.hpp b/Extern/3rdParty/shaderc/shaderc/include/spirv-tools/linker.hpp deleted file mode 100644 index d2f3e72..0000000 --- a/Extern/3rdParty/shaderc/shaderc/include/spirv-tools/linker.hpp +++ /dev/null @@ -1,97 +0,0 @@ -// Copyright (c) 2017 Pierre Moreau -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -#ifndef INCLUDE_SPIRV_TOOLS_LINKER_HPP_ -#define INCLUDE_SPIRV_TOOLS_LINKER_HPP_ - -#include - -#include -#include - -#include "libspirv.hpp" - -namespace spvtools { - -class LinkerOptions { - public: - LinkerOptions() - : create_library_(false), - verify_ids_(false), - allow_partial_linkage_(false) {} - - // Returns whether a library or an executable should be produced by the - // linking phase. - // - // All exported symbols are kept when creating a library, whereas they will - // be removed when creating an executable. - // The returned value will be true if creating a library, and false if - // creating an executable. - bool GetCreateLibrary() const { return create_library_; } - - // Sets whether a library or an executable should be produced. - void SetCreateLibrary(bool create_library) { - create_library_ = create_library; - } - - // Returns whether to verify the uniqueness of the unique ids in the merged - // context. - bool GetVerifyIds() const { return verify_ids_; } - - // Sets whether to verify the uniqueness of the unique ids in the merged - // context. - void SetVerifyIds(bool verify_ids) { verify_ids_ = verify_ids; } - - // Returns whether to allow for imported symbols to have no corresponding - // exported symbols - bool GetAllowPartialLinkage() const { return allow_partial_linkage_; } - - // Sets whether to allow for imported symbols to have no corresponding - // exported symbols - void SetAllowPartialLinkage(bool allow_partial_linkage) { - allow_partial_linkage_ = allow_partial_linkage; - } - - private: - bool create_library_; - bool verify_ids_; - bool allow_partial_linkage_; -}; - -// Links one or more SPIR-V modules into a new SPIR-V module. That is, combine -// several SPIR-V modules into one, resolving link dependencies between them. -// -// At least one binary has to be provided in |binaries|. Those binaries do not -// have to be valid, but they should be at least parseable. -// The functions can fail due to the following: -// * The given context was not initialised using `spvContextCreate()`; -// * No input modules were given; -// * One or more of those modules were not parseable; -// * The input modules used different addressing or memory models; -// * The ID or global variable number limit were exceeded; -// * Some entry points were defined multiple times; -// * Some imported symbols did not have an exported counterpart; -// * Possibly other reasons. -spv_result_t Link(const Context& context, - const std::vector>& binaries, - std::vector* linked_binary, - const LinkerOptions& options = LinkerOptions()); -spv_result_t Link(const Context& context, const uint32_t* const* binaries, - const size_t* binary_sizes, size_t num_binaries, - std::vector* linked_binary, - const LinkerOptions& options = LinkerOptions()); - -} // namespace spvtools - -#endif // INCLUDE_SPIRV_TOOLS_LINKER_HPP_ diff --git a/Extern/3rdParty/shaderc/shaderc/include/spirv-tools/linter.hpp b/Extern/3rdParty/shaderc/shaderc/include/spirv-tools/linter.hpp deleted file mode 100644 index 52ed5a4..0000000 --- a/Extern/3rdParty/shaderc/shaderc/include/spirv-tools/linter.hpp +++ /dev/null @@ -1,48 +0,0 @@ -// Copyright (c) 2021 Google LLC. -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -#ifndef INCLUDE_SPIRV_TOOLS_LINTER_HPP_ -#define INCLUDE_SPIRV_TOOLS_LINTER_HPP_ - -#include "libspirv.hpp" - -namespace spvtools { - -// C++ interface for SPIR-V linting functionalities. It wraps the context -// (including target environment and the corresponding SPIR-V grammar) and -// provides a method for linting. -// -// Instances of this class provides basic thread-safety guarantee. -class Linter { - public: - explicit Linter(spv_target_env env); - - ~Linter(); - - // Sets the message consumer to the given |consumer|. The |consumer| will be - // invoked once for each message communicated from the library. - void SetMessageConsumer(MessageConsumer consumer); - - // Returns a reference to the registered message consumer. - const MessageConsumer& Consumer() const; - - bool Run(const uint32_t* binary, size_t binary_size); - - private: - struct Impl; - std::unique_ptr impl_; -}; -} // namespace spvtools - -#endif // INCLUDE_SPIRV_TOOLS_LINTER_HPP_ diff --git a/Extern/3rdParty/shaderc/shaderc/include/spirv-tools/optimizer.hpp b/Extern/3rdParty/shaderc/shaderc/include/spirv-tools/optimizer.hpp deleted file mode 100644 index 8579c8c..0000000 --- a/Extern/3rdParty/shaderc/shaderc/include/spirv-tools/optimizer.hpp +++ /dev/null @@ -1,997 +0,0 @@ -// Copyright (c) 2016 Google Inc. -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -#ifndef INCLUDE_SPIRV_TOOLS_OPTIMIZER_HPP_ -#define INCLUDE_SPIRV_TOOLS_OPTIMIZER_HPP_ - -#include -#include -#include -#include -#include -#include -#include - -#include "libspirv.hpp" - -namespace spvtools { - -namespace opt { -class Pass; -struct DescriptorSetAndBinding; -} // namespace opt - -// C++ interface for SPIR-V optimization functionalities. It wraps the context -// (including target environment and the corresponding SPIR-V grammar) and -// provides methods for registering optimization passes and optimizing. -// -// Instances of this class provides basic thread-safety guarantee. -class Optimizer { - public: - // The token for an optimization pass. It is returned via one of the - // Create*Pass() standalone functions at the end of this header file and - // consumed by the RegisterPass() method. Tokens are one-time objects that - // only support move; copying is not allowed. - struct PassToken { - struct Impl; // Opaque struct for holding internal data. - - PassToken(std::unique_ptr); - - // Tokens for built-in passes should be created using Create*Pass functions - // below; for out-of-tree passes, use this constructor instead. - // Note that this API isn't guaranteed to be stable and may change without - // preserving source or binary compatibility in the future. - PassToken(std::unique_ptr&& pass); - - // Tokens can only be moved. Copying is disabled. - PassToken(const PassToken&) = delete; - PassToken(PassToken&&); - PassToken& operator=(const PassToken&) = delete; - PassToken& operator=(PassToken&&); - - ~PassToken(); - - std::unique_ptr impl_; // Unique pointer to internal data. - }; - - // Constructs an instance with the given target |env|, which is used to decode - // the binaries to be optimized later. - // - // The instance will have an empty message consumer, which ignores all - // messages from the library. Use SetMessageConsumer() to supply a consumer - // if messages are of concern. - explicit Optimizer(spv_target_env env); - - // Disables copy/move constructor/assignment operations. - Optimizer(const Optimizer&) = delete; - Optimizer(Optimizer&&) = delete; - Optimizer& operator=(const Optimizer&) = delete; - Optimizer& operator=(Optimizer&&) = delete; - - // Destructs this instance. - ~Optimizer(); - - // Sets the message consumer to the given |consumer|. The |consumer| will be - // invoked once for each message communicated from the library. - void SetMessageConsumer(MessageConsumer consumer); - - // Returns a reference to the registered message consumer. - const MessageConsumer& consumer() const; - - // Registers the given |pass| to this optimizer. Passes will be run in the - // exact order of registration. The token passed in will be consumed by this - // method. - Optimizer& RegisterPass(PassToken&& pass); - - // Registers passes that attempt to improve performance of generated code. - // This sequence of passes is subject to constant review and will change - // from time to time. - // - // If |preserve_interface| is true, all non-io variables in the entry point - // interface are considered live and are not eliminated. - // |preserve_interface| should be true if HLSL is generated - // from the SPIR-V bytecode. - Optimizer& RegisterPerformancePasses(); - Optimizer& RegisterPerformancePasses(bool preserve_interface); - - // Registers passes that attempt to improve the size of generated code. - // This sequence of passes is subject to constant review and will change - // from time to time. - // - // If |preserve_interface| is true, all non-io variables in the entry point - // interface are considered live and are not eliminated. - // |preserve_interface| should be true if HLSL is generated - // from the SPIR-V bytecode. - Optimizer& RegisterSizePasses(); - Optimizer& RegisterSizePasses(bool preserve_interface); - - // Registers passes that attempt to legalize the generated code. - // - // Note: this recipe is specially designed for legalizing SPIR-V. It should be - // used by compilers after translating HLSL source code literally. It should - // *not* be used by general workloads for performance or size improvement. - // - // This sequence of passes is subject to constant review and will change - // from time to time. - // - // If |preserve_interface| is true, all non-io variables in the entry point - // interface are considered live and are not eliminated. - // |preserve_interface| should be true if HLSL is generated - // from the SPIR-V bytecode. - Optimizer& RegisterLegalizationPasses(); - Optimizer& RegisterLegalizationPasses(bool preserve_interface); - - // Register passes specified in the list of |flags|. Each flag must be a - // string of a form accepted by Optimizer::FlagHasValidForm(). - // - // If the list of flags contains an invalid entry, it returns false and an - // error message is emitted to the MessageConsumer object (use - // Optimizer::SetMessageConsumer to define a message consumer, if needed). - // - // If all the passes are registered successfully, it returns true. - bool RegisterPassesFromFlags(const std::vector& flags); - - // Registers the optimization pass associated with |flag|. This only accepts - // |flag| values of the form "--pass_name[=pass_args]". If no such pass - // exists, it returns false. Otherwise, the pass is registered and it returns - // true. - // - // The following flags have special meaning: - // - // -O: Registers all performance optimization passes - // (Optimizer::RegisterPerformancePasses) - // - // -Os: Registers all size optimization passes - // (Optimizer::RegisterSizePasses). - // - // --legalize-hlsl: Registers all passes that legalize SPIR-V generated by an - // HLSL front-end. - bool RegisterPassFromFlag(const std::string& flag); - - // Validates that |flag| has a valid format. Strings accepted: - // - // --pass_name[=pass_args] - // -O - // -Os - // - // If |flag| takes one of the forms above, it returns true. Otherwise, it - // returns false. - bool FlagHasValidForm(const std::string& flag) const; - - // Allows changing, after creation time, the target environment to be - // optimized for and validated. Should be called before calling Run(). - void SetTargetEnv(const spv_target_env env); - - // Optimizes the given SPIR-V module |original_binary| and writes the - // optimized binary into |optimized_binary|. The optimized binary uses - // the same SPIR-V version as the original binary. - // - // Returns true on successful optimization, whether or not the module is - // modified. Returns false if |original_binary| fails to validate or if errors - // occur when processing |original_binary| using any of the registered passes. - // In that case, no further passes are executed and the contents in - // |optimized_binary| may be invalid. - // - // By default, the binary is validated before any transforms are performed, - // and optionally after each transform. Validation uses SPIR-V spec rules - // for the SPIR-V version named in the binary's header (at word offset 1). - // Additionally, if the target environment is a client API (such as - // Vulkan 1.1), then validate for that client API version, to the extent - // that it is verifiable from data in the binary itself. - // - // It's allowed to alias |original_binary| to the start of |optimized_binary|. - bool Run(const uint32_t* original_binary, size_t original_binary_size, - std::vector* optimized_binary) const; - - // DEPRECATED: Same as above, except passes |options| to the validator when - // trying to validate the binary. If |skip_validation| is true, then the - // caller is guaranteeing that |original_binary| is valid, and the validator - // will not be run. The |max_id_bound| is the limit on the max id in the - // module. - bool Run(const uint32_t* original_binary, const size_t original_binary_size, - std::vector* optimized_binary, - const ValidatorOptions& options, bool skip_validation) const; - - // Same as above, except it takes an options object. See the documentation - // for |OptimizerOptions| to see which options can be set. - // - // By default, the binary is validated before any transforms are performed, - // and optionally after each transform. Validation uses SPIR-V spec rules - // for the SPIR-V version named in the binary's header (at word offset 1). - // Additionally, if the target environment is a client API (such as - // Vulkan 1.1), then validate for that client API version, to the extent - // that it is verifiable from data in the binary itself, or from the - // validator options set on the optimizer options. - bool Run(const uint32_t* original_binary, const size_t original_binary_size, - std::vector* optimized_binary, - const spv_optimizer_options opt_options) const; - - // Returns a vector of strings with all the pass names added to this - // optimizer's pass manager. These strings are valid until the associated - // pass manager is destroyed. - std::vector GetPassNames() const; - - // Sets the option to print the disassembly before each pass and after the - // last pass. If |out| is null, then no output is generated. Otherwise, - // output is sent to the |out| output stream. - Optimizer& SetPrintAll(std::ostream* out); - - // Sets the option to print the resource utilization of each pass. If |out| - // is null, then no output is generated. Otherwise, output is sent to the - // |out| output stream. - Optimizer& SetTimeReport(std::ostream* out); - - // Sets the option to validate the module after each pass. - Optimizer& SetValidateAfterAll(bool validate); - - private: - struct Impl; // Opaque struct for holding internal data. - std::unique_ptr impl_; // Unique pointer to internal data. -}; - -// Creates a null pass. -// A null pass does nothing to the SPIR-V module to be optimized. -Optimizer::PassToken CreateNullPass(); - -// Creates a strip-debug-info pass. -// A strip-debug-info pass removes all debug instructions (as documented in -// Section 3.42.2 of the SPIR-V spec) of the SPIR-V module to be optimized. -Optimizer::PassToken CreateStripDebugInfoPass(); - -// [Deprecated] This will create a strip-nonsemantic-info pass. See below. -Optimizer::PassToken CreateStripReflectInfoPass(); - -// Creates a strip-nonsemantic-info pass. -// A strip-nonsemantic-info pass removes all reflections and explicitly -// non-semantic instructions. -Optimizer::PassToken CreateStripNonSemanticInfoPass(); - -// Creates an eliminate-dead-functions pass. -// An eliminate-dead-functions pass will remove all functions that are not in -// the call trees rooted at entry points and exported functions. These -// functions are not needed because they will never be called. -Optimizer::PassToken CreateEliminateDeadFunctionsPass(); - -// Creates an eliminate-dead-members pass. -// An eliminate-dead-members pass will remove all unused members of structures. -// This will not affect the data layout of the remaining members. -Optimizer::PassToken CreateEliminateDeadMembersPass(); - -// Creates a set-spec-constant-default-value pass from a mapping from spec-ids -// to the default values in the form of string. -// A set-spec-constant-default-value pass sets the default values for the -// spec constants that have SpecId decorations (i.e., those defined by -// OpSpecConstant{|True|False} instructions). -Optimizer::PassToken CreateSetSpecConstantDefaultValuePass( - const std::unordered_map& id_value_map); - -// Creates a set-spec-constant-default-value pass from a mapping from spec-ids -// to the default values in the form of bit pattern. -// A set-spec-constant-default-value pass sets the default values for the -// spec constants that have SpecId decorations (i.e., those defined by -// OpSpecConstant{|True|False} instructions). -Optimizer::PassToken CreateSetSpecConstantDefaultValuePass( - const std::unordered_map>& id_value_map); - -// Creates a flatten-decoration pass. -// A flatten-decoration pass replaces grouped decorations with equivalent -// ungrouped decorations. That is, it replaces each OpDecorationGroup -// instruction and associated OpGroupDecorate and OpGroupMemberDecorate -// instructions with equivalent OpDecorate and OpMemberDecorate instructions. -// The pass does not attempt to preserve debug information for instructions -// it removes. -Optimizer::PassToken CreateFlattenDecorationPass(); - -// Creates a freeze-spec-constant-value pass. -// A freeze-spec-constant pass specializes the value of spec constants to -// their default values. This pass only processes the spec constants that have -// SpecId decorations (defined by OpSpecConstant, OpSpecConstantTrue, or -// OpSpecConstantFalse instructions) and replaces them with their normal -// counterparts (OpConstant, OpConstantTrue, or OpConstantFalse). The -// corresponding SpecId annotation instructions will also be removed. This -// pass does not fold the newly added normal constants and does not process -// other spec constants defined by OpSpecConstantComposite or -// OpSpecConstantOp. -Optimizer::PassToken CreateFreezeSpecConstantValuePass(); - -// Creates a fold-spec-constant-op-and-composite pass. -// A fold-spec-constant-op-and-composite pass folds spec constants defined by -// OpSpecConstantOp or OpSpecConstantComposite instruction, to normal Constants -// defined by OpConstantTrue, OpConstantFalse, OpConstant, OpConstantNull, or -// OpConstantComposite instructions. Note that spec constants defined with -// OpSpecConstant, OpSpecConstantTrue, or OpSpecConstantFalse instructions are -// not handled, as these instructions indicate their value are not determined -// and can be changed in future. A spec constant is foldable if all of its -// value(s) can be determined from the module. E.g., an integer spec constant -// defined with OpSpecConstantOp instruction can be folded if its value won't -// change later. This pass will replace the original OpSpecConstantOp -// instruction with an OpConstant instruction. When folding composite spec -// constants, new instructions may be inserted to define the components of the -// composite constant first, then the original spec constants will be replaced -// by OpConstantComposite instructions. -// -// There are some operations not supported yet: -// OpSConvert, OpFConvert, OpQuantizeToF16 and -// all the operations under Kernel capability. -// TODO(qining): Add support for the operations listed above. -Optimizer::PassToken CreateFoldSpecConstantOpAndCompositePass(); - -// Creates a unify-constant pass. -// A unify-constant pass de-duplicates the constants. Constants with the exact -// same value and identical form will be unified and only one constant will -// be kept for each unique pair of type and value. -// There are several cases not handled by this pass: -// 1) Constants defined by OpConstantNull instructions (null constants) and -// constants defined by OpConstantFalse, OpConstant or OpConstantComposite -// with value 0 (zero-valued normal constants) are not considered equivalent. -// So null constants won't be used to replace zero-valued normal constants, -// vice versa. -// 2) Whenever there are decorations to the constant's result id id, the -// constant won't be handled, which means, it won't be used to replace any -// other constants, neither can other constants replace it. -// 3) NaN in float point format with different bit patterns are not unified. -Optimizer::PassToken CreateUnifyConstantPass(); - -// Creates a eliminate-dead-constant pass. -// A eliminate-dead-constant pass removes dead constants, including normal -// constants defined by OpConstant, OpConstantComposite, OpConstantTrue, or -// OpConstantFalse and spec constants defined by OpSpecConstant, -// OpSpecConstantComposite, OpSpecConstantTrue, OpSpecConstantFalse or -// OpSpecConstantOp. -Optimizer::PassToken CreateEliminateDeadConstantPass(); - -// Creates a strength-reduction pass. -// A strength-reduction pass will look for opportunities to replace an -// instruction with an equivalent and less expensive one. For example, -// multiplying by a power of 2 can be replaced by a bit shift. -Optimizer::PassToken CreateStrengthReductionPass(); - -// Creates a block merge pass. -// This pass searches for blocks with a single Branch to a block with no -// other predecessors and merges the blocks into a single block. Continue -// blocks and Merge blocks are not candidates for the second block. -// -// The pass is most useful after Dead Branch Elimination, which can leave -// such sequences of blocks. Merging them makes subsequent passes more -// effective, such as single block local store-load elimination. -// -// While this pass reduces the number of occurrences of this sequence, at -// this time it does not guarantee all such sequences are eliminated. -// -// Presence of phi instructions can inhibit this optimization. Handling -// these is left for future improvements. -Optimizer::PassToken CreateBlockMergePass(); - -// Creates an exhaustive inline pass. -// An exhaustive inline pass attempts to exhaustively inline all function -// calls in all functions in an entry point call tree. The intent is to enable, -// albeit through brute force, analysis and optimization across function -// calls by subsequent optimization passes. As the inlining is exhaustive, -// there is no attempt to optimize for size or runtime performance. Functions -// that are not in the call tree of an entry point are not changed. -Optimizer::PassToken CreateInlineExhaustivePass(); - -// Creates an opaque inline pass. -// An opaque inline pass inlines all function calls in all functions in all -// entry point call trees where the called function contains an opaque type -// in either its parameter types or return type. An opaque type is currently -// defined as Image, Sampler or SampledImage. The intent is to enable, albeit -// through brute force, analysis and optimization across these function calls -// by subsequent passes in order to remove the storing of opaque types which is -// not legal in Vulkan. Functions that are not in the call tree of an entry -// point are not changed. -Optimizer::PassToken CreateInlineOpaquePass(); - -// Creates a single-block local variable load/store elimination pass. -// For every entry point function, do single block memory optimization of -// function variables referenced only with non-access-chain loads and stores. -// For each targeted variable load, if previous store to that variable in the -// block, replace the load's result id with the value id of the store. -// If previous load within the block, replace the current load's result id -// with the previous load's result id. In either case, delete the current -// load. Finally, check if any remaining stores are useless, and delete store -// and variable if possible. -// -// The presence of access chain references and function calls can inhibit -// the above optimization. -// -// Only modules with relaxed logical addressing (see opt/instruction.h) are -// currently processed. -// -// This pass is most effective if preceded by Inlining and -// LocalAccessChainConvert. This pass will reduce the work needed to be done -// by LocalSingleStoreElim and LocalMultiStoreElim. -// -// Only functions in the call tree of an entry point are processed. -Optimizer::PassToken CreateLocalSingleBlockLoadStoreElimPass(); - -// Create dead branch elimination pass. -// For each entry point function, this pass will look for SelectionMerge -// BranchConditionals with constant condition and convert to a Branch to -// the indicated label. It will delete resulting dead blocks. -// -// For all phi functions in merge block, replace all uses with the id -// corresponding to the living predecessor. -// -// Note that some branches and blocks may be left to avoid creating invalid -// control flow. Improving this is left to future work. -// -// This pass is most effective when preceded by passes which eliminate -// local loads and stores, effectively propagating constant values where -// possible. -Optimizer::PassToken CreateDeadBranchElimPass(); - -// Creates an SSA local variable load/store elimination pass. -// For every entry point function, eliminate all loads and stores of function -// scope variables only referenced with non-access-chain loads and stores. -// Eliminate the variables as well. -// -// The presence of access chain references and function calls can inhibit -// the above optimization. -// -// Only shader modules with relaxed logical addressing (see opt/instruction.h) -// are currently processed. Currently modules with any extensions enabled are -// not processed. This is left for future work. -// -// This pass is most effective if preceded by Inlining and -// LocalAccessChainConvert. LocalSingleStoreElim and LocalSingleBlockElim -// will reduce the work that this pass has to do. -Optimizer::PassToken CreateLocalMultiStoreElimPass(); - -// Creates a local access chain conversion pass. -// A local access chain conversion pass identifies all function scope -// variables which are accessed only with loads, stores and access chains -// with constant indices. It then converts all loads and stores of such -// variables into equivalent sequences of loads, stores, extracts and inserts. -// -// This pass only processes entry point functions. It currently only converts -// non-nested, non-ptr access chains. It does not process modules with -// non-32-bit integer types present. Optional memory access options on loads -// and stores are ignored as we are only processing function scope variables. -// -// This pass unifies access to these variables to a single mode and simplifies -// subsequent analysis and elimination of these variables along with their -// loads and stores allowing values to propagate to their points of use where -// possible. -Optimizer::PassToken CreateLocalAccessChainConvertPass(); - -// Creates a local single store elimination pass. -// For each entry point function, this pass eliminates loads and stores for -// function scope variable that are stored to only once, where possible. Only -// whole variable loads and stores are eliminated; access-chain references are -// not optimized. Replace all loads of such variables with the value that is -// stored and eliminate any resulting dead code. -// -// Currently, the presence of access chains and function calls can inhibit this -// pass, however the Inlining and LocalAccessChainConvert passes can make it -// more effective. In additional, many non-load/store memory operations are -// not supported and will prohibit optimization of a function. Support of -// these operations are future work. -// -// Only shader modules with relaxed logical addressing (see opt/instruction.h) -// are currently processed. -// -// This pass will reduce the work needed to be done by LocalSingleBlockElim -// and LocalMultiStoreElim and can improve the effectiveness of other passes -// such as DeadBranchElimination which depend on values for their analysis. -Optimizer::PassToken CreateLocalSingleStoreElimPass(); - -// Creates an insert/extract elimination pass. -// This pass processes each entry point function in the module, searching for -// extracts on a sequence of inserts. It further searches the sequence for an -// insert with indices identical to the extract. If such an insert can be -// found before hitting a conflicting insert, the extract's result id is -// replaced with the id of the values from the insert. -// -// Besides removing extracts this pass enables subsequent dead code elimination -// passes to delete the inserts. This pass performs best after access chains are -// converted to inserts and extracts and local loads and stores are eliminated. -Optimizer::PassToken CreateInsertExtractElimPass(); - -// Creates a dead insert elimination pass. -// This pass processes each entry point function in the module, searching for -// unreferenced inserts into composite types. These are most often unused -// stores to vector components. They are unused because they are never -// referenced, or because there is another insert to the same component between -// the insert and the reference. After removing the inserts, dead code -// elimination is attempted on the inserted values. -// -// This pass performs best after access chains are converted to inserts and -// extracts and local loads and stores are eliminated. While executing this -// pass can be advantageous on its own, it is also advantageous to execute -// this pass after CreateInsertExtractPass() as it will remove any unused -// inserts created by that pass. -Optimizer::PassToken CreateDeadInsertElimPass(); - -// Create aggressive dead code elimination pass -// This pass eliminates unused code from the module. In addition, -// it detects and eliminates code which may have spurious uses but which do -// not contribute to the output of the function. The most common cause of -// such code sequences is summations in loops whose result is no longer used -// due to dead code elimination. This optimization has additional compile -// time cost over standard dead code elimination. -// -// This pass only processes entry point functions. It also only processes -// shaders with relaxed logical addressing (see opt/instruction.h). It -// currently will not process functions with function calls. Unreachable -// functions are deleted. -// -// This pass will be made more effective by first running passes that remove -// dead control flow and inlines function calls. -// -// This pass can be especially useful after running Local Access Chain -// Conversion, which tends to cause cycles of dead code to be left after -// Store/Load elimination passes are completed. These cycles cannot be -// eliminated with standard dead code elimination. -// -// If |preserve_interface| is true, all non-io variables in the entry point -// interface are considered live and are not eliminated. This mode is needed -// by GPU-Assisted validation instrumentation, where a change in the interface -// is not allowed. -// -// If |remove_outputs| is true, allow outputs to be removed from the interface. -// This is only safe if the caller knows that there is no corresponding input -// variable in the following shader. It is false by default. -Optimizer::PassToken CreateAggressiveDCEPass(); -Optimizer::PassToken CreateAggressiveDCEPass(bool preserve_interface); -Optimizer::PassToken CreateAggressiveDCEPass(bool preserve_interface, - bool remove_outputs); - -// Creates a remove-unused-interface-variables pass. -// Removes variables referenced on the |OpEntryPoint| instruction that are not -// referenced in the entry point function or any function in its call tree. Note -// that this could cause the shader interface to no longer match other shader -// stages. -Optimizer::PassToken CreateRemoveUnusedInterfaceVariablesPass(); - -// Creates an empty pass. -// This is deprecated and will be removed. -// TODO(jaebaek): remove this pass after handling glslang's broken unit tests. -// https://github.com/KhronosGroup/glslang/pull/2440 -Optimizer::PassToken CreatePropagateLineInfoPass(); - -// Creates an empty pass. -// This is deprecated and will be removed. -// TODO(jaebaek): remove this pass after handling glslang's broken unit tests. -// https://github.com/KhronosGroup/glslang/pull/2440 -Optimizer::PassToken CreateRedundantLineInfoElimPass(); - -// Creates a compact ids pass. -// The pass remaps result ids to a compact and gapless range starting from %1. -Optimizer::PassToken CreateCompactIdsPass(); - -// Creates a remove duplicate pass. -// This pass removes various duplicates: -// * duplicate capabilities; -// * duplicate extended instruction imports; -// * duplicate types; -// * duplicate decorations. -Optimizer::PassToken CreateRemoveDuplicatesPass(); - -// Creates a CFG cleanup pass. -// This pass removes cruft from the control flow graph of functions that are -// reachable from entry points and exported functions. It currently includes the -// following functionality: -// -// - Removal of unreachable basic blocks. -Optimizer::PassToken CreateCFGCleanupPass(); - -// Create dead variable elimination pass. -// This pass will delete module scope variables, along with their decorations, -// that are not referenced. -Optimizer::PassToken CreateDeadVariableEliminationPass(); - -// create merge return pass. -// changes functions that have multiple return statements so they have a single -// return statement. -// -// for structured control flow it is assumed that the only unreachable blocks in -// the function are trivial merge and continue blocks. -// -// a trivial merge block contains the label and an opunreachable instructions, -// nothing else. a trivial continue block contain a label and an opbranch to -// the header, nothing else. -// -// these conditions are guaranteed to be met after running dead-branch -// elimination. -Optimizer::PassToken CreateMergeReturnPass(); - -// Create value numbering pass. -// This pass will look for instructions in the same basic block that compute the -// same value, and remove the redundant ones. -Optimizer::PassToken CreateLocalRedundancyEliminationPass(); - -// Create LICM pass. -// This pass will look for invariant instructions inside loops and hoist them to -// the loops preheader. -Optimizer::PassToken CreateLoopInvariantCodeMotionPass(); - -// Creates a loop fission pass. -// This pass will split all top level loops whose register pressure exceedes the -// given |threshold|. -Optimizer::PassToken CreateLoopFissionPass(size_t threshold); - -// Creates a loop fusion pass. -// This pass will look for adjacent loops that are compatible and legal to be -// fused. The fuse all such loops as long as the register usage for the fused -// loop stays under the threshold defined by |max_registers_per_loop|. -Optimizer::PassToken CreateLoopFusionPass(size_t max_registers_per_loop); - -// Creates a loop peeling pass. -// This pass will look for conditions inside a loop that are true or false only -// for the N first or last iteration. For loop with such condition, those N -// iterations of the loop will be executed outside of the main loop. -// To limit code size explosion, the loop peeling can only happen if the code -// size growth for each loop is under |code_growth_threshold|. -Optimizer::PassToken CreateLoopPeelingPass(); - -// Creates a loop unswitch pass. -// This pass will look for loop independent branch conditions and move the -// condition out of the loop and version the loop based on the taken branch. -// Works best after LICM and local multi store elimination pass. -Optimizer::PassToken CreateLoopUnswitchPass(); - -// Create global value numbering pass. -// This pass will look for instructions where the same value is computed on all -// paths leading to the instruction. Those instructions are deleted. -Optimizer::PassToken CreateRedundancyEliminationPass(); - -// Create scalar replacement pass. -// This pass replaces composite function scope variables with variables for each -// element if those elements are accessed individually. The parameter is a -// limit on the number of members in the composite variable that the pass will -// consider replacing. -Optimizer::PassToken CreateScalarReplacementPass(uint32_t size_limit = 100); - -// Create a private to local pass. -// This pass looks for variables declared in the private storage class that are -// used in only one function. Those variables are moved to the function storage -// class in the function that they are used. -Optimizer::PassToken CreatePrivateToLocalPass(); - -// Creates a conditional constant propagation (CCP) pass. -// This pass implements the SSA-CCP algorithm in -// -// Constant propagation with conditional branches, -// Wegman and Zadeck, ACM TOPLAS 13(2):181-210. -// -// Constant values in expressions and conditional jumps are folded and -// simplified. This may reduce code size by removing never executed jump targets -// and computations with constant operands. -Optimizer::PassToken CreateCCPPass(); - -// Creates a workaround driver bugs pass. This pass attempts to work around -// a known driver bug (issue #1209) by identifying the bad code sequences and -// rewriting them. -// -// Current workaround: Avoid OpUnreachable instructions in loops. -Optimizer::PassToken CreateWorkaround1209Pass(); - -// Creates a pass that converts if-then-else like assignments into OpSelect. -Optimizer::PassToken CreateIfConversionPass(); - -// Creates a pass that will replace instructions that are not valid for the -// current shader stage by constants. Has no effect on non-shader modules. -Optimizer::PassToken CreateReplaceInvalidOpcodePass(); - -// Creates a pass that simplifies instructions using the instruction folder. -Optimizer::PassToken CreateSimplificationPass(); - -// Create loop unroller pass. -// Creates a pass to unroll loops which have the "Unroll" loop control -// mask set. The loops must meet a specific criteria in order to be unrolled -// safely this criteria is checked before doing the unroll by the -// LoopUtils::CanPerformUnroll method. Any loop that does not meet the criteria -// won't be unrolled. See CanPerformUnroll LoopUtils.h for more information. -Optimizer::PassToken CreateLoopUnrollPass(bool fully_unroll, int factor = 0); - -// Create the SSA rewrite pass. -// This pass converts load/store operations on function local variables into -// operations on SSA IDs. This allows SSA optimizers to act on these variables. -// Only variables that are local to the function and of supported types are -// processed (see IsSSATargetVar for details). -Optimizer::PassToken CreateSSARewritePass(); - -// Create pass to convert relaxed precision instructions to half precision. -// This pass converts as many relaxed float32 arithmetic operations to half as -// possible. It converts any float32 operands to half if needed. It converts -// any resulting half precision values back to float32 as needed. No variables -// are changed. No image operations are changed. -// -// Best if run after function scope store/load and composite operation -// eliminations are run. Also best if followed by instruction simplification, -// redundancy elimination and DCE. -Optimizer::PassToken CreateConvertRelaxedToHalfPass(); - -// Create relax float ops pass. -// This pass decorates all float32 result instructions with RelaxedPrecision -// if not already so decorated. -Optimizer::PassToken CreateRelaxFloatOpsPass(); - -// Create copy propagate arrays pass. -// This pass looks to copy propagate memory references for arrays. It looks -// for specific code patterns to recognize array copies. -Optimizer::PassToken CreateCopyPropagateArraysPass(); - -// Create a vector dce pass. -// This pass looks for components of vectors that are unused, and removes them -// from the vector. Note this would still leave around lots of dead code that -// a pass of ADCE will be able to remove. -Optimizer::PassToken CreateVectorDCEPass(); - -// Create a pass to reduce the size of loads. -// This pass looks for loads of structures where only a few of its members are -// used. It replaces the loads feeding an OpExtract with an OpAccessChain and -// a load of the specific elements. The parameter is a threshold to determine -// whether we have to replace the load or not. If the ratio of the used -// components of the load is less than the threshold, we replace the load. -Optimizer::PassToken CreateReduceLoadSizePass( - double load_replacement_threshold = 0.9); - -// Create a pass to combine chained access chains. -// This pass looks for access chains fed by other access chains and combines -// them into a single instruction where possible. -Optimizer::PassToken CreateCombineAccessChainsPass(); - -// Create a pass to instrument bindless descriptor checking -// This pass instruments all bindless references to check that descriptor -// array indices are inbounds, and if the descriptor indexing extension is -// enabled, that the descriptor has been initialized. If the reference is -// invalid, a record is written to the debug output buffer (if space allows) -// and a null value is returned. This pass is designed to support bindless -// validation in the Vulkan validation layers. -// -// TODO(greg-lunarg): Add support for buffer references. Currently only does -// checking for image references. -// -// Dead code elimination should be run after this pass as the original, -// potentially invalid code is not removed and could cause undefined behavior, -// including crashes. It may also be beneficial to run Simplification -// (ie Constant Propagation), DeadBranchElim and BlockMerge after this pass to -// optimize instrument code involving the testing of compile-time constants. -// It is also generally recommended that this pass (and all -// instrumentation passes) be run after any legalization and optimization -// passes. This will give better analysis for the instrumentation and avoid -// potentially de-optimizing the instrument code, for example, inlining -// the debug record output function throughout the module. -// -// The instrumentation will read and write buffers in debug -// descriptor set |desc_set|. It will write |shader_id| in each output record -// to identify the shader module which generated the record. -Optimizer::PassToken CreateInstBindlessCheckPass(uint32_t desc_set, - uint32_t shader_id); - -// Create a pass to instrument physical buffer address checking -// This pass instruments all physical buffer address references to check that -// all referenced bytes fall in a valid buffer. If the reference is -// invalid, a record is written to the debug output buffer (if space allows) -// and a null value is returned. This pass is designed to support buffer -// address validation in the Vulkan validation layers. -// -// Dead code elimination should be run after this pass as the original, -// potentially invalid code is not removed and could cause undefined behavior, -// including crashes. Instruction simplification would likely also be -// beneficial. It is also generally recommended that this pass (and all -// instrumentation passes) be run after any legalization and optimization -// passes. This will give better analysis for the instrumentation and avoid -// potentially de-optimizing the instrument code, for example, inlining -// the debug record output function throughout the module. -// -// The instrumentation will read and write buffers in debug -// descriptor set |desc_set|. It will write |shader_id| in each output record -// to identify the shader module which generated the record. -Optimizer::PassToken CreateInstBuffAddrCheckPass(uint32_t desc_set, - uint32_t shader_id); - -// Create a pass to instrument OpDebugPrintf instructions. -// This pass replaces all OpDebugPrintf instructions with instructions to write -// a record containing the string id and the all specified values into a special -// printf output buffer (if space allows). This pass is designed to support -// the printf validation in the Vulkan validation layers. -// -// The instrumentation will write buffers in debug descriptor set |desc_set|. -// It will write |shader_id| in each output record to identify the shader -// module which generated the record. -Optimizer::PassToken CreateInstDebugPrintfPass(uint32_t desc_set, - uint32_t shader_id); - -// Create a pass to upgrade to the VulkanKHR memory model. -// This pass upgrades the Logical GLSL450 memory model to Logical VulkanKHR. -// Additionally, it modifies memory, image, atomic and barrier operations to -// conform to that model's requirements. -Optimizer::PassToken CreateUpgradeMemoryModelPass(); - -// Create a pass to do code sinking. Code sinking is a transformation -// where an instruction is moved into a more deeply nested construct. -Optimizer::PassToken CreateCodeSinkingPass(); - -// Create a pass to fix incorrect storage classes. In order to make code -// generation simpler, DXC may generate code where the storage classes do not -// match up correctly. This pass will fix the errors that it can. -Optimizer::PassToken CreateFixStorageClassPass(); - -// Creates a graphics robust access pass. -// -// This pass injects code to clamp indexed accesses to buffers and internal -// arrays, providing guarantees satisfying Vulkan's robustBufferAccess rules. -// -// TODO(dneto): Clamps coordinates and sample index for pointer calculations -// into storage images (OpImageTexelPointer). For an cube array image, it -// assumes the maximum layer count times 6 is at most 0xffffffff. -// -// NOTE: This pass will fail with a message if: -// - The module is not a Shader module. -// - The module declares VariablePointers, VariablePointersStorageBuffer, or -// RuntimeDescriptorArrayEXT capabilities. -// - The module uses an addressing model other than Logical -// - Access chain indices are wider than 64 bits. -// - Access chain index for a struct is not an OpConstant integer or is out -// of range. (The module is already invalid if that is the case.) -// - TODO(dneto): The OpImageTexelPointer coordinate component is not 32-bits -// wide. -// -// NOTE: Access chain indices are always treated as signed integers. So -// if an array has a fixed size of more than 2^31 elements, then elements -// from 2^31 and above are never accessible with a 32-bit index, -// signed or unsigned. For this case, this pass will clamp the index -// between 0 and at 2^31-1, inclusive. -// Similarly, if an array has more then 2^15 element and is accessed with -// a 16-bit index, then elements from 2^15 and above are not accessible. -// In this case, the pass will clamp the index between 0 and 2^15-1 -// inclusive. -Optimizer::PassToken CreateGraphicsRobustAccessPass(); - -// Create a pass to spread Volatile semantics to variables with SMIDNV, -// WarpIDNV, SubgroupSize, SubgroupLocalInvocationId, SubgroupEqMask, -// SubgroupGeMask, SubgroupGtMask, SubgroupLeMask, or SubgroupLtMask BuiltIn -// decorations or OpLoad for them when the shader model is the ray generation, -// closest hit, miss, intersection, or callable. This pass can be used for -// VUID-StandaloneSpirv-VulkanMemoryModel-04678 and -// VUID-StandaloneSpirv-VulkanMemoryModel-04679 (See "Standalone SPIR-V -// Validation" section of Vulkan spec "Appendix A: Vulkan Environment for -// SPIR-V"). When the SPIR-V version is 1.6 or above, the pass also spreads -// the Volatile semantics to a variable with HelperInvocation BuiltIn decoration -// in the fragement shader. -Optimizer::PassToken CreateSpreadVolatileSemanticsPass(); - -// Create a pass to replace a descriptor access using variable index. -// This pass replaces every access using a variable index to array variable -// |desc| that has a DescriptorSet and Binding decorations with a constant -// element of the array. In order to replace the access using a variable index -// with the constant element, it uses a switch statement. -Optimizer::PassToken CreateReplaceDescArrayAccessUsingVarIndexPass(); - -// Create descriptor scalar replacement pass. -// This pass replaces every array variable |desc| that has a DescriptorSet and -// Binding decorations with a new variable for each element of the array. -// Suppose |desc| was bound at binding |b|. Then the variable corresponding to -// |desc[i]| will have binding |b+i|. The descriptor set will be the same. It -// is assumed that no other variable already has a binding that will used by one -// of the new variables. If not, the pass will generate invalid Spir-V. All -// accesses to |desc| must be OpAccessChain instructions with a literal index -// for the first index. -Optimizer::PassToken CreateDescriptorScalarReplacementPass(); - -// Create a pass to replace each OpKill instruction with a function call to a -// function that has a single OpKill. Also replace each OpTerminateInvocation -// instruction with a function call to a function that has a single -// OpTerminateInvocation. This allows more code to be inlined. -Optimizer::PassToken CreateWrapOpKillPass(); - -// Replaces the extensions VK_AMD_shader_ballot,VK_AMD_gcn_shader, and -// VK_AMD_shader_trinary_minmax with equivalent code using core instructions and -// capabilities. -Optimizer::PassToken CreateAmdExtToKhrPass(); - -// Replaces the internal version of GLSLstd450 InterpolateAt* extended -// instructions with the externally valid version. The internal version allows -// an OpLoad of the interpolant for the first argument. This pass removes the -// OpLoad and replaces it with its pointer. glslang and possibly other -// frontends will create the internal version for HLSL. This pass will be part -// of HLSL legalization and should be called after interpolants have been -// propagated into their final positions. -Optimizer::PassToken CreateInterpolateFixupPass(); - -// Removes unused components from composite input variables. Current -// implementation just removes trailing unused components from input arrays -// and structs. The pass performs best after maximizing dead code removal. -// A subsequent dead code elimination pass would be beneficial in removing -// newly unused component types. -// -// WARNING: This pass can only be safely applied standalone to vertex shaders -// as it can otherwise cause interface incompatibilities with the preceding -// shader in the pipeline. If applied to non-vertex shaders, the user should -// follow by applying EliminateDeadOutputStores and -// EliminateDeadOutputComponents to the preceding shader. -Optimizer::PassToken CreateEliminateDeadInputComponentsPass(); - -// Removes unused components from composite output variables. Current -// implementation just removes trailing unused components from output arrays -// and structs. The pass performs best after eliminating dead output stores. -// A subsequent dead code elimination pass would be beneficial in removing -// newly unused component types. Currently only supports vertex and fragment -// shaders. -// -// WARNING: This pass cannot be safely applied standalone as it can cause -// interface incompatibility with the following shader in the pipeline. The -// user should first apply EliminateDeadInputComponents to the following -// shader, then apply EliminateDeadOutputStores to this shader. -Optimizer::PassToken CreateEliminateDeadOutputComponentsPass(); - -// Removes unused components from composite input variables. This safe -// version will not cause interface incompatibilities since it only changes -// vertex shaders. The current implementation just removes trailing unused -// components from input structs and input arrays. The pass performs best -// after maximizing dead code removal. A subsequent dead code elimination -// pass would be beneficial in removing newly unused component types. -Optimizer::PassToken CreateEliminateDeadInputComponentsSafePass(); - -// Analyzes shader and populates |live_locs| and |live_builtins|. Best results -// will be obtained if shader has all dead code eliminated first. |live_locs| -// and |live_builtins| are subsequently used when calling -// CreateEliminateDeadOutputStoresPass on the preceding shader. Currently only -// supports tesc, tese, geom, and frag shaders. -Optimizer::PassToken CreateAnalyzeLiveInputPass( - std::unordered_set* live_locs, - std::unordered_set* live_builtins); - -// Removes stores to output locations not listed in |live_locs| or -// |live_builtins|. Best results are obtained if constant propagation is -// performed first. A subsequent call to ADCE will eliminate any dead code -// created by the removal of the stores. A subsequent call to -// CreateEliminateDeadOutputComponentsPass will eliminate any dead output -// components created by the elimination of the stores. Currently only supports -// vert, tesc, tese, and geom shaders. -Optimizer::PassToken CreateEliminateDeadOutputStoresPass( - std::unordered_set* live_locs, - std::unordered_set* live_builtins); - -// Creates a convert-to-sampled-image pass to convert images and/or -// samplers with given pairs of descriptor set and binding to sampled image. -// If a pair of an image and a sampler have the same pair of descriptor set and -// binding that is one of the given pairs, they will be converted to a sampled -// image. In addition, if only an image has the descriptor set and binding that -// is one of the given pairs, it will be converted to a sampled image as well. -Optimizer::PassToken CreateConvertToSampledImagePass( - const std::vector& - descriptor_set_binding_pairs); - -// Create an interface-variable-scalar-replacement pass that replaces array or -// matrix interface variables with a series of scalar or vector interface -// variables. For example, it replaces `float3 foo[2]` with `float3 foo0, foo1`. -Optimizer::PassToken CreateInterfaceVariableScalarReplacementPass(); - -// Creates a remove-dont-inline pass to remove the |DontInline| function control -// from every function in the module. This is useful if you want the inliner to -// inline these functions some reason. -Optimizer::PassToken CreateRemoveDontInlinePass(); -// Create a fix-func-call-param pass to fix non memory argument for the function -// call, as spirv-validation requires function parameters to be an memory -// object, currently the pass would remove accesschain pointer argument passed -// to the function -Optimizer::PassToken CreateFixFuncCallArgumentsPass(); - -// Creates a trim-capabilities pass. -// This pass removes unused capabilities for a given module, and if possible, -// associated extensions. -// See `trim_capabilities.h` for the list of supported capabilities. -// -// If the module contains unsupported capabilities, this pass will ignore them. -// This should be fine in most cases, but could yield to incorrect results if -// the unknown capability interacts with one of the trimmed capabilities. -Optimizer::PassToken CreateTrimCapabilitiesPass(); - -} // namespace spvtools - -#endif // INCLUDE_SPIRV_TOOLS_OPTIMIZER_HPP_ diff --git a/Extern/3rdParty/shaderc/shaderc/include/spirv/1.0/GLSL.std.450.h b/Extern/3rdParty/shaderc/shaderc/include/spirv/1.0/GLSL.std.450.h deleted file mode 100644 index 54cc00e..0000000 --- a/Extern/3rdParty/shaderc/shaderc/include/spirv/1.0/GLSL.std.450.h +++ /dev/null @@ -1,131 +0,0 @@ -/* -** Copyright (c) 2014-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. -*/ - -#ifndef GLSLstd450_H -#define GLSLstd450_H - -static const int GLSLstd450Version = 100; -static const int GLSLstd450Revision = 3; - -enum GLSLstd450 { - GLSLstd450Bad = 0, // Don't use - - GLSLstd450Round = 1, - GLSLstd450RoundEven = 2, - GLSLstd450Trunc = 3, - GLSLstd450FAbs = 4, - GLSLstd450SAbs = 5, - GLSLstd450FSign = 6, - GLSLstd450SSign = 7, - GLSLstd450Floor = 8, - GLSLstd450Ceil = 9, - GLSLstd450Fract = 10, - - GLSLstd450Radians = 11, - GLSLstd450Degrees = 12, - GLSLstd450Sin = 13, - GLSLstd450Cos = 14, - GLSLstd450Tan = 15, - GLSLstd450Asin = 16, - GLSLstd450Acos = 17, - GLSLstd450Atan = 18, - GLSLstd450Sinh = 19, - GLSLstd450Cosh = 20, - GLSLstd450Tanh = 21, - GLSLstd450Asinh = 22, - GLSLstd450Acosh = 23, - GLSLstd450Atanh = 24, - GLSLstd450Atan2 = 25, - - GLSLstd450Pow = 26, - GLSLstd450Exp = 27, - GLSLstd450Log = 28, - GLSLstd450Exp2 = 29, - GLSLstd450Log2 = 30, - GLSLstd450Sqrt = 31, - GLSLstd450InverseSqrt = 32, - - GLSLstd450Determinant = 33, - GLSLstd450MatrixInverse = 34, - - GLSLstd450Modf = 35, // second operand needs an OpVariable to write to - GLSLstd450ModfStruct = 36, // no OpVariable operand - GLSLstd450FMin = 37, - GLSLstd450UMin = 38, - GLSLstd450SMin = 39, - GLSLstd450FMax = 40, - GLSLstd450UMax = 41, - GLSLstd450SMax = 42, - GLSLstd450FClamp = 43, - GLSLstd450UClamp = 44, - GLSLstd450SClamp = 45, - GLSLstd450FMix = 46, - GLSLstd450IMix = 47, // Reserved - GLSLstd450Step = 48, - GLSLstd450SmoothStep = 49, - - GLSLstd450Fma = 50, - GLSLstd450Frexp = 51, // second operand needs an OpVariable to write to - GLSLstd450FrexpStruct = 52, // no OpVariable operand - GLSLstd450Ldexp = 53, - - GLSLstd450PackSnorm4x8 = 54, - GLSLstd450PackUnorm4x8 = 55, - GLSLstd450PackSnorm2x16 = 56, - GLSLstd450PackUnorm2x16 = 57, - GLSLstd450PackHalf2x16 = 58, - GLSLstd450PackDouble2x32 = 59, - GLSLstd450UnpackSnorm2x16 = 60, - GLSLstd450UnpackUnorm2x16 = 61, - GLSLstd450UnpackHalf2x16 = 62, - GLSLstd450UnpackSnorm4x8 = 63, - GLSLstd450UnpackUnorm4x8 = 64, - GLSLstd450UnpackDouble2x32 = 65, - - GLSLstd450Length = 66, - GLSLstd450Distance = 67, - GLSLstd450Cross = 68, - GLSLstd450Normalize = 69, - GLSLstd450FaceForward = 70, - GLSLstd450Reflect = 71, - GLSLstd450Refract = 72, - - GLSLstd450FindILsb = 73, - GLSLstd450FindSMsb = 74, - GLSLstd450FindUMsb = 75, - - GLSLstd450InterpolateAtCentroid = 76, - GLSLstd450InterpolateAtSample = 77, - GLSLstd450InterpolateAtOffset = 78, - - GLSLstd450NMin = 79, - GLSLstd450NMax = 80, - GLSLstd450NClamp = 81, - - GLSLstd450Count -}; - -#endif // #ifndef GLSLstd450_H diff --git a/Extern/3rdParty/shaderc/shaderc/include/spirv/1.0/OpenCL.std.h b/Extern/3rdParty/shaderc/shaderc/include/spirv/1.0/OpenCL.std.h deleted file mode 100644 index 19a6688..0000000 --- a/Extern/3rdParty/shaderc/shaderc/include/spirv/1.0/OpenCL.std.h +++ /dev/null @@ -1,210 +0,0 @@ -/* -** Copyright (c) 2015-2017 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. -*/ - -namespace OpenCLLIB { - -enum Entrypoints { - - // Section 2.1: Math extended instructions - Acos = 0, - Acosh = 1, - Acospi = 2, - Asin = 3, - Asinh = 4, - Asinpi = 5, - Atan = 6, - Atan2 = 7, - Atanh = 8, - Atanpi = 9, - Atan2pi = 10, - Cbrt = 11, - Ceil = 12, - Copysign = 13, - Cos = 14, - Cosh = 15, - Cospi = 16, - Erfc = 17, - Erf = 18, - Exp = 19, - Exp2 = 20, - Exp10 = 21, - Expm1 = 22, - Fabs = 23, - Fdim = 24, - Floor = 25, - Fma = 26, - Fmax = 27, - Fmin = 28, - Fmod = 29, - Fract = 30, - Frexp = 31, - Hypot = 32, - Ilogb = 33, - Ldexp = 34, - Lgamma = 35, - Lgamma_r = 36, - Log = 37, - Log2 = 38, - Log10 = 39, - Log1p = 40, - Logb = 41, - Mad = 42, - Maxmag = 43, - Minmag = 44, - Modf = 45, - Nan = 46, - Nextafter = 47, - Pow = 48, - Pown = 49, - Powr = 50, - Remainder = 51, - Remquo = 52, - Rint = 53, - Rootn = 54, - Round = 55, - Rsqrt = 56, - Sin = 57, - Sincos = 58, - Sinh = 59, - Sinpi = 60, - Sqrt = 61, - Tan = 62, - Tanh = 63, - Tanpi = 64, - Tgamma = 65, - Trunc = 66, - Half_cos = 67, - Half_divide = 68, - Half_exp = 69, - Half_exp2 = 70, - Half_exp10 = 71, - Half_log = 72, - Half_log2 = 73, - Half_log10 = 74, - Half_powr = 75, - Half_recip = 76, - Half_rsqrt = 77, - Half_sin = 78, - Half_sqrt = 79, - Half_tan = 80, - Native_cos = 81, - Native_divide = 82, - Native_exp = 83, - Native_exp2 = 84, - Native_exp10 = 85, - Native_log = 86, - Native_log2 = 87, - Native_log10 = 88, - Native_powr = 89, - Native_recip = 90, - Native_rsqrt = 91, - Native_sin = 92, - Native_sqrt = 93, - Native_tan = 94, - - // Section 2.2: Integer instructions - SAbs = 141, - SAbs_diff = 142, - SAdd_sat = 143, - UAdd_sat = 144, - SHadd = 145, - UHadd = 146, - SRhadd = 147, - URhadd = 148, - SClamp = 149, - UClamp = 150, - Clz = 151, - Ctz = 152, - SMad_hi = 153, - UMad_sat = 154, - SMad_sat = 155, - SMax = 156, - UMax = 157, - SMin = 158, - UMin = 159, - SMul_hi = 160, - Rotate = 161, - SSub_sat = 162, - USub_sat = 163, - U_Upsample = 164, - S_Upsample = 165, - Popcount = 166, - SMad24 = 167, - UMad24 = 168, - SMul24 = 169, - UMul24 = 170, - UAbs = 201, - UAbs_diff = 202, - UMul_hi = 203, - UMad_hi = 204, - - // Section 2.3: Common instructions - FClamp = 95, - Degrees = 96, - FMax_common = 97, - FMin_common = 98, - Mix = 99, - Radians = 100, - Step = 101, - Smoothstep = 102, - Sign = 103, - - // Section 2.4: Geometric instructions - Cross = 104, - Distance = 105, - Length = 106, - Normalize = 107, - Fast_distance = 108, - Fast_length = 109, - Fast_normalize = 110, - - // Section 2.5: Relational instructions - Bitselect = 186, - Select = 187, - - // Section 2.6: Vector Data Load and Store instructions - Vloadn = 171, - Vstoren = 172, - Vload_half = 173, - Vload_halfn = 174, - Vstore_half = 175, - Vstore_half_r = 176, - Vstore_halfn = 177, - Vstore_halfn_r = 178, - Vloada_halfn = 179, - Vstorea_halfn = 180, - Vstorea_halfn_r = 181, - - // Section 2.7: Miscellaneous Vector instructions - Shuffle = 182, - Shuffle2 = 183, - - // Section 2.8: Misc instructions - Printf = 184, - Prefetch = 185, -}; - -} // end namespace OpenCLLIB diff --git a/Extern/3rdParty/shaderc/shaderc/include/spirv/1.0/extinst.glsl.std.450.grammar.json b/Extern/3rdParty/shaderc/shaderc/include/spirv/1.0/extinst.glsl.std.450.grammar.json deleted file mode 100644 index 3d9f39e..0000000 --- a/Extern/3rdParty/shaderc/shaderc/include/spirv/1.0/extinst.glsl.std.450.grammar.json +++ /dev/null @@ -1,642 +0,0 @@ -{ - "copyright" : [ - "Copyright (c) 2014-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." - ], - "version" : 100, - "revision" : 2, - "instructions" : [ - { - "opname" : "Round", - "opcode" : 1, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" } - ] - }, - { - "opname" : "RoundEven", - "opcode" : 2, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" } - ] - }, - { - "opname" : "Trunc", - "opcode" : 3, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" } - ] - }, - { - "opname" : "FAbs", - "opcode" : 4, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" } - ] - }, - { - "opname" : "SAbs", - "opcode" : 5, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" } - ] - }, - { - "opname" : "FSign", - "opcode" : 6, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" } - ] - }, - { - "opname" : "SSign", - "opcode" : 7, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" } - ] - }, - { - "opname" : "Floor", - "opcode" : 8, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" } - ] - }, - { - "opname" : "Ceil", - "opcode" : 9, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" } - ] - }, - { - "opname" : "Fract", - "opcode" : 10, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" } - ] - }, - { - "opname" : "Radians", - "opcode" : 11, - "operands" : [ - { "kind" : "IdRef", "name" : "'degrees'" } - ] - }, - { - "opname" : "Degrees", - "opcode" : 12, - "operands" : [ - { "kind" : "IdRef", "name" : "'radians'" } - ] - }, - { - "opname" : "Sin", - "opcode" : 13, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" } - ] - }, - { - "opname" : "Cos", - "opcode" : 14, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" } - ] - }, - { - "opname" : "Tan", - "opcode" : 15, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" } - ] - }, - { - "opname" : "Asin", - "opcode" : 16, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" } - ] - }, - { - "opname" : "Acos", - "opcode" : 17, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" } - ] - }, - { - "opname" : "Atan", - "opcode" : 18, - "operands" : [ - { "kind" : "IdRef", "name" : "'y_over_x'" } - ] - }, - { - "opname" : "Sinh", - "opcode" : 19, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" } - ] - }, - { - "opname" : "Cosh", - "opcode" : 20, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" } - ] - }, - { - "opname" : "Tanh", - "opcode" : 21, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" } - ] - }, - { - "opname" : "Asinh", - "opcode" : 22, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" } - ] - }, - { - "opname" : "Acosh", - "opcode" : 23, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" } - ] - }, - { - "opname" : "Atanh", - "opcode" : 24, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" } - ] - }, - { - "opname" : "Atan2", - "opcode" : 25, - "operands" : [ - { "kind" : "IdRef", "name" : "'y'" }, - { "kind" : "IdRef", "name" : "'x'" } - ] - }, - { - "opname" : "Pow", - "opcode" : 26, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" }, - { "kind" : "IdRef", "name" : "'y'" } - ] - }, - { - "opname" : "Exp", - "opcode" : 27, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" } - ] - }, - { - "opname" : "Log", - "opcode" : 28, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" } - ] - }, - { - "opname" : "Exp2", - "opcode" : 29, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" } - ] - }, - { - "opname" : "Log2", - "opcode" : 30, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" } - ] - }, - { - "opname" : "Sqrt", - "opcode" : 31, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" } - ] - }, - { - "opname" : "InverseSqrt", - "opcode" : 32, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" } - ] - }, - { - "opname" : "Determinant", - "opcode" : 33, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" } - ] - }, - { - "opname" : "MatrixInverse", - "opcode" : 34, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" } - ] - }, - { - "opname" : "Modf", - "opcode" : 35, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" }, - { "kind" : "IdRef", "name" : "'i'" } - ] - }, - { - "opname" : "ModfStruct", - "opcode" : 36, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" } - ] - }, - { - "opname" : "FMin", - "opcode" : 37, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" }, - { "kind" : "IdRef", "name" : "'y'" } - ] - }, - { - "opname" : "UMin", - "opcode" : 38, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" }, - { "kind" : "IdRef", "name" : "'y'" } - ] - }, - { - "opname" : "SMin", - "opcode" : 39, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" }, - { "kind" : "IdRef", "name" : "'y'" } - ] - }, - { - "opname" : "FMax", - "opcode" : 40, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" }, - { "kind" : "IdRef", "name" : "'y'" } - ] - }, - { - "opname" : "UMax", - "opcode" : 41, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" }, - { "kind" : "IdRef", "name" : "'y'" } - ] - }, - { - "opname" : "SMax", - "opcode" : 42, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" }, - { "kind" : "IdRef", "name" : "'y'" } - ] - }, - { - "opname" : "FClamp", - "opcode" : 43, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" }, - { "kind" : "IdRef", "name" : "'minVal'" }, - { "kind" : "IdRef", "name" : "'maxVal'" } - ] - }, - { - "opname" : "UClamp", - "opcode" : 44, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" }, - { "kind" : "IdRef", "name" : "'minVal'" }, - { "kind" : "IdRef", "name" : "'maxVal'" } - ] - }, - { - "opname" : "SClamp", - "opcode" : 45, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" }, - { "kind" : "IdRef", "name" : "'minVal'" }, - { "kind" : "IdRef", "name" : "'maxVal'" } - ] - }, - { - "opname" : "FMix", - "opcode" : 46, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" }, - { "kind" : "IdRef", "name" : "'y'" }, - { "kind" : "IdRef", "name" : "'a'" } - ] - }, - { - "opname" : "IMix", - "opcode" : 47, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" }, - { "kind" : "IdRef", "name" : "'y'" }, - { "kind" : "IdRef", "name" : "'a'" } - ] - }, - { - "opname" : "Step", - "opcode" : 48, - "operands" : [ - { "kind" : "IdRef", "name" : "'edge'" }, - { "kind" : "IdRef", "name" : "'x'" } - ] - }, - { - "opname" : "SmoothStep", - "opcode" : 49, - "operands" : [ - { "kind" : "IdRef", "name" : "'edge0'" }, - { "kind" : "IdRef", "name" : "'edge1'" }, - { "kind" : "IdRef", "name" : "'x'" } - ] - }, - { - "opname" : "Fma", - "opcode" : 50, - "operands" : [ - { "kind" : "IdRef", "name" : "'a'" }, - { "kind" : "IdRef", "name" : "'b'" }, - { "kind" : "IdRef", "name" : "'c'" } - ] - }, - { - "opname" : "Frexp", - "opcode" : 51, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" }, - { "kind" : "IdRef", "name" : "'exp'" } - ] - }, - { - "opname" : "FrexpStruct", - "opcode" : 52, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" } - ] - }, - { - "opname" : "Ldexp", - "opcode" : 53, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" }, - { "kind" : "IdRef", "name" : "'exp'" } - ] - }, - { - "opname" : "PackSnorm4x8", - "opcode" : 54, - "operands" : [ - { "kind" : "IdRef", "name" : "'v'" } - ] - }, - { - "opname" : "PackUnorm4x8", - "opcode" : 55, - "operands" : [ - { "kind" : "IdRef", "name" : "'v'" } - ] - }, - { - "opname" : "PackSnorm2x16", - "opcode" : 56, - "operands" : [ - { "kind" : "IdRef", "name" : "'v'" } - ] - }, - { - "opname" : "PackUnorm2x16", - "opcode" : 57, - "operands" : [ - { "kind" : "IdRef", "name" : "'v'" } - ] - }, - { - "opname" : "PackHalf2x16", - "opcode" : 58, - "operands" : [ - { "kind" : "IdRef", "name" : "'v'" } - ] - }, - { - "opname" : "PackDouble2x32", - "opcode" : 59, - "operands" : [ - { "kind" : "IdRef", "name" : "'v'" } - ], - "capabilities" : [ "Float64" ] - }, - { - "opname" : "UnpackSnorm2x16", - "opcode" : 60, - "operands" : [ - { "kind" : "IdRef", "name" : "'p'" } - ] - }, - { - "opname" : "UnpackUnorm2x16", - "opcode" : 61, - "operands" : [ - { "kind" : "IdRef", "name" : "'p'" } - ] - }, - { - "opname" : "UnpackHalf2x16", - "opcode" : 62, - "operands" : [ - { "kind" : "IdRef", "name" : "'v'" } - ] - }, - { - "opname" : "UnpackSnorm4x8", - "opcode" : 63, - "operands" : [ - { "kind" : "IdRef", "name" : "'p'" } - ] - }, - { - "opname" : "UnpackUnorm4x8", - "opcode" : 64, - "operands" : [ - { "kind" : "IdRef", "name" : "'p'" } - ] - }, - { - "opname" : "UnpackDouble2x32", - "opcode" : 65, - "operands" : [ - { "kind" : "IdRef", "name" : "'v'" } - ], - "capabilities" : [ "Float64" ] - }, - { - "opname" : "Length", - "opcode" : 66, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" } - ] - }, - { - "opname" : "Distance", - "opcode" : 67, - "operands" : [ - { "kind" : "IdRef", "name" : "'p0'" }, - { "kind" : "IdRef", "name" : "'p1'" } - ] - }, - { - "opname" : "Cross", - "opcode" : 68, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" }, - { "kind" : "IdRef", "name" : "'y'" } - ] - }, - { - "opname" : "Normalize", - "opcode" : 69, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" } - ] - }, - { - "opname" : "FaceForward", - "opcode" : 70, - "operands" : [ - { "kind" : "IdRef", "name" : "'N'" }, - { "kind" : "IdRef", "name" : "'I'" }, - { "kind" : "IdRef", "name" : "'Nref'" } - ] - }, - { - "opname" : "Reflect", - "opcode" : 71, - "operands" : [ - { "kind" : "IdRef", "name" : "'I'" }, - { "kind" : "IdRef", "name" : "'N'" } - ] - }, - { - "opname" : "Refract", - "opcode" : 72, - "operands" : [ - { "kind" : "IdRef", "name" : "'I'" }, - { "kind" : "IdRef", "name" : "'N'" }, - { "kind" : "IdRef", "name" : "'eta'" } - ] - }, - { - "opname" : "FindILsb", - "opcode" : 73, - "operands" : [ - { "kind" : "IdRef", "name" : "'Value'" } - ] - }, - { - "opname" : "FindSMsb", - "opcode" : 74, - "operands" : [ - { "kind" : "IdRef", "name" : "'Value'" } - ] - }, - { - "opname" : "FindUMsb", - "opcode" : 75, - "operands" : [ - { "kind" : "IdRef", "name" : "'Value'" } - ] - }, - { - "opname" : "InterpolateAtCentroid", - "opcode" : 76, - "operands" : [ - { "kind" : "IdRef", "name" : "'interpolant'" } - ], - "capabilities" : [ "InterpolationFunction" ] - }, - { - "opname" : "InterpolateAtSample", - "opcode" : 77, - "operands" : [ - { "kind" : "IdRef", "name" : "'interpolant'" }, - { "kind" : "IdRef", "name" : "'sample'" } - ], - "capabilities" : [ "InterpolationFunction" ] - }, - { - "opname" : "InterpolateAtOffset", - "opcode" : 78, - "operands" : [ - { "kind" : "IdRef", "name" : "'interpolant'" }, - { "kind" : "IdRef", "name" : "'offset'" } - ], - "capabilities" : [ "InterpolationFunction" ] - }, - { - "opname" : "NMin", - "opcode" : 79, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" }, - { "kind" : "IdRef", "name" : "'y'" } - ] - }, - { - "opname" : "NMax", - "opcode" : 80, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" }, - { "kind" : "IdRef", "name" : "'y'" } - ] - }, - { - "opname" : "NClamp", - "opcode" : 81, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" }, - { "kind" : "IdRef", "name" : "'minVal'" }, - { "kind" : "IdRef", "name" : "'maxVal'" } - ] - } - ] -} diff --git a/Extern/3rdParty/shaderc/shaderc/include/spirv/1.0/extinst.opencl.std.100.grammar.json b/Extern/3rdParty/shaderc/shaderc/include/spirv/1.0/extinst.opencl.std.100.grammar.json deleted file mode 100644 index 4fe4506..0000000 --- a/Extern/3rdParty/shaderc/shaderc/include/spirv/1.0/extinst.opencl.std.100.grammar.json +++ /dev/null @@ -1,1279 +0,0 @@ -{ - "copyright" : [ - "Copyright (c) 2014-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." - ], - "version" : 100, - "revision" : 2, - "instructions" : [ - { - "opname" : "acos", - "opcode" : 0, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" } - ] - }, - { - "opname" : "acosh", - "opcode" : 1, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" } - ] - }, - { - "opname" : "acospi", - "opcode" : 2, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" } - ] - }, - { - "opname" : "asin", - "opcode" : 3, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" } - ] - }, - { - "opname" : "asinh", - "opcode" : 4, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" } - ] - }, - { - "opname" : "asinpi", - "opcode" : 5, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" } - ] - }, - { - "opname" : "atan", - "opcode" : 6, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" } - ] - }, - { - "opname" : "atan2", - "opcode" : 7, - "operands" : [ - { "kind" : "IdRef", "name" : "'y'" }, - { "kind" : "IdRef", "name" : "'x'" } - ] - }, - { - "opname" : "atanh", - "opcode" : 8, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" } - ] - }, - { - "opname" : "atanpi", - "opcode" : 9, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" } - ] - }, - { - "opname" : "atan2pi", - "opcode" : 10, - "operands" : [ - { "kind" : "IdRef", "name" : "'y'" }, - { "kind" : "IdRef", "name" : "'x'" } - ] - }, - { - "opname" : "cbrt", - "opcode" : 11, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" } - ] - }, - { - "opname" : "ceil", - "opcode" : 12, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" } - ] - }, - { - "opname" : "copysign", - "opcode" : 13, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" }, - { "kind" : "IdRef", "name" : "'y'" } - ] - }, - { - "opname" : "cos", - "opcode" : 14, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" } - ] - }, - { - "opname" : "cosh", - "opcode" : 15, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" } - ] - }, - { - "opname" : "cospi", - "opcode" : 16, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" } - ] - }, - { - "opname" : "erfc", - "opcode" : 17, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" } - ] - }, - { - "opname" : "erf", - "opcode" : 18, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" } - ] - }, - { - "opname" : "exp", - "opcode" : 19, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" } - ] - }, - { - "opname" : "exp2", - "opcode" : 20, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" } - ] - }, - { - "opname" : "exp10", - "opcode" : 21, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" } - ] - }, - { - "opname" : "expm1", - "opcode" : 22, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" } - ] - }, - { - "opname" : "fabs", - "opcode" : 23, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" } - ] - }, - { - "opname" : "fdim", - "opcode" : 24, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" }, - { "kind" : "IdRef", "name" : "'y'" } - ] - }, - { - "opname" : "floor", - "opcode" : 25, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" } - ] - }, - { - "opname" : "fma", - "opcode" : 26, - "operands" : [ - { "kind" : "IdRef", "name" : "'a'" }, - { "kind" : "IdRef", "name" : "'b'" }, - { "kind" : "IdRef", "name" : "'c'" } - ] - }, - { - "opname" : "fmax", - "opcode" : 27, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" }, - { "kind" : "IdRef", "name" : "'y'" } - ] - }, - { - "opname" : "fmin", - "opcode" : 28, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" }, - { "kind" : "IdRef", "name" : "'y'" } - ] - }, - { - "opname" : "fmod", - "opcode" : 29, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" }, - { "kind" : "IdRef", "name" : "'y'" } - ] - }, - { - "opname" : "fract", - "opcode" : 30, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" }, - { "kind" : "IdRef", "name" : "'ptr'" } - ] - }, - { - "opname" : "frexp", - "opcode" : 31, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" }, - { "kind" : "IdRef", "name" : "'exp'" } - ] - }, - { - "opname" : "hypot", - "opcode" : 32, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" }, - { "kind" : "IdRef", "name" : "'y'" } - ] - }, - { - "opname" : "ilogb", - "opcode" : 33, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" } - ] - }, - { - "opname" : "ldexp", - "opcode" : 34, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" }, - { "kind" : "IdRef", "name" : "'k'" } - ] - }, - { - "opname" : "lgamma", - "opcode" : 35, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" } - ] - }, - { - "opname" : "lgamma_r", - "opcode" : 36, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" }, - { "kind" : "IdRef", "name" : "'signp'" } - ] - }, - { - "opname" : "log", - "opcode" : 37, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" } - ] - }, - { - "opname" : "log2", - "opcode" : 38, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" } - ] - }, - { - "opname" : "log10", - "opcode" : 39, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" } - ] - }, - { - "opname" : "log1p", - "opcode" : 40, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" } - ] - }, - { - "opname" : "logb", - "opcode" : 41, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" } - ] - }, - { - "opname" : "mad", - "opcode" : 42, - "operands" : [ - { "kind" : "IdRef", "name" : "'a'" }, - { "kind" : "IdRef", "name" : "'b'" }, - { "kind" : "IdRef", "name" : "'c'" } - ] - }, - { - "opname" : "maxmag", - "opcode" : 43, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" }, - { "kind" : "IdRef", "name" : "'y'" } - ] - }, - { - "opname" : "minmag", - "opcode" : 44, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" }, - { "kind" : "IdRef", "name" : "'y'" } - ] - }, - { - "opname" : "modf", - "opcode" : 45, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" }, - { "kind" : "IdRef", "name" : "'iptr'" } - ] - }, - { - "opname" : "nan", - "opcode" : 46, - "operands" : [ - { "kind" : "IdRef", "name" : "'nancode'" } - ] - }, - { - "opname" : "nextafter", - "opcode" : 47, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" }, - { "kind" : "IdRef", "name" : "'y'" } - ] - }, - { - "opname" : "pow", - "opcode" : 48, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" }, - { "kind" : "IdRef", "name" : "'y" } - ] - }, - { - "opname" : "pown", - "opcode" : 49, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" }, - { "kind" : "IdRef", "name" : "'y'" } - ] - }, - { - "opname" : "powr", - "opcode" : 50, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" }, - { "kind" : "IdRef", "name" : "'y'" } - ] - }, - { - "opname" : "remainder", - "opcode" : 51, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" }, - { "kind" : "IdRef", "name" : "'y'" } - ] - }, - { - "opname" : "remquo", - "opcode" : 52, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" }, - { "kind" : "IdRef", "name" : "'y'" }, - { "kind" : "IdRef", "name" : "'quo'" } - ] - }, - { - "opname" : "rint", - "opcode" : 53, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" } - ] - }, - { - "opname" : "rootn", - "opcode" : 54, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" }, - { "kind" : "IdRef", "name" : "'y'" } - ] - }, - { - "opname" : "round", - "opcode" : 55, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" } - ] - }, - { - "opname" : "rsqrt", - "opcode" : 56, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" } - ] - }, - { - "opname" : "sin", - "opcode" : 57, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" } - ] - }, - { - "opname" : "sincos", - "opcode" : 58, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" }, - { "kind" : "IdRef", "name" : "'cosval'" } - ] - }, - { - "opname" : "sinh", - "opcode" : 59, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" } - ] - }, - { - "opname" : "sinpi", - "opcode" : 60, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" } - ] - }, - { - "opname" : "sqrt", - "opcode" : 61, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" } - ] - }, - { - "opname" : "tan", - "opcode" : 62, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" } - ] - }, - { - "opname" : "tanh", - "opcode" : 63, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" } - ] - }, - { - "opname" : "tanpi", - "opcode" : 64, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" } - ] - }, - { - "opname" : "tgamma", - "opcode" : 65, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" } - ] - }, - { - "opname" : "trunc", - "opcode" : 66, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" } - ] - }, - { - "opname" : "half_cos", - "opcode" : 67, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" } - ] - }, - { - "opname" : "half_divide", - "opcode" : 68, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" }, - { "kind" : "IdRef", "name" : "'y'" } - ] - }, - { - "opname" : "half_exp", - "opcode" : 69, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" } - ] - }, - { - "opname" : "half_exp2", - "opcode" : 70, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" } - ] - }, - { - "opname" : "half_exp10", - "opcode" : 71, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" } - ] - }, - { - "opname" : "half_log", - "opcode" : 72, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" } - ] - }, - { - "opname" : "half_log2", - "opcode" : 73, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" } - ] - }, - { - "opname" : "half_log10", - "opcode" : 74, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" } - ] - }, - { - "opname" : "half_powr", - "opcode" : 75, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" }, - { "kind" : "IdRef", "name" : "'y'" } - ] - }, - { - "opname" : "half_recip", - "opcode" : 76, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" } - ] - }, - { - "opname" : "half_rsqrt", - "opcode" : 77, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" } - ] - }, - { - "opname" : "half_sin", - "opcode" : 78, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" } - ] - }, - { - "opname" : "half_sqrt", - "opcode" : 79, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" } - ] - }, - { - "opname" : "half_tan", - "opcode" : 80, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" } - ] - }, - { - "opname" : "native_cos", - "opcode" : 81, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" } - ] - }, - { - "opname" : "native_divide", - "opcode" : 82, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" }, - { "kind" : "IdRef", "name" : "'y'" } - ] - }, - { - "opname" : "native_exp", - "opcode" : 83, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" } - ] - }, - { - "opname" : "native_exp2", - "opcode" : 84, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" } - ] - }, - { - "opname" : "native_exp10", - "opcode" : 85, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" } - ] - }, - { - "opname" : "native_log", - "opcode" : 86, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" } - ] - }, - { - "opname" : "native_log2", - "opcode" : 87, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" } - ] - }, - { - "opname" : "native_log10", - "opcode" : 88, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" } - ] - }, - { - "opname" : "native_powr", - "opcode" : 89, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" }, - { "kind" : "IdRef", "name" : "'y'" } - ] - }, - { - "opname" : "native_recip", - "opcode" : 90, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" } - ] - }, - { - "opname" : "native_rsqrt", - "opcode" : 91, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" } - ] - }, - { - "opname" : "native_sin", - "opcode" : 92, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" } - ] - }, - { - "opname" : "native_sqrt", - "opcode" : 93, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" } - ] - }, - { - "opname" : "native_tan", - "opcode" : 94, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" } - ] - }, - { - "opname" : "s_abs", - "opcode" : 141, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" } - ] - }, - { - "opname" : "s_abs_diff", - "opcode" : 142, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" }, - { "kind" : "IdRef", "name" : "'y'" } - ] - }, - { - "opname" : "s_add_sat", - "opcode" : 143, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" }, - { "kind" : "IdRef", "name" : "'y'" } - ] - }, - { - "opname" : "u_add_sat", - "opcode" : 144, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" }, - { "kind" : "IdRef", "name" : "'y'" } - ] - }, - { - "opname" : "s_hadd", - "opcode" : 145, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" }, - { "kind" : "IdRef", "name" : "'y'" } - ] - }, - { - "opname" : "u_hadd", - "opcode" : 146, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" }, - { "kind" : "IdRef", "name" : "'y'" } - ] - }, - { - "opname" : "s_rhadd", - "opcode" : 147, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" }, - { "kind" : "IdRef", "name" : "'y'" } - ] - }, - { - "opname" : "u_rhadd", - "opcode" : 148, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" }, - { "kind" : "IdRef", "name" : "'y'" } - ] - }, - { - "opname" : "s_clamp", - "opcode" : 149, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" }, - { "kind" : "IdRef", "name" : "'minval'" }, - { "kind" : "IdRef", "name" : "'maxval'" } - ] - }, - { - "opname" : "u_clamp", - "opcode" : 150, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" }, - { "kind" : "IdRef", "name" : "'minval'" }, - { "kind" : "IdRef", "name" : "'maxval'" } - ] - }, - { - "opname" : "clz", - "opcode" : 151, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" } - ] - }, - { - "opname" : "ctz", - "opcode" : 152, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" } - ] - }, - { - "opname" : "s_mad_hi", - "opcode" : 153, - "operands" : [ - { "kind" : "IdRef", "name" : "'a'" }, - { "kind" : "IdRef", "name" : "'b'" }, - { "kind" : "IdRef", "name" : "'c'" } - ] - }, - { - "opname" : "u_mad_sat", - "opcode" : 154, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" }, - { "kind" : "IdRef", "name" : "'y'" }, - { "kind" : "IdRef", "name" : "'z'" } - ] - }, - { - "opname" : "s_mad_sat", - "opcode" : 155, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" }, - { "kind" : "IdRef", "name" : "'y'" }, - { "kind" : "IdRef", "name" : "'z'" } - ] - }, - { - "opname" : "s_max", - "opcode" : 156, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" }, - { "kind" : "IdRef", "name" : "'y'" } - ] - }, - { - "opname" : "u_max", - "opcode" : 157, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" }, - { "kind" : "IdRef", "name" : "'y'" } - ] - }, - { - "opname" : "s_min", - "opcode" : 158, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" }, - { "kind" : "IdRef", "name" : "'y'" } - ] - }, - { - "opname" : "u_min", - "opcode" : 159, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" }, - { "kind" : "IdRef", "name" : "'y'" } - ] - }, - { - "opname" : "s_mul_hi", - "opcode" : 160, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" }, - { "kind" : "IdRef", "name" : "'y'" } - ] - }, - { - "opname" : "rotate", - "opcode" : 161, - "operands" : [ - { "kind" : "IdRef", "name" : "'v'" }, - { "kind" : "IdRef", "name" : "'i'" } - ] - }, - { - "opname" : "s_sub_sat", - "opcode" : 162, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" }, - { "kind" : "IdRef", "name" : "'y'" } - ] - }, - { - "opname" : "u_sub_sat", - "opcode" : 163, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" }, - { "kind" : "IdRef", "name" : "'y'" } - ] - }, - { - "opname" : "u_upsample", - "opcode" : 164, - "operands" : [ - { "kind" : "IdRef", "name" : "'hi'" }, - { "kind" : "IdRef", "name" : "'lo'" } - ] - }, - { - "opname" : "s_upsample", - "opcode" : 165, - "operands" : [ - { "kind" : "IdRef", "name" : "'hi'" }, - { "kind" : "IdRef", "name" : "'lo'" } - ] - }, - { - "opname" : "popcount", - "opcode" : 166, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" } - ] - }, - { - "opname" : "s_mad24", - "opcode" : 167, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" }, - { "kind" : "IdRef", "name" : "'y'" }, - { "kind" : "IdRef", "name" : "'z'" } - ] - }, - { - "opname" : "u_mad24", - "opcode" : 168, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" }, - { "kind" : "IdRef", "name" : "'y'" }, - { "kind" : "IdRef", "name" : "'z'" } - ] - }, - { - "opname" : "s_mul24", - "opcode" : 169, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" }, - { "kind" : "IdRef", "name" : "'y'" } - ] - }, - { - "opname" : "u_mul24", - "opcode" : 170, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" }, - { "kind" : "IdRef", "name" : "'y'" } - ] - }, - { - "opname" : "u_abs", - "opcode" : 201, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" } - ] - }, - { - "opname" : "u_abs_diff", - "opcode" : 202, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" }, - { "kind" : "IdRef", "name" : "'y'" } - ] - }, - { - "opname" : "u_mul_hi", - "opcode" : 203, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" }, - { "kind" : "IdRef", "name" : "'y'" } - ] - }, - { - "opname" : "u_mad_hi", - "opcode" : 204, - "operands" : [ - { "kind" : "IdRef", "name" : "'a'" }, - { "kind" : "IdRef", "name" : "'b'" }, - { "kind" : "IdRef", "name" : "'c'" } - ] - }, - { - "opname" : "fclamp", - "opcode" : 95, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" }, - { "kind" : "IdRef", "name" : "'minval'" }, - { "kind" : "IdRef", "name" : "'maxval'" } - ] - }, - { - "opname" : "degrees", - "opcode" :96, - "operands" : [ - { "kind" : "IdRef", "name" : "'radians'" } - ] - }, - { - "opname" : "fmax_common", - "opcode" : 97, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" }, - { "kind" : "IdRef", "name" : "'y'" } - ] - }, - { - "opname" : "fmin_common", - "opcode" : 98, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" }, - { "kind" : "IdRef", "name" : "'y'" } - ] - }, - { - "opname" : "mix", - "opcode" : 99, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" }, - { "kind" : "IdRef", "name" : "'y'" }, - { "kind" : "IdRef", "name" : "'a'" } - ] - }, - { - "opname" : "radians", - "opcode" : 100, - "operands" : [ - { "kind" : "IdRef", "name" : "'degrees'" } - ] - }, - { - "opname" : "step", - "opcode" : 101, - "operands" : [ - { "kind" : "IdRef", "name" : "'edge'" }, - { "kind" : "IdRef", "name" : "'x'" } - ] - }, - { - "opname" : "smoothstep", - "opcode" : 102, - "operands" : [ - { "kind" : "IdRef", "name" : "'edge0'" }, - { "kind" : "IdRef", "name" : "'edge1'" }, - { "kind" : "IdRef", "name" : "'x'" } - ] - }, - { - "opname" : "sign", - "opcode" : 103, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" } - ] - }, - { - "opname" : "cross", - "opcode" : 104, - "operands" : [ - { "kind" : "IdRef", "name" : "'p0'" }, - { "kind" : "IdRef", "name" : "'p1'" } - ] - }, - { - "opname" : "distance", - "opcode" : 105, - "operands" : [ - { "kind" : "IdRef", "name" : "'p0'" }, - { "kind" : "IdRef", "name" : "'p1'" } - ] - }, - { - "opname" : "length", - "opcode" : 106, - "operands" : [ - { "kind" : "IdRef", "name" : "'p'" } - ] - }, - { - "opname" : "normalize", - "opcode" : 107, - "operands" : [ - { "kind" : "IdRef", "name" : "'p'" } - ] - }, - { - "opname" : "fast_distance", - "opcode" : 108, - "operands" : [ - { "kind" : "IdRef", "name" : "'p0'" }, - { "kind" : "IdRef", "name" : "'p1'" } - ] - }, - { - "opname" : "fast_length", - "opcode" : 109, - "operands" : [ - { "kind" : "IdRef", "name" : "'p'" } - ] - }, - { - "opname" : "fast_normalize", - "opcode" : 110, - "operands" : [ - { "kind" : "IdRef", "name" : "'p'" } - ] - }, - { - "opname" : "bitselect", - "opcode" : 186, - "operands" : [ - { "kind" : "IdRef", "name" : "'a'" }, - { "kind" : "IdRef", "name" : "'b'" }, - { "kind" : "IdRef", "name" : "'c'" } - ] - }, - { - "opname" : "select", - "opcode" : 187, - "operands" : [ - { "kind" : "IdRef", "name" : "'a'" }, - { "kind" : "IdRef", "name" : "'b'" }, - { "kind" : "IdRef", "name" : "'c'" } - ] - }, - { - "opname" : "vloadn", - "opcode" : 171, - "operands" : [ - { "kind" : "IdRef", "name" : "'offset'" }, - { "kind" : "IdRef", "name" : "'p'" }, - { "kind" : "LiteralInteger", "name" : "'n'" } - ] - }, - { - "opname" : "vstoren", - "opcode" : 172, - "operands" : [ - { "kind" : "IdRef", "name" : "'data'" }, - { "kind" : "IdRef", "name" : "'offset'" }, - { "kind" : "IdRef", "name" : "'p'" } - ] - }, - { - "opname" : "vload_half", - "opcode" : 173, - "operands" : [ - { "kind" : "IdRef", "name" : "'offset'" }, - { "kind" : "IdRef", "name" : "'p'" } - ] - }, - { - "opname" : "vload_halfn", - "opcode" : 174, - "operands" : [ - { "kind" : "IdRef", "name" : "'offset'" }, - { "kind" : "IdRef", "name" : "'p'" }, - { "kind" : "LiteralInteger", "name" : "'n'" } - ] - }, - { - "opname" : "vstore_half", - "opcode" : 175, - "operands" : [ - { "kind" : "IdRef", "name" : "'data'" }, - { "kind" : "IdRef", "name" : "'offset'" }, - { "kind" : "IdRef", "name" : "'p'" } - ] - }, - { - "opname" : "vstore_half_r", - "opcode" : 176, - "operands" : [ - { "kind" : "IdRef", "name" : "'data'" }, - { "kind" : "IdRef", "name" : "'offset'" }, - { "kind" : "IdRef", "name" : "'p'" }, - { "kind" : "FPRoundingMode", "name" : "'mode'" } - ] - }, - { - "opname" : "vstore_halfn", - "opcode" : 177, - "operands" : [ - { "kind" : "IdRef", "name" : "'data'" }, - { "kind" : "IdRef", "name" : "'offset'" }, - { "kind" : "IdRef", "name" : "'p'" } - ] - }, - { - "opname" : "vstore_halfn_r", - "opcode" : 178, - "operands" : [ - { "kind" : "IdRef", "name" : "'data'" }, - { "kind" : "IdRef", "name" : "'offset'" }, - { "kind" : "IdRef", "name" : "'p'" }, - { "kind" : "FPRoundingMode", "name" : "'mode'" } - ] - }, - { - "opname" : "vloada_halfn", - "opcode" : 179, - "operands" : [ - { "kind" : "IdRef", "name" : "'offset'" }, - { "kind" : "IdRef", "name" : "'p'" }, - { "kind" : "LiteralInteger", "name" : "'n'" } - ] - }, - { - "opname" : "vstorea_halfn", - "opcode" : 180, - "operands" : [ - { "kind" : "IdRef", "name" : "'data'" }, - { "kind" : "IdRef", "name" : "'offset'" }, - { "kind" : "IdRef", "name" : "'p'" } - ] - }, - { - "opname" : "vstorea_halfn_r", - "opcode" : 181, - "operands" : [ - { "kind" : "IdRef", "name" : "'data'" }, - { "kind" : "IdRef", "name" : "'offset'" }, - { "kind" : "IdRef", "name" : "'p'" }, - { "kind" : "FPRoundingMode", "name" : "'mode'" } - ] - }, - { - "opname" : "shuffle", - "opcode" : 182, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" }, - { "kind" : "IdRef", "name" : "'shuffle mask'" } - ] - }, - { - "opname" : "shuffle2", - "opcode" : 183, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" }, - { "kind" : "IdRef", "name" : "'y'" }, - { "kind" : "IdRef", "name" : "'shuffle mask'" } - ] - }, - { - "opname" : "printf", - "opcode" : 184, - "operands" : [ - { "kind" : "IdRef", "name" : "'format'" }, - { "kind" : "IdRef", "name" : "'additional arguments'", "quantifier" : "*" } - ] - }, - { - "opname" : "prefetch", - "opcode" : 185, - "operands" : [ - { "kind" : "IdRef", "name" : "'ptr'" }, - { "kind" : "IdRef", "name" : "'num elements'" } - ] - } - ] -} diff --git a/Extern/3rdParty/shaderc/shaderc/include/spirv/1.0/spirv.core.grammar.json b/Extern/3rdParty/shaderc/shaderc/include/spirv/1.0/spirv.core.grammar.json deleted file mode 100644 index f3cfc4c..0000000 --- a/Extern/3rdParty/shaderc/shaderc/include/spirv/1.0/spirv.core.grammar.json +++ /dev/null @@ -1,5775 +0,0 @@ -{ - "copyright" : [ - "Copyright (c) 2014-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." - ], - "magic_number" : "0x07230203", - "major_version" : 1, - "minor_version" : 0, - "revision" : 12, - "instructions" : [ - { - "opname" : "OpNop", - "opcode" : 0 - }, - { - "opname" : "OpUndef", - "opcode" : 1, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" } - ] - }, - { - "opname" : "OpSourceContinued", - "opcode" : 2, - "operands" : [ - { "kind" : "LiteralString", "name" : "'Continued Source'" } - ] - }, - { - "opname" : "OpSource", - "opcode" : 3, - "operands" : [ - { "kind" : "SourceLanguage" }, - { "kind" : "LiteralInteger", "name" : "'Version'" }, - { "kind" : "IdRef", "quantifier" : "?", "name" : "'File'" }, - { "kind" : "LiteralString", "quantifier" : "?", "name" : "'Source'" } - ] - }, - { - "opname" : "OpSourceExtension", - "opcode" : 4, - "operands" : [ - { "kind" : "LiteralString", "name" : "'Extension'" } - ] - }, - { - "opname" : "OpName", - "opcode" : 5, - "operands" : [ - { "kind" : "IdRef", "name" : "'Target'" }, - { "kind" : "LiteralString", "name" : "'Name'" } - ] - }, - { - "opname" : "OpMemberName", - "opcode" : 6, - "operands" : [ - { "kind" : "IdRef", "name" : "'Type'" }, - { "kind" : "LiteralInteger", "name" : "'Member'" }, - { "kind" : "LiteralString", "name" : "'Name'" } - ] - }, - { - "opname" : "OpString", - "opcode" : 7, - "operands" : [ - { "kind" : "IdResult" }, - { "kind" : "LiteralString", "name" : "'String'" } - ] - }, - { - "opname" : "OpLine", - "opcode" : 8, - "operands" : [ - { "kind" : "IdRef", "name" : "'File'" }, - { "kind" : "LiteralInteger", "name" : "'Line'" }, - { "kind" : "LiteralInteger", "name" : "'Column'" } - ] - }, - { - "opname" : "OpExtension", - "opcode" : 10, - "operands" : [ - { "kind" : "LiteralString", "name" : "'Name'" } - ] - }, - { - "opname" : "OpExtInstImport", - "opcode" : 11, - "operands" : [ - { "kind" : "IdResult" }, - { "kind" : "LiteralString", "name" : "'Name'" } - ] - }, - { - "opname" : "OpExtInst", - "opcode" : 12, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Set'" }, - { "kind" : "LiteralExtInstInteger", "name" : "'Instruction'" }, - { "kind" : "IdRef", "quantifier" : "*", "name" : "'Operand 1', +\n'Operand 2', +\n..." } - ] - }, - { - "opname" : "OpMemoryModel", - "opcode" : 14, - "operands" : [ - { "kind" : "AddressingModel" }, - { "kind" : "MemoryModel" } - ] - }, - { - "opname" : "OpEntryPoint", - "opcode" : 15, - "operands" : [ - { "kind" : "ExecutionModel" }, - { "kind" : "IdRef", "name" : "'Entry Point'" }, - { "kind" : "LiteralString", "name" : "'Name'" }, - { "kind" : "IdRef", "quantifier" : "*", "name" : "'Interface'" } - ] - }, - { - "opname" : "OpExecutionMode", - "opcode" : 16, - "operands" : [ - { "kind" : "IdRef", "name" : "'Entry Point'" }, - { "kind" : "ExecutionMode", "name" : "'Mode'" } - ] - }, - { - "opname" : "OpCapability", - "opcode" : 17, - "operands" : [ - { "kind" : "Capability", "name" : "'Capability'" } - ] - }, - { - "opname" : "OpTypeVoid", - "opcode" : 19, - "operands" : [ - { "kind" : "IdResult" } - ] - }, - { - "opname" : "OpTypeBool", - "opcode" : 20, - "operands" : [ - { "kind" : "IdResult" } - ] - }, - { - "opname" : "OpTypeInt", - "opcode" : 21, - "operands" : [ - { "kind" : "IdResult" }, - { "kind" : "LiteralInteger", "name" : "'Width'" }, - { "kind" : "LiteralInteger", "name" : "'Signedness'" } - ] - }, - { - "opname" : "OpTypeFloat", - "opcode" : 22, - "operands" : [ - { "kind" : "IdResult" }, - { "kind" : "LiteralInteger", "name" : "'Width'" } - ] - }, - { - "opname" : "OpTypeVector", - "opcode" : 23, - "operands" : [ - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Component Type'" }, - { "kind" : "LiteralInteger", "name" : "'Component Count'" } - ] - }, - { - "opname" : "OpTypeMatrix", - "opcode" : 24, - "operands" : [ - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Column Type'" }, - { "kind" : "LiteralInteger", "name" : "'Column Count'" } - ], - "capabilities" : [ "Matrix" ] - }, - { - "opname" : "OpTypeImage", - "opcode" : 25, - "operands" : [ - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Sampled Type'" }, - { "kind" : "Dim" }, - { "kind" : "LiteralInteger", "name" : "'Depth'" }, - { "kind" : "LiteralInteger", "name" : "'Arrayed'" }, - { "kind" : "LiteralInteger", "name" : "'MS'" }, - { "kind" : "LiteralInteger", "name" : "'Sampled'" }, - { "kind" : "ImageFormat" }, - { "kind" : "AccessQualifier", "quantifier" : "?" } - ] - }, - { - "opname" : "OpTypeSampler", - "opcode" : 26, - "operands" : [ - { "kind" : "IdResult" } - ] - }, - { - "opname" : "OpTypeSampledImage", - "opcode" : 27, - "operands" : [ - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Image Type'" } - ] - }, - { - "opname" : "OpTypeArray", - "opcode" : 28, - "operands" : [ - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Element Type'" }, - { "kind" : "IdRef", "name" : "'Length'" } - ] - }, - { - "opname" : "OpTypeRuntimeArray", - "opcode" : 29, - "operands" : [ - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Element Type'" } - ], - "capabilities" : [ "Shader" ] - }, - { - "opname" : "OpTypeStruct", - "opcode" : 30, - "operands" : [ - { "kind" : "IdResult" }, - { "kind" : "IdRef", "quantifier" : "*", "name" : "'Member 0 type', +\n'member 1 type', +\n..." } - ] - }, - { - "opname" : "OpTypeOpaque", - "opcode" : 31, - "operands" : [ - { "kind" : "IdResult" }, - { "kind" : "LiteralString", "name" : "The name of the opaque type." } - ], - "capabilities" : [ "Kernel" ] - }, - { - "opname" : "OpTypePointer", - "opcode" : 32, - "operands" : [ - { "kind" : "IdResult" }, - { "kind" : "StorageClass" }, - { "kind" : "IdRef", "name" : "'Type'" } - ] - }, - { - "opname" : "OpTypeFunction", - "opcode" : 33, - "operands" : [ - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Return Type'" }, - { "kind" : "IdRef", "quantifier" : "*", "name" : "'Parameter 0 Type', +\n'Parameter 1 Type', +\n..." } - ] - }, - { - "opname" : "OpTypeEvent", - "opcode" : 34, - "operands" : [ - { "kind" : "IdResult" } - ], - "capabilities" : [ "Kernel" ] - }, - { - "opname" : "OpTypeDeviceEvent", - "opcode" : 35, - "operands" : [ - { "kind" : "IdResult" } - ], - "capabilities" : [ "DeviceEnqueue" ] - }, - { - "opname" : "OpTypeReserveId", - "opcode" : 36, - "operands" : [ - { "kind" : "IdResult" } - ], - "capabilities" : [ "Pipes" ] - }, - { - "opname" : "OpTypeQueue", - "opcode" : 37, - "operands" : [ - { "kind" : "IdResult" } - ], - "capabilities" : [ "DeviceEnqueue" ] - }, - { - "opname" : "OpTypePipe", - "opcode" : 38, - "operands" : [ - { "kind" : "IdResult" }, - { "kind" : "AccessQualifier", "name" : "'Qualifier'" } - ], - "capabilities" : [ "Pipes" ] - }, - { - "opname" : "OpTypeForwardPointer", - "opcode" : 39, - "operands" : [ - { "kind" : "IdRef", "name" : "'Pointer Type'" }, - { "kind" : "StorageClass" } - ], - "capabilities" : [ "Addresses" ] - }, - { - "opname" : "OpConstantTrue", - "opcode" : 41, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" } - ] - }, - { - "opname" : "OpConstantFalse", - "opcode" : 42, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" } - ] - }, - { - "opname" : "OpConstant", - "opcode" : 43, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "LiteralContextDependentNumber", "name" : "'Value'" } - ] - }, - { - "opname" : "OpConstantComposite", - "opcode" : 44, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "quantifier" : "*", "name" : "'Constituents'" } - ] - }, - { - "opname" : "OpConstantSampler", - "opcode" : 45, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "SamplerAddressingMode" }, - { "kind" : "LiteralInteger", "name" : "'Param'" }, - { "kind" : "SamplerFilterMode" } - ], - "capabilities" : [ "LiteralSampler" ] - }, - { - "opname" : "OpConstantNull", - "opcode" : 46, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" } - ] - }, - { - "opname" : "OpSpecConstantTrue", - "opcode" : 48, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" } - ] - }, - { - "opname" : "OpSpecConstantFalse", - "opcode" : 49, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" } - ] - }, - { - "opname" : "OpSpecConstant", - "opcode" : 50, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "LiteralContextDependentNumber", "name" : "'Value'" } - ] - }, - { - "opname" : "OpSpecConstantComposite", - "opcode" : 51, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "quantifier" : "*", "name" : "'Constituents'" } - ] - }, - { - "opname" : "OpSpecConstantOp", - "opcode" : 52, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "LiteralSpecConstantOpInteger", "name" : "'Opcode'" } - ] - }, - { - "opname" : "OpFunction", - "opcode" : 54, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "FunctionControl" }, - { "kind" : "IdRef", "name" : "'Function Type'" } - ] - }, - { - "opname" : "OpFunctionParameter", - "opcode" : 55, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" } - ] - }, - { - "opname" : "OpFunctionEnd", - "opcode" : 56 - }, - { - "opname" : "OpFunctionCall", - "opcode" : 57, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Function'" }, - { "kind" : "IdRef", "quantifier" : "*", "name" : "'Argument 0', +\n'Argument 1', +\n..." } - ] - }, - { - "opname" : "OpVariable", - "opcode" : 59, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "StorageClass" }, - { "kind" : "IdRef", "quantifier" : "?", "name" : "'Initializer'" } - ] - }, - { - "opname" : "OpImageTexelPointer", - "opcode" : 60, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Image'" }, - { "kind" : "IdRef", "name" : "'Coordinate'" }, - { "kind" : "IdRef", "name" : "'Sample'" } - ] - }, - { - "opname" : "OpLoad", - "opcode" : 61, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Pointer'" }, - { "kind" : "MemoryAccess", "quantifier" : "?" } - ] - }, - { - "opname" : "OpStore", - "opcode" : 62, - "operands" : [ - { "kind" : "IdRef", "name" : "'Pointer'" }, - { "kind" : "IdRef", "name" : "'Object'" }, - { "kind" : "MemoryAccess", "quantifier" : "?" } - ] - }, - { - "opname" : "OpCopyMemory", - "opcode" : 63, - "operands" : [ - { "kind" : "IdRef", "name" : "'Target'" }, - { "kind" : "IdRef", "name" : "'Source'" }, - { "kind" : "MemoryAccess", "quantifier" : "?" } - ] - }, - { - "opname" : "OpCopyMemorySized", - "opcode" : 64, - "operands" : [ - { "kind" : "IdRef", "name" : "'Target'" }, - { "kind" : "IdRef", "name" : "'Source'" }, - { "kind" : "IdRef", "name" : "'Size'" }, - { "kind" : "MemoryAccess", "quantifier" : "?" } - ], - "capabilities" : [ "Addresses" ] - }, - { - "opname" : "OpAccessChain", - "opcode" : 65, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Base'" }, - { "kind" : "IdRef", "quantifier" : "*", "name" : "'Indexes'" } - ] - }, - { - "opname" : "OpInBoundsAccessChain", - "opcode" : 66, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Base'" }, - { "kind" : "IdRef", "quantifier" : "*", "name" : "'Indexes'" } - ] - }, - { - "opname" : "OpPtrAccessChain", - "opcode" : 67, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Base'" }, - { "kind" : "IdRef", "name" : "'Element'" }, - { "kind" : "IdRef", "quantifier" : "*", "name" : "'Indexes'" } - ], - "capabilities" : [ - "Addresses", - "VariablePointers", - "VariablePointersStorageBuffer" - ] - }, - { - "opname" : "OpArrayLength", - "opcode" : 68, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Structure'" }, - { "kind" : "LiteralInteger", "name" : "'Array member'" } - ], - "capabilities" : [ "Shader" ] - }, - { - "opname" : "OpGenericPtrMemSemantics", - "opcode" : 69, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Pointer'" } - ], - "capabilities" : [ "Kernel" ] - }, - { - "opname" : "OpInBoundsPtrAccessChain", - "opcode" : 70, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Base'" }, - { "kind" : "IdRef", "name" : "'Element'" }, - { "kind" : "IdRef", "quantifier" : "*", "name" : "'Indexes'" } - ], - "capabilities" : [ "Addresses" ] - }, - { - "opname" : "OpDecorate", - "opcode" : 71, - "operands" : [ - { "kind" : "IdRef", "name" : "'Target'" }, - { "kind" : "Decoration" } - ] - }, - { - "opname" : "OpMemberDecorate", - "opcode" : 72, - "operands" : [ - { "kind" : "IdRef", "name" : "'Structure Type'" }, - { "kind" : "LiteralInteger", "name" : "'Member'" }, - { "kind" : "Decoration" } - ] - }, - { - "opname" : "OpDecorationGroup", - "opcode" : 73, - "operands" : [ - { "kind" : "IdResult" } - ] - }, - { - "opname" : "OpGroupDecorate", - "opcode" : 74, - "operands" : [ - { "kind" : "IdRef", "name" : "'Decoration Group'" }, - { "kind" : "IdRef", "quantifier" : "*", "name" : "'Targets'" } - ] - }, - { - "opname" : "OpGroupMemberDecorate", - "opcode" : 75, - "operands" : [ - { "kind" : "IdRef", "name" : "'Decoration Group'" }, - { "kind" : "PairIdRefLiteralInteger", "quantifier" : "*", "name" : "'Targets'" } - ] - }, - { - "opname" : "OpVectorExtractDynamic", - "opcode" : 77, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Vector'" }, - { "kind" : "IdRef", "name" : "'Index'" } - ] - }, - { - "opname" : "OpVectorInsertDynamic", - "opcode" : 78, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Vector'" }, - { "kind" : "IdRef", "name" : "'Component'" }, - { "kind" : "IdRef", "name" : "'Index'" } - ] - }, - { - "opname" : "OpVectorShuffle", - "opcode" : 79, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Vector 1'" }, - { "kind" : "IdRef", "name" : "'Vector 2'" }, - { "kind" : "LiteralInteger", "quantifier" : "*", "name" : "'Components'" } - ] - }, - { - "opname" : "OpCompositeConstruct", - "opcode" : 80, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "quantifier" : "*", "name" : "'Constituents'" } - ] - }, - { - "opname" : "OpCompositeExtract", - "opcode" : 81, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Composite'" }, - { "kind" : "LiteralInteger", "quantifier" : "*", "name" : "'Indexes'" } - ] - }, - { - "opname" : "OpCompositeInsert", - "opcode" : 82, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Object'" }, - { "kind" : "IdRef", "name" : "'Composite'" }, - { "kind" : "LiteralInteger", "quantifier" : "*", "name" : "'Indexes'" } - ] - }, - { - "opname" : "OpCopyObject", - "opcode" : 83, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Operand'" } - ] - }, - { - "opname" : "OpTranspose", - "opcode" : 84, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Matrix'" } - ], - "capabilities" : [ "Matrix" ] - }, - { - "opname" : "OpSampledImage", - "opcode" : 86, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Image'" }, - { "kind" : "IdRef", "name" : "'Sampler'" } - ] - }, - { - "opname" : "OpImageSampleImplicitLod", - "opcode" : 87, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Sampled Image'" }, - { "kind" : "IdRef", "name" : "'Coordinate'" }, - { "kind" : "ImageOperands", "quantifier" : "?" } - ], - "capabilities" : [ "Shader" ] - }, - { - "opname" : "OpImageSampleExplicitLod", - "opcode" : 88, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Sampled Image'" }, - { "kind" : "IdRef", "name" : "'Coordinate'" }, - { "kind" : "ImageOperands" } - ] - }, - { - "opname" : "OpImageSampleDrefImplicitLod", - "opcode" : 89, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Sampled Image'" }, - { "kind" : "IdRef", "name" : "'Coordinate'" }, - { "kind" : "IdRef", "name" : "'D~ref~'" }, - { "kind" : "ImageOperands", "quantifier" : "?" } - ], - "capabilities" : [ "Shader" ] - }, - { - "opname" : "OpImageSampleDrefExplicitLod", - "opcode" : 90, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Sampled Image'" }, - { "kind" : "IdRef", "name" : "'Coordinate'" }, - { "kind" : "IdRef", "name" : "'D~ref~'" }, - { "kind" : "ImageOperands" } - ], - "capabilities" : [ "Shader" ] - }, - { - "opname" : "OpImageSampleProjImplicitLod", - "opcode" : 91, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Sampled Image'" }, - { "kind" : "IdRef", "name" : "'Coordinate'" }, - { "kind" : "ImageOperands", "quantifier" : "?" } - ], - "capabilities" : [ "Shader" ] - }, - { - "opname" : "OpImageSampleProjExplicitLod", - "opcode" : 92, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Sampled Image'" }, - { "kind" : "IdRef", "name" : "'Coordinate'" }, - { "kind" : "ImageOperands" } - ], - "capabilities" : [ "Shader" ] - }, - { - "opname" : "OpImageSampleProjDrefImplicitLod", - "opcode" : 93, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Sampled Image'" }, - { "kind" : "IdRef", "name" : "'Coordinate'" }, - { "kind" : "IdRef", "name" : "'D~ref~'" }, - { "kind" : "ImageOperands", "quantifier" : "?" } - ], - "capabilities" : [ "Shader" ] - }, - { - "opname" : "OpImageSampleProjDrefExplicitLod", - "opcode" : 94, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Sampled Image'" }, - { "kind" : "IdRef", "name" : "'Coordinate'" }, - { "kind" : "IdRef", "name" : "'D~ref~'" }, - { "kind" : "ImageOperands" } - ], - "capabilities" : [ "Shader" ] - }, - { - "opname" : "OpImageFetch", - "opcode" : 95, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Image'" }, - { "kind" : "IdRef", "name" : "'Coordinate'" }, - { "kind" : "ImageOperands", "quantifier" : "?" } - ] - }, - { - "opname" : "OpImageGather", - "opcode" : 96, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Sampled Image'" }, - { "kind" : "IdRef", "name" : "'Coordinate'" }, - { "kind" : "IdRef", "name" : "'Component'" }, - { "kind" : "ImageOperands", "quantifier" : "?" } - ], - "capabilities" : [ "Shader" ] - }, - { - "opname" : "OpImageDrefGather", - "opcode" : 97, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Sampled Image'" }, - { "kind" : "IdRef", "name" : "'Coordinate'" }, - { "kind" : "IdRef", "name" : "'D~ref~'" }, - { "kind" : "ImageOperands", "quantifier" : "?" } - ], - "capabilities" : [ "Shader" ] - }, - { - "opname" : "OpImageRead", - "opcode" : 98, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Image'" }, - { "kind" : "IdRef", "name" : "'Coordinate'" }, - { "kind" : "ImageOperands", "quantifier" : "?" } - ] - }, - { - "opname" : "OpImageWrite", - "opcode" : 99, - "operands" : [ - { "kind" : "IdRef", "name" : "'Image'" }, - { "kind" : "IdRef", "name" : "'Coordinate'" }, - { "kind" : "IdRef", "name" : "'Texel'" }, - { "kind" : "ImageOperands", "quantifier" : "?" } - ] - }, - { - "opname" : "OpImage", - "opcode" : 100, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Sampled Image'" } - ] - }, - { - "opname" : "OpImageQueryFormat", - "opcode" : 101, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Image'" } - ], - "capabilities" : [ "Kernel" ] - }, - { - "opname" : "OpImageQueryOrder", - "opcode" : 102, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Image'" } - ], - "capabilities" : [ "Kernel" ] - }, - { - "opname" : "OpImageQuerySizeLod", - "opcode" : 103, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Image'" }, - { "kind" : "IdRef", "name" : "'Level of Detail'" } - ], - "capabilities" : [ "Kernel", "ImageQuery" ] - }, - { - "opname" : "OpImageQuerySize", - "opcode" : 104, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Image'" } - ], - "capabilities" : [ "Kernel", "ImageQuery" ] - }, - { - "opname" : "OpImageQueryLod", - "opcode" : 105, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Sampled Image'" }, - { "kind" : "IdRef", "name" : "'Coordinate'" } - ], - "capabilities" : [ "ImageQuery" ] - }, - { - "opname" : "OpImageQueryLevels", - "opcode" : 106, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Image'" } - ], - "capabilities" : [ "Kernel", "ImageQuery" ] - }, - { - "opname" : "OpImageQuerySamples", - "opcode" : 107, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Image'" } - ], - "capabilities" : [ "Kernel", "ImageQuery" ] - }, - { - "opname" : "OpConvertFToU", - "opcode" : 109, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Float Value'" } - ] - }, - { - "opname" : "OpConvertFToS", - "opcode" : 110, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Float Value'" } - ] - }, - { - "opname" : "OpConvertSToF", - "opcode" : 111, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Signed Value'" } - ] - }, - { - "opname" : "OpConvertUToF", - "opcode" : 112, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Unsigned Value'" } - ] - }, - { - "opname" : "OpUConvert", - "opcode" : 113, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Unsigned Value'" } - ] - }, - { - "opname" : "OpSConvert", - "opcode" : 114, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Signed Value'" } - ] - }, - { - "opname" : "OpFConvert", - "opcode" : 115, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Float Value'" } - ] - }, - { - "opname" : "OpQuantizeToF16", - "opcode" : 116, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Value'" } - ] - }, - { - "opname" : "OpConvertPtrToU", - "opcode" : 117, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Pointer'" } - ], - "capabilities" : [ "Addresses" ] - }, - { - "opname" : "OpSatConvertSToU", - "opcode" : 118, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Signed Value'" } - ], - "capabilities" : [ "Kernel" ] - }, - { - "opname" : "OpSatConvertUToS", - "opcode" : 119, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Unsigned Value'" } - ], - "capabilities" : [ "Kernel" ] - }, - { - "opname" : "OpConvertUToPtr", - "opcode" : 120, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Integer Value'" } - ], - "capabilities" : [ "Addresses" ] - }, - { - "opname" : "OpPtrCastToGeneric", - "opcode" : 121, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Pointer'" } - ], - "capabilities" : [ "Kernel" ] - }, - { - "opname" : "OpGenericCastToPtr", - "opcode" : 122, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Pointer'" } - ], - "capabilities" : [ "Kernel" ] - }, - { - "opname" : "OpGenericCastToPtrExplicit", - "opcode" : 123, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Pointer'" }, - { "kind" : "StorageClass", "name" : "'Storage'" } - ], - "capabilities" : [ "Kernel" ] - }, - { - "opname" : "OpBitcast", - "opcode" : 124, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Operand'" } - ] - }, - { - "opname" : "OpSNegate", - "opcode" : 126, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Operand'" } - ] - }, - { - "opname" : "OpFNegate", - "opcode" : 127, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Operand'" } - ] - }, - { - "opname" : "OpIAdd", - "opcode" : 128, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Operand 1'" }, - { "kind" : "IdRef", "name" : "'Operand 2'" } - ] - }, - { - "opname" : "OpFAdd", - "opcode" : 129, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Operand 1'" }, - { "kind" : "IdRef", "name" : "'Operand 2'" } - ] - }, - { - "opname" : "OpISub", - "opcode" : 130, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Operand 1'" }, - { "kind" : "IdRef", "name" : "'Operand 2'" } - ] - }, - { - "opname" : "OpFSub", - "opcode" : 131, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Operand 1'" }, - { "kind" : "IdRef", "name" : "'Operand 2'" } - ] - }, - { - "opname" : "OpIMul", - "opcode" : 132, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Operand 1'" }, - { "kind" : "IdRef", "name" : "'Operand 2'" } - ] - }, - { - "opname" : "OpFMul", - "opcode" : 133, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Operand 1'" }, - { "kind" : "IdRef", "name" : "'Operand 2'" } - ] - }, - { - "opname" : "OpUDiv", - "opcode" : 134, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Operand 1'" }, - { "kind" : "IdRef", "name" : "'Operand 2'" } - ] - }, - { - "opname" : "OpSDiv", - "opcode" : 135, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Operand 1'" }, - { "kind" : "IdRef", "name" : "'Operand 2'" } - ] - }, - { - "opname" : "OpFDiv", - "opcode" : 136, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Operand 1'" }, - { "kind" : "IdRef", "name" : "'Operand 2'" } - ] - }, - { - "opname" : "OpUMod", - "opcode" : 137, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Operand 1'" }, - { "kind" : "IdRef", "name" : "'Operand 2'" } - ] - }, - { - "opname" : "OpSRem", - "opcode" : 138, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Operand 1'" }, - { "kind" : "IdRef", "name" : "'Operand 2'" } - ] - }, - { - "opname" : "OpSMod", - "opcode" : 139, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Operand 1'" }, - { "kind" : "IdRef", "name" : "'Operand 2'" } - ] - }, - { - "opname" : "OpFRem", - "opcode" : 140, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Operand 1'" }, - { "kind" : "IdRef", "name" : "'Operand 2'" } - ] - }, - { - "opname" : "OpFMod", - "opcode" : 141, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Operand 1'" }, - { "kind" : "IdRef", "name" : "'Operand 2'" } - ] - }, - { - "opname" : "OpVectorTimesScalar", - "opcode" : 142, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Vector'" }, - { "kind" : "IdRef", "name" : "'Scalar'" } - ] - }, - { - "opname" : "OpMatrixTimesScalar", - "opcode" : 143, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Matrix'" }, - { "kind" : "IdRef", "name" : "'Scalar'" } - ], - "capabilities" : [ "Matrix" ] - }, - { - "opname" : "OpVectorTimesMatrix", - "opcode" : 144, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Vector'" }, - { "kind" : "IdRef", "name" : "'Matrix'" } - ], - "capabilities" : [ "Matrix" ] - }, - { - "opname" : "OpMatrixTimesVector", - "opcode" : 145, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Matrix'" }, - { "kind" : "IdRef", "name" : "'Vector'" } - ], - "capabilities" : [ "Matrix" ] - }, - { - "opname" : "OpMatrixTimesMatrix", - "opcode" : 146, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'LeftMatrix'" }, - { "kind" : "IdRef", "name" : "'RightMatrix'" } - ], - "capabilities" : [ "Matrix" ] - }, - { - "opname" : "OpOuterProduct", - "opcode" : 147, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Vector 1'" }, - { "kind" : "IdRef", "name" : "'Vector 2'" } - ], - "capabilities" : [ "Matrix" ] - }, - { - "opname" : "OpDot", - "opcode" : 148, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Vector 1'" }, - { "kind" : "IdRef", "name" : "'Vector 2'" } - ] - }, - { - "opname" : "OpIAddCarry", - "opcode" : 149, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Operand 1'" }, - { "kind" : "IdRef", "name" : "'Operand 2'" } - ] - }, - { - "opname" : "OpISubBorrow", - "opcode" : 150, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Operand 1'" }, - { "kind" : "IdRef", "name" : "'Operand 2'" } - ] - }, - { - "opname" : "OpUMulExtended", - "opcode" : 151, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Operand 1'" }, - { "kind" : "IdRef", "name" : "'Operand 2'" } - ] - }, - { - "opname" : "OpSMulExtended", - "opcode" : 152, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Operand 1'" }, - { "kind" : "IdRef", "name" : "'Operand 2'" } - ] - }, - { - "opname" : "OpAny", - "opcode" : 154, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Vector'" } - ] - }, - { - "opname" : "OpAll", - "opcode" : 155, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Vector'" } - ] - }, - { - "opname" : "OpIsNan", - "opcode" : 156, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'x'" } - ] - }, - { - "opname" : "OpIsInf", - "opcode" : 157, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'x'" } - ] - }, - { - "opname" : "OpIsFinite", - "opcode" : 158, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'x'" } - ], - "capabilities" : [ "Kernel" ] - }, - { - "opname" : "OpIsNormal", - "opcode" : 159, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'x'" } - ], - "capabilities" : [ "Kernel" ] - }, - { - "opname" : "OpSignBitSet", - "opcode" : 160, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'x'" } - ], - "capabilities" : [ "Kernel" ] - }, - { - "opname" : "OpLessOrGreater", - "opcode" : 161, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'x'" }, - { "kind" : "IdRef", "name" : "'y'" } - ], - "capabilities" : [ "Kernel" ] - }, - { - "opname" : "OpOrdered", - "opcode" : 162, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'x'" }, - { "kind" : "IdRef", "name" : "'y'" } - ], - "capabilities" : [ "Kernel" ] - }, - { - "opname" : "OpUnordered", - "opcode" : 163, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'x'" }, - { "kind" : "IdRef", "name" : "'y'" } - ], - "capabilities" : [ "Kernel" ] - }, - { - "opname" : "OpLogicalEqual", - "opcode" : 164, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Operand 1'" }, - { "kind" : "IdRef", "name" : "'Operand 2'" } - ] - }, - { - "opname" : "OpLogicalNotEqual", - "opcode" : 165, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Operand 1'" }, - { "kind" : "IdRef", "name" : "'Operand 2'" } - ] - }, - { - "opname" : "OpLogicalOr", - "opcode" : 166, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Operand 1'" }, - { "kind" : "IdRef", "name" : "'Operand 2'" } - ] - }, - { - "opname" : "OpLogicalAnd", - "opcode" : 167, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Operand 1'" }, - { "kind" : "IdRef", "name" : "'Operand 2'" } - ] - }, - { - "opname" : "OpLogicalNot", - "opcode" : 168, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Operand'" } - ] - }, - { - "opname" : "OpSelect", - "opcode" : 169, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Condition'" }, - { "kind" : "IdRef", "name" : "'Object 1'" }, - { "kind" : "IdRef", "name" : "'Object 2'" } - ] - }, - { - "opname" : "OpIEqual", - "opcode" : 170, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Operand 1'" }, - { "kind" : "IdRef", "name" : "'Operand 2'" } - ] - }, - { - "opname" : "OpINotEqual", - "opcode" : 171, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Operand 1'" }, - { "kind" : "IdRef", "name" : "'Operand 2'" } - ] - }, - { - "opname" : "OpUGreaterThan", - "opcode" : 172, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Operand 1'" }, - { "kind" : "IdRef", "name" : "'Operand 2'" } - ] - }, - { - "opname" : "OpSGreaterThan", - "opcode" : 173, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Operand 1'" }, - { "kind" : "IdRef", "name" : "'Operand 2'" } - ] - }, - { - "opname" : "OpUGreaterThanEqual", - "opcode" : 174, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Operand 1'" }, - { "kind" : "IdRef", "name" : "'Operand 2'" } - ] - }, - { - "opname" : "OpSGreaterThanEqual", - "opcode" : 175, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Operand 1'" }, - { "kind" : "IdRef", "name" : "'Operand 2'" } - ] - }, - { - "opname" : "OpULessThan", - "opcode" : 176, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Operand 1'" }, - { "kind" : "IdRef", "name" : "'Operand 2'" } - ] - }, - { - "opname" : "OpSLessThan", - "opcode" : 177, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Operand 1'" }, - { "kind" : "IdRef", "name" : "'Operand 2'" } - ] - }, - { - "opname" : "OpULessThanEqual", - "opcode" : 178, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Operand 1'" }, - { "kind" : "IdRef", "name" : "'Operand 2'" } - ] - }, - { - "opname" : "OpSLessThanEqual", - "opcode" : 179, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Operand 1'" }, - { "kind" : "IdRef", "name" : "'Operand 2'" } - ] - }, - { - "opname" : "OpFOrdEqual", - "opcode" : 180, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Operand 1'" }, - { "kind" : "IdRef", "name" : "'Operand 2'" } - ] - }, - { - "opname" : "OpFUnordEqual", - "opcode" : 181, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Operand 1'" }, - { "kind" : "IdRef", "name" : "'Operand 2'" } - ] - }, - { - "opname" : "OpFOrdNotEqual", - "opcode" : 182, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Operand 1'" }, - { "kind" : "IdRef", "name" : "'Operand 2'" } - ] - }, - { - "opname" : "OpFUnordNotEqual", - "opcode" : 183, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Operand 1'" }, - { "kind" : "IdRef", "name" : "'Operand 2'" } - ] - }, - { - "opname" : "OpFOrdLessThan", - "opcode" : 184, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Operand 1'" }, - { "kind" : "IdRef", "name" : "'Operand 2'" } - ] - }, - { - "opname" : "OpFUnordLessThan", - "opcode" : 185, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Operand 1'" }, - { "kind" : "IdRef", "name" : "'Operand 2'" } - ] - }, - { - "opname" : "OpFOrdGreaterThan", - "opcode" : 186, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Operand 1'" }, - { "kind" : "IdRef", "name" : "'Operand 2'" } - ] - }, - { - "opname" : "OpFUnordGreaterThan", - "opcode" : 187, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Operand 1'" }, - { "kind" : "IdRef", "name" : "'Operand 2'" } - ] - }, - { - "opname" : "OpFOrdLessThanEqual", - "opcode" : 188, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Operand 1'" }, - { "kind" : "IdRef", "name" : "'Operand 2'" } - ] - }, - { - "opname" : "OpFUnordLessThanEqual", - "opcode" : 189, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Operand 1'" }, - { "kind" : "IdRef", "name" : "'Operand 2'" } - ] - }, - { - "opname" : "OpFOrdGreaterThanEqual", - "opcode" : 190, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Operand 1'" }, - { "kind" : "IdRef", "name" : "'Operand 2'" } - ] - }, - { - "opname" : "OpFUnordGreaterThanEqual", - "opcode" : 191, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Operand 1'" }, - { "kind" : "IdRef", "name" : "'Operand 2'" } - ] - }, - { - "opname" : "OpShiftRightLogical", - "opcode" : 194, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Base'" }, - { "kind" : "IdRef", "name" : "'Shift'" } - ] - }, - { - "opname" : "OpShiftRightArithmetic", - "opcode" : 195, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Base'" }, - { "kind" : "IdRef", "name" : "'Shift'" } - ] - }, - { - "opname" : "OpShiftLeftLogical", - "opcode" : 196, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Base'" }, - { "kind" : "IdRef", "name" : "'Shift'" } - ] - }, - { - "opname" : "OpBitwiseOr", - "opcode" : 197, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Operand 1'" }, - { "kind" : "IdRef", "name" : "'Operand 2'" } - ] - }, - { - "opname" : "OpBitwiseXor", - "opcode" : 198, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Operand 1'" }, - { "kind" : "IdRef", "name" : "'Operand 2'" } - ] - }, - { - "opname" : "OpBitwiseAnd", - "opcode" : 199, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Operand 1'" }, - { "kind" : "IdRef", "name" : "'Operand 2'" } - ] - }, - { - "opname" : "OpNot", - "opcode" : 200, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Operand'" } - ] - }, - { - "opname" : "OpBitFieldInsert", - "opcode" : 201, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Base'" }, - { "kind" : "IdRef", "name" : "'Insert'" }, - { "kind" : "IdRef", "name" : "'Offset'" }, - { "kind" : "IdRef", "name" : "'Count'" } - ], - "capabilities" : [ "Shader" ] - }, - { - "opname" : "OpBitFieldSExtract", - "opcode" : 202, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Base'" }, - { "kind" : "IdRef", "name" : "'Offset'" }, - { "kind" : "IdRef", "name" : "'Count'" } - ], - "capabilities" : [ "Shader" ] - }, - { - "opname" : "OpBitFieldUExtract", - "opcode" : 203, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Base'" }, - { "kind" : "IdRef", "name" : "'Offset'" }, - { "kind" : "IdRef", "name" : "'Count'" } - ], - "capabilities" : [ "Shader" ] - }, - { - "opname" : "OpBitReverse", - "opcode" : 204, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Base'" } - ], - "capabilities" : [ "Shader" ] - }, - { - "opname" : "OpBitCount", - "opcode" : 205, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Base'" } - ] - }, - { - "opname" : "OpDPdx", - "opcode" : 207, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'P'" } - ], - "capabilities" : [ "Shader" ] - }, - { - "opname" : "OpDPdy", - "opcode" : 208, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'P'" } - ], - "capabilities" : [ "Shader" ] - }, - { - "opname" : "OpFwidth", - "opcode" : 209, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'P'" } - ], - "capabilities" : [ "Shader" ] - }, - { - "opname" : "OpDPdxFine", - "opcode" : 210, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'P'" } - ], - "capabilities" : [ "DerivativeControl" ] - }, - { - "opname" : "OpDPdyFine", - "opcode" : 211, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'P'" } - ], - "capabilities" : [ "DerivativeControl" ] - }, - { - "opname" : "OpFwidthFine", - "opcode" : 212, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'P'" } - ], - "capabilities" : [ "DerivativeControl" ] - }, - { - "opname" : "OpDPdxCoarse", - "opcode" : 213, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'P'" } - ], - "capabilities" : [ "DerivativeControl" ] - }, - { - "opname" : "OpDPdyCoarse", - "opcode" : 214, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'P'" } - ], - "capabilities" : [ "DerivativeControl" ] - }, - { - "opname" : "OpFwidthCoarse", - "opcode" : 215, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'P'" } - ], - "capabilities" : [ "DerivativeControl" ] - }, - { - "opname" : "OpEmitVertex", - "opcode" : 218, - "capabilities" : [ "Geometry" ] - }, - { - "opname" : "OpEndPrimitive", - "opcode" : 219, - "capabilities" : [ "Geometry" ] - }, - { - "opname" : "OpEmitStreamVertex", - "opcode" : 220, - "operands" : [ - { "kind" : "IdRef", "name" : "'Stream'" } - ], - "capabilities" : [ "GeometryStreams" ] - }, - { - "opname" : "OpEndStreamPrimitive", - "opcode" : 221, - "operands" : [ - { "kind" : "IdRef", "name" : "'Stream'" } - ], - "capabilities" : [ "GeometryStreams" ] - }, - { - "opname" : "OpControlBarrier", - "opcode" : 224, - "operands" : [ - { "kind" : "IdScope", "name" : "'Execution'" }, - { "kind" : "IdScope", "name" : "'Memory'" }, - { "kind" : "IdMemorySemantics", "name" : "'Semantics'" } - ] - }, - { - "opname" : "OpMemoryBarrier", - "opcode" : 225, - "operands" : [ - { "kind" : "IdScope", "name" : "'Memory'" }, - { "kind" : "IdMemorySemantics", "name" : "'Semantics'" } - ] - }, - { - "opname" : "OpAtomicLoad", - "opcode" : 227, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Pointer'" }, - { "kind" : "IdScope", "name" : "'Scope'" }, - { "kind" : "IdMemorySemantics", "name" : "'Semantics'" } - ] - }, - { - "opname" : "OpAtomicStore", - "opcode" : 228, - "operands" : [ - { "kind" : "IdRef", "name" : "'Pointer'" }, - { "kind" : "IdScope", "name" : "'Scope'" }, - { "kind" : "IdMemorySemantics", "name" : "'Semantics'" }, - { "kind" : "IdRef", "name" : "'Value'" } - ] - }, - { - "opname" : "OpAtomicExchange", - "opcode" : 229, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Pointer'" }, - { "kind" : "IdScope", "name" : "'Scope'" }, - { "kind" : "IdMemorySemantics", "name" : "'Semantics'" }, - { "kind" : "IdRef", "name" : "'Value'" } - ] - }, - { - "opname" : "OpAtomicCompareExchange", - "opcode" : 230, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Pointer'" }, - { "kind" : "IdScope", "name" : "'Scope'" }, - { "kind" : "IdMemorySemantics", "name" : "'Equal'" }, - { "kind" : "IdMemorySemantics", "name" : "'Unequal'" }, - { "kind" : "IdRef", "name" : "'Value'" }, - { "kind" : "IdRef", "name" : "'Comparator'" } - ] - }, - { - "opname" : "OpAtomicCompareExchangeWeak", - "opcode" : 231, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Pointer'" }, - { "kind" : "IdScope", "name" : "'Scope'" }, - { "kind" : "IdMemorySemantics", "name" : "'Equal'" }, - { "kind" : "IdMemorySemantics", "name" : "'Unequal'" }, - { "kind" : "IdRef", "name" : "'Value'" }, - { "kind" : "IdRef", "name" : "'Comparator'" } - ], - "capabilities" : [ "Kernel" ] - }, - { - "opname" : "OpAtomicIIncrement", - "opcode" : 232, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Pointer'" }, - { "kind" : "IdScope", "name" : "'Scope'" }, - { "kind" : "IdMemorySemantics", "name" : "'Semantics'" } - ] - }, - { - "opname" : "OpAtomicIDecrement", - "opcode" : 233, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Pointer'" }, - { "kind" : "IdScope", "name" : "'Scope'" }, - { "kind" : "IdMemorySemantics", "name" : "'Semantics'" } - ] - }, - { - "opname" : "OpAtomicIAdd", - "opcode" : 234, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Pointer'" }, - { "kind" : "IdScope", "name" : "'Scope'" }, - { "kind" : "IdMemorySemantics", "name" : "'Semantics'" }, - { "kind" : "IdRef", "name" : "'Value'" } - ] - }, - { - "opname" : "OpAtomicISub", - "opcode" : 235, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Pointer'" }, - { "kind" : "IdScope", "name" : "'Scope'" }, - { "kind" : "IdMemorySemantics", "name" : "'Semantics'" }, - { "kind" : "IdRef", "name" : "'Value'" } - ] - }, - { - "opname" : "OpAtomicSMin", - "opcode" : 236, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Pointer'" }, - { "kind" : "IdScope", "name" : "'Scope'" }, - { "kind" : "IdMemorySemantics", "name" : "'Semantics'" }, - { "kind" : "IdRef", "name" : "'Value'" } - ] - }, - { - "opname" : "OpAtomicUMin", - "opcode" : 237, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Pointer'" }, - { "kind" : "IdScope", "name" : "'Scope'" }, - { "kind" : "IdMemorySemantics", "name" : "'Semantics'" }, - { "kind" : "IdRef", "name" : "'Value'" } - ] - }, - { - "opname" : "OpAtomicSMax", - "opcode" : 238, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Pointer'" }, - { "kind" : "IdScope", "name" : "'Scope'" }, - { "kind" : "IdMemorySemantics", "name" : "'Semantics'" }, - { "kind" : "IdRef", "name" : "'Value'" } - ] - }, - { - "opname" : "OpAtomicUMax", - "opcode" : 239, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Pointer'" }, - { "kind" : "IdScope", "name" : "'Scope'" }, - { "kind" : "IdMemorySemantics", "name" : "'Semantics'" }, - { "kind" : "IdRef", "name" : "'Value'" } - ] - }, - { - "opname" : "OpAtomicAnd", - "opcode" : 240, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Pointer'" }, - { "kind" : "IdScope", "name" : "'Scope'" }, - { "kind" : "IdMemorySemantics", "name" : "'Semantics'" }, - { "kind" : "IdRef", "name" : "'Value'" } - ] - }, - { - "opname" : "OpAtomicOr", - "opcode" : 241, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Pointer'" }, - { "kind" : "IdScope", "name" : "'Scope'" }, - { "kind" : "IdMemorySemantics", "name" : "'Semantics'" }, - { "kind" : "IdRef", "name" : "'Value'" } - ] - }, - { - "opname" : "OpAtomicXor", - "opcode" : 242, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Pointer'" }, - { "kind" : "IdScope", "name" : "'Scope'" }, - { "kind" : "IdMemorySemantics", "name" : "'Semantics'" }, - { "kind" : "IdRef", "name" : "'Value'" } - ] - }, - { - "opname" : "OpPhi", - "opcode" : 245, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "PairIdRefIdRef", "quantifier" : "*", "name" : "'Variable, Parent, ...'" } - ] - }, - { - "opname" : "OpLoopMerge", - "opcode" : 246, - "operands" : [ - { "kind" : "IdRef", "name" : "'Merge Block'" }, - { "kind" : "IdRef", "name" : "'Continue Target'" }, - { "kind" : "LoopControl" } - ] - }, - { - "opname" : "OpSelectionMerge", - "opcode" : 247, - "operands" : [ - { "kind" : "IdRef", "name" : "'Merge Block'" }, - { "kind" : "SelectionControl" } - ] - }, - { - "opname" : "OpLabel", - "opcode" : 248, - "operands" : [ - { "kind" : "IdResult" } - ] - }, - { - "opname" : "OpBranch", - "opcode" : 249, - "operands" : [ - { "kind" : "IdRef", "name" : "'Target Label'" } - ] - }, - { - "opname" : "OpBranchConditional", - "opcode" : 250, - "operands" : [ - { "kind" : "IdRef", "name" : "'Condition'" }, - { "kind" : "IdRef", "name" : "'True Label'" }, - { "kind" : "IdRef", "name" : "'False Label'" }, - { "kind" : "LiteralInteger", "quantifier" : "*", "name" : "'Branch weights'" } - ] - }, - { - "opname" : "OpSwitch", - "opcode" : 251, - "operands" : [ - { "kind" : "IdRef", "name" : "'Selector'" }, - { "kind" : "IdRef", "name" : "'Default'" }, - { "kind" : "PairLiteralIntegerIdRef", "quantifier" : "*", "name" : "'Target'" } - ] - }, - { - "opname" : "OpKill", - "opcode" : 252, - "capabilities" : [ "Shader" ] - }, - { - "opname" : "OpReturn", - "opcode" : 253 - }, - { - "opname" : "OpReturnValue", - "opcode" : 254, - "operands" : [ - { "kind" : "IdRef", "name" : "'Value'" } - ] - }, - { - "opname" : "OpUnreachable", - "opcode" : 255 - }, - { - "opname" : "OpLifetimeStart", - "opcode" : 256, - "operands" : [ - { "kind" : "IdRef", "name" : "'Pointer'" }, - { "kind" : "LiteralInteger", "name" : "'Size'" } - ], - "capabilities" : [ "Kernel" ] - }, - { - "opname" : "OpLifetimeStop", - "opcode" : 257, - "operands" : [ - { "kind" : "IdRef", "name" : "'Pointer'" }, - { "kind" : "LiteralInteger", "name" : "'Size'" } - ], - "capabilities" : [ "Kernel" ] - }, - { - "opname" : "OpGroupAsyncCopy", - "opcode" : 259, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdScope", "name" : "'Execution'" }, - { "kind" : "IdRef", "name" : "'Destination'" }, - { "kind" : "IdRef", "name" : "'Source'" }, - { "kind" : "IdRef", "name" : "'Num Elements'" }, - { "kind" : "IdRef", "name" : "'Stride'" }, - { "kind" : "IdRef", "name" : "'Event'" } - ], - "capabilities" : [ "Kernel" ] - }, - { - "opname" : "OpGroupWaitEvents", - "opcode" : 260, - "operands" : [ - { "kind" : "IdScope", "name" : "'Execution'" }, - { "kind" : "IdRef", "name" : "'Num Events'" }, - { "kind" : "IdRef", "name" : "'Events List'" } - ], - "capabilities" : [ "Kernel" ] - }, - { - "opname" : "OpGroupAll", - "opcode" : 261, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdScope", "name" : "'Execution'" }, - { "kind" : "IdRef", "name" : "'Predicate'" } - ], - "capabilities" : [ "Groups" ] - }, - { - "opname" : "OpGroupAny", - "opcode" : 262, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdScope", "name" : "'Execution'" }, - { "kind" : "IdRef", "name" : "'Predicate'" } - ], - "capabilities" : [ "Groups" ] - }, - { - "opname" : "OpGroupBroadcast", - "opcode" : 263, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdScope", "name" : "'Execution'" }, - { "kind" : "IdRef", "name" : "'Value'" }, - { "kind" : "IdRef", "name" : "'LocalId'" } - ], - "capabilities" : [ "Groups" ] - }, - { - "opname" : "OpGroupIAdd", - "opcode" : 264, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdScope", "name" : "'Execution'" }, - { "kind" : "GroupOperation", "name" : "'Operation'" }, - { "kind" : "IdRef", "name" : "'X'" } - ], - "capabilities" : [ "Groups" ] - }, - { - "opname" : "OpGroupFAdd", - "opcode" : 265, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdScope", "name" : "'Execution'" }, - { "kind" : "GroupOperation", "name" : "'Operation'" }, - { "kind" : "IdRef", "name" : "'X'" } - ], - "capabilities" : [ "Groups" ] - }, - { - "opname" : "OpGroupFMin", - "opcode" : 266, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdScope", "name" : "'Execution'" }, - { "kind" : "GroupOperation", "name" : "'Operation'" }, - { "kind" : "IdRef", "name" : "'X'" } - ], - "capabilities" : [ "Groups" ] - }, - { - "opname" : "OpGroupUMin", - "opcode" : 267, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdScope", "name" : "'Execution'" }, - { "kind" : "GroupOperation", "name" : "'Operation'" }, - { "kind" : "IdRef", "name" : "'X'" } - ], - "capabilities" : [ "Groups" ] - }, - { - "opname" : "OpGroupSMin", - "opcode" : 268, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdScope", "name" : "'Execution'" }, - { "kind" : "GroupOperation", "name" : "'Operation'" }, - { "kind" : "IdRef", "name" : "'X'" } - ], - "capabilities" : [ "Groups" ] - }, - { - "opname" : "OpGroupFMax", - "opcode" : 269, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdScope", "name" : "'Execution'" }, - { "kind" : "GroupOperation", "name" : "'Operation'" }, - { "kind" : "IdRef", "name" : "'X'" } - ], - "capabilities" : [ "Groups" ] - }, - { - "opname" : "OpGroupUMax", - "opcode" : 270, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdScope", "name" : "'Execution'" }, - { "kind" : "GroupOperation", "name" : "'Operation'" }, - { "kind" : "IdRef", "name" : "'X'" } - ], - "capabilities" : [ "Groups" ] - }, - { - "opname" : "OpGroupSMax", - "opcode" : 271, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdScope", "name" : "'Execution'" }, - { "kind" : "GroupOperation", "name" : "'Operation'" }, - { "kind" : "IdRef", "name" : "'X'" } - ], - "capabilities" : [ "Groups" ] - }, - { - "opname" : "OpReadPipe", - "opcode" : 274, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Pipe'" }, - { "kind" : "IdRef", "name" : "'Pointer'" }, - { "kind" : "IdRef", "name" : "'Packet Size'" }, - { "kind" : "IdRef", "name" : "'Packet Alignment'" } - ], - "capabilities" : [ "Pipes" ] - }, - { - "opname" : "OpWritePipe", - "opcode" : 275, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Pipe'" }, - { "kind" : "IdRef", "name" : "'Pointer'" }, - { "kind" : "IdRef", "name" : "'Packet Size'" }, - { "kind" : "IdRef", "name" : "'Packet Alignment'" } - ], - "capabilities" : [ "Pipes" ] - }, - { - "opname" : "OpReservedReadPipe", - "opcode" : 276, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Pipe'" }, - { "kind" : "IdRef", "name" : "'Reserve Id'" }, - { "kind" : "IdRef", "name" : "'Index'" }, - { "kind" : "IdRef", "name" : "'Pointer'" }, - { "kind" : "IdRef", "name" : "'Packet Size'" }, - { "kind" : "IdRef", "name" : "'Packet Alignment'" } - ], - "capabilities" : [ "Pipes" ] - }, - { - "opname" : "OpReservedWritePipe", - "opcode" : 277, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Pipe'" }, - { "kind" : "IdRef", "name" : "'Reserve Id'" }, - { "kind" : "IdRef", "name" : "'Index'" }, - { "kind" : "IdRef", "name" : "'Pointer'" }, - { "kind" : "IdRef", "name" : "'Packet Size'" }, - { "kind" : "IdRef", "name" : "'Packet Alignment'" } - ], - "capabilities" : [ "Pipes" ] - }, - { - "opname" : "OpReserveReadPipePackets", - "opcode" : 278, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Pipe'" }, - { "kind" : "IdRef", "name" : "'Num Packets'" }, - { "kind" : "IdRef", "name" : "'Packet Size'" }, - { "kind" : "IdRef", "name" : "'Packet Alignment'" } - ], - "capabilities" : [ "Pipes" ] - }, - { - "opname" : "OpReserveWritePipePackets", - "opcode" : 279, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Pipe'" }, - { "kind" : "IdRef", "name" : "'Num Packets'" }, - { "kind" : "IdRef", "name" : "'Packet Size'" }, - { "kind" : "IdRef", "name" : "'Packet Alignment'" } - ], - "capabilities" : [ "Pipes" ] - }, - { - "opname" : "OpCommitReadPipe", - "opcode" : 280, - "operands" : [ - { "kind" : "IdRef", "name" : "'Pipe'" }, - { "kind" : "IdRef", "name" : "'Reserve Id'" }, - { "kind" : "IdRef", "name" : "'Packet Size'" }, - { "kind" : "IdRef", "name" : "'Packet Alignment'" } - ], - "capabilities" : [ "Pipes" ] - }, - { - "opname" : "OpCommitWritePipe", - "opcode" : 281, - "operands" : [ - { "kind" : "IdRef", "name" : "'Pipe'" }, - { "kind" : "IdRef", "name" : "'Reserve Id'" }, - { "kind" : "IdRef", "name" : "'Packet Size'" }, - { "kind" : "IdRef", "name" : "'Packet Alignment'" } - ], - "capabilities" : [ "Pipes" ] - }, - { - "opname" : "OpIsValidReserveId", - "opcode" : 282, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Reserve Id'" } - ], - "capabilities" : [ "Pipes" ] - }, - { - "opname" : "OpGetNumPipePackets", - "opcode" : 283, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Pipe'" }, - { "kind" : "IdRef", "name" : "'Packet Size'" }, - { "kind" : "IdRef", "name" : "'Packet Alignment'" } - ], - "capabilities" : [ "Pipes" ] - }, - { - "opname" : "OpGetMaxPipePackets", - "opcode" : 284, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Pipe'" }, - { "kind" : "IdRef", "name" : "'Packet Size'" }, - { "kind" : "IdRef", "name" : "'Packet Alignment'" } - ], - "capabilities" : [ "Pipes" ] - }, - { - "opname" : "OpGroupReserveReadPipePackets", - "opcode" : 285, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdScope", "name" : "'Execution'" }, - { "kind" : "IdRef", "name" : "'Pipe'" }, - { "kind" : "IdRef", "name" : "'Num Packets'" }, - { "kind" : "IdRef", "name" : "'Packet Size'" }, - { "kind" : "IdRef", "name" : "'Packet Alignment'" } - ], - "capabilities" : [ "Pipes" ] - }, - { - "opname" : "OpGroupReserveWritePipePackets", - "opcode" : 286, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdScope", "name" : "'Execution'" }, - { "kind" : "IdRef", "name" : "'Pipe'" }, - { "kind" : "IdRef", "name" : "'Num Packets'" }, - { "kind" : "IdRef", "name" : "'Packet Size'" }, - { "kind" : "IdRef", "name" : "'Packet Alignment'" } - ], - "capabilities" : [ "Pipes" ] - }, - { - "opname" : "OpGroupCommitReadPipe", - "opcode" : 287, - "operands" : [ - { "kind" : "IdScope", "name" : "'Execution'" }, - { "kind" : "IdRef", "name" : "'Pipe'" }, - { "kind" : "IdRef", "name" : "'Reserve Id'" }, - { "kind" : "IdRef", "name" : "'Packet Size'" }, - { "kind" : "IdRef", "name" : "'Packet Alignment'" } - ], - "capabilities" : [ "Pipes" ] - }, - { - "opname" : "OpGroupCommitWritePipe", - "opcode" : 288, - "operands" : [ - { "kind" : "IdScope", "name" : "'Execution'" }, - { "kind" : "IdRef", "name" : "'Pipe'" }, - { "kind" : "IdRef", "name" : "'Reserve Id'" }, - { "kind" : "IdRef", "name" : "'Packet Size'" }, - { "kind" : "IdRef", "name" : "'Packet Alignment'" } - ], - "capabilities" : [ "Pipes" ] - }, - { - "opname" : "OpEnqueueMarker", - "opcode" : 291, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Queue'" }, - { "kind" : "IdRef", "name" : "'Num Events'" }, - { "kind" : "IdRef", "name" : "'Wait Events'" }, - { "kind" : "IdRef", "name" : "'Ret Event'" } - ], - "capabilities" : [ "DeviceEnqueue" ] - }, - { - "opname" : "OpEnqueueKernel", - "opcode" : 292, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Queue'" }, - { "kind" : "IdRef", "name" : "'Flags'" }, - { "kind" : "IdRef", "name" : "'ND Range'" }, - { "kind" : "IdRef", "name" : "'Num Events'" }, - { "kind" : "IdRef", "name" : "'Wait Events'" }, - { "kind" : "IdRef", "name" : "'Ret Event'" }, - { "kind" : "IdRef", "name" : "'Invoke'" }, - { "kind" : "IdRef", "name" : "'Param'" }, - { "kind" : "IdRef", "name" : "'Param Size'" }, - { "kind" : "IdRef", "name" : "'Param Align'" }, - { "kind" : "IdRef", "quantifier" : "*", "name" : "'Local Size'" } - ], - "capabilities" : [ "DeviceEnqueue" ] - }, - { - "opname" : "OpGetKernelNDrangeSubGroupCount", - "opcode" : 293, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'ND Range'" }, - { "kind" : "IdRef", "name" : "'Invoke'" }, - { "kind" : "IdRef", "name" : "'Param'" }, - { "kind" : "IdRef", "name" : "'Param Size'" }, - { "kind" : "IdRef", "name" : "'Param Align'" } - ], - "capabilities" : [ "DeviceEnqueue" ] - }, - { - "opname" : "OpGetKernelNDrangeMaxSubGroupSize", - "opcode" : 294, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'ND Range'" }, - { "kind" : "IdRef", "name" : "'Invoke'" }, - { "kind" : "IdRef", "name" : "'Param'" }, - { "kind" : "IdRef", "name" : "'Param Size'" }, - { "kind" : "IdRef", "name" : "'Param Align'" } - ], - "capabilities" : [ "DeviceEnqueue" ] - }, - { - "opname" : "OpGetKernelWorkGroupSize", - "opcode" : 295, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Invoke'" }, - { "kind" : "IdRef", "name" : "'Param'" }, - { "kind" : "IdRef", "name" : "'Param Size'" }, - { "kind" : "IdRef", "name" : "'Param Align'" } - ], - "capabilities" : [ "DeviceEnqueue" ] - }, - { - "opname" : "OpGetKernelPreferredWorkGroupSizeMultiple", - "opcode" : 296, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Invoke'" }, - { "kind" : "IdRef", "name" : "'Param'" }, - { "kind" : "IdRef", "name" : "'Param Size'" }, - { "kind" : "IdRef", "name" : "'Param Align'" } - ], - "capabilities" : [ "DeviceEnqueue" ] - }, - { - "opname" : "OpRetainEvent", - "opcode" : 297, - "operands" : [ - { "kind" : "IdRef", "name" : "'Event'" } - ], - "capabilities" : [ "DeviceEnqueue" ] - }, - { - "opname" : "OpReleaseEvent", - "opcode" : 298, - "operands" : [ - { "kind" : "IdRef", "name" : "'Event'" } - ], - "capabilities" : [ "DeviceEnqueue" ] - }, - { - "opname" : "OpCreateUserEvent", - "opcode" : 299, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" } - ], - "capabilities" : [ "DeviceEnqueue" ] - }, - { - "opname" : "OpIsValidEvent", - "opcode" : 300, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Event'" } - ], - "capabilities" : [ "DeviceEnqueue" ] - }, - { - "opname" : "OpSetUserEventStatus", - "opcode" : 301, - "operands" : [ - { "kind" : "IdRef", "name" : "'Event'" }, - { "kind" : "IdRef", "name" : "'Status'" } - ], - "capabilities" : [ "DeviceEnqueue" ] - }, - { - "opname" : "OpCaptureEventProfilingInfo", - "opcode" : 302, - "operands" : [ - { "kind" : "IdRef", "name" : "'Event'" }, - { "kind" : "IdRef", "name" : "'Profiling Info'" }, - { "kind" : "IdRef", "name" : "'Value'" } - ], - "capabilities" : [ "DeviceEnqueue" ] - }, - { - "opname" : "OpGetDefaultQueue", - "opcode" : 303, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" } - ], - "capabilities" : [ "DeviceEnqueue" ] - }, - { - "opname" : "OpBuildNDRange", - "opcode" : 304, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'GlobalWorkSize'" }, - { "kind" : "IdRef", "name" : "'LocalWorkSize'" }, - { "kind" : "IdRef", "name" : "'GlobalWorkOffset'" } - ], - "capabilities" : [ "DeviceEnqueue" ] - }, - { - "opname" : "OpImageSparseSampleImplicitLod", - "opcode" : 305, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Sampled Image'" }, - { "kind" : "IdRef", "name" : "'Coordinate'" }, - { "kind" : "ImageOperands", "quantifier" : "?" } - ], - "capabilities" : [ "SparseResidency" ] - }, - { - "opname" : "OpImageSparseSampleExplicitLod", - "opcode" : 306, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Sampled Image'" }, - { "kind" : "IdRef", "name" : "'Coordinate'" }, - { "kind" : "ImageOperands" } - ], - "capabilities" : [ "SparseResidency" ] - }, - { - "opname" : "OpImageSparseSampleDrefImplicitLod", - "opcode" : 307, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Sampled Image'" }, - { "kind" : "IdRef", "name" : "'Coordinate'" }, - { "kind" : "IdRef", "name" : "'D~ref~'" }, - { "kind" : "ImageOperands", "quantifier" : "?" } - ], - "capabilities" : [ "SparseResidency" ] - }, - { - "opname" : "OpImageSparseSampleDrefExplicitLod", - "opcode" : 308, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Sampled Image'" }, - { "kind" : "IdRef", "name" : "'Coordinate'" }, - { "kind" : "IdRef", "name" : "'D~ref~'" }, - { "kind" : "ImageOperands" } - ], - "capabilities" : [ "SparseResidency" ] - }, - { - "opname" : "OpImageSparseSampleProjImplicitLod", - "opcode" : 309, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Sampled Image'" }, - { "kind" : "IdRef", "name" : "'Coordinate'" }, - { "kind" : "ImageOperands", "quantifier" : "?" } - ], - "capabilities" : [ "SparseResidency" ] - }, - { - "opname" : "OpImageSparseSampleProjExplicitLod", - "opcode" : 310, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Sampled Image'" }, - { "kind" : "IdRef", "name" : "'Coordinate'" }, - { "kind" : "ImageOperands" } - ], - "capabilities" : [ "SparseResidency" ] - }, - { - "opname" : "OpImageSparseSampleProjDrefImplicitLod", - "opcode" : 311, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Sampled Image'" }, - { "kind" : "IdRef", "name" : "'Coordinate'" }, - { "kind" : "IdRef", "name" : "'D~ref~'" }, - { "kind" : "ImageOperands", "quantifier" : "?" } - ], - "capabilities" : [ "SparseResidency" ] - }, - { - "opname" : "OpImageSparseSampleProjDrefExplicitLod", - "opcode" : 312, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Sampled Image'" }, - { "kind" : "IdRef", "name" : "'Coordinate'" }, - { "kind" : "IdRef", "name" : "'D~ref~'" }, - { "kind" : "ImageOperands" } - ], - "capabilities" : [ "SparseResidency" ] - }, - { - "opname" : "OpImageSparseFetch", - "opcode" : 313, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Image'" }, - { "kind" : "IdRef", "name" : "'Coordinate'" }, - { "kind" : "ImageOperands", "quantifier" : "?" } - ], - "capabilities" : [ "SparseResidency" ] - }, - { - "opname" : "OpImageSparseGather", - "opcode" : 314, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Sampled Image'" }, - { "kind" : "IdRef", "name" : "'Coordinate'" }, - { "kind" : "IdRef", "name" : "'Component'" }, - { "kind" : "ImageOperands", "quantifier" : "?" } - ], - "capabilities" : [ "SparseResidency" ] - }, - { - "opname" : "OpImageSparseDrefGather", - "opcode" : 315, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Sampled Image'" }, - { "kind" : "IdRef", "name" : "'Coordinate'" }, - { "kind" : "IdRef", "name" : "'D~ref~'" }, - { "kind" : "ImageOperands", "quantifier" : "?" } - ], - "capabilities" : [ "SparseResidency" ] - }, - { - "opname" : "OpImageSparseTexelsResident", - "opcode" : 316, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Resident Code'" } - ], - "capabilities" : [ "SparseResidency" ] - }, - { - "opname" : "OpNoLine", - "opcode" : 317 - }, - { - "opname" : "OpAtomicFlagTestAndSet", - "opcode" : 318, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Pointer'" }, - { "kind" : "IdScope", "name" : "'Scope'" }, - { "kind" : "IdMemorySemantics", "name" : "'Semantics'" } - ], - "capabilities" : [ "Kernel" ] - }, - { - "opname" : "OpAtomicFlagClear", - "opcode" : 319, - "operands" : [ - { "kind" : "IdRef", "name" : "'Pointer'" }, - { "kind" : "IdScope", "name" : "'Scope'" }, - { "kind" : "IdMemorySemantics", "name" : "'Semantics'" } - ], - "capabilities" : [ "Kernel" ] - }, - { - "opname" : "OpImageSparseRead", - "opcode" : 320, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Image'" }, - { "kind" : "IdRef", "name" : "'Coordinate'" }, - { "kind" : "ImageOperands", "quantifier" : "?" } - ], - "capabilities" : [ "SparseResidency" ] - }, - { - "opname" : "OpDecorateId", - "opcode" : 332, - "operands" : [ - { "kind" : "IdRef", "name" : "'Target'" }, - { "kind" : "Decoration" } - ], - "extensions" : [ "SPV_GOOGLE_hlsl_functionality1" ] - }, - { - "opname" : "OpSubgroupBallotKHR", - "opcode" : 4421, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Predicate'" } - ], - "capabilities" : [ "SubgroupBallotKHR" ] - }, - { - "opname" : "OpSubgroupFirstInvocationKHR", - "opcode" : 4422, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Value'" } - ], - "capabilities" : [ "SubgroupBallotKHR" ] - }, - { - "opname" : "OpSubgroupAllKHR", - "opcode" : 4428, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Predicate'" } - ], - "capabilities" : [ "SubgroupVoteKHR" ] - }, - { - "opname" : "OpSubgroupAnyKHR", - "opcode" : 4429, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Predicate'" } - ], - "capabilities" : [ "SubgroupVoteKHR" ] - }, - { - "opname" : "OpSubgroupAllEqualKHR", - "opcode" : 4430, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Predicate'" } - ], - "capabilities" : [ "SubgroupVoteKHR" ] - }, - { - "opname" : "OpSubgroupReadInvocationKHR", - "opcode" : 4432, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Value'" }, - { "kind" : "IdRef", "name" : "'Index'" } - ], - "capabilities" : [ "SubgroupBallotKHR" ] - }, - { - "opname" : "OpGroupIAddNonUniformAMD", - "opcode" : 5000, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdScope", "name" : "'Execution'" }, - { "kind" : "GroupOperation", "name" : "'Operation'" }, - { "kind" : "IdRef", "name" : "'X'" } - ], - "capabilities" : [ "Groups" ] - }, - { - "opname" : "OpGroupFAddNonUniformAMD", - "opcode" : 5001, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdScope", "name" : "'Execution'" }, - { "kind" : "GroupOperation", "name" : "'Operation'" }, - { "kind" : "IdRef", "name" : "'X'" } - ], - "capabilities" : [ "Groups" ] - }, - { - "opname" : "OpGroupFMinNonUniformAMD", - "opcode" : 5002, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdScope", "name" : "'Execution'" }, - { "kind" : "GroupOperation", "name" : "'Operation'" }, - { "kind" : "IdRef", "name" : "'X'" } - ], - "capabilities" : [ "Groups" ] - }, - { - "opname" : "OpGroupUMinNonUniformAMD", - "opcode" : 5003, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdScope", "name" : "'Execution'" }, - { "kind" : "GroupOperation", "name" : "'Operation'" }, - { "kind" : "IdRef", "name" : "'X'" } - ], - "capabilities" : [ "Groups" ] - }, - { - "opname" : "OpGroupSMinNonUniformAMD", - "opcode" : 5004, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdScope", "name" : "'Execution'" }, - { "kind" : "GroupOperation", "name" : "'Operation'" }, - { "kind" : "IdRef", "name" : "'X'" } - ], - "capabilities" : [ "Groups" ] - }, - { - "opname" : "OpGroupFMaxNonUniformAMD", - "opcode" : 5005, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdScope", "name" : "'Execution'" }, - { "kind" : "GroupOperation", "name" : "'Operation'" }, - { "kind" : "IdRef", "name" : "'X'" } - ], - "capabilities" : [ "Groups" ] - }, - { - "opname" : "OpGroupUMaxNonUniformAMD", - "opcode" : 5006, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdScope", "name" : "'Execution'" }, - { "kind" : "GroupOperation", "name" : "'Operation'" }, - { "kind" : "IdRef", "name" : "'X'" } - ], - "capabilities" : [ "Groups" ] - }, - { - "opname" : "OpGroupSMaxNonUniformAMD", - "opcode" : 5007, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdScope", "name" : "'Execution'" }, - { "kind" : "GroupOperation", "name" : "'Operation'" }, - { "kind" : "IdRef", "name" : "'X'" } - ], - "capabilities" : [ "Groups" ] - }, - { - "opname" : "OpFragmentMaskFetchAMD", - "opcode" : 5011, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Image'" }, - { "kind" : "IdRef", "name" : "'Coordinate'" } - ], - "capabilities" : [ "FragmentMaskAMD" ] - }, - { - "opname" : "OpFragmentFetchAMD", - "opcode" : 5012, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Image'" }, - { "kind" : "IdRef", "name" : "'Coordinate'" }, - { "kind" : "IdRef", "name" : "'Fragment Index'" } - ], - "capabilities" : [ "FragmentMaskAMD" ] - }, - { - "opname" : "OpSubgroupShuffleINTEL", - "opcode" : 5571, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Data'" }, - { "kind" : "IdRef", "name" : "'InvocationId'" } - ], - "capabilities" : [ "SubgroupShuffleINTEL" ] - }, - { - "opname" : "OpSubgroupShuffleDownINTEL", - "opcode" : 5572, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Current'" }, - { "kind" : "IdRef", "name" : "'Next'" }, - { "kind" : "IdRef", "name" : "'Delta'" } - ], - "capabilities" : [ "SubgroupShuffleINTEL" ] - }, - { - "opname" : "OpSubgroupShuffleUpINTEL", - "opcode" : 5573, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Previous'" }, - { "kind" : "IdRef", "name" : "'Current'" }, - { "kind" : "IdRef", "name" : "'Delta'" } - ], - "capabilities" : [ "SubgroupShuffleINTEL" ] - }, - { - "opname" : "OpSubgroupShuffleXorINTEL", - "opcode" : 5574, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Data'" }, - { "kind" : "IdRef", "name" : "'Value'" } - ], - "capabilities" : [ "SubgroupShuffleINTEL" ] - }, - { - "opname" : "OpSubgroupBlockReadINTEL", - "opcode" : 5575, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Ptr'" } - ], - "capabilities" : [ "SubgroupBufferBlockIOINTEL" ] - }, - { - "opname" : "OpSubgroupBlockWriteINTEL", - "opcode" : 5576, - "operands" : [ - { "kind" : "IdRef", "name" : "'Ptr'" }, - { "kind" : "IdRef", "name" : "'Data'" } - ], - "capabilities" : [ "SubgroupBufferBlockIOINTEL" ] - }, - { - "opname" : "OpSubgroupImageBlockReadINTEL", - "opcode" : 5577, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Image'" }, - { "kind" : "IdRef", "name" : "'Coordinate'" } - ], - "capabilities" : [ "SubgroupImageBlockIOINTEL" ] - }, - { - "opname" : "OpSubgroupImageBlockWriteINTEL", - "opcode" : 5578, - "operands" : [ - { "kind" : "IdRef", "name" : "'Image'" }, - { "kind" : "IdRef", "name" : "'Coordinate'" }, - { "kind" : "IdRef", "name" : "'Data'" } - ], - "capabilities" : [ "SubgroupImageBlockIOINTEL" ] - }, - { - "opname" : "OpDecorateStringGOOGLE", - "opcode" : 5632, - "operands" : [ - { "kind" : "IdRef", "name" : "'Target'" }, - { "kind" : "Decoration" } - ], - "extensions" : [ "SPV_GOOGLE_decorate_string" ] - }, - { - "opname" : "OpMemberDecorateStringGOOGLE", - "opcode" : 5633, - "operands" : [ - { "kind" : "IdRef", "name" : "'Struct Type'" }, - { "kind" : "LiteralInteger", "name" : "'Member'" }, - { "kind" : "Decoration" } - ], - "extensions" : [ "SPV_GOOGLE_decorate_string" ] - } - ], - "operand_kinds" : [ - { - "category" : "BitEnum", - "kind" : "ImageOperands", - "enumerants" : [ - { - "enumerant" : "None", - "value" : "0x0000" - }, - { - "enumerant" : "Bias", - "value" : "0x0001", - "capabilities" : [ "Shader" ], - "parameters" : [ - { "kind" : "IdRef" } - ] - }, - { - "enumerant" : "Lod", - "value" : "0x0002", - "parameters" : [ - { "kind" : "IdRef" } - ] - }, - { - "enumerant" : "Grad", - "value" : "0x0004", - "parameters" : [ - { "kind" : "IdRef" }, - { "kind" : "IdRef" } - ] - }, - { - "enumerant" : "ConstOffset", - "value" : "0x0008", - "parameters" : [ - { "kind" : "IdRef" } - ] - }, - { - "enumerant" : "Offset", - "value" : "0x0010", - "capabilities" : [ "ImageGatherExtended" ], - "parameters" : [ - { "kind" : "IdRef" } - ] - }, - { - "enumerant" : "ConstOffsets", - "value" : "0x0020", - "parameters" : [ - { "kind" : "IdRef" } - ] - }, - { - "enumerant" : "Sample", - "value" : "0x0040", - "parameters" : [ - { "kind" : "IdRef" } - ] - }, - { - "enumerant" : "MinLod", - "value" : "0x0080", - "capabilities" : [ "MinLod" ], - "parameters" : [ - { "kind" : "IdRef" } - ] - } - ] - }, - { - "category" : "BitEnum", - "kind" : "FPFastMathMode", - "enumerants" : [ - { - "enumerant" : "None", - "value" : "0x0000" - }, - { - "enumerant" : "NotNaN", - "value" : "0x0001", - "capabilities" : [ "Kernel" ] - }, - { - "enumerant" : "NotInf", - "value" : "0x0002", - "capabilities" : [ "Kernel" ] - }, - { - "enumerant" : "NSZ", - "value" : "0x0004", - "capabilities" : [ "Kernel" ] - }, - { - "enumerant" : "AllowRecip", - "value" : "0x0008", - "capabilities" : [ "Kernel" ] - }, - { - "enumerant" : "Fast", - "value" : "0x0010", - "capabilities" : [ "Kernel" ] - } - ] - }, - { - "category" : "BitEnum", - "kind" : "SelectionControl", - "enumerants" : [ - { - "enumerant" : "None", - "value" : "0x0000" - }, - { - "enumerant" : "Flatten", - "value" : "0x0001" - }, - { - "enumerant" : "DontFlatten", - "value" : "0x0002" - } - ] - }, - { - "category" : "BitEnum", - "kind" : "LoopControl", - "enumerants" : [ - { - "enumerant" : "None", - "value" : "0x0000" - }, - { - "enumerant" : "Unroll", - "value" : "0x0001" - }, - { - "enumerant" : "DontUnroll", - "value" : "0x0002" - } - ] - }, - { - "category" : "BitEnum", - "kind" : "FunctionControl", - "enumerants" : [ - { - "enumerant" : "None", - "value" : "0x0000" - }, - { - "enumerant" : "Inline", - "value" : "0x0001" - }, - { - "enumerant" : "DontInline", - "value" : "0x0002" - }, - { - "enumerant" : "Pure", - "value" : "0x0004" - }, - { - "enumerant" : "Const", - "value" : "0x0008" - } - ] - }, - { - "category" : "BitEnum", - "kind" : "MemorySemantics", - "enumerants" : [ - { - "enumerant" : "Relaxed", - "value" : "0x0000" - }, - { - "enumerant" : "None", - "value" : "0x0000" - }, - { - "enumerant" : "Acquire", - "value" : "0x0002" - }, - { - "enumerant" : "Release", - "value" : "0x0004" - }, - { - "enumerant" : "AcquireRelease", - "value" : "0x0008" - }, - { - "enumerant" : "SequentiallyConsistent", - "value" : "0x0010" - }, - { - "enumerant" : "UniformMemory", - "value" : "0x0040", - "capabilities" : [ "Shader" ] - }, - { - "enumerant" : "SubgroupMemory", - "value" : "0x0080" - }, - { - "enumerant" : "WorkgroupMemory", - "value" : "0x0100" - }, - { - "enumerant" : "CrossWorkgroupMemory", - "value" : "0x0200" - }, - { - "enumerant" : "AtomicCounterMemory", - "value" : "0x0400", - "capabilities" : [ "AtomicStorage" ] - }, - { - "enumerant" : "ImageMemory", - "value" : "0x0800" - } - ] - }, - { - "category" : "BitEnum", - "kind" : "MemoryAccess", - "enumerants" : [ - { - "enumerant" : "None", - "value" : "0x0000" - }, - { - "enumerant" : "Volatile", - "value" : "0x0001" - }, - { - "enumerant" : "Aligned", - "value" : "0x0002", - "parameters" : [ - { "kind" : "LiteralInteger" } - ] - }, - { - "enumerant" : "Nontemporal", - "value" : "0x0004" - } - ] - }, - { - "category" : "BitEnum", - "kind" : "KernelProfilingInfo", - "enumerants" : [ - { - "enumerant" : "None", - "value" : "0x0000" - }, - { - "enumerant" : "CmdExecTime", - "value" : "0x0001", - "capabilities" : [ "Kernel" ] - } - ] - }, - { - "category" : "ValueEnum", - "kind" : "SourceLanguage", - "enumerants" : [ - { - "enumerant" : "Unknown", - "value" : 0 - }, - { - "enumerant" : "ESSL", - "value" : 1 - }, - { - "enumerant" : "GLSL", - "value" : 2 - }, - { - "enumerant" : "OpenCL_C", - "value" : 3 - }, - { - "enumerant" : "OpenCL_CPP", - "value" : 4 - }, - { - "enumerant" : "HLSL", - "value" : 5 - } - ] - }, - { - "category" : "ValueEnum", - "kind" : "ExecutionModel", - "enumerants" : [ - { - "enumerant" : "Vertex", - "value" : 0, - "capabilities" : [ "Shader" ] - }, - { - "enumerant" : "TessellationControl", - "value" : 1, - "capabilities" : [ "Tessellation" ] - }, - { - "enumerant" : "TessellationEvaluation", - "value" : 2, - "capabilities" : [ "Tessellation" ] - }, - { - "enumerant" : "Geometry", - "value" : 3, - "capabilities" : [ "Geometry" ] - }, - { - "enumerant" : "Fragment", - "value" : 4, - "capabilities" : [ "Shader" ] - }, - { - "enumerant" : "GLCompute", - "value" : 5, - "capabilities" : [ "Shader" ] - }, - { - "enumerant" : "Kernel", - "value" : 6, - "capabilities" : [ "Kernel" ] - } - ] - }, - { - "category" : "ValueEnum", - "kind" : "AddressingModel", - "enumerants" : [ - { - "enumerant" : "Logical", - "value" : 0 - }, - { - "enumerant" : "Physical32", - "value" : 1, - "capabilities" : [ "Addresses" ] - }, - { - "enumerant" : "Physical64", - "value" : 2, - "capabilities" : [ "Addresses" ] - } - ] - }, - { - "category" : "ValueEnum", - "kind" : "MemoryModel", - "enumerants" : [ - { - "enumerant" : "Simple", - "value" : 0, - "capabilities" : [ "Shader" ] - }, - { - "enumerant" : "GLSL450", - "value" : 1, - "capabilities" : [ "Shader" ] - }, - { - "enumerant" : "OpenCL", - "value" : 2, - "capabilities" : [ "Kernel" ] - } - ] - }, - { - "category" : "ValueEnum", - "kind" : "ExecutionMode", - "enumerants" : [ - { - "enumerant" : "Invocations", - "value" : 0, - "capabilities" : [ "Geometry" ], - "parameters" : [ - { "kind" : "LiteralInteger", "name" : "'Number of <>'" } - ] - }, - { - "enumerant" : "SpacingEqual", - "value" : 1, - "capabilities" : [ "Tessellation" ] - }, - { - "enumerant" : "SpacingFractionalEven", - "value" : 2, - "capabilities" : [ "Tessellation" ] - }, - { - "enumerant" : "SpacingFractionalOdd", - "value" : 3, - "capabilities" : [ "Tessellation" ] - }, - { - "enumerant" : "VertexOrderCw", - "value" : 4, - "capabilities" : [ "Tessellation" ] - }, - { - "enumerant" : "VertexOrderCcw", - "value" : 5, - "capabilities" : [ "Tessellation" ] - }, - { - "enumerant" : "PixelCenterInteger", - "value" : 6, - "capabilities" : [ "Shader" ] - }, - { - "enumerant" : "OriginUpperLeft", - "value" : 7, - "capabilities" : [ "Shader" ] - }, - { - "enumerant" : "OriginLowerLeft", - "value" : 8, - "capabilities" : [ "Shader" ] - }, - { - "enumerant" : "EarlyFragmentTests", - "value" : 9, - "capabilities" : [ "Shader" ] - }, - { - "enumerant" : "PointMode", - "value" : 10, - "capabilities" : [ "Tessellation" ] - }, - { - "enumerant" : "Xfb", - "value" : 11, - "capabilities" : [ "TransformFeedback" ] - }, - { - "enumerant" : "DepthReplacing", - "value" : 12, - "capabilities" : [ "Shader" ] - }, - { - "enumerant" : "DepthGreater", - "value" : 14, - "capabilities" : [ "Shader" ] - }, - { - "enumerant" : "DepthLess", - "value" : 15, - "capabilities" : [ "Shader" ] - }, - { - "enumerant" : "DepthUnchanged", - "value" : 16, - "capabilities" : [ "Shader" ] - }, - { - "enumerant" : "LocalSize", - "value" : 17, - "parameters" : [ - { "kind" : "LiteralInteger", "name" : "'x size'" }, - { "kind" : "LiteralInteger", "name" : "'y size'" }, - { "kind" : "LiteralInteger", "name" : "'z size'" } - ] - }, - { - "enumerant" : "LocalSizeHint", - "value" : 18, - "capabilities" : [ "Kernel" ], - "parameters" : [ - { "kind" : "LiteralInteger", "name" : "'x size'" }, - { "kind" : "LiteralInteger", "name" : "'y size'" }, - { "kind" : "LiteralInteger", "name" : "'z size'" } - ] - }, - { - "enumerant" : "InputPoints", - "value" : 19, - "capabilities" : [ "Geometry" ] - }, - { - "enumerant" : "InputLines", - "value" : 20, - "capabilities" : [ "Geometry" ] - }, - { - "enumerant" : "InputLinesAdjacency", - "value" : 21, - "capabilities" : [ "Geometry" ] - }, - { - "enumerant" : "Triangles", - "value" : 22, - "capabilities" : [ "Geometry", "Tessellation" ] - }, - { - "enumerant" : "InputTrianglesAdjacency", - "value" : 23, - "capabilities" : [ "Geometry" ] - }, - { - "enumerant" : "Quads", - "value" : 24, - "capabilities" : [ "Tessellation" ] - }, - { - "enumerant" : "Isolines", - "value" : 25, - "capabilities" : [ "Tessellation" ] - }, - { - "enumerant" : "OutputVertices", - "value" : 26, - "capabilities" : [ "Geometry", "Tessellation" ], - "parameters" : [ - { "kind" : "LiteralInteger", "name" : "'Vertex count'" } - ] - }, - { - "enumerant" : "OutputPoints", - "value" : 27, - "capabilities" : [ "Geometry" ] - }, - { - "enumerant" : "OutputLineStrip", - "value" : 28, - "capabilities" : [ "Geometry" ] - }, - { - "enumerant" : "OutputTriangleStrip", - "value" : 29, - "capabilities" : [ "Geometry" ] - }, - { - "enumerant" : "VecTypeHint", - "value" : 30, - "capabilities" : [ "Kernel" ], - "parameters" : [ - { "kind" : "LiteralInteger", "name" : "'Vector type'" } - ] - }, - { - "enumerant" : "ContractionOff", - "value" : 31, - "capabilities" : [ "Kernel" ] - }, - { - "enumerant" : "PostDepthCoverage", - "value" : 4446, - "capabilities" : [ "SampleMaskPostDepthCoverage" ] - }, - { - "enumerant" : "StencilRefReplacingEXT", - "value" : 5027, - "capabilities" : [ "StencilExportEXT" ] - } - ] - }, - { - "category" : "ValueEnum", - "kind" : "StorageClass", - "enumerants" : [ - { - "enumerant" : "UniformConstant", - "value" : 0 - }, - { - "enumerant" : "Input", - "value" : 1 - }, - { - "enumerant" : "Uniform", - "value" : 2, - "capabilities" : [ "Shader" ] - }, - { - "enumerant" : "Output", - "value" : 3, - "capabilities" : [ "Shader" ] - }, - { - "enumerant" : "Workgroup", - "value" : 4 - }, - { - "enumerant" : "CrossWorkgroup", - "value" : 5 - }, - { - "enumerant" : "Private", - "value" : 6, - "capabilities" : [ "Shader" ] - }, - { - "enumerant" : "Function", - "value" : 7 - }, - { - "enumerant" : "Generic", - "value" : 8, - "capabilities" : [ "GenericPointer" ] - }, - { - "enumerant" : "PushConstant", - "value" : 9, - "capabilities" : [ "Shader" ] - }, - { - "enumerant" : "AtomicCounter", - "value" : 10, - "capabilities" : [ "AtomicStorage" ] - }, - { - "enumerant" : "Image", - "value" : 11 - }, - { - "enumerant" : "StorageBuffer", - "value" : 12, - "extensions" : [ - "SPV_KHR_storage_buffer_storage_class", - "SPV_KHR_variable_pointers" - ], - "capabilities" : [ "Shader" ] - } - ] - }, - { - "category" : "ValueEnum", - "kind" : "Dim", - "enumerants" : [ - { - "enumerant" : "1D", - "value" : 0, - "capabilities" : [ "Sampled1D" ] - }, - { - "enumerant" : "2D", - "value" : 1 - }, - { - "enumerant" : "3D", - "value" : 2 - }, - { - "enumerant" : "Cube", - "value" : 3, - "capabilities" : [ "Shader" ] - }, - { - "enumerant" : "Rect", - "value" : 4, - "capabilities" : [ "SampledRect" ] - }, - { - "enumerant" : "Buffer", - "value" : 5, - "capabilities" : [ "SampledBuffer" ] - }, - { - "enumerant" : "SubpassData", - "value" : 6, - "capabilities" : [ "InputAttachment" ] - } - ] - }, - { - "category" : "ValueEnum", - "kind" : "SamplerAddressingMode", - "enumerants" : [ - { - "enumerant" : "None", - "value" : 0, - "capabilities" : [ "Kernel" ] - }, - { - "enumerant" : "ClampToEdge", - "value" : 1, - "capabilities" : [ "Kernel" ] - }, - { - "enumerant" : "Clamp", - "value" : 2, - "capabilities" : [ "Kernel" ] - }, - { - "enumerant" : "Repeat", - "value" : 3, - "capabilities" : [ "Kernel" ] - }, - { - "enumerant" : "RepeatMirrored", - "value" : 4, - "capabilities" : [ "Kernel" ] - } - ] - }, - { - "category" : "ValueEnum", - "kind" : "SamplerFilterMode", - "enumerants" : [ - { - "enumerant" : "Nearest", - "value" : 0, - "capabilities" : [ "Kernel" ] - }, - { - "enumerant" : "Linear", - "value" : 1, - "capabilities" : [ "Kernel" ] - } - ] - }, - { - "category" : "ValueEnum", - "kind" : "ImageFormat", - "enumerants" : [ - { - "enumerant" : "Unknown", - "value" : 0 - }, - { - "enumerant" : "Rgba32f", - "value" : 1, - "capabilities" : [ "Shader" ] - }, - { - "enumerant" : "Rgba16f", - "value" : 2, - "capabilities" : [ "Shader" ] - }, - { - "enumerant" : "R32f", - "value" : 3, - "capabilities" : [ "Shader" ] - }, - { - "enumerant" : "Rgba8", - "value" : 4, - "capabilities" : [ "Shader" ] - }, - { - "enumerant" : "Rgba8Snorm", - "value" : 5, - "capabilities" : [ "Shader" ] - }, - { - "enumerant" : "Rg32f", - "value" : 6, - "capabilities" : [ "StorageImageExtendedFormats" ] - }, - { - "enumerant" : "Rg16f", - "value" : 7, - "capabilities" : [ "StorageImageExtendedFormats" ] - }, - { - "enumerant" : "R11fG11fB10f", - "value" : 8, - "capabilities" : [ "StorageImageExtendedFormats" ] - }, - { - "enumerant" : "R16f", - "value" : 9, - "capabilities" : [ "StorageImageExtendedFormats" ] - }, - { - "enumerant" : "Rgba16", - "value" : 10, - "capabilities" : [ "StorageImageExtendedFormats" ] - }, - { - "enumerant" : "Rgb10A2", - "value" : 11, - "capabilities" : [ "StorageImageExtendedFormats" ] - }, - { - "enumerant" : "Rg16", - "value" : 12, - "capabilities" : [ "StorageImageExtendedFormats" ] - }, - { - "enumerant" : "Rg8", - "value" : 13, - "capabilities" : [ "StorageImageExtendedFormats" ] - }, - { - "enumerant" : "R16", - "value" : 14, - "capabilities" : [ "StorageImageExtendedFormats" ] - }, - { - "enumerant" : "R8", - "value" : 15, - "capabilities" : [ "StorageImageExtendedFormats" ] - }, - { - "enumerant" : "Rgba16Snorm", - "value" : 16, - "capabilities" : [ "StorageImageExtendedFormats" ] - }, - { - "enumerant" : "Rg16Snorm", - "value" : 17, - "capabilities" : [ "StorageImageExtendedFormats" ] - }, - { - "enumerant" : "Rg8Snorm", - "value" : 18, - "capabilities" : [ "StorageImageExtendedFormats" ] - }, - { - "enumerant" : "R16Snorm", - "value" : 19, - "capabilities" : [ "StorageImageExtendedFormats" ] - }, - { - "enumerant" : "R8Snorm", - "value" : 20, - "capabilities" : [ "StorageImageExtendedFormats" ] - }, - { - "enumerant" : "Rgba32i", - "value" : 21, - "capabilities" : [ "Shader" ] - }, - { - "enumerant" : "Rgba16i", - "value" : 22, - "capabilities" : [ "Shader" ] - }, - { - "enumerant" : "Rgba8i", - "value" : 23, - "capabilities" : [ "Shader" ] - }, - { - "enumerant" : "R32i", - "value" : 24, - "capabilities" : [ "Shader" ] - }, - { - "enumerant" : "Rg32i", - "value" : 25, - "capabilities" : [ "StorageImageExtendedFormats" ] - }, - { - "enumerant" : "Rg16i", - "value" : 26, - "capabilities" : [ "StorageImageExtendedFormats" ] - }, - { - "enumerant" : "Rg8i", - "value" : 27, - "capabilities" : [ "StorageImageExtendedFormats" ] - }, - { - "enumerant" : "R16i", - "value" : 28, - "capabilities" : [ "StorageImageExtendedFormats" ] - }, - { - "enumerant" : "R8i", - "value" : 29, - "capabilities" : [ "StorageImageExtendedFormats" ] - }, - { - "enumerant" : "Rgba32ui", - "value" : 30, - "capabilities" : [ "Shader" ] - }, - { - "enumerant" : "Rgba16ui", - "value" : 31, - "capabilities" : [ "Shader" ] - }, - { - "enumerant" : "Rgba8ui", - "value" : 32, - "capabilities" : [ "Shader" ] - }, - { - "enumerant" : "R32ui", - "value" : 33, - "capabilities" : [ "Shader" ] - }, - { - "enumerant" : "Rgb10a2ui", - "value" : 34, - "capabilities" : [ "StorageImageExtendedFormats" ] - }, - { - "enumerant" : "Rg32ui", - "value" : 35, - "capabilities" : [ "StorageImageExtendedFormats" ] - }, - { - "enumerant" : "Rg16ui", - "value" : 36, - "capabilities" : [ "StorageImageExtendedFormats" ] - }, - { - "enumerant" : "Rg8ui", - "value" : 37, - "capabilities" : [ "StorageImageExtendedFormats" ] - }, - { - "enumerant" : "R16ui", - "value" : 38, - "capabilities" : [ "StorageImageExtendedFormats" ] - }, - { - "enumerant" : "R8ui", - "value" : 39, - "capabilities" : [ "StorageImageExtendedFormats" ] - } - ] - }, - { - "category" : "ValueEnum", - "kind" : "ImageChannelOrder", - "enumerants" : [ - { - "enumerant" : "R", - "value" : 0, - "capabilities" : [ "Kernel" ] - }, - { - "enumerant" : "A", - "value" : 1, - "capabilities" : [ "Kernel" ] - }, - { - "enumerant" : "RG", - "value" : 2, - "capabilities" : [ "Kernel" ] - }, - { - "enumerant" : "RA", - "value" : 3, - "capabilities" : [ "Kernel" ] - }, - { - "enumerant" : "RGB", - "value" : 4, - "capabilities" : [ "Kernel" ] - }, - { - "enumerant" : "RGBA", - "value" : 5, - "capabilities" : [ "Kernel" ] - }, - { - "enumerant" : "BGRA", - "value" : 6, - "capabilities" : [ "Kernel" ] - }, - { - "enumerant" : "ARGB", - "value" : 7, - "capabilities" : [ "Kernel" ] - }, - { - "enumerant" : "Intensity", - "value" : 8, - "capabilities" : [ "Kernel" ] - }, - { - "enumerant" : "Luminance", - "value" : 9, - "capabilities" : [ "Kernel" ] - }, - { - "enumerant" : "Rx", - "value" : 10, - "capabilities" : [ "Kernel" ] - }, - { - "enumerant" : "RGx", - "value" : 11, - "capabilities" : [ "Kernel" ] - }, - { - "enumerant" : "RGBx", - "value" : 12, - "capabilities" : [ "Kernel" ] - }, - { - "enumerant" : "Depth", - "value" : 13, - "capabilities" : [ "Kernel" ] - }, - { - "enumerant" : "DepthStencil", - "value" : 14, - "capabilities" : [ "Kernel" ] - }, - { - "enumerant" : "sRGB", - "value" : 15, - "capabilities" : [ "Kernel" ] - }, - { - "enumerant" : "sRGBx", - "value" : 16, - "capabilities" : [ "Kernel" ] - }, - { - "enumerant" : "sRGBA", - "value" : 17, - "capabilities" : [ "Kernel" ] - }, - { - "enumerant" : "sBGRA", - "value" : 18, - "capabilities" : [ "Kernel" ] - }, - { - "enumerant" : "ABGR", - "value" : 19, - "capabilities" : [ "Kernel" ] - } - ] - }, - { - "category" : "ValueEnum", - "kind" : "ImageChannelDataType", - "enumerants" : [ - { - "enumerant" : "SnormInt8", - "value" : 0, - "capabilities" : [ "Kernel" ] - }, - { - "enumerant" : "SnormInt16", - "value" : 1, - "capabilities" : [ "Kernel" ] - }, - { - "enumerant" : "UnormInt8", - "value" : 2, - "capabilities" : [ "Kernel" ] - }, - { - "enumerant" : "UnormInt16", - "value" : 3, - "capabilities" : [ "Kernel" ] - }, - { - "enumerant" : "UnormShort565", - "value" : 4, - "capabilities" : [ "Kernel" ] - }, - { - "enumerant" : "UnormShort555", - "value" : 5, - "capabilities" : [ "Kernel" ] - }, - { - "enumerant" : "UnormInt101010", - "value" : 6, - "capabilities" : [ "Kernel" ] - }, - { - "enumerant" : "SignedInt8", - "value" : 7, - "capabilities" : [ "Kernel" ] - }, - { - "enumerant" : "SignedInt16", - "value" : 8, - "capabilities" : [ "Kernel" ] - }, - { - "enumerant" : "SignedInt32", - "value" : 9, - "capabilities" : [ "Kernel" ] - }, - { - "enumerant" : "UnsignedInt8", - "value" : 10, - "capabilities" : [ "Kernel" ] - }, - { - "enumerant" : "UnsignedInt16", - "value" : 11, - "capabilities" : [ "Kernel" ] - }, - { - "enumerant" : "UnsignedInt32", - "value" : 12, - "capabilities" : [ "Kernel" ] - }, - { - "enumerant" : "HalfFloat", - "value" : 13, - "capabilities" : [ "Kernel" ] - }, - { - "enumerant" : "Float", - "value" : 14, - "capabilities" : [ "Kernel" ] - }, - { - "enumerant" : "UnormInt24", - "value" : 15, - "capabilities" : [ "Kernel" ] - }, - { - "enumerant" : "UnormInt101010_2", - "value" : 16, - "capabilities" : [ "Kernel" ] - } - ] - }, - { - "category" : "ValueEnum", - "kind" : "FPRoundingMode", - "enumerants" : [ - { - "enumerant" : "RTE", - "value" : 0, - "capabilities" : [ - "Kernel", - "StorageUniformBufferBlock16", - "StorageUniform16", - "StoragePushConstant16", - "StorageInputOutput16" - ] - }, - { - "enumerant" : "RTZ", - "value" : 1, - "capabilities" : [ - "Kernel", - "StorageUniformBufferBlock16", - "StorageUniform16", - "StoragePushConstant16", - "StorageInputOutput16" - ] - }, - { - "enumerant" : "RTP", - "value" : 2, - "capabilities" : [ - "Kernel", - "StorageUniformBufferBlock16", - "StorageUniform16", - "StoragePushConstant16", - "StorageInputOutput16" - ] - }, - { - "enumerant" : "RTN", - "value" : 3, - "capabilities" : [ - "Kernel", - "StorageUniformBufferBlock16", - "StorageUniform16", - "StoragePushConstant16", - "StorageInputOutput16" - ] - } - ] - }, - { - "category" : "ValueEnum", - "kind" : "LinkageType", - "enumerants" : [ - { - "enumerant" : "Export", - "value" : 0, - "capabilities" : [ "Linkage" ] - }, - { - "enumerant" : "Import", - "value" : 1, - "capabilities" : [ "Linkage" ] - } - ] - }, - { - "category" : "ValueEnum", - "kind" : "AccessQualifier", - "enumerants" : [ - { - "enumerant" : "ReadOnly", - "value" : 0, - "capabilities" : [ "Kernel" ] - }, - { - "enumerant" : "WriteOnly", - "value" : 1, - "capabilities" : [ "Kernel" ] - }, - { - "enumerant" : "ReadWrite", - "value" : 2, - "capabilities" : [ "Kernel" ] - } - ] - }, - { - "category" : "ValueEnum", - "kind" : "FunctionParameterAttribute", - "enumerants" : [ - { - "enumerant" : "Zext", - "value" : 0, - "capabilities" : [ "Kernel" ] - }, - { - "enumerant" : "Sext", - "value" : 1, - "capabilities" : [ "Kernel" ] - }, - { - "enumerant" : "ByVal", - "value" : 2, - "capabilities" : [ "Kernel" ] - }, - { - "enumerant" : "Sret", - "value" : 3, - "capabilities" : [ "Kernel" ] - }, - { - "enumerant" : "NoAlias", - "value" : 4, - "capabilities" : [ "Kernel" ] - }, - { - "enumerant" : "NoCapture", - "value" : 5, - "capabilities" : [ "Kernel" ] - }, - { - "enumerant" : "NoWrite", - "value" : 6, - "capabilities" : [ "Kernel" ] - }, - { - "enumerant" : "NoReadWrite", - "value" : 7, - "capabilities" : [ "Kernel" ] - } - ] - }, - { - "category" : "ValueEnum", - "kind" : "Decoration", - "enumerants" : [ - { - "enumerant" : "RelaxedPrecision", - "value" : 0, - "capabilities" : [ "Shader" ] - }, - { - "enumerant" : "SpecId", - "value" : 1, - "capabilities" : [ "Shader" ], - "parameters" : [ - { "kind" : "LiteralInteger", "name" : "'Specialization Constant ID'" } - ] - }, - { - "enumerant" : "Block", - "value" : 2, - "capabilities" : [ "Shader" ] - }, - { - "enumerant" : "BufferBlock", - "value" : 3, - "capabilities" : [ "Shader" ] - }, - { - "enumerant" : "RowMajor", - "value" : 4, - "capabilities" : [ "Matrix" ] - }, - { - "enumerant" : "ColMajor", - "value" : 5, - "capabilities" : [ "Matrix" ] - }, - { - "enumerant" : "ArrayStride", - "value" : 6, - "capabilities" : [ "Shader" ], - "parameters" : [ - { "kind" : "LiteralInteger", "name" : "'Array Stride'" } - ] - }, - { - "enumerant" : "MatrixStride", - "value" : 7, - "capabilities" : [ "Matrix" ], - "parameters" : [ - { "kind" : "LiteralInteger", "name" : "'Matrix Stride'" } - ] - }, - { - "enumerant" : "GLSLShared", - "value" : 8, - "capabilities" : [ "Shader" ] - }, - { - "enumerant" : "GLSLPacked", - "value" : 9, - "capabilities" : [ "Shader" ] - }, - { - "enumerant" : "CPacked", - "value" : 10, - "capabilities" : [ "Kernel" ] - }, - { - "enumerant" : "BuiltIn", - "value" : 11, - "parameters" : [ - { "kind" : "BuiltIn" } - ] - }, - { - "enumerant" : "NoPerspective", - "value" : 13, - "capabilities" : [ "Shader" ] - }, - { - "enumerant" : "Flat", - "value" : 14, - "capabilities" : [ "Shader" ] - }, - { - "enumerant" : "Patch", - "value" : 15, - "capabilities" : [ "Tessellation" ] - }, - { - "enumerant" : "Centroid", - "value" : 16, - "capabilities" : [ "Shader" ] - }, - { - "enumerant" : "Sample", - "value" : 17, - "capabilities" : [ "SampleRateShading" ] - }, - { - "enumerant" : "Invariant", - "value" : 18, - "capabilities" : [ "Shader" ] - }, - { - "enumerant" : "Restrict", - "value" : 19 - }, - { - "enumerant" : "Aliased", - "value" : 20 - }, - { - "enumerant" : "Volatile", - "value" : 21 - }, - { - "enumerant" : "Constant", - "value" : 22, - "capabilities" : [ "Kernel" ] - }, - { - "enumerant" : "Coherent", - "value" : 23 - }, - { - "enumerant" : "NonWritable", - "value" : 24 - }, - { - "enumerant" : "NonReadable", - "value" : 25 - }, - { - "enumerant" : "Uniform", - "value" : 26, - "capabilities" : [ "Shader" ] - }, - { - "enumerant" : "SaturatedConversion", - "value" : 28, - "capabilities" : [ "Kernel" ] - }, - { - "enumerant" : "Stream", - "value" : 29, - "capabilities" : [ "GeometryStreams" ], - "parameters" : [ - { "kind" : "LiteralInteger", "name" : "'Stream Number'" } - ] - }, - { - "enumerant" : "Location", - "value" : 30, - "capabilities" : [ "Shader" ], - "parameters" : [ - { "kind" : "LiteralInteger", "name" : "'Location'" } - ] - }, - { - "enumerant" : "Component", - "value" : 31, - "capabilities" : [ "Shader" ], - "parameters" : [ - { "kind" : "LiteralInteger", "name" : "'Component'" } - ] - }, - { - "enumerant" : "Index", - "value" : 32, - "capabilities" : [ "Shader" ], - "parameters" : [ - { "kind" : "LiteralInteger", "name" : "'Index'" } - ] - }, - { - "enumerant" : "Binding", - "value" : 33, - "capabilities" : [ "Shader" ], - "parameters" : [ - { "kind" : "LiteralInteger", "name" : "'Binding Point'" } - ] - }, - { - "enumerant" : "DescriptorSet", - "value" : 34, - "capabilities" : [ "Shader" ], - "parameters" : [ - { "kind" : "LiteralInteger", "name" : "'Descriptor Set'" } - ] - }, - { - "enumerant" : "Offset", - "value" : 35, - "capabilities" : [ "Shader" ], - "parameters" : [ - { "kind" : "LiteralInteger", "name" : "'Byte Offset'" } - ] - }, - { - "enumerant" : "XfbBuffer", - "value" : 36, - "capabilities" : [ "TransformFeedback" ], - "parameters" : [ - { "kind" : "LiteralInteger", "name" : "'XFB Buffer Number'" } - ] - }, - { - "enumerant" : "XfbStride", - "value" : 37, - "capabilities" : [ "TransformFeedback" ], - "parameters" : [ - { "kind" : "LiteralInteger", "name" : "'XFB Stride'" } - ] - }, - { - "enumerant" : "FuncParamAttr", - "value" : 38, - "capabilities" : [ "Kernel" ], - "parameters" : [ - { "kind" : "FunctionParameterAttribute", "name" : "'Function Parameter Attribute'" } - ] - }, - { - "enumerant" : "FPRoundingMode", - "value" : 39, - "capabilities" : [ - "Kernel", - "StorageUniformBufferBlock16", - "StorageUniform16", - "StoragePushConstant16", - "StorageInputOutput16" - ], - "parameters" : [ - { "kind" : "FPRoundingMode", "name" : "'Floating-Point Rounding Mode'" } - ] - }, - { - "enumerant" : "FPFastMathMode", - "value" : 40, - "capabilities" : [ "Kernel" ], - "parameters" : [ - { "kind" : "FPFastMathMode", "name" : "'Fast-Math Mode'" } - ] - }, - { - "enumerant" : "LinkageAttributes", - "value" : 41, - "capabilities" : [ "Linkage" ], - "parameters" : [ - { "kind" : "LiteralString", "name" : "'Name'" }, - { "kind" : "LinkageType", "name" : "'Linkage Type'" } - ] - }, - { - "enumerant" : "NoContraction", - "value" : 42, - "capabilities" : [ "Shader" ] - }, - { - "enumerant" : "InputAttachmentIndex", - "value" : 43, - "capabilities" : [ "InputAttachment" ], - "parameters" : [ - { "kind" : "LiteralInteger", "name" : "'Attachment Index'" } - ] - }, - { - "enumerant" : "Alignment", - "value" : 44, - "capabilities" : [ "Kernel" ], - "parameters" : [ - { "kind" : "LiteralInteger", "name" : "'Alignment'" } - ] - }, - { - "enumerant" : "ExplicitInterpAMD", - "value" : 4999 - }, - { - "enumerant" : "OverrideCoverageNV", - "value" : 5248, - "capabilities" : [ "SampleMaskOverrideCoverageNV" ] - }, - { - "enumerant" : "PassthroughNV", - "value" : 5250, - "capabilities" : [ "GeometryShaderPassthroughNV" ] - }, - { - "enumerant" : "ViewportRelativeNV", - "value" : 5252, - "capabilities" : [ "ShaderViewportMaskNV" ] - }, - { - "enumerant" : "SecondaryViewportRelativeNV", - "value" : 5256, - "capabilities" : [ "ShaderStereoViewNV" ], - "parameters" : [ - { "kind" : "LiteralInteger", "name" : "'Offset'" } - ] - }, - { - "enumerant" : "HlslCounterBufferGOOGLE", - "value" : 5634, - "parameters" : [ - { "kind" : "IdRef", "name" : "'Counter Buffer'" } - ], - "extensions" : [ "SPV_GOOGLE_hlsl_functionality1" ] - }, - { - "enumerant" : "HlslSemanticGOOGLE", - "value" : 5635, - "parameters" : [ - { "kind" : "LiteralString", "name" : "'Semantic'" } - ], - "extensions" : [ "SPV_GOOGLE_hlsl_functionality1" ] - } - ] - }, - { - "category" : "ValueEnum", - "kind" : "BuiltIn", - "enumerants" : [ - { - "enumerant" : "Position", - "value" : 0, - "capabilities" : [ "Shader" ] - }, - { - "enumerant" : "PointSize", - "value" : 1, - "capabilities" : [ "Shader" ] - }, - { - "enumerant" : "ClipDistance", - "value" : 3, - "capabilities" : [ "ClipDistance" ] - }, - { - "enumerant" : "CullDistance", - "value" : 4, - "capabilities" : [ "CullDistance" ] - }, - { - "enumerant" : "VertexId", - "value" : 5, - "capabilities" : [ "Shader" ] - }, - { - "enumerant" : "InstanceId", - "value" : 6, - "capabilities" : [ "Shader" ] - }, - { - "enumerant" : "PrimitiveId", - "value" : 7, - "capabilities" : [ "Geometry", "Tessellation" ] - }, - { - "enumerant" : "InvocationId", - "value" : 8, - "capabilities" : [ "Geometry", "Tessellation" ] - }, - { - "enumerant" : "Layer", - "value" : 9, - "capabilities" : [ "Geometry" ] - }, - { - "enumerant" : "ViewportIndex", - "value" : 10, - "capabilities" : [ "MultiViewport" ] - }, - { - "enumerant" : "TessLevelOuter", - "value" : 11, - "capabilities" : [ "Tessellation" ] - }, - { - "enumerant" : "TessLevelInner", - "value" : 12, - "capabilities" : [ "Tessellation" ] - }, - { - "enumerant" : "TessCoord", - "value" : 13, - "capabilities" : [ "Tessellation" ] - }, - { - "enumerant" : "PatchVertices", - "value" : 14, - "capabilities" : [ "Tessellation" ] - }, - { - "enumerant" : "FragCoord", - "value" : 15, - "capabilities" : [ "Shader" ] - }, - { - "enumerant" : "PointCoord", - "value" : 16, - "capabilities" : [ "Shader" ] - }, - { - "enumerant" : "FrontFacing", - "value" : 17, - "capabilities" : [ "Shader" ] - }, - { - "enumerant" : "SampleId", - "value" : 18, - "capabilities" : [ "SampleRateShading" ] - }, - { - "enumerant" : "SamplePosition", - "value" : 19, - "capabilities" : [ "SampleRateShading" ] - }, - { - "enumerant" : "SampleMask", - "value" : 20, - "capabilities" : [ "Shader" ] - }, - { - "enumerant" : "FragDepth", - "value" : 22, - "capabilities" : [ "Shader" ] - }, - { - "enumerant" : "HelperInvocation", - "value" : 23, - "capabilities" : [ "Shader" ] - }, - { - "enumerant" : "NumWorkgroups", - "value" : 24 - }, - { - "enumerant" : "WorkgroupSize", - "value" : 25 - }, - { - "enumerant" : "WorkgroupId", - "value" : 26 - }, - { - "enumerant" : "LocalInvocationId", - "value" : 27 - }, - { - "enumerant" : "GlobalInvocationId", - "value" : 28 - }, - { - "enumerant" : "LocalInvocationIndex", - "value" : 29 - }, - { - "enumerant" : "WorkDim", - "value" : 30, - "capabilities" : [ "Kernel" ] - }, - { - "enumerant" : "GlobalSize", - "value" : 31, - "capabilities" : [ "Kernel" ] - }, - { - "enumerant" : "EnqueuedWorkgroupSize", - "value" : 32, - "capabilities" : [ "Kernel" ] - }, - { - "enumerant" : "GlobalOffset", - "value" : 33, - "capabilities" : [ "Kernel" ] - }, - { - "enumerant" : "GlobalLinearId", - "value" : 34, - "capabilities" : [ "Kernel" ] - }, - { - "enumerant" : "SubgroupSize", - "value" : 36, - "capabilities" : [ "Kernel", "SubgroupBallotKHR" ] - }, - { - "enumerant" : "SubgroupMaxSize", - "value" : 37, - "capabilities" : [ "Kernel" ] - }, - { - "enumerant" : "NumSubgroups", - "value" : 38, - "capabilities" : [ "Kernel" ] - }, - { - "enumerant" : "NumEnqueuedSubgroups", - "value" : 39, - "capabilities" : [ "Kernel" ] - }, - { - "enumerant" : "SubgroupId", - "value" : 40, - "capabilities" : [ "Kernel" ] - }, - { - "enumerant" : "SubgroupLocalInvocationId", - "value" : 41, - "capabilities" : [ "Kernel", "SubgroupBallotKHR" ] - }, - { - "enumerant" : "VertexIndex", - "value" : 42, - "capabilities" : [ "Shader" ] - }, - { - "enumerant" : "InstanceIndex", - "value" : 43, - "capabilities" : [ "Shader" ] - }, - { - "enumerant" : "SubgroupEqMaskKHR", - "value" : 4416, - "capabilities" : [ "SubgroupBallotKHR" ] - }, - { - "enumerant" : "SubgroupGeMaskKHR", - "value" : 4417, - "capabilities" : [ "SubgroupBallotKHR" ] - }, - { - "enumerant" : "SubgroupGtMaskKHR", - "value" : 4418, - "capabilities" : [ "SubgroupBallotKHR" ] - }, - { - "enumerant" : "SubgroupLeMaskKHR", - "value" : 4419, - "capabilities" : [ "SubgroupBallotKHR" ] - }, - { - "enumerant" : "SubgroupLtMaskKHR", - "value" : 4420, - "capabilities" : [ "SubgroupBallotKHR" ] - }, - { - "enumerant" : "BaseVertex", - "value" : 4424, - "capabilities" : [ "DrawParameters" ] - }, - { - "enumerant" : "BaseInstance", - "value" : 4425, - "capabilities" : [ "DrawParameters" ] - }, - { - "enumerant" : "DrawIndex", - "value" : 4426, - "capabilities" : [ "DrawParameters" ] - }, - { - "enumerant" : "DeviceIndex", - "value" : 4438, - "capabilities" : [ "DeviceGroup" ] - }, - { - "enumerant" : "ViewIndex", - "value" : 4440, - "capabilities" : [ "MultiView" ] - }, - { - "enumerant" : "BaryCoordNoPerspAMD", - "value" : 4992 - }, - { - "enumerant" : "BaryCoordNoPerspCentroidAMD", - "value" : 4993 - }, - { - "enumerant" : "BaryCoordNoPerspSampleAMD", - "value" : 4994 - }, - { - "enumerant" : "BaryCoordSmoothAMD", - "value" : 4995 - }, - { - "enumerant" : "BaryCoordSmoothCentroidAMD", - "value" : 4996 - }, - { - "enumerant" : "BaryCoordSmoothSampleAMD", - "value" : 4997 - }, - { - "enumerant" : "BaryCoordPullModelAMD", - "value" : 4998 - }, - { - "enumerant" : "FragStencilRefEXT", - "value" : 5014, - "capabilities" : [ "StencilExportEXT" ] - }, - { - "enumerant" : "ViewportMaskNV", - "value" : 5253, - "capabilities" : [ "ShaderViewportMaskNV" ] - }, - { - "enumerant" : "SecondaryPositionNV", - "value" : 5257, - "capabilities" : [ "ShaderStereoViewNV" ] - }, - { - "enumerant" : "SecondaryViewportMaskNV", - "value" : 5258, - "capabilities" : [ "ShaderStereoViewNV" ] - }, - { - "enumerant" : "PositionPerViewNV", - "value" : 5261, - "capabilities" : [ "PerViewAttributesNV" ] - }, - { - "enumerant" : "ViewportMaskPerViewNV", - "value" : 5262, - "capabilities" : [ "PerViewAttributesNV" ] - } - ] - }, - { - "category" : "ValueEnum", - "kind" : "Scope", - "enumerants" : [ - { - "enumerant" : "CrossDevice", - "value" : 0 - }, - { - "enumerant" : "Device", - "value" : 1 - }, - { - "enumerant" : "Workgroup", - "value" : 2 - }, - { - "enumerant" : "Subgroup", - "value" : 3 - }, - { - "enumerant" : "Invocation", - "value" : 4 - } - ] - }, - { - "category" : "ValueEnum", - "kind" : "GroupOperation", - "enumerants" : [ - { - "enumerant" : "Reduce", - "value" : 0, - "capabilities" : [ "Kernel" ] - }, - { - "enumerant" : "InclusiveScan", - "value" : 1, - "capabilities" : [ "Kernel" ] - }, - { - "enumerant" : "ExclusiveScan", - "value" : 2, - "capabilities" : [ "Kernel" ] - } - ] - }, - { - "category" : "ValueEnum", - "kind" : "KernelEnqueueFlags", - "enumerants" : [ - { - "enumerant" : "NoWait", - "value" : 0, - "capabilities" : [ "Kernel" ] - }, - { - "enumerant" : "WaitKernel", - "value" : 1, - "capabilities" : [ "Kernel" ] - }, - { - "enumerant" : "WaitWorkGroup", - "value" : 2, - "capabilities" : [ "Kernel" ] - } - ] - }, - { - "category" : "ValueEnum", - "kind" : "Capability", - "enumerants" : [ - { - "enumerant" : "Matrix", - "value" : 0 - }, - { - "enumerant" : "Shader", - "value" : 1, - "capabilities" : [ "Matrix" ] - }, - { - "enumerant" : "Geometry", - "value" : 2, - "capabilities" : [ "Shader" ] - }, - { - "enumerant" : "Tessellation", - "value" : 3, - "capabilities" : [ "Shader" ] - }, - { - "enumerant" : "Addresses", - "value" : 4 - }, - { - "enumerant" : "Linkage", - "value" : 5 - }, - { - "enumerant" : "Kernel", - "value" : 6 - }, - { - "enumerant" : "Vector16", - "value" : 7, - "capabilities" : [ "Kernel" ] - }, - { - "enumerant" : "Float16Buffer", - "value" : 8, - "capabilities" : [ "Kernel" ] - }, - { - "enumerant" : "Float16", - "value" : 9 - }, - { - "enumerant" : "Float64", - "value" : 10 - }, - { - "enumerant" : "Int64", - "value" : 11 - }, - { - "enumerant" : "Int64Atomics", - "value" : 12, - "capabilities" : [ "Int64" ] - }, - { - "enumerant" : "ImageBasic", - "value" : 13, - "capabilities" : [ "Kernel" ] - }, - { - "enumerant" : "ImageReadWrite", - "value" : 14, - "capabilities" : [ "ImageBasic" ] - }, - { - "enumerant" : "ImageMipmap", - "value" : 15, - "capabilities" : [ "ImageBasic" ] - }, - { - "enumerant" : "Pipes", - "value" : 17, - "capabilities" : [ "Kernel" ] - }, - { - "enumerant" : "Groups", - "value" : 18 - }, - { - "enumerant" : "DeviceEnqueue", - "value" : 19, - "capabilities" : [ "Kernel" ] - }, - { - "enumerant" : "LiteralSampler", - "value" : 20, - "capabilities" : [ "Kernel" ] - }, - { - "enumerant" : "AtomicStorage", - "value" : 21, - "capabilities" : [ "Shader" ] - }, - { - "enumerant" : "Int16", - "value" : 22 - }, - { - "enumerant" : "TessellationPointSize", - "value" : 23, - "capabilities" : [ "Tessellation" ] - }, - { - "enumerant" : "GeometryPointSize", - "value" : 24, - "capabilities" : [ "Geometry" ] - }, - { - "enumerant" : "ImageGatherExtended", - "value" : 25, - "capabilities" : [ "Shader" ] - }, - { - "enumerant" : "StorageImageMultisample", - "value" : 27, - "capabilities" : [ "Shader" ] - }, - { - "enumerant" : "UniformBufferArrayDynamicIndexing", - "value" : 28, - "capabilities" : [ "Shader" ] - }, - { - "enumerant" : "SampledImageArrayDynamicIndexing", - "value" : 29, - "capabilities" : [ "Shader" ] - }, - { - "enumerant" : "StorageBufferArrayDynamicIndexing", - "value" : 30, - "capabilities" : [ "Shader" ] - }, - { - "enumerant" : "StorageImageArrayDynamicIndexing", - "value" : 31, - "capabilities" : [ "Shader" ] - }, - { - "enumerant" : "ClipDistance", - "value" : 32, - "capabilities" : [ "Shader" ] - }, - { - "enumerant" : "CullDistance", - "value" : 33, - "capabilities" : [ "Shader" ] - }, - { - "enumerant" : "ImageCubeArray", - "value" : 34, - "capabilities" : [ "SampledCubeArray" ] - }, - { - "enumerant" : "SampleRateShading", - "value" : 35, - "capabilities" : [ "Shader" ] - }, - { - "enumerant" : "ImageRect", - "value" : 36, - "capabilities" : [ "SampledRect" ] - }, - { - "enumerant" : "SampledRect", - "value" : 37, - "capabilities" : [ "Shader" ] - }, - { - "enumerant" : "GenericPointer", - "value" : 38, - "capabilities" : [ "Addresses" ] - }, - { - "enumerant" : "Int8", - "value" : 39, - "capabilities" : [ "Kernel" ] - }, - { - "enumerant" : "InputAttachment", - "value" : 40, - "capabilities" : [ "Shader" ] - }, - { - "enumerant" : "SparseResidency", - "value" : 41, - "capabilities" : [ "Shader" ] - }, - { - "enumerant" : "MinLod", - "value" : 42, - "capabilities" : [ "Shader" ] - }, - { - "enumerant" : "Sampled1D", - "value" : 43 - }, - { - "enumerant" : "Image1D", - "value" : 44, - "capabilities" : [ "Sampled1D" ] - }, - { - "enumerant" : "SampledCubeArray", - "value" : 45, - "capabilities" : [ "Shader" ] - }, - { - "enumerant" : "SampledBuffer", - "value" : 46 - }, - { - "enumerant" : "ImageBuffer", - "value" : 47, - "capabilities" : [ "SampledBuffer" ] - }, - { - "enumerant" : "ImageMSArray", - "value" : 48, - "capabilities" : [ "Shader" ] - }, - { - "enumerant" : "StorageImageExtendedFormats", - "value" : 49, - "capabilities" : [ "Shader" ] - }, - { - "enumerant" : "ImageQuery", - "value" : 50, - "capabilities" : [ "Shader" ] - }, - { - "enumerant" : "DerivativeControl", - "value" : 51, - "capabilities" : [ "Shader" ] - }, - { - "enumerant" : "InterpolationFunction", - "value" : 52, - "capabilities" : [ "Shader" ] - }, - { - "enumerant" : "TransformFeedback", - "value" : 53, - "capabilities" : [ "Shader" ] - }, - { - "enumerant" : "GeometryStreams", - "value" : 54, - "capabilities" : [ "Geometry" ] - }, - { - "enumerant" : "StorageImageReadWithoutFormat", - "value" : 55, - "capabilities" : [ "Shader" ] - }, - { - "enumerant" : "StorageImageWriteWithoutFormat", - "value" : 56, - "capabilities" : [ "Shader" ] - }, - { - "enumerant" : "MultiViewport", - "value" : 57, - "capabilities" : [ "Geometry" ] - }, - { - "enumerant" : "SubgroupBallotKHR", - "value" : 4423, - "extensions" : [ "SPV_KHR_shader_ballot" ] - }, - { - "enumerant" : "DrawParameters", - "value" : 4427, - "extensions" : [ "SPV_KHR_shader_draw_parameters" ] - }, - { - "enumerant" : "SubgroupVoteKHR", - "value" : 4431, - "extensions" : [ "SPV_KHR_subgroup_vote" ] - }, - { - "enumerant" : "StorageBuffer16BitAccess", - "value" : 4433, - "extensions" : [ "SPV_KHR_16bit_storage" ] - }, - { - "enumerant" : "StorageUniformBufferBlock16", - "value" : 4433, - "extensions" : [ "SPV_KHR_16bit_storage" ] - }, - { - "enumerant" : "UniformAndStorageBuffer16BitAccess", - "value" : 4434, - "capabilities" : [ - "StorageBuffer16BitAccess", - "StorageUniformBufferBlock16" - ], - "extensions" : [ "SPV_KHR_16bit_storage" ] - }, - { - "enumerant" : "StorageUniform16", - "value" : 4434, - "capabilities" : [ - "StorageBuffer16BitAccess", - "StorageUniformBufferBlock16" - ], - "extensions" : [ "SPV_KHR_16bit_storage" ] - }, - { - "enumerant" : "StoragePushConstant16", - "value" : 4435, - "extensions" : [ "SPV_KHR_16bit_storage" ] - }, - { - "enumerant" : "StorageInputOutput16", - "value" : 4436, - "extensions" : [ "SPV_KHR_16bit_storage" ] - }, - { - "enumerant" : "DeviceGroup", - "value" : 4437, - "extensions" : [ "SPV_KHR_device_group" ] - }, - { - "enumerant" : "MultiView", - "value" : 4439, - "capabilities" : [ "Shader" ], - "extensions" : [ "SPV_KHR_multiview" ] - }, - { - "enumerant" : "VariablePointersStorageBuffer", - "value" : 4441, - "capabilities" : [ "Shader" ], - "extensions" : [ "SPV_KHR_variable_pointers" ] - }, - { - "enumerant" : "VariablePointers", - "value" : 4442, - "capabilities" : [ "VariablePointersStorageBuffer" ], - "extensions" : [ "SPV_KHR_variable_pointers" ] - }, - { - "enumerant": "AtomicStorageOps", - "value": 4445, - "extensions": [ "SPV_KHR_shader_atomic_counter_ops" ] - }, - { - "enumerant" : "SampleMaskPostDepthCoverage", - "value" : 4447, - "extensions" : [ "SPV_KHR_post_depth_coverage" ] - }, - { - "enumerant" : "ImageGatherBiasLodAMD", - "value" : 5009, - "capabilities" : [ "Shader" ], - "extensions" : [ "SPV_AMD_texture_gather_bias_lod" ] - }, - { - "enumerant" : "FragmentMaskAMD", - "value" : 5010, - "capabilities" : [ "Shader" ], - "extensions" : [ "SPV_AMD_shader_fragment_mask" ] - }, - { - "enumerant" : "StencilExportEXT", - "value" : 5013, - "capabilities" : [ "Shader" ], - "extensions" : [ "SPV_EXT_shader_stencil_export" ] - }, - { - "enumerant" : "ImageReadWriteLodAMD", - "value" : 5015, - "capabilities" : [ "Shader" ], - "extensions" : [ "SPV_AMD_shader_image_load_store_lod" ] - }, - { - "enumerant" : "SampleMaskOverrideCoverageNV", - "value" : 5249, - "capabilities" : [ "SampleRateShading" ], - "extensions" : [ "SPV_NV_sample_mask_override_coverage" ] - }, - { - "enumerant" : "GeometryShaderPassthroughNV", - "value" : 5251, - "capabilities" : [ "Geometry" ], - "extensions" : [ "SPV_NV_geometry_shader_passthrough" ] - }, - { - "enumerant" : "ShaderViewportIndexLayerEXT", - "value" : 5254, - "capabilities" : [ "MultiViewport" ], - "extensions" : [ "SPV_EXT_shader_viewport_index_layer" ] - }, - { - "enumerant" : "ShaderViewportIndexLayerNV", - "value" : 5254, - "capabilities" : [ "MultiViewport" ], - "extensions" : [ "SPV_NV_viewport_array2" ] - }, - { - "enumerant" : "ShaderViewportMaskNV", - "value" : 5255, - "capabilities" : [ "ShaderViewportIndexLayerNV" ], - "extensions" : [ "SPV_NV_viewport_array2" ] - }, - { - "enumerant" : "ShaderStereoViewNV", - "value" : 5259, - "capabilities" : [ "ShaderViewportMaskNV" ], - "extensions" : [ "SPV_NV_stereo_view_rendering" ] - }, - { - "enumerant" : "PerViewAttributesNV", - "value" : 5260, - "capabilities" : [ "MultiView" ], - "extensions" : [ "SPV_NVX_multiview_per_view_attributes" ] - }, - { - "enumerant" : "SubgroupShuffleINTEL", - "value" : 5568, - "extensions" : [ "SPV_INTEL_subgroups" ] - }, - { - "enumerant" : "SubgroupBufferBlockIOINTEL", - "value" : 5569, - "extensions" : [ "SPV_INTEL_subgroups" ] - }, - { - "enumerant" : "SubgroupImageBlockIOINTEL", - "value" : 5570, - "extensions" : [ "SPV_INTEL_subgroups" ] - } - ] - }, - { - "category" : "Id", - "kind" : "IdResultType", - "doc" : "Reference to an representing the result's type of the enclosing instruction" - }, - { - "category" : "Id", - "kind" : "IdResult", - "doc" : "Definition of an representing the result of the enclosing instruction" - }, - { - "category" : "Id", - "kind" : "IdMemorySemantics", - "doc" : "Reference to an representing a 32-bit integer that is a mask from the MemorySemantics operand kind" - }, - { - "category" : "Id", - "kind" : "IdScope", - "doc" : "Reference to an representing a 32-bit integer that is a mask from the Scope operand kind" - }, - { - "category" : "Id", - "kind" : "IdRef", - "doc" : "Reference to an " - }, - { - "category" : "Literal", - "kind" : "LiteralInteger", - "doc" : "An integer consuming one or more words" - }, - { - "category" : "Literal", - "kind" : "LiteralString", - "doc" : "A null-terminated stream of characters consuming an integral number of words" - }, - { - "category" : "Literal", - "kind" : "LiteralContextDependentNumber", - "doc" : "A literal number whose size and format are determined by a previous operand in the enclosing instruction" - }, - { - "category" : "Literal", - "kind" : "LiteralExtInstInteger", - "doc" : "A 32-bit unsigned integer indicating which instruction to use and determining the layout of following operands (for OpExtInst)" - }, - { - "category" : "Literal", - "kind" : "LiteralSpecConstantOpInteger", - "doc" : "An opcode indicating the operation to be performed and determining the layout of following operands (for OpSpecConstantOp)" - }, - { - "category" : "Composite", - "kind" : "PairLiteralIntegerIdRef", - "bases" : [ "LiteralInteger", "IdRef" ] - }, - { - "category" : "Composite", - "kind" : "PairIdRefLiteralInteger", - "bases" : [ "IdRef", "LiteralInteger" ] - }, - { - "category" : "Composite", - "kind" : "PairIdRefIdRef", - "bases" : [ "IdRef", "IdRef" ] - } - ] -} diff --git a/Extern/3rdParty/shaderc/shaderc/include/spirv/1.0/spirv.cs b/Extern/3rdParty/shaderc/shaderc/include/spirv/1.0/spirv.cs deleted file mode 100644 index de325cc..0000000 --- a/Extern/3rdParty/shaderc/shaderc/include/spirv/1.0/spirv.cs +++ /dev/null @@ -1,993 +0,0 @@ -// Copyright (c) 2014-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. - -// This header is automatically generated by the same tool that creates -// the Binary Section of the SPIR-V specification. - -// Enumeration tokens for SPIR-V, in various styles: -// C, C++, C++11, JSON, Lua, Python, C# -// -// - C will have tokens with a "Spv" prefix, e.g.: SpvSourceLanguageGLSL -// - C++ will have tokens in the "spv" name space, e.g.: spv::SourceLanguageGLSL -// - C++11 will use enum classes in the spv namespace, e.g.: spv::SourceLanguage::GLSL -// - Lua will use tables, e.g.: spv.SourceLanguage.GLSL -// - Python will use dictionaries, e.g.: spv['SourceLanguage']['GLSL'] -// - C# will use enum classes in the Specification class located in the "Spv" namespace, e.g.: Spv.Specification.SourceLanguage.GLSL -// -// Some tokens act like mask values, which can be OR'd together, -// while others are mutually exclusive. The mask-like ones have -// "Mask" in their name, and a parallel enum that has the shift -// amount (1 << x) for each corresponding enumerant. - -namespace Spv -{ - - public static class Specification - { - public const uint MagicNumber = 0x07230203; - public const uint Version = 0x00010000; - public const uint Revision = 12; - public const uint OpCodeMask = 0xffff; - public const uint WordCountShift = 16; - - public enum SourceLanguage - { - Unknown = 0, - ESSL = 1, - GLSL = 2, - OpenCL_C = 3, - OpenCL_CPP = 4, - HLSL = 5, - } - - public enum ExecutionModel - { - Vertex = 0, - TessellationControl = 1, - TessellationEvaluation = 2, - Geometry = 3, - Fragment = 4, - GLCompute = 5, - Kernel = 6, - } - - public enum AddressingModel - { - Logical = 0, - Physical32 = 1, - Physical64 = 2, - } - - public enum MemoryModel - { - Simple = 0, - GLSL450 = 1, - OpenCL = 2, - } - - public enum ExecutionMode - { - Invocations = 0, - SpacingEqual = 1, - SpacingFractionalEven = 2, - SpacingFractionalOdd = 3, - VertexOrderCw = 4, - VertexOrderCcw = 5, - PixelCenterInteger = 6, - OriginUpperLeft = 7, - OriginLowerLeft = 8, - EarlyFragmentTests = 9, - PointMode = 10, - Xfb = 11, - DepthReplacing = 12, - DepthGreater = 14, - DepthLess = 15, - DepthUnchanged = 16, - LocalSize = 17, - LocalSizeHint = 18, - InputPoints = 19, - InputLines = 20, - InputLinesAdjacency = 21, - Triangles = 22, - InputTrianglesAdjacency = 23, - Quads = 24, - Isolines = 25, - OutputVertices = 26, - OutputPoints = 27, - OutputLineStrip = 28, - OutputTriangleStrip = 29, - VecTypeHint = 30, - ContractionOff = 31, - PostDepthCoverage = 4446, - StencilRefReplacingEXT = 5027, - } - - public enum StorageClass - { - UniformConstant = 0, - Input = 1, - Uniform = 2, - Output = 3, - Workgroup = 4, - CrossWorkgroup = 5, - Private = 6, - Function = 7, - Generic = 8, - PushConstant = 9, - AtomicCounter = 10, - Image = 11, - StorageBuffer = 12, - } - - public enum Dim - { - Dim1D = 0, - Dim2D = 1, - Dim3D = 2, - Cube = 3, - Rect = 4, - Buffer = 5, - SubpassData = 6, - } - - public enum SamplerAddressingMode - { - None = 0, - ClampToEdge = 1, - Clamp = 2, - Repeat = 3, - RepeatMirrored = 4, - } - - public enum SamplerFilterMode - { - Nearest = 0, - Linear = 1, - } - - public enum ImageFormat - { - Unknown = 0, - Rgba32f = 1, - Rgba16f = 2, - R32f = 3, - Rgba8 = 4, - Rgba8Snorm = 5, - Rg32f = 6, - Rg16f = 7, - R11fG11fB10f = 8, - R16f = 9, - Rgba16 = 10, - Rgb10A2 = 11, - Rg16 = 12, - Rg8 = 13, - R16 = 14, - R8 = 15, - Rgba16Snorm = 16, - Rg16Snorm = 17, - Rg8Snorm = 18, - R16Snorm = 19, - R8Snorm = 20, - Rgba32i = 21, - Rgba16i = 22, - Rgba8i = 23, - R32i = 24, - Rg32i = 25, - Rg16i = 26, - Rg8i = 27, - R16i = 28, - R8i = 29, - Rgba32ui = 30, - Rgba16ui = 31, - Rgba8ui = 32, - R32ui = 33, - Rgb10a2ui = 34, - Rg32ui = 35, - Rg16ui = 36, - Rg8ui = 37, - R16ui = 38, - R8ui = 39, - } - - public enum ImageChannelOrder - { - R = 0, - A = 1, - RG = 2, - RA = 3, - RGB = 4, - RGBA = 5, - BGRA = 6, - ARGB = 7, - Intensity = 8, - Luminance = 9, - Rx = 10, - RGx = 11, - RGBx = 12, - Depth = 13, - DepthStencil = 14, - sRGB = 15, - sRGBx = 16, - sRGBA = 17, - sBGRA = 18, - ABGR = 19, - } - - public enum ImageChannelDataType - { - SnormInt8 = 0, - SnormInt16 = 1, - UnormInt8 = 2, - UnormInt16 = 3, - UnormShort565 = 4, - UnormShort555 = 5, - UnormInt101010 = 6, - SignedInt8 = 7, - SignedInt16 = 8, - SignedInt32 = 9, - UnsignedInt8 = 10, - UnsignedInt16 = 11, - UnsignedInt32 = 12, - HalfFloat = 13, - Float = 14, - UnormInt24 = 15, - UnormInt101010_2 = 16, - } - - public enum ImageOperandsShift - { - Bias = 0, - Lod = 1, - Grad = 2, - ConstOffset = 3, - Offset = 4, - ConstOffsets = 5, - Sample = 6, - MinLod = 7, - } - - public enum ImageOperandsMask - { - MaskNone = 0, - Bias = 0x00000001, - Lod = 0x00000002, - Grad = 0x00000004, - ConstOffset = 0x00000008, - Offset = 0x00000010, - ConstOffsets = 0x00000020, - Sample = 0x00000040, - MinLod = 0x00000080, - } - - public enum FPFastMathModeShift - { - NotNaN = 0, - NotInf = 1, - NSZ = 2, - AllowRecip = 3, - Fast = 4, - } - - public enum FPFastMathModeMask - { - MaskNone = 0, - NotNaN = 0x00000001, - NotInf = 0x00000002, - NSZ = 0x00000004, - AllowRecip = 0x00000008, - Fast = 0x00000010, - } - - public enum FPRoundingMode - { - RTE = 0, - RTZ = 1, - RTP = 2, - RTN = 3, - } - - public enum LinkageType - { - Export = 0, - Import = 1, - } - - public enum AccessQualifier - { - ReadOnly = 0, - WriteOnly = 1, - ReadWrite = 2, - } - - public enum FunctionParameterAttribute - { - Zext = 0, - Sext = 1, - ByVal = 2, - Sret = 3, - NoAlias = 4, - NoCapture = 5, - NoWrite = 6, - NoReadWrite = 7, - } - - public enum Decoration - { - RelaxedPrecision = 0, - SpecId = 1, - Block = 2, - BufferBlock = 3, - RowMajor = 4, - ColMajor = 5, - ArrayStride = 6, - MatrixStride = 7, - GLSLShared = 8, - GLSLPacked = 9, - CPacked = 10, - BuiltIn = 11, - NoPerspective = 13, - Flat = 14, - Patch = 15, - Centroid = 16, - Sample = 17, - Invariant = 18, - Restrict = 19, - Aliased = 20, - Volatile = 21, - Constant = 22, - Coherent = 23, - NonWritable = 24, - NonReadable = 25, - Uniform = 26, - SaturatedConversion = 28, - Stream = 29, - Location = 30, - Component = 31, - Index = 32, - Binding = 33, - DescriptorSet = 34, - Offset = 35, - XfbBuffer = 36, - XfbStride = 37, - FuncParamAttr = 38, - FPRoundingMode = 39, - FPFastMathMode = 40, - LinkageAttributes = 41, - NoContraction = 42, - InputAttachmentIndex = 43, - Alignment = 44, - ExplicitInterpAMD = 4999, - OverrideCoverageNV = 5248, - PassthroughNV = 5250, - ViewportRelativeNV = 5252, - SecondaryViewportRelativeNV = 5256, - HlslCounterBufferGOOGLE = 5634, - HlslSemanticGOOGLE = 5635, - } - - public enum BuiltIn - { - Position = 0, - PointSize = 1, - ClipDistance = 3, - CullDistance = 4, - VertexId = 5, - InstanceId = 6, - PrimitiveId = 7, - InvocationId = 8, - Layer = 9, - ViewportIndex = 10, - TessLevelOuter = 11, - TessLevelInner = 12, - TessCoord = 13, - PatchVertices = 14, - FragCoord = 15, - PointCoord = 16, - FrontFacing = 17, - SampleId = 18, - SamplePosition = 19, - SampleMask = 20, - FragDepth = 22, - HelperInvocation = 23, - NumWorkgroups = 24, - WorkgroupSize = 25, - WorkgroupId = 26, - LocalInvocationId = 27, - GlobalInvocationId = 28, - LocalInvocationIndex = 29, - WorkDim = 30, - GlobalSize = 31, - EnqueuedWorkgroupSize = 32, - GlobalOffset = 33, - GlobalLinearId = 34, - SubgroupSize = 36, - SubgroupMaxSize = 37, - NumSubgroups = 38, - NumEnqueuedSubgroups = 39, - SubgroupId = 40, - SubgroupLocalInvocationId = 41, - VertexIndex = 42, - InstanceIndex = 43, - SubgroupEqMaskKHR = 4416, - SubgroupGeMaskKHR = 4417, - SubgroupGtMaskKHR = 4418, - SubgroupLeMaskKHR = 4419, - SubgroupLtMaskKHR = 4420, - BaseVertex = 4424, - BaseInstance = 4425, - DrawIndex = 4426, - DeviceIndex = 4438, - ViewIndex = 4440, - BaryCoordNoPerspAMD = 4992, - BaryCoordNoPerspCentroidAMD = 4993, - BaryCoordNoPerspSampleAMD = 4994, - BaryCoordSmoothAMD = 4995, - BaryCoordSmoothCentroidAMD = 4996, - BaryCoordSmoothSampleAMD = 4997, - BaryCoordPullModelAMD = 4998, - FragStencilRefEXT = 5014, - ViewportMaskNV = 5253, - SecondaryPositionNV = 5257, - SecondaryViewportMaskNV = 5258, - PositionPerViewNV = 5261, - ViewportMaskPerViewNV = 5262, - } - - public enum SelectionControlShift - { - Flatten = 0, - DontFlatten = 1, - } - - public enum SelectionControlMask - { - MaskNone = 0, - Flatten = 0x00000001, - DontFlatten = 0x00000002, - } - - public enum LoopControlShift - { - Unroll = 0, - DontUnroll = 1, - } - - public enum LoopControlMask - { - MaskNone = 0, - Unroll = 0x00000001, - DontUnroll = 0x00000002, - } - - public enum FunctionControlShift - { - Inline = 0, - DontInline = 1, - Pure = 2, - Const = 3, - } - - public enum FunctionControlMask - { - MaskNone = 0, - Inline = 0x00000001, - DontInline = 0x00000002, - Pure = 0x00000004, - Const = 0x00000008, - } - - public enum MemorySemanticsShift - { - Acquire = 1, - Release = 2, - AcquireRelease = 3, - SequentiallyConsistent = 4, - UniformMemory = 6, - SubgroupMemory = 7, - WorkgroupMemory = 8, - CrossWorkgroupMemory = 9, - AtomicCounterMemory = 10, - ImageMemory = 11, - } - - public enum MemorySemanticsMask - { - MaskNone = 0, - Acquire = 0x00000002, - Release = 0x00000004, - AcquireRelease = 0x00000008, - SequentiallyConsistent = 0x00000010, - UniformMemory = 0x00000040, - SubgroupMemory = 0x00000080, - WorkgroupMemory = 0x00000100, - CrossWorkgroupMemory = 0x00000200, - AtomicCounterMemory = 0x00000400, - ImageMemory = 0x00000800, - } - - public enum MemoryAccessShift - { - Volatile = 0, - Aligned = 1, - Nontemporal = 2, - } - - public enum MemoryAccessMask - { - MaskNone = 0, - Volatile = 0x00000001, - Aligned = 0x00000002, - Nontemporal = 0x00000004, - } - - public enum Scope - { - CrossDevice = 0, - Device = 1, - Workgroup = 2, - Subgroup = 3, - Invocation = 4, - } - - public enum GroupOperation - { - Reduce = 0, - InclusiveScan = 1, - ExclusiveScan = 2, - } - - public enum KernelEnqueueFlags - { - NoWait = 0, - WaitKernel = 1, - WaitWorkGroup = 2, - } - - public enum KernelProfilingInfoShift - { - CmdExecTime = 0, - } - - public enum KernelProfilingInfoMask - { - MaskNone = 0, - CmdExecTime = 0x00000001, - } - - public enum Capability - { - Matrix = 0, - Shader = 1, - Geometry = 2, - Tessellation = 3, - Addresses = 4, - Linkage = 5, - Kernel = 6, - Vector16 = 7, - Float16Buffer = 8, - Float16 = 9, - Float64 = 10, - Int64 = 11, - Int64Atomics = 12, - ImageBasic = 13, - ImageReadWrite = 14, - ImageMipmap = 15, - Pipes = 17, - Groups = 18, - DeviceEnqueue = 19, - LiteralSampler = 20, - AtomicStorage = 21, - Int16 = 22, - TessellationPointSize = 23, - GeometryPointSize = 24, - ImageGatherExtended = 25, - StorageImageMultisample = 27, - UniformBufferArrayDynamicIndexing = 28, - SampledImageArrayDynamicIndexing = 29, - StorageBufferArrayDynamicIndexing = 30, - StorageImageArrayDynamicIndexing = 31, - ClipDistance = 32, - CullDistance = 33, - ImageCubeArray = 34, - SampleRateShading = 35, - ImageRect = 36, - SampledRect = 37, - GenericPointer = 38, - Int8 = 39, - InputAttachment = 40, - SparseResidency = 41, - MinLod = 42, - Sampled1D = 43, - Image1D = 44, - SampledCubeArray = 45, - SampledBuffer = 46, - ImageBuffer = 47, - ImageMSArray = 48, - StorageImageExtendedFormats = 49, - ImageQuery = 50, - DerivativeControl = 51, - InterpolationFunction = 52, - TransformFeedback = 53, - GeometryStreams = 54, - StorageImageReadWithoutFormat = 55, - StorageImageWriteWithoutFormat = 56, - MultiViewport = 57, - SubgroupBallotKHR = 4423, - DrawParameters = 4427, - SubgroupVoteKHR = 4431, - StorageBuffer16BitAccess = 4433, - StorageUniformBufferBlock16 = 4433, - StorageUniform16 = 4434, - UniformAndStorageBuffer16BitAccess = 4434, - StoragePushConstant16 = 4435, - StorageInputOutput16 = 4436, - DeviceGroup = 4437, - MultiView = 4439, - VariablePointersStorageBuffer = 4441, - VariablePointers = 4442, - AtomicStorageOps = 4445, - SampleMaskPostDepthCoverage = 4447, - ImageGatherBiasLodAMD = 5009, - FragmentMaskAMD = 5010, - StencilExportEXT = 5013, - ImageReadWriteLodAMD = 5015, - SampleMaskOverrideCoverageNV = 5249, - GeometryShaderPassthroughNV = 5251, - ShaderViewportIndexLayerEXT = 5254, - ShaderViewportIndexLayerNV = 5254, - ShaderViewportMaskNV = 5255, - ShaderStereoViewNV = 5259, - PerViewAttributesNV = 5260, - SubgroupShuffleINTEL = 5568, - SubgroupBufferBlockIOINTEL = 5569, - SubgroupImageBlockIOINTEL = 5570, - } - - public enum Op - { - OpNop = 0, - OpUndef = 1, - OpSourceContinued = 2, - OpSource = 3, - OpSourceExtension = 4, - OpName = 5, - OpMemberName = 6, - OpString = 7, - OpLine = 8, - OpExtension = 10, - OpExtInstImport = 11, - OpExtInst = 12, - OpMemoryModel = 14, - OpEntryPoint = 15, - OpExecutionMode = 16, - OpCapability = 17, - OpTypeVoid = 19, - OpTypeBool = 20, - OpTypeInt = 21, - OpTypeFloat = 22, - OpTypeVector = 23, - OpTypeMatrix = 24, - OpTypeImage = 25, - OpTypeSampler = 26, - OpTypeSampledImage = 27, - OpTypeArray = 28, - OpTypeRuntimeArray = 29, - OpTypeStruct = 30, - OpTypeOpaque = 31, - OpTypePointer = 32, - OpTypeFunction = 33, - OpTypeEvent = 34, - OpTypeDeviceEvent = 35, - OpTypeReserveId = 36, - OpTypeQueue = 37, - OpTypePipe = 38, - OpTypeForwardPointer = 39, - OpConstantTrue = 41, - OpConstantFalse = 42, - OpConstant = 43, - OpConstantComposite = 44, - OpConstantSampler = 45, - OpConstantNull = 46, - OpSpecConstantTrue = 48, - OpSpecConstantFalse = 49, - OpSpecConstant = 50, - OpSpecConstantComposite = 51, - OpSpecConstantOp = 52, - OpFunction = 54, - OpFunctionParameter = 55, - OpFunctionEnd = 56, - OpFunctionCall = 57, - OpVariable = 59, - OpImageTexelPointer = 60, - OpLoad = 61, - OpStore = 62, - OpCopyMemory = 63, - OpCopyMemorySized = 64, - OpAccessChain = 65, - OpInBoundsAccessChain = 66, - OpPtrAccessChain = 67, - OpArrayLength = 68, - OpGenericPtrMemSemantics = 69, - OpInBoundsPtrAccessChain = 70, - OpDecorate = 71, - OpMemberDecorate = 72, - OpDecorationGroup = 73, - OpGroupDecorate = 74, - OpGroupMemberDecorate = 75, - OpVectorExtractDynamic = 77, - OpVectorInsertDynamic = 78, - OpVectorShuffle = 79, - OpCompositeConstruct = 80, - OpCompositeExtract = 81, - OpCompositeInsert = 82, - OpCopyObject = 83, - OpTranspose = 84, - OpSampledImage = 86, - OpImageSampleImplicitLod = 87, - OpImageSampleExplicitLod = 88, - OpImageSampleDrefImplicitLod = 89, - OpImageSampleDrefExplicitLod = 90, - OpImageSampleProjImplicitLod = 91, - OpImageSampleProjExplicitLod = 92, - OpImageSampleProjDrefImplicitLod = 93, - OpImageSampleProjDrefExplicitLod = 94, - OpImageFetch = 95, - OpImageGather = 96, - OpImageDrefGather = 97, - OpImageRead = 98, - OpImageWrite = 99, - OpImage = 100, - OpImageQueryFormat = 101, - OpImageQueryOrder = 102, - OpImageQuerySizeLod = 103, - OpImageQuerySize = 104, - OpImageQueryLod = 105, - OpImageQueryLevels = 106, - OpImageQuerySamples = 107, - OpConvertFToU = 109, - OpConvertFToS = 110, - OpConvertSToF = 111, - OpConvertUToF = 112, - OpUConvert = 113, - OpSConvert = 114, - OpFConvert = 115, - OpQuantizeToF16 = 116, - OpConvertPtrToU = 117, - OpSatConvertSToU = 118, - OpSatConvertUToS = 119, - OpConvertUToPtr = 120, - OpPtrCastToGeneric = 121, - OpGenericCastToPtr = 122, - OpGenericCastToPtrExplicit = 123, - OpBitcast = 124, - OpSNegate = 126, - OpFNegate = 127, - OpIAdd = 128, - OpFAdd = 129, - OpISub = 130, - OpFSub = 131, - OpIMul = 132, - OpFMul = 133, - OpUDiv = 134, - OpSDiv = 135, - OpFDiv = 136, - OpUMod = 137, - OpSRem = 138, - OpSMod = 139, - OpFRem = 140, - OpFMod = 141, - OpVectorTimesScalar = 142, - OpMatrixTimesScalar = 143, - OpVectorTimesMatrix = 144, - OpMatrixTimesVector = 145, - OpMatrixTimesMatrix = 146, - OpOuterProduct = 147, - OpDot = 148, - OpIAddCarry = 149, - OpISubBorrow = 150, - OpUMulExtended = 151, - OpSMulExtended = 152, - OpAny = 154, - OpAll = 155, - OpIsNan = 156, - OpIsInf = 157, - OpIsFinite = 158, - OpIsNormal = 159, - OpSignBitSet = 160, - OpLessOrGreater = 161, - OpOrdered = 162, - OpUnordered = 163, - OpLogicalEqual = 164, - OpLogicalNotEqual = 165, - OpLogicalOr = 166, - OpLogicalAnd = 167, - OpLogicalNot = 168, - OpSelect = 169, - OpIEqual = 170, - OpINotEqual = 171, - OpUGreaterThan = 172, - OpSGreaterThan = 173, - OpUGreaterThanEqual = 174, - OpSGreaterThanEqual = 175, - OpULessThan = 176, - OpSLessThan = 177, - OpULessThanEqual = 178, - OpSLessThanEqual = 179, - OpFOrdEqual = 180, - OpFUnordEqual = 181, - OpFOrdNotEqual = 182, - OpFUnordNotEqual = 183, - OpFOrdLessThan = 184, - OpFUnordLessThan = 185, - OpFOrdGreaterThan = 186, - OpFUnordGreaterThan = 187, - OpFOrdLessThanEqual = 188, - OpFUnordLessThanEqual = 189, - OpFOrdGreaterThanEqual = 190, - OpFUnordGreaterThanEqual = 191, - OpShiftRightLogical = 194, - OpShiftRightArithmetic = 195, - OpShiftLeftLogical = 196, - OpBitwiseOr = 197, - OpBitwiseXor = 198, - OpBitwiseAnd = 199, - OpNot = 200, - OpBitFieldInsert = 201, - OpBitFieldSExtract = 202, - OpBitFieldUExtract = 203, - OpBitReverse = 204, - OpBitCount = 205, - OpDPdx = 207, - OpDPdy = 208, - OpFwidth = 209, - OpDPdxFine = 210, - OpDPdyFine = 211, - OpFwidthFine = 212, - OpDPdxCoarse = 213, - OpDPdyCoarse = 214, - OpFwidthCoarse = 215, - OpEmitVertex = 218, - OpEndPrimitive = 219, - OpEmitStreamVertex = 220, - OpEndStreamPrimitive = 221, - OpControlBarrier = 224, - OpMemoryBarrier = 225, - OpAtomicLoad = 227, - OpAtomicStore = 228, - OpAtomicExchange = 229, - OpAtomicCompareExchange = 230, - OpAtomicCompareExchangeWeak = 231, - OpAtomicIIncrement = 232, - OpAtomicIDecrement = 233, - OpAtomicIAdd = 234, - OpAtomicISub = 235, - OpAtomicSMin = 236, - OpAtomicUMin = 237, - OpAtomicSMax = 238, - OpAtomicUMax = 239, - OpAtomicAnd = 240, - OpAtomicOr = 241, - OpAtomicXor = 242, - OpPhi = 245, - OpLoopMerge = 246, - OpSelectionMerge = 247, - OpLabel = 248, - OpBranch = 249, - OpBranchConditional = 250, - OpSwitch = 251, - OpKill = 252, - OpReturn = 253, - OpReturnValue = 254, - OpUnreachable = 255, - OpLifetimeStart = 256, - OpLifetimeStop = 257, - OpGroupAsyncCopy = 259, - OpGroupWaitEvents = 260, - OpGroupAll = 261, - OpGroupAny = 262, - OpGroupBroadcast = 263, - OpGroupIAdd = 264, - OpGroupFAdd = 265, - OpGroupFMin = 266, - OpGroupUMin = 267, - OpGroupSMin = 268, - OpGroupFMax = 269, - OpGroupUMax = 270, - OpGroupSMax = 271, - OpReadPipe = 274, - OpWritePipe = 275, - OpReservedReadPipe = 276, - OpReservedWritePipe = 277, - OpReserveReadPipePackets = 278, - OpReserveWritePipePackets = 279, - OpCommitReadPipe = 280, - OpCommitWritePipe = 281, - OpIsValidReserveId = 282, - OpGetNumPipePackets = 283, - OpGetMaxPipePackets = 284, - OpGroupReserveReadPipePackets = 285, - OpGroupReserveWritePipePackets = 286, - OpGroupCommitReadPipe = 287, - OpGroupCommitWritePipe = 288, - OpEnqueueMarker = 291, - OpEnqueueKernel = 292, - OpGetKernelNDrangeSubGroupCount = 293, - OpGetKernelNDrangeMaxSubGroupSize = 294, - OpGetKernelWorkGroupSize = 295, - OpGetKernelPreferredWorkGroupSizeMultiple = 296, - OpRetainEvent = 297, - OpReleaseEvent = 298, - OpCreateUserEvent = 299, - OpIsValidEvent = 300, - OpSetUserEventStatus = 301, - OpCaptureEventProfilingInfo = 302, - OpGetDefaultQueue = 303, - OpBuildNDRange = 304, - OpImageSparseSampleImplicitLod = 305, - OpImageSparseSampleExplicitLod = 306, - OpImageSparseSampleDrefImplicitLod = 307, - OpImageSparseSampleDrefExplicitLod = 308, - OpImageSparseSampleProjImplicitLod = 309, - OpImageSparseSampleProjExplicitLod = 310, - OpImageSparseSampleProjDrefImplicitLod = 311, - OpImageSparseSampleProjDrefExplicitLod = 312, - OpImageSparseFetch = 313, - OpImageSparseGather = 314, - OpImageSparseDrefGather = 315, - OpImageSparseTexelsResident = 316, - OpNoLine = 317, - OpAtomicFlagTestAndSet = 318, - OpAtomicFlagClear = 319, - OpImageSparseRead = 320, - OpDecorateId = 332, - OpSubgroupBallotKHR = 4421, - OpSubgroupFirstInvocationKHR = 4422, - OpSubgroupAllKHR = 4428, - OpSubgroupAnyKHR = 4429, - OpSubgroupAllEqualKHR = 4430, - OpSubgroupReadInvocationKHR = 4432, - OpGroupIAddNonUniformAMD = 5000, - OpGroupFAddNonUniformAMD = 5001, - OpGroupFMinNonUniformAMD = 5002, - OpGroupUMinNonUniformAMD = 5003, - OpGroupSMinNonUniformAMD = 5004, - OpGroupFMaxNonUniformAMD = 5005, - OpGroupUMaxNonUniformAMD = 5006, - OpGroupSMaxNonUniformAMD = 5007, - OpFragmentMaskFetchAMD = 5011, - OpFragmentFetchAMD = 5012, - OpSubgroupShuffleINTEL = 5571, - OpSubgroupShuffleDownINTEL = 5572, - OpSubgroupShuffleUpINTEL = 5573, - OpSubgroupShuffleXorINTEL = 5574, - OpSubgroupBlockReadINTEL = 5575, - OpSubgroupBlockWriteINTEL = 5576, - OpSubgroupImageBlockReadINTEL = 5577, - OpSubgroupImageBlockWriteINTEL = 5578, - OpDecorateStringGOOGLE = 5632, - OpMemberDecorateStringGOOGLE = 5633, - } - } -} - diff --git a/Extern/3rdParty/shaderc/shaderc/include/spirv/1.0/spirv.h b/Extern/3rdParty/shaderc/shaderc/include/spirv/1.0/spirv.h deleted file mode 100644 index bd5a9b9..0000000 --- a/Extern/3rdParty/shaderc/shaderc/include/spirv/1.0/spirv.h +++ /dev/null @@ -1,993 +0,0 @@ -/* -** Copyright (c) 2014-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. -*/ - -/* -** This header is automatically generated by the same tool that creates -** the Binary Section of the SPIR-V specification. -*/ - -/* -** Enumeration tokens for SPIR-V, in various styles: -** C, C++, C++11, JSON, Lua, Python -** -** - C will have tokens with a "Spv" prefix, e.g.: SpvSourceLanguageGLSL -** - C++ will have tokens in the "spv" name space, e.g.: spv::SourceLanguageGLSL -** - C++11 will use enum classes in the spv namespace, e.g.: spv::SourceLanguage::GLSL -** - Lua will use tables, e.g.: spv.SourceLanguage.GLSL -** - Python will use dictionaries, e.g.: spv['SourceLanguage']['GLSL'] -** -** Some tokens act like mask values, which can be OR'd together, -** while others are mutually exclusive. The mask-like ones have -** "Mask" in their name, and a parallel enum that has the shift -** amount (1 << x) for each corresponding enumerant. -*/ - -#ifndef spirv_H -#define spirv_H - -typedef unsigned int SpvId; - -#define SPV_VERSION 0x10000 -#define SPV_REVISION 12 - -static const unsigned int SpvMagicNumber = 0x07230203; -static const unsigned int SpvVersion = 0x00010000; -static const unsigned int SpvRevision = 12; -static const unsigned int SpvOpCodeMask = 0xffff; -static const unsigned int SpvWordCountShift = 16; - -typedef enum SpvSourceLanguage_ { - SpvSourceLanguageUnknown = 0, - SpvSourceLanguageESSL = 1, - SpvSourceLanguageGLSL = 2, - SpvSourceLanguageOpenCL_C = 3, - SpvSourceLanguageOpenCL_CPP = 4, - SpvSourceLanguageHLSL = 5, - SpvSourceLanguageMax = 0x7fffffff, -} SpvSourceLanguage; - -typedef enum SpvExecutionModel_ { - SpvExecutionModelVertex = 0, - SpvExecutionModelTessellationControl = 1, - SpvExecutionModelTessellationEvaluation = 2, - SpvExecutionModelGeometry = 3, - SpvExecutionModelFragment = 4, - SpvExecutionModelGLCompute = 5, - SpvExecutionModelKernel = 6, - SpvExecutionModelMax = 0x7fffffff, -} SpvExecutionModel; - -typedef enum SpvAddressingModel_ { - SpvAddressingModelLogical = 0, - SpvAddressingModelPhysical32 = 1, - SpvAddressingModelPhysical64 = 2, - SpvAddressingModelMax = 0x7fffffff, -} SpvAddressingModel; - -typedef enum SpvMemoryModel_ { - SpvMemoryModelSimple = 0, - SpvMemoryModelGLSL450 = 1, - SpvMemoryModelOpenCL = 2, - SpvMemoryModelMax = 0x7fffffff, -} SpvMemoryModel; - -typedef enum SpvExecutionMode_ { - SpvExecutionModeInvocations = 0, - SpvExecutionModeSpacingEqual = 1, - SpvExecutionModeSpacingFractionalEven = 2, - SpvExecutionModeSpacingFractionalOdd = 3, - SpvExecutionModeVertexOrderCw = 4, - SpvExecutionModeVertexOrderCcw = 5, - SpvExecutionModePixelCenterInteger = 6, - SpvExecutionModeOriginUpperLeft = 7, - SpvExecutionModeOriginLowerLeft = 8, - SpvExecutionModeEarlyFragmentTests = 9, - SpvExecutionModePointMode = 10, - SpvExecutionModeXfb = 11, - SpvExecutionModeDepthReplacing = 12, - SpvExecutionModeDepthGreater = 14, - SpvExecutionModeDepthLess = 15, - SpvExecutionModeDepthUnchanged = 16, - SpvExecutionModeLocalSize = 17, - SpvExecutionModeLocalSizeHint = 18, - SpvExecutionModeInputPoints = 19, - SpvExecutionModeInputLines = 20, - SpvExecutionModeInputLinesAdjacency = 21, - SpvExecutionModeTriangles = 22, - SpvExecutionModeInputTrianglesAdjacency = 23, - SpvExecutionModeQuads = 24, - SpvExecutionModeIsolines = 25, - SpvExecutionModeOutputVertices = 26, - SpvExecutionModeOutputPoints = 27, - SpvExecutionModeOutputLineStrip = 28, - SpvExecutionModeOutputTriangleStrip = 29, - SpvExecutionModeVecTypeHint = 30, - SpvExecutionModeContractionOff = 31, - SpvExecutionModePostDepthCoverage = 4446, - SpvExecutionModeStencilRefReplacingEXT = 5027, - SpvExecutionModeMax = 0x7fffffff, -} SpvExecutionMode; - -typedef enum SpvStorageClass_ { - SpvStorageClassUniformConstant = 0, - SpvStorageClassInput = 1, - SpvStorageClassUniform = 2, - SpvStorageClassOutput = 3, - SpvStorageClassWorkgroup = 4, - SpvStorageClassCrossWorkgroup = 5, - SpvStorageClassPrivate = 6, - SpvStorageClassFunction = 7, - SpvStorageClassGeneric = 8, - SpvStorageClassPushConstant = 9, - SpvStorageClassAtomicCounter = 10, - SpvStorageClassImage = 11, - SpvStorageClassStorageBuffer = 12, - SpvStorageClassMax = 0x7fffffff, -} SpvStorageClass; - -typedef enum SpvDim_ { - SpvDim1D = 0, - SpvDim2D = 1, - SpvDim3D = 2, - SpvDimCube = 3, - SpvDimRect = 4, - SpvDimBuffer = 5, - SpvDimSubpassData = 6, - SpvDimMax = 0x7fffffff, -} SpvDim; - -typedef enum SpvSamplerAddressingMode_ { - SpvSamplerAddressingModeNone = 0, - SpvSamplerAddressingModeClampToEdge = 1, - SpvSamplerAddressingModeClamp = 2, - SpvSamplerAddressingModeRepeat = 3, - SpvSamplerAddressingModeRepeatMirrored = 4, - SpvSamplerAddressingModeMax = 0x7fffffff, -} SpvSamplerAddressingMode; - -typedef enum SpvSamplerFilterMode_ { - SpvSamplerFilterModeNearest = 0, - SpvSamplerFilterModeLinear = 1, - SpvSamplerFilterModeMax = 0x7fffffff, -} SpvSamplerFilterMode; - -typedef enum SpvImageFormat_ { - SpvImageFormatUnknown = 0, - SpvImageFormatRgba32f = 1, - SpvImageFormatRgba16f = 2, - SpvImageFormatR32f = 3, - SpvImageFormatRgba8 = 4, - SpvImageFormatRgba8Snorm = 5, - SpvImageFormatRg32f = 6, - SpvImageFormatRg16f = 7, - SpvImageFormatR11fG11fB10f = 8, - SpvImageFormatR16f = 9, - SpvImageFormatRgba16 = 10, - SpvImageFormatRgb10A2 = 11, - SpvImageFormatRg16 = 12, - SpvImageFormatRg8 = 13, - SpvImageFormatR16 = 14, - SpvImageFormatR8 = 15, - SpvImageFormatRgba16Snorm = 16, - SpvImageFormatRg16Snorm = 17, - SpvImageFormatRg8Snorm = 18, - SpvImageFormatR16Snorm = 19, - SpvImageFormatR8Snorm = 20, - SpvImageFormatRgba32i = 21, - SpvImageFormatRgba16i = 22, - SpvImageFormatRgba8i = 23, - SpvImageFormatR32i = 24, - SpvImageFormatRg32i = 25, - SpvImageFormatRg16i = 26, - SpvImageFormatRg8i = 27, - SpvImageFormatR16i = 28, - SpvImageFormatR8i = 29, - SpvImageFormatRgba32ui = 30, - SpvImageFormatRgba16ui = 31, - SpvImageFormatRgba8ui = 32, - SpvImageFormatR32ui = 33, - SpvImageFormatRgb10a2ui = 34, - SpvImageFormatRg32ui = 35, - SpvImageFormatRg16ui = 36, - SpvImageFormatRg8ui = 37, - SpvImageFormatR16ui = 38, - SpvImageFormatR8ui = 39, - SpvImageFormatMax = 0x7fffffff, -} SpvImageFormat; - -typedef enum SpvImageChannelOrder_ { - SpvImageChannelOrderR = 0, - SpvImageChannelOrderA = 1, - SpvImageChannelOrderRG = 2, - SpvImageChannelOrderRA = 3, - SpvImageChannelOrderRGB = 4, - SpvImageChannelOrderRGBA = 5, - SpvImageChannelOrderBGRA = 6, - SpvImageChannelOrderARGB = 7, - SpvImageChannelOrderIntensity = 8, - SpvImageChannelOrderLuminance = 9, - SpvImageChannelOrderRx = 10, - SpvImageChannelOrderRGx = 11, - SpvImageChannelOrderRGBx = 12, - SpvImageChannelOrderDepth = 13, - SpvImageChannelOrderDepthStencil = 14, - SpvImageChannelOrdersRGB = 15, - SpvImageChannelOrdersRGBx = 16, - SpvImageChannelOrdersRGBA = 17, - SpvImageChannelOrdersBGRA = 18, - SpvImageChannelOrderABGR = 19, - SpvImageChannelOrderMax = 0x7fffffff, -} SpvImageChannelOrder; - -typedef enum SpvImageChannelDataType_ { - SpvImageChannelDataTypeSnormInt8 = 0, - SpvImageChannelDataTypeSnormInt16 = 1, - SpvImageChannelDataTypeUnormInt8 = 2, - SpvImageChannelDataTypeUnormInt16 = 3, - SpvImageChannelDataTypeUnormShort565 = 4, - SpvImageChannelDataTypeUnormShort555 = 5, - SpvImageChannelDataTypeUnormInt101010 = 6, - SpvImageChannelDataTypeSignedInt8 = 7, - SpvImageChannelDataTypeSignedInt16 = 8, - SpvImageChannelDataTypeSignedInt32 = 9, - SpvImageChannelDataTypeUnsignedInt8 = 10, - SpvImageChannelDataTypeUnsignedInt16 = 11, - SpvImageChannelDataTypeUnsignedInt32 = 12, - SpvImageChannelDataTypeHalfFloat = 13, - SpvImageChannelDataTypeFloat = 14, - SpvImageChannelDataTypeUnormInt24 = 15, - SpvImageChannelDataTypeUnormInt101010_2 = 16, - SpvImageChannelDataTypeMax = 0x7fffffff, -} SpvImageChannelDataType; - -typedef enum SpvImageOperandsShift_ { - SpvImageOperandsBiasShift = 0, - SpvImageOperandsLodShift = 1, - SpvImageOperandsGradShift = 2, - SpvImageOperandsConstOffsetShift = 3, - SpvImageOperandsOffsetShift = 4, - SpvImageOperandsConstOffsetsShift = 5, - SpvImageOperandsSampleShift = 6, - SpvImageOperandsMinLodShift = 7, - SpvImageOperandsMax = 0x7fffffff, -} SpvImageOperandsShift; - -typedef enum SpvImageOperandsMask_ { - SpvImageOperandsMaskNone = 0, - SpvImageOperandsBiasMask = 0x00000001, - SpvImageOperandsLodMask = 0x00000002, - SpvImageOperandsGradMask = 0x00000004, - SpvImageOperandsConstOffsetMask = 0x00000008, - SpvImageOperandsOffsetMask = 0x00000010, - SpvImageOperandsConstOffsetsMask = 0x00000020, - SpvImageOperandsSampleMask = 0x00000040, - SpvImageOperandsMinLodMask = 0x00000080, -} SpvImageOperandsMask; - -typedef enum SpvFPFastMathModeShift_ { - SpvFPFastMathModeNotNaNShift = 0, - SpvFPFastMathModeNotInfShift = 1, - SpvFPFastMathModeNSZShift = 2, - SpvFPFastMathModeAllowRecipShift = 3, - SpvFPFastMathModeFastShift = 4, - SpvFPFastMathModeMax = 0x7fffffff, -} SpvFPFastMathModeShift; - -typedef enum SpvFPFastMathModeMask_ { - SpvFPFastMathModeMaskNone = 0, - SpvFPFastMathModeNotNaNMask = 0x00000001, - SpvFPFastMathModeNotInfMask = 0x00000002, - SpvFPFastMathModeNSZMask = 0x00000004, - SpvFPFastMathModeAllowRecipMask = 0x00000008, - SpvFPFastMathModeFastMask = 0x00000010, -} SpvFPFastMathModeMask; - -typedef enum SpvFPRoundingMode_ { - SpvFPRoundingModeRTE = 0, - SpvFPRoundingModeRTZ = 1, - SpvFPRoundingModeRTP = 2, - SpvFPRoundingModeRTN = 3, - SpvFPRoundingModeMax = 0x7fffffff, -} SpvFPRoundingMode; - -typedef enum SpvLinkageType_ { - SpvLinkageTypeExport = 0, - SpvLinkageTypeImport = 1, - SpvLinkageTypeMax = 0x7fffffff, -} SpvLinkageType; - -typedef enum SpvAccessQualifier_ { - SpvAccessQualifierReadOnly = 0, - SpvAccessQualifierWriteOnly = 1, - SpvAccessQualifierReadWrite = 2, - SpvAccessQualifierMax = 0x7fffffff, -} SpvAccessQualifier; - -typedef enum SpvFunctionParameterAttribute_ { - SpvFunctionParameterAttributeZext = 0, - SpvFunctionParameterAttributeSext = 1, - SpvFunctionParameterAttributeByVal = 2, - SpvFunctionParameterAttributeSret = 3, - SpvFunctionParameterAttributeNoAlias = 4, - SpvFunctionParameterAttributeNoCapture = 5, - SpvFunctionParameterAttributeNoWrite = 6, - SpvFunctionParameterAttributeNoReadWrite = 7, - SpvFunctionParameterAttributeMax = 0x7fffffff, -} SpvFunctionParameterAttribute; - -typedef enum SpvDecoration_ { - SpvDecorationRelaxedPrecision = 0, - SpvDecorationSpecId = 1, - SpvDecorationBlock = 2, - SpvDecorationBufferBlock = 3, - SpvDecorationRowMajor = 4, - SpvDecorationColMajor = 5, - SpvDecorationArrayStride = 6, - SpvDecorationMatrixStride = 7, - SpvDecorationGLSLShared = 8, - SpvDecorationGLSLPacked = 9, - SpvDecorationCPacked = 10, - SpvDecorationBuiltIn = 11, - SpvDecorationNoPerspective = 13, - SpvDecorationFlat = 14, - SpvDecorationPatch = 15, - SpvDecorationCentroid = 16, - SpvDecorationSample = 17, - SpvDecorationInvariant = 18, - SpvDecorationRestrict = 19, - SpvDecorationAliased = 20, - SpvDecorationVolatile = 21, - SpvDecorationConstant = 22, - SpvDecorationCoherent = 23, - SpvDecorationNonWritable = 24, - SpvDecorationNonReadable = 25, - SpvDecorationUniform = 26, - SpvDecorationSaturatedConversion = 28, - SpvDecorationStream = 29, - SpvDecorationLocation = 30, - SpvDecorationComponent = 31, - SpvDecorationIndex = 32, - SpvDecorationBinding = 33, - SpvDecorationDescriptorSet = 34, - SpvDecorationOffset = 35, - SpvDecorationXfbBuffer = 36, - SpvDecorationXfbStride = 37, - SpvDecorationFuncParamAttr = 38, - SpvDecorationFPRoundingMode = 39, - SpvDecorationFPFastMathMode = 40, - SpvDecorationLinkageAttributes = 41, - SpvDecorationNoContraction = 42, - SpvDecorationInputAttachmentIndex = 43, - SpvDecorationAlignment = 44, - SpvDecorationExplicitInterpAMD = 4999, - SpvDecorationOverrideCoverageNV = 5248, - SpvDecorationPassthroughNV = 5250, - SpvDecorationViewportRelativeNV = 5252, - SpvDecorationSecondaryViewportRelativeNV = 5256, - SpvDecorationHlslCounterBufferGOOGLE = 5634, - SpvDecorationHlslSemanticGOOGLE = 5635, - SpvDecorationMax = 0x7fffffff, -} SpvDecoration; - -typedef enum SpvBuiltIn_ { - SpvBuiltInPosition = 0, - SpvBuiltInPointSize = 1, - SpvBuiltInClipDistance = 3, - SpvBuiltInCullDistance = 4, - SpvBuiltInVertexId = 5, - SpvBuiltInInstanceId = 6, - SpvBuiltInPrimitiveId = 7, - SpvBuiltInInvocationId = 8, - SpvBuiltInLayer = 9, - SpvBuiltInViewportIndex = 10, - SpvBuiltInTessLevelOuter = 11, - SpvBuiltInTessLevelInner = 12, - SpvBuiltInTessCoord = 13, - SpvBuiltInPatchVertices = 14, - SpvBuiltInFragCoord = 15, - SpvBuiltInPointCoord = 16, - SpvBuiltInFrontFacing = 17, - SpvBuiltInSampleId = 18, - SpvBuiltInSamplePosition = 19, - SpvBuiltInSampleMask = 20, - SpvBuiltInFragDepth = 22, - SpvBuiltInHelperInvocation = 23, - SpvBuiltInNumWorkgroups = 24, - SpvBuiltInWorkgroupSize = 25, - SpvBuiltInWorkgroupId = 26, - SpvBuiltInLocalInvocationId = 27, - SpvBuiltInGlobalInvocationId = 28, - SpvBuiltInLocalInvocationIndex = 29, - SpvBuiltInWorkDim = 30, - SpvBuiltInGlobalSize = 31, - SpvBuiltInEnqueuedWorkgroupSize = 32, - SpvBuiltInGlobalOffset = 33, - SpvBuiltInGlobalLinearId = 34, - SpvBuiltInSubgroupSize = 36, - SpvBuiltInSubgroupMaxSize = 37, - SpvBuiltInNumSubgroups = 38, - SpvBuiltInNumEnqueuedSubgroups = 39, - SpvBuiltInSubgroupId = 40, - SpvBuiltInSubgroupLocalInvocationId = 41, - SpvBuiltInVertexIndex = 42, - SpvBuiltInInstanceIndex = 43, - SpvBuiltInSubgroupEqMaskKHR = 4416, - SpvBuiltInSubgroupGeMaskKHR = 4417, - SpvBuiltInSubgroupGtMaskKHR = 4418, - SpvBuiltInSubgroupLeMaskKHR = 4419, - SpvBuiltInSubgroupLtMaskKHR = 4420, - SpvBuiltInBaseVertex = 4424, - SpvBuiltInBaseInstance = 4425, - SpvBuiltInDrawIndex = 4426, - SpvBuiltInDeviceIndex = 4438, - SpvBuiltInViewIndex = 4440, - SpvBuiltInBaryCoordNoPerspAMD = 4992, - SpvBuiltInBaryCoordNoPerspCentroidAMD = 4993, - SpvBuiltInBaryCoordNoPerspSampleAMD = 4994, - SpvBuiltInBaryCoordSmoothAMD = 4995, - SpvBuiltInBaryCoordSmoothCentroidAMD = 4996, - SpvBuiltInBaryCoordSmoothSampleAMD = 4997, - SpvBuiltInBaryCoordPullModelAMD = 4998, - SpvBuiltInFragStencilRefEXT = 5014, - SpvBuiltInViewportMaskNV = 5253, - SpvBuiltInSecondaryPositionNV = 5257, - SpvBuiltInSecondaryViewportMaskNV = 5258, - SpvBuiltInPositionPerViewNV = 5261, - SpvBuiltInViewportMaskPerViewNV = 5262, - SpvBuiltInMax = 0x7fffffff, -} SpvBuiltIn; - -typedef enum SpvSelectionControlShift_ { - SpvSelectionControlFlattenShift = 0, - SpvSelectionControlDontFlattenShift = 1, - SpvSelectionControlMax = 0x7fffffff, -} SpvSelectionControlShift; - -typedef enum SpvSelectionControlMask_ { - SpvSelectionControlMaskNone = 0, - SpvSelectionControlFlattenMask = 0x00000001, - SpvSelectionControlDontFlattenMask = 0x00000002, -} SpvSelectionControlMask; - -typedef enum SpvLoopControlShift_ { - SpvLoopControlUnrollShift = 0, - SpvLoopControlDontUnrollShift = 1, - SpvLoopControlMax = 0x7fffffff, -} SpvLoopControlShift; - -typedef enum SpvLoopControlMask_ { - SpvLoopControlMaskNone = 0, - SpvLoopControlUnrollMask = 0x00000001, - SpvLoopControlDontUnrollMask = 0x00000002, -} SpvLoopControlMask; - -typedef enum SpvFunctionControlShift_ { - SpvFunctionControlInlineShift = 0, - SpvFunctionControlDontInlineShift = 1, - SpvFunctionControlPureShift = 2, - SpvFunctionControlConstShift = 3, - SpvFunctionControlMax = 0x7fffffff, -} SpvFunctionControlShift; - -typedef enum SpvFunctionControlMask_ { - SpvFunctionControlMaskNone = 0, - SpvFunctionControlInlineMask = 0x00000001, - SpvFunctionControlDontInlineMask = 0x00000002, - SpvFunctionControlPureMask = 0x00000004, - SpvFunctionControlConstMask = 0x00000008, -} SpvFunctionControlMask; - -typedef enum SpvMemorySemanticsShift_ { - SpvMemorySemanticsAcquireShift = 1, - SpvMemorySemanticsReleaseShift = 2, - SpvMemorySemanticsAcquireReleaseShift = 3, - SpvMemorySemanticsSequentiallyConsistentShift = 4, - SpvMemorySemanticsUniformMemoryShift = 6, - SpvMemorySemanticsSubgroupMemoryShift = 7, - SpvMemorySemanticsWorkgroupMemoryShift = 8, - SpvMemorySemanticsCrossWorkgroupMemoryShift = 9, - SpvMemorySemanticsAtomicCounterMemoryShift = 10, - SpvMemorySemanticsImageMemoryShift = 11, - SpvMemorySemanticsMax = 0x7fffffff, -} SpvMemorySemanticsShift; - -typedef enum SpvMemorySemanticsMask_ { - SpvMemorySemanticsMaskNone = 0, - SpvMemorySemanticsAcquireMask = 0x00000002, - SpvMemorySemanticsReleaseMask = 0x00000004, - SpvMemorySemanticsAcquireReleaseMask = 0x00000008, - SpvMemorySemanticsSequentiallyConsistentMask = 0x00000010, - SpvMemorySemanticsUniformMemoryMask = 0x00000040, - SpvMemorySemanticsSubgroupMemoryMask = 0x00000080, - SpvMemorySemanticsWorkgroupMemoryMask = 0x00000100, - SpvMemorySemanticsCrossWorkgroupMemoryMask = 0x00000200, - SpvMemorySemanticsAtomicCounterMemoryMask = 0x00000400, - SpvMemorySemanticsImageMemoryMask = 0x00000800, -} SpvMemorySemanticsMask; - -typedef enum SpvMemoryAccessShift_ { - SpvMemoryAccessVolatileShift = 0, - SpvMemoryAccessAlignedShift = 1, - SpvMemoryAccessNontemporalShift = 2, - SpvMemoryAccessMax = 0x7fffffff, -} SpvMemoryAccessShift; - -typedef enum SpvMemoryAccessMask_ { - SpvMemoryAccessMaskNone = 0, - SpvMemoryAccessVolatileMask = 0x00000001, - SpvMemoryAccessAlignedMask = 0x00000002, - SpvMemoryAccessNontemporalMask = 0x00000004, -} SpvMemoryAccessMask; - -typedef enum SpvScope_ { - SpvScopeCrossDevice = 0, - SpvScopeDevice = 1, - SpvScopeWorkgroup = 2, - SpvScopeSubgroup = 3, - SpvScopeInvocation = 4, - SpvScopeMax = 0x7fffffff, -} SpvScope; - -typedef enum SpvGroupOperation_ { - SpvGroupOperationReduce = 0, - SpvGroupOperationInclusiveScan = 1, - SpvGroupOperationExclusiveScan = 2, - SpvGroupOperationMax = 0x7fffffff, -} SpvGroupOperation; - -typedef enum SpvKernelEnqueueFlags_ { - SpvKernelEnqueueFlagsNoWait = 0, - SpvKernelEnqueueFlagsWaitKernel = 1, - SpvKernelEnqueueFlagsWaitWorkGroup = 2, - SpvKernelEnqueueFlagsMax = 0x7fffffff, -} SpvKernelEnqueueFlags; - -typedef enum SpvKernelProfilingInfoShift_ { - SpvKernelProfilingInfoCmdExecTimeShift = 0, - SpvKernelProfilingInfoMax = 0x7fffffff, -} SpvKernelProfilingInfoShift; - -typedef enum SpvKernelProfilingInfoMask_ { - SpvKernelProfilingInfoMaskNone = 0, - SpvKernelProfilingInfoCmdExecTimeMask = 0x00000001, -} SpvKernelProfilingInfoMask; - -typedef enum SpvCapability_ { - SpvCapabilityMatrix = 0, - SpvCapabilityShader = 1, - SpvCapabilityGeometry = 2, - SpvCapabilityTessellation = 3, - SpvCapabilityAddresses = 4, - SpvCapabilityLinkage = 5, - SpvCapabilityKernel = 6, - SpvCapabilityVector16 = 7, - SpvCapabilityFloat16Buffer = 8, - SpvCapabilityFloat16 = 9, - SpvCapabilityFloat64 = 10, - SpvCapabilityInt64 = 11, - SpvCapabilityInt64Atomics = 12, - SpvCapabilityImageBasic = 13, - SpvCapabilityImageReadWrite = 14, - SpvCapabilityImageMipmap = 15, - SpvCapabilityPipes = 17, - SpvCapabilityGroups = 18, - SpvCapabilityDeviceEnqueue = 19, - SpvCapabilityLiteralSampler = 20, - SpvCapabilityAtomicStorage = 21, - SpvCapabilityInt16 = 22, - SpvCapabilityTessellationPointSize = 23, - SpvCapabilityGeometryPointSize = 24, - SpvCapabilityImageGatherExtended = 25, - SpvCapabilityStorageImageMultisample = 27, - SpvCapabilityUniformBufferArrayDynamicIndexing = 28, - SpvCapabilitySampledImageArrayDynamicIndexing = 29, - SpvCapabilityStorageBufferArrayDynamicIndexing = 30, - SpvCapabilityStorageImageArrayDynamicIndexing = 31, - SpvCapabilityClipDistance = 32, - SpvCapabilityCullDistance = 33, - SpvCapabilityImageCubeArray = 34, - SpvCapabilitySampleRateShading = 35, - SpvCapabilityImageRect = 36, - SpvCapabilitySampledRect = 37, - SpvCapabilityGenericPointer = 38, - SpvCapabilityInt8 = 39, - SpvCapabilityInputAttachment = 40, - SpvCapabilitySparseResidency = 41, - SpvCapabilityMinLod = 42, - SpvCapabilitySampled1D = 43, - SpvCapabilityImage1D = 44, - SpvCapabilitySampledCubeArray = 45, - SpvCapabilitySampledBuffer = 46, - SpvCapabilityImageBuffer = 47, - SpvCapabilityImageMSArray = 48, - SpvCapabilityStorageImageExtendedFormats = 49, - SpvCapabilityImageQuery = 50, - SpvCapabilityDerivativeControl = 51, - SpvCapabilityInterpolationFunction = 52, - SpvCapabilityTransformFeedback = 53, - SpvCapabilityGeometryStreams = 54, - SpvCapabilityStorageImageReadWithoutFormat = 55, - SpvCapabilityStorageImageWriteWithoutFormat = 56, - SpvCapabilityMultiViewport = 57, - SpvCapabilitySubgroupBallotKHR = 4423, - SpvCapabilityDrawParameters = 4427, - SpvCapabilitySubgroupVoteKHR = 4431, - SpvCapabilityStorageBuffer16BitAccess = 4433, - SpvCapabilityStorageUniformBufferBlock16 = 4433, - SpvCapabilityStorageUniform16 = 4434, - SpvCapabilityUniformAndStorageBuffer16BitAccess = 4434, - SpvCapabilityStoragePushConstant16 = 4435, - SpvCapabilityStorageInputOutput16 = 4436, - SpvCapabilityDeviceGroup = 4437, - SpvCapabilityMultiView = 4439, - SpvCapabilityVariablePointersStorageBuffer = 4441, - SpvCapabilityVariablePointers = 4442, - SpvCapabilityAtomicStorageOps = 4445, - SpvCapabilitySampleMaskPostDepthCoverage = 4447, - SpvCapabilityImageGatherBiasLodAMD = 5009, - SpvCapabilityFragmentMaskAMD = 5010, - SpvCapabilityStencilExportEXT = 5013, - SpvCapabilityImageReadWriteLodAMD = 5015, - SpvCapabilitySampleMaskOverrideCoverageNV = 5249, - SpvCapabilityGeometryShaderPassthroughNV = 5251, - SpvCapabilityShaderViewportIndexLayerEXT = 5254, - SpvCapabilityShaderViewportIndexLayerNV = 5254, - SpvCapabilityShaderViewportMaskNV = 5255, - SpvCapabilityShaderStereoViewNV = 5259, - SpvCapabilityPerViewAttributesNV = 5260, - SpvCapabilitySubgroupShuffleINTEL = 5568, - SpvCapabilitySubgroupBufferBlockIOINTEL = 5569, - SpvCapabilitySubgroupImageBlockIOINTEL = 5570, - SpvCapabilityMax = 0x7fffffff, -} SpvCapability; - -typedef enum SpvOp_ { - SpvOpNop = 0, - SpvOpUndef = 1, - SpvOpSourceContinued = 2, - SpvOpSource = 3, - SpvOpSourceExtension = 4, - SpvOpName = 5, - SpvOpMemberName = 6, - SpvOpString = 7, - SpvOpLine = 8, - SpvOpExtension = 10, - SpvOpExtInstImport = 11, - SpvOpExtInst = 12, - SpvOpMemoryModel = 14, - SpvOpEntryPoint = 15, - SpvOpExecutionMode = 16, - SpvOpCapability = 17, - SpvOpTypeVoid = 19, - SpvOpTypeBool = 20, - SpvOpTypeInt = 21, - SpvOpTypeFloat = 22, - SpvOpTypeVector = 23, - SpvOpTypeMatrix = 24, - SpvOpTypeImage = 25, - SpvOpTypeSampler = 26, - SpvOpTypeSampledImage = 27, - SpvOpTypeArray = 28, - SpvOpTypeRuntimeArray = 29, - SpvOpTypeStruct = 30, - SpvOpTypeOpaque = 31, - SpvOpTypePointer = 32, - SpvOpTypeFunction = 33, - SpvOpTypeEvent = 34, - SpvOpTypeDeviceEvent = 35, - SpvOpTypeReserveId = 36, - SpvOpTypeQueue = 37, - SpvOpTypePipe = 38, - SpvOpTypeForwardPointer = 39, - SpvOpConstantTrue = 41, - SpvOpConstantFalse = 42, - SpvOpConstant = 43, - SpvOpConstantComposite = 44, - SpvOpConstantSampler = 45, - SpvOpConstantNull = 46, - SpvOpSpecConstantTrue = 48, - SpvOpSpecConstantFalse = 49, - SpvOpSpecConstant = 50, - SpvOpSpecConstantComposite = 51, - SpvOpSpecConstantOp = 52, - SpvOpFunction = 54, - SpvOpFunctionParameter = 55, - SpvOpFunctionEnd = 56, - SpvOpFunctionCall = 57, - SpvOpVariable = 59, - SpvOpImageTexelPointer = 60, - SpvOpLoad = 61, - SpvOpStore = 62, - SpvOpCopyMemory = 63, - SpvOpCopyMemorySized = 64, - SpvOpAccessChain = 65, - SpvOpInBoundsAccessChain = 66, - SpvOpPtrAccessChain = 67, - SpvOpArrayLength = 68, - SpvOpGenericPtrMemSemantics = 69, - SpvOpInBoundsPtrAccessChain = 70, - SpvOpDecorate = 71, - SpvOpMemberDecorate = 72, - SpvOpDecorationGroup = 73, - SpvOpGroupDecorate = 74, - SpvOpGroupMemberDecorate = 75, - SpvOpVectorExtractDynamic = 77, - SpvOpVectorInsertDynamic = 78, - SpvOpVectorShuffle = 79, - SpvOpCompositeConstruct = 80, - SpvOpCompositeExtract = 81, - SpvOpCompositeInsert = 82, - SpvOpCopyObject = 83, - SpvOpTranspose = 84, - SpvOpSampledImage = 86, - SpvOpImageSampleImplicitLod = 87, - SpvOpImageSampleExplicitLod = 88, - SpvOpImageSampleDrefImplicitLod = 89, - SpvOpImageSampleDrefExplicitLod = 90, - SpvOpImageSampleProjImplicitLod = 91, - SpvOpImageSampleProjExplicitLod = 92, - SpvOpImageSampleProjDrefImplicitLod = 93, - SpvOpImageSampleProjDrefExplicitLod = 94, - SpvOpImageFetch = 95, - SpvOpImageGather = 96, - SpvOpImageDrefGather = 97, - SpvOpImageRead = 98, - SpvOpImageWrite = 99, - SpvOpImage = 100, - SpvOpImageQueryFormat = 101, - SpvOpImageQueryOrder = 102, - SpvOpImageQuerySizeLod = 103, - SpvOpImageQuerySize = 104, - SpvOpImageQueryLod = 105, - SpvOpImageQueryLevels = 106, - SpvOpImageQuerySamples = 107, - SpvOpConvertFToU = 109, - SpvOpConvertFToS = 110, - SpvOpConvertSToF = 111, - SpvOpConvertUToF = 112, - SpvOpUConvert = 113, - SpvOpSConvert = 114, - SpvOpFConvert = 115, - SpvOpQuantizeToF16 = 116, - SpvOpConvertPtrToU = 117, - SpvOpSatConvertSToU = 118, - SpvOpSatConvertUToS = 119, - SpvOpConvertUToPtr = 120, - SpvOpPtrCastToGeneric = 121, - SpvOpGenericCastToPtr = 122, - SpvOpGenericCastToPtrExplicit = 123, - SpvOpBitcast = 124, - SpvOpSNegate = 126, - SpvOpFNegate = 127, - SpvOpIAdd = 128, - SpvOpFAdd = 129, - SpvOpISub = 130, - SpvOpFSub = 131, - SpvOpIMul = 132, - SpvOpFMul = 133, - SpvOpUDiv = 134, - SpvOpSDiv = 135, - SpvOpFDiv = 136, - SpvOpUMod = 137, - SpvOpSRem = 138, - SpvOpSMod = 139, - SpvOpFRem = 140, - SpvOpFMod = 141, - SpvOpVectorTimesScalar = 142, - SpvOpMatrixTimesScalar = 143, - SpvOpVectorTimesMatrix = 144, - SpvOpMatrixTimesVector = 145, - SpvOpMatrixTimesMatrix = 146, - SpvOpOuterProduct = 147, - SpvOpDot = 148, - SpvOpIAddCarry = 149, - SpvOpISubBorrow = 150, - SpvOpUMulExtended = 151, - SpvOpSMulExtended = 152, - SpvOpAny = 154, - SpvOpAll = 155, - SpvOpIsNan = 156, - SpvOpIsInf = 157, - SpvOpIsFinite = 158, - SpvOpIsNormal = 159, - SpvOpSignBitSet = 160, - SpvOpLessOrGreater = 161, - SpvOpOrdered = 162, - SpvOpUnordered = 163, - SpvOpLogicalEqual = 164, - SpvOpLogicalNotEqual = 165, - SpvOpLogicalOr = 166, - SpvOpLogicalAnd = 167, - SpvOpLogicalNot = 168, - SpvOpSelect = 169, - SpvOpIEqual = 170, - SpvOpINotEqual = 171, - SpvOpUGreaterThan = 172, - SpvOpSGreaterThan = 173, - SpvOpUGreaterThanEqual = 174, - SpvOpSGreaterThanEqual = 175, - SpvOpULessThan = 176, - SpvOpSLessThan = 177, - SpvOpULessThanEqual = 178, - SpvOpSLessThanEqual = 179, - SpvOpFOrdEqual = 180, - SpvOpFUnordEqual = 181, - SpvOpFOrdNotEqual = 182, - SpvOpFUnordNotEqual = 183, - SpvOpFOrdLessThan = 184, - SpvOpFUnordLessThan = 185, - SpvOpFOrdGreaterThan = 186, - SpvOpFUnordGreaterThan = 187, - SpvOpFOrdLessThanEqual = 188, - SpvOpFUnordLessThanEqual = 189, - SpvOpFOrdGreaterThanEqual = 190, - SpvOpFUnordGreaterThanEqual = 191, - SpvOpShiftRightLogical = 194, - SpvOpShiftRightArithmetic = 195, - SpvOpShiftLeftLogical = 196, - SpvOpBitwiseOr = 197, - SpvOpBitwiseXor = 198, - SpvOpBitwiseAnd = 199, - SpvOpNot = 200, - SpvOpBitFieldInsert = 201, - SpvOpBitFieldSExtract = 202, - SpvOpBitFieldUExtract = 203, - SpvOpBitReverse = 204, - SpvOpBitCount = 205, - SpvOpDPdx = 207, - SpvOpDPdy = 208, - SpvOpFwidth = 209, - SpvOpDPdxFine = 210, - SpvOpDPdyFine = 211, - SpvOpFwidthFine = 212, - SpvOpDPdxCoarse = 213, - SpvOpDPdyCoarse = 214, - SpvOpFwidthCoarse = 215, - SpvOpEmitVertex = 218, - SpvOpEndPrimitive = 219, - SpvOpEmitStreamVertex = 220, - SpvOpEndStreamPrimitive = 221, - SpvOpControlBarrier = 224, - SpvOpMemoryBarrier = 225, - SpvOpAtomicLoad = 227, - SpvOpAtomicStore = 228, - SpvOpAtomicExchange = 229, - SpvOpAtomicCompareExchange = 230, - SpvOpAtomicCompareExchangeWeak = 231, - SpvOpAtomicIIncrement = 232, - SpvOpAtomicIDecrement = 233, - SpvOpAtomicIAdd = 234, - SpvOpAtomicISub = 235, - SpvOpAtomicSMin = 236, - SpvOpAtomicUMin = 237, - SpvOpAtomicSMax = 238, - SpvOpAtomicUMax = 239, - SpvOpAtomicAnd = 240, - SpvOpAtomicOr = 241, - SpvOpAtomicXor = 242, - SpvOpPhi = 245, - SpvOpLoopMerge = 246, - SpvOpSelectionMerge = 247, - SpvOpLabel = 248, - SpvOpBranch = 249, - SpvOpBranchConditional = 250, - SpvOpSwitch = 251, - SpvOpKill = 252, - SpvOpReturn = 253, - SpvOpReturnValue = 254, - SpvOpUnreachable = 255, - SpvOpLifetimeStart = 256, - SpvOpLifetimeStop = 257, - SpvOpGroupAsyncCopy = 259, - SpvOpGroupWaitEvents = 260, - SpvOpGroupAll = 261, - SpvOpGroupAny = 262, - SpvOpGroupBroadcast = 263, - SpvOpGroupIAdd = 264, - SpvOpGroupFAdd = 265, - SpvOpGroupFMin = 266, - SpvOpGroupUMin = 267, - SpvOpGroupSMin = 268, - SpvOpGroupFMax = 269, - SpvOpGroupUMax = 270, - SpvOpGroupSMax = 271, - SpvOpReadPipe = 274, - SpvOpWritePipe = 275, - SpvOpReservedReadPipe = 276, - SpvOpReservedWritePipe = 277, - SpvOpReserveReadPipePackets = 278, - SpvOpReserveWritePipePackets = 279, - SpvOpCommitReadPipe = 280, - SpvOpCommitWritePipe = 281, - SpvOpIsValidReserveId = 282, - SpvOpGetNumPipePackets = 283, - SpvOpGetMaxPipePackets = 284, - SpvOpGroupReserveReadPipePackets = 285, - SpvOpGroupReserveWritePipePackets = 286, - SpvOpGroupCommitReadPipe = 287, - SpvOpGroupCommitWritePipe = 288, - SpvOpEnqueueMarker = 291, - SpvOpEnqueueKernel = 292, - SpvOpGetKernelNDrangeSubGroupCount = 293, - SpvOpGetKernelNDrangeMaxSubGroupSize = 294, - SpvOpGetKernelWorkGroupSize = 295, - SpvOpGetKernelPreferredWorkGroupSizeMultiple = 296, - SpvOpRetainEvent = 297, - SpvOpReleaseEvent = 298, - SpvOpCreateUserEvent = 299, - SpvOpIsValidEvent = 300, - SpvOpSetUserEventStatus = 301, - SpvOpCaptureEventProfilingInfo = 302, - SpvOpGetDefaultQueue = 303, - SpvOpBuildNDRange = 304, - SpvOpImageSparseSampleImplicitLod = 305, - SpvOpImageSparseSampleExplicitLod = 306, - SpvOpImageSparseSampleDrefImplicitLod = 307, - SpvOpImageSparseSampleDrefExplicitLod = 308, - SpvOpImageSparseSampleProjImplicitLod = 309, - SpvOpImageSparseSampleProjExplicitLod = 310, - SpvOpImageSparseSampleProjDrefImplicitLod = 311, - SpvOpImageSparseSampleProjDrefExplicitLod = 312, - SpvOpImageSparseFetch = 313, - SpvOpImageSparseGather = 314, - SpvOpImageSparseDrefGather = 315, - SpvOpImageSparseTexelsResident = 316, - SpvOpNoLine = 317, - SpvOpAtomicFlagTestAndSet = 318, - SpvOpAtomicFlagClear = 319, - SpvOpImageSparseRead = 320, - SpvOpDecorateId = 332, - SpvOpSubgroupBallotKHR = 4421, - SpvOpSubgroupFirstInvocationKHR = 4422, - SpvOpSubgroupAllKHR = 4428, - SpvOpSubgroupAnyKHR = 4429, - SpvOpSubgroupAllEqualKHR = 4430, - SpvOpSubgroupReadInvocationKHR = 4432, - SpvOpGroupIAddNonUniformAMD = 5000, - SpvOpGroupFAddNonUniformAMD = 5001, - SpvOpGroupFMinNonUniformAMD = 5002, - SpvOpGroupUMinNonUniformAMD = 5003, - SpvOpGroupSMinNonUniformAMD = 5004, - SpvOpGroupFMaxNonUniformAMD = 5005, - SpvOpGroupUMaxNonUniformAMD = 5006, - SpvOpGroupSMaxNonUniformAMD = 5007, - SpvOpFragmentMaskFetchAMD = 5011, - SpvOpFragmentFetchAMD = 5012, - SpvOpSubgroupShuffleINTEL = 5571, - SpvOpSubgroupShuffleDownINTEL = 5572, - SpvOpSubgroupShuffleUpINTEL = 5573, - SpvOpSubgroupShuffleXorINTEL = 5574, - SpvOpSubgroupBlockReadINTEL = 5575, - SpvOpSubgroupBlockWriteINTEL = 5576, - SpvOpSubgroupImageBlockReadINTEL = 5577, - SpvOpSubgroupImageBlockWriteINTEL = 5578, - SpvOpDecorateStringGOOGLE = 5632, - SpvOpMemberDecorateStringGOOGLE = 5633, - SpvOpMax = 0x7fffffff, -} SpvOp; - -#endif // #ifndef spirv_H - diff --git a/Extern/3rdParty/shaderc/shaderc/include/spirv/1.0/spirv.hpp b/Extern/3rdParty/shaderc/shaderc/include/spirv/1.0/spirv.hpp deleted file mode 100644 index e98a89c..0000000 --- a/Extern/3rdParty/shaderc/shaderc/include/spirv/1.0/spirv.hpp +++ /dev/null @@ -1,1002 +0,0 @@ -// Copyright (c) 2014-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. - -// This header is automatically generated by the same tool that creates -// the Binary Section of the SPIR-V specification. - -// Enumeration tokens for SPIR-V, in various styles: -// C, C++, C++11, JSON, Lua, Python -// -// - C will have tokens with a "Spv" prefix, e.g.: SpvSourceLanguageGLSL -// - C++ will have tokens in the "spv" name space, e.g.: spv::SourceLanguageGLSL -// - C++11 will use enum classes in the spv namespace, e.g.: spv::SourceLanguage::GLSL -// - Lua will use tables, e.g.: spv.SourceLanguage.GLSL -// - Python will use dictionaries, e.g.: spv['SourceLanguage']['GLSL'] -// -// Some tokens act like mask values, which can be OR'd together, -// while others are mutually exclusive. The mask-like ones have -// "Mask" in their name, and a parallel enum that has the shift -// amount (1 << x) for each corresponding enumerant. - -#ifndef spirv_HPP -#define spirv_HPP - -namespace spv { - -typedef unsigned int Id; - -#define SPV_VERSION 0x10000 -#define SPV_REVISION 12 - -static const unsigned int MagicNumber = 0x07230203; -static const unsigned int Version = 0x00010000; -static const unsigned int Revision = 12; -static const unsigned int OpCodeMask = 0xffff; -static const unsigned int WordCountShift = 16; - -enum SourceLanguage { - SourceLanguageUnknown = 0, - SourceLanguageESSL = 1, - SourceLanguageGLSL = 2, - SourceLanguageOpenCL_C = 3, - SourceLanguageOpenCL_CPP = 4, - SourceLanguageHLSL = 5, - SourceLanguageMax = 0x7fffffff, -}; - -enum ExecutionModel { - ExecutionModelVertex = 0, - ExecutionModelTessellationControl = 1, - ExecutionModelTessellationEvaluation = 2, - ExecutionModelGeometry = 3, - ExecutionModelFragment = 4, - ExecutionModelGLCompute = 5, - ExecutionModelKernel = 6, - ExecutionModelMax = 0x7fffffff, -}; - -enum AddressingModel { - AddressingModelLogical = 0, - AddressingModelPhysical32 = 1, - AddressingModelPhysical64 = 2, - AddressingModelMax = 0x7fffffff, -}; - -enum MemoryModel { - MemoryModelSimple = 0, - MemoryModelGLSL450 = 1, - MemoryModelOpenCL = 2, - MemoryModelMax = 0x7fffffff, -}; - -enum ExecutionMode { - ExecutionModeInvocations = 0, - ExecutionModeSpacingEqual = 1, - ExecutionModeSpacingFractionalEven = 2, - ExecutionModeSpacingFractionalOdd = 3, - ExecutionModeVertexOrderCw = 4, - ExecutionModeVertexOrderCcw = 5, - ExecutionModePixelCenterInteger = 6, - ExecutionModeOriginUpperLeft = 7, - ExecutionModeOriginLowerLeft = 8, - ExecutionModeEarlyFragmentTests = 9, - ExecutionModePointMode = 10, - ExecutionModeXfb = 11, - ExecutionModeDepthReplacing = 12, - ExecutionModeDepthGreater = 14, - ExecutionModeDepthLess = 15, - ExecutionModeDepthUnchanged = 16, - ExecutionModeLocalSize = 17, - ExecutionModeLocalSizeHint = 18, - ExecutionModeInputPoints = 19, - ExecutionModeInputLines = 20, - ExecutionModeInputLinesAdjacency = 21, - ExecutionModeTriangles = 22, - ExecutionModeInputTrianglesAdjacency = 23, - ExecutionModeQuads = 24, - ExecutionModeIsolines = 25, - ExecutionModeOutputVertices = 26, - ExecutionModeOutputPoints = 27, - ExecutionModeOutputLineStrip = 28, - ExecutionModeOutputTriangleStrip = 29, - ExecutionModeVecTypeHint = 30, - ExecutionModeContractionOff = 31, - ExecutionModePostDepthCoverage = 4446, - ExecutionModeStencilRefReplacingEXT = 5027, - ExecutionModeMax = 0x7fffffff, -}; - -enum StorageClass { - StorageClassUniformConstant = 0, - StorageClassInput = 1, - StorageClassUniform = 2, - StorageClassOutput = 3, - StorageClassWorkgroup = 4, - StorageClassCrossWorkgroup = 5, - StorageClassPrivate = 6, - StorageClassFunction = 7, - StorageClassGeneric = 8, - StorageClassPushConstant = 9, - StorageClassAtomicCounter = 10, - StorageClassImage = 11, - StorageClassStorageBuffer = 12, - StorageClassMax = 0x7fffffff, -}; - -enum Dim { - Dim1D = 0, - Dim2D = 1, - Dim3D = 2, - DimCube = 3, - DimRect = 4, - DimBuffer = 5, - DimSubpassData = 6, - DimMax = 0x7fffffff, -}; - -enum SamplerAddressingMode { - SamplerAddressingModeNone = 0, - SamplerAddressingModeClampToEdge = 1, - SamplerAddressingModeClamp = 2, - SamplerAddressingModeRepeat = 3, - SamplerAddressingModeRepeatMirrored = 4, - SamplerAddressingModeMax = 0x7fffffff, -}; - -enum SamplerFilterMode { - SamplerFilterModeNearest = 0, - SamplerFilterModeLinear = 1, - SamplerFilterModeMax = 0x7fffffff, -}; - -enum ImageFormat { - ImageFormatUnknown = 0, - ImageFormatRgba32f = 1, - ImageFormatRgba16f = 2, - ImageFormatR32f = 3, - ImageFormatRgba8 = 4, - ImageFormatRgba8Snorm = 5, - ImageFormatRg32f = 6, - ImageFormatRg16f = 7, - ImageFormatR11fG11fB10f = 8, - ImageFormatR16f = 9, - ImageFormatRgba16 = 10, - ImageFormatRgb10A2 = 11, - ImageFormatRg16 = 12, - ImageFormatRg8 = 13, - ImageFormatR16 = 14, - ImageFormatR8 = 15, - ImageFormatRgba16Snorm = 16, - ImageFormatRg16Snorm = 17, - ImageFormatRg8Snorm = 18, - ImageFormatR16Snorm = 19, - ImageFormatR8Snorm = 20, - ImageFormatRgba32i = 21, - ImageFormatRgba16i = 22, - ImageFormatRgba8i = 23, - ImageFormatR32i = 24, - ImageFormatRg32i = 25, - ImageFormatRg16i = 26, - ImageFormatRg8i = 27, - ImageFormatR16i = 28, - ImageFormatR8i = 29, - ImageFormatRgba32ui = 30, - ImageFormatRgba16ui = 31, - ImageFormatRgba8ui = 32, - ImageFormatR32ui = 33, - ImageFormatRgb10a2ui = 34, - ImageFormatRg32ui = 35, - ImageFormatRg16ui = 36, - ImageFormatRg8ui = 37, - ImageFormatR16ui = 38, - ImageFormatR8ui = 39, - ImageFormatMax = 0x7fffffff, -}; - -enum ImageChannelOrder { - ImageChannelOrderR = 0, - ImageChannelOrderA = 1, - ImageChannelOrderRG = 2, - ImageChannelOrderRA = 3, - ImageChannelOrderRGB = 4, - ImageChannelOrderRGBA = 5, - ImageChannelOrderBGRA = 6, - ImageChannelOrderARGB = 7, - ImageChannelOrderIntensity = 8, - ImageChannelOrderLuminance = 9, - ImageChannelOrderRx = 10, - ImageChannelOrderRGx = 11, - ImageChannelOrderRGBx = 12, - ImageChannelOrderDepth = 13, - ImageChannelOrderDepthStencil = 14, - ImageChannelOrdersRGB = 15, - ImageChannelOrdersRGBx = 16, - ImageChannelOrdersRGBA = 17, - ImageChannelOrdersBGRA = 18, - ImageChannelOrderABGR = 19, - ImageChannelOrderMax = 0x7fffffff, -}; - -enum ImageChannelDataType { - ImageChannelDataTypeSnormInt8 = 0, - ImageChannelDataTypeSnormInt16 = 1, - ImageChannelDataTypeUnormInt8 = 2, - ImageChannelDataTypeUnormInt16 = 3, - ImageChannelDataTypeUnormShort565 = 4, - ImageChannelDataTypeUnormShort555 = 5, - ImageChannelDataTypeUnormInt101010 = 6, - ImageChannelDataTypeSignedInt8 = 7, - ImageChannelDataTypeSignedInt16 = 8, - ImageChannelDataTypeSignedInt32 = 9, - ImageChannelDataTypeUnsignedInt8 = 10, - ImageChannelDataTypeUnsignedInt16 = 11, - ImageChannelDataTypeUnsignedInt32 = 12, - ImageChannelDataTypeHalfFloat = 13, - ImageChannelDataTypeFloat = 14, - ImageChannelDataTypeUnormInt24 = 15, - ImageChannelDataTypeUnormInt101010_2 = 16, - ImageChannelDataTypeMax = 0x7fffffff, -}; - -enum ImageOperandsShift { - ImageOperandsBiasShift = 0, - ImageOperandsLodShift = 1, - ImageOperandsGradShift = 2, - ImageOperandsConstOffsetShift = 3, - ImageOperandsOffsetShift = 4, - ImageOperandsConstOffsetsShift = 5, - ImageOperandsSampleShift = 6, - ImageOperandsMinLodShift = 7, - ImageOperandsMax = 0x7fffffff, -}; - -enum ImageOperandsMask { - ImageOperandsMaskNone = 0, - ImageOperandsBiasMask = 0x00000001, - ImageOperandsLodMask = 0x00000002, - ImageOperandsGradMask = 0x00000004, - ImageOperandsConstOffsetMask = 0x00000008, - ImageOperandsOffsetMask = 0x00000010, - ImageOperandsConstOffsetsMask = 0x00000020, - ImageOperandsSampleMask = 0x00000040, - ImageOperandsMinLodMask = 0x00000080, -}; - -enum FPFastMathModeShift { - FPFastMathModeNotNaNShift = 0, - FPFastMathModeNotInfShift = 1, - FPFastMathModeNSZShift = 2, - FPFastMathModeAllowRecipShift = 3, - FPFastMathModeFastShift = 4, - FPFastMathModeMax = 0x7fffffff, -}; - -enum FPFastMathModeMask { - FPFastMathModeMaskNone = 0, - FPFastMathModeNotNaNMask = 0x00000001, - FPFastMathModeNotInfMask = 0x00000002, - FPFastMathModeNSZMask = 0x00000004, - FPFastMathModeAllowRecipMask = 0x00000008, - FPFastMathModeFastMask = 0x00000010, -}; - -enum FPRoundingMode { - FPRoundingModeRTE = 0, - FPRoundingModeRTZ = 1, - FPRoundingModeRTP = 2, - FPRoundingModeRTN = 3, - FPRoundingModeMax = 0x7fffffff, -}; - -enum LinkageType { - LinkageTypeExport = 0, - LinkageTypeImport = 1, - LinkageTypeMax = 0x7fffffff, -}; - -enum AccessQualifier { - AccessQualifierReadOnly = 0, - AccessQualifierWriteOnly = 1, - AccessQualifierReadWrite = 2, - AccessQualifierMax = 0x7fffffff, -}; - -enum FunctionParameterAttribute { - FunctionParameterAttributeZext = 0, - FunctionParameterAttributeSext = 1, - FunctionParameterAttributeByVal = 2, - FunctionParameterAttributeSret = 3, - FunctionParameterAttributeNoAlias = 4, - FunctionParameterAttributeNoCapture = 5, - FunctionParameterAttributeNoWrite = 6, - FunctionParameterAttributeNoReadWrite = 7, - FunctionParameterAttributeMax = 0x7fffffff, -}; - -enum Decoration { - DecorationRelaxedPrecision = 0, - DecorationSpecId = 1, - DecorationBlock = 2, - DecorationBufferBlock = 3, - DecorationRowMajor = 4, - DecorationColMajor = 5, - DecorationArrayStride = 6, - DecorationMatrixStride = 7, - DecorationGLSLShared = 8, - DecorationGLSLPacked = 9, - DecorationCPacked = 10, - DecorationBuiltIn = 11, - DecorationNoPerspective = 13, - DecorationFlat = 14, - DecorationPatch = 15, - DecorationCentroid = 16, - DecorationSample = 17, - DecorationInvariant = 18, - DecorationRestrict = 19, - DecorationAliased = 20, - DecorationVolatile = 21, - DecorationConstant = 22, - DecorationCoherent = 23, - DecorationNonWritable = 24, - DecorationNonReadable = 25, - DecorationUniform = 26, - DecorationSaturatedConversion = 28, - DecorationStream = 29, - DecorationLocation = 30, - DecorationComponent = 31, - DecorationIndex = 32, - DecorationBinding = 33, - DecorationDescriptorSet = 34, - DecorationOffset = 35, - DecorationXfbBuffer = 36, - DecorationXfbStride = 37, - DecorationFuncParamAttr = 38, - DecorationFPRoundingMode = 39, - DecorationFPFastMathMode = 40, - DecorationLinkageAttributes = 41, - DecorationNoContraction = 42, - DecorationInputAttachmentIndex = 43, - DecorationAlignment = 44, - DecorationExplicitInterpAMD = 4999, - DecorationOverrideCoverageNV = 5248, - DecorationPassthroughNV = 5250, - DecorationViewportRelativeNV = 5252, - DecorationSecondaryViewportRelativeNV = 5256, - DecorationHlslCounterBufferGOOGLE = 5634, - DecorationHlslSemanticGOOGLE = 5635, - DecorationMax = 0x7fffffff, -}; - -enum BuiltIn { - BuiltInPosition = 0, - BuiltInPointSize = 1, - BuiltInClipDistance = 3, - BuiltInCullDistance = 4, - BuiltInVertexId = 5, - BuiltInInstanceId = 6, - BuiltInPrimitiveId = 7, - BuiltInInvocationId = 8, - BuiltInLayer = 9, - BuiltInViewportIndex = 10, - BuiltInTessLevelOuter = 11, - BuiltInTessLevelInner = 12, - BuiltInTessCoord = 13, - BuiltInPatchVertices = 14, - BuiltInFragCoord = 15, - BuiltInPointCoord = 16, - BuiltInFrontFacing = 17, - BuiltInSampleId = 18, - BuiltInSamplePosition = 19, - BuiltInSampleMask = 20, - BuiltInFragDepth = 22, - BuiltInHelperInvocation = 23, - BuiltInNumWorkgroups = 24, - BuiltInWorkgroupSize = 25, - BuiltInWorkgroupId = 26, - BuiltInLocalInvocationId = 27, - BuiltInGlobalInvocationId = 28, - BuiltInLocalInvocationIndex = 29, - BuiltInWorkDim = 30, - BuiltInGlobalSize = 31, - BuiltInEnqueuedWorkgroupSize = 32, - BuiltInGlobalOffset = 33, - BuiltInGlobalLinearId = 34, - BuiltInSubgroupSize = 36, - BuiltInSubgroupMaxSize = 37, - BuiltInNumSubgroups = 38, - BuiltInNumEnqueuedSubgroups = 39, - BuiltInSubgroupId = 40, - BuiltInSubgroupLocalInvocationId = 41, - BuiltInVertexIndex = 42, - BuiltInInstanceIndex = 43, - BuiltInSubgroupEqMaskKHR = 4416, - BuiltInSubgroupGeMaskKHR = 4417, - BuiltInSubgroupGtMaskKHR = 4418, - BuiltInSubgroupLeMaskKHR = 4419, - BuiltInSubgroupLtMaskKHR = 4420, - BuiltInBaseVertex = 4424, - BuiltInBaseInstance = 4425, - BuiltInDrawIndex = 4426, - BuiltInDeviceIndex = 4438, - BuiltInViewIndex = 4440, - BuiltInBaryCoordNoPerspAMD = 4992, - BuiltInBaryCoordNoPerspCentroidAMD = 4993, - BuiltInBaryCoordNoPerspSampleAMD = 4994, - BuiltInBaryCoordSmoothAMD = 4995, - BuiltInBaryCoordSmoothCentroidAMD = 4996, - BuiltInBaryCoordSmoothSampleAMD = 4997, - BuiltInBaryCoordPullModelAMD = 4998, - BuiltInFragStencilRefEXT = 5014, - BuiltInViewportMaskNV = 5253, - BuiltInSecondaryPositionNV = 5257, - BuiltInSecondaryViewportMaskNV = 5258, - BuiltInPositionPerViewNV = 5261, - BuiltInViewportMaskPerViewNV = 5262, - BuiltInMax = 0x7fffffff, -}; - -enum SelectionControlShift { - SelectionControlFlattenShift = 0, - SelectionControlDontFlattenShift = 1, - SelectionControlMax = 0x7fffffff, -}; - -enum SelectionControlMask { - SelectionControlMaskNone = 0, - SelectionControlFlattenMask = 0x00000001, - SelectionControlDontFlattenMask = 0x00000002, -}; - -enum LoopControlShift { - LoopControlUnrollShift = 0, - LoopControlDontUnrollShift = 1, - LoopControlMax = 0x7fffffff, -}; - -enum LoopControlMask { - LoopControlMaskNone = 0, - LoopControlUnrollMask = 0x00000001, - LoopControlDontUnrollMask = 0x00000002, -}; - -enum FunctionControlShift { - FunctionControlInlineShift = 0, - FunctionControlDontInlineShift = 1, - FunctionControlPureShift = 2, - FunctionControlConstShift = 3, - FunctionControlMax = 0x7fffffff, -}; - -enum FunctionControlMask { - FunctionControlMaskNone = 0, - FunctionControlInlineMask = 0x00000001, - FunctionControlDontInlineMask = 0x00000002, - FunctionControlPureMask = 0x00000004, - FunctionControlConstMask = 0x00000008, -}; - -enum MemorySemanticsShift { - MemorySemanticsAcquireShift = 1, - MemorySemanticsReleaseShift = 2, - MemorySemanticsAcquireReleaseShift = 3, - MemorySemanticsSequentiallyConsistentShift = 4, - MemorySemanticsUniformMemoryShift = 6, - MemorySemanticsSubgroupMemoryShift = 7, - MemorySemanticsWorkgroupMemoryShift = 8, - MemorySemanticsCrossWorkgroupMemoryShift = 9, - MemorySemanticsAtomicCounterMemoryShift = 10, - MemorySemanticsImageMemoryShift = 11, - MemorySemanticsMax = 0x7fffffff, -}; - -enum MemorySemanticsMask { - MemorySemanticsMaskNone = 0, - MemorySemanticsAcquireMask = 0x00000002, - MemorySemanticsReleaseMask = 0x00000004, - MemorySemanticsAcquireReleaseMask = 0x00000008, - MemorySemanticsSequentiallyConsistentMask = 0x00000010, - MemorySemanticsUniformMemoryMask = 0x00000040, - MemorySemanticsSubgroupMemoryMask = 0x00000080, - MemorySemanticsWorkgroupMemoryMask = 0x00000100, - MemorySemanticsCrossWorkgroupMemoryMask = 0x00000200, - MemorySemanticsAtomicCounterMemoryMask = 0x00000400, - MemorySemanticsImageMemoryMask = 0x00000800, -}; - -enum MemoryAccessShift { - MemoryAccessVolatileShift = 0, - MemoryAccessAlignedShift = 1, - MemoryAccessNontemporalShift = 2, - MemoryAccessMax = 0x7fffffff, -}; - -enum MemoryAccessMask { - MemoryAccessMaskNone = 0, - MemoryAccessVolatileMask = 0x00000001, - MemoryAccessAlignedMask = 0x00000002, - MemoryAccessNontemporalMask = 0x00000004, -}; - -enum Scope { - ScopeCrossDevice = 0, - ScopeDevice = 1, - ScopeWorkgroup = 2, - ScopeSubgroup = 3, - ScopeInvocation = 4, - ScopeMax = 0x7fffffff, -}; - -enum GroupOperation { - GroupOperationReduce = 0, - GroupOperationInclusiveScan = 1, - GroupOperationExclusiveScan = 2, - GroupOperationMax = 0x7fffffff, -}; - -enum KernelEnqueueFlags { - KernelEnqueueFlagsNoWait = 0, - KernelEnqueueFlagsWaitKernel = 1, - KernelEnqueueFlagsWaitWorkGroup = 2, - KernelEnqueueFlagsMax = 0x7fffffff, -}; - -enum KernelProfilingInfoShift { - KernelProfilingInfoCmdExecTimeShift = 0, - KernelProfilingInfoMax = 0x7fffffff, -}; - -enum KernelProfilingInfoMask { - KernelProfilingInfoMaskNone = 0, - KernelProfilingInfoCmdExecTimeMask = 0x00000001, -}; - -enum Capability { - CapabilityMatrix = 0, - CapabilityShader = 1, - CapabilityGeometry = 2, - CapabilityTessellation = 3, - CapabilityAddresses = 4, - CapabilityLinkage = 5, - CapabilityKernel = 6, - CapabilityVector16 = 7, - CapabilityFloat16Buffer = 8, - CapabilityFloat16 = 9, - CapabilityFloat64 = 10, - CapabilityInt64 = 11, - CapabilityInt64Atomics = 12, - CapabilityImageBasic = 13, - CapabilityImageReadWrite = 14, - CapabilityImageMipmap = 15, - CapabilityPipes = 17, - CapabilityGroups = 18, - CapabilityDeviceEnqueue = 19, - CapabilityLiteralSampler = 20, - CapabilityAtomicStorage = 21, - CapabilityInt16 = 22, - CapabilityTessellationPointSize = 23, - CapabilityGeometryPointSize = 24, - CapabilityImageGatherExtended = 25, - CapabilityStorageImageMultisample = 27, - CapabilityUniformBufferArrayDynamicIndexing = 28, - CapabilitySampledImageArrayDynamicIndexing = 29, - CapabilityStorageBufferArrayDynamicIndexing = 30, - CapabilityStorageImageArrayDynamicIndexing = 31, - CapabilityClipDistance = 32, - CapabilityCullDistance = 33, - CapabilityImageCubeArray = 34, - CapabilitySampleRateShading = 35, - CapabilityImageRect = 36, - CapabilitySampledRect = 37, - CapabilityGenericPointer = 38, - CapabilityInt8 = 39, - CapabilityInputAttachment = 40, - CapabilitySparseResidency = 41, - CapabilityMinLod = 42, - CapabilitySampled1D = 43, - CapabilityImage1D = 44, - CapabilitySampledCubeArray = 45, - CapabilitySampledBuffer = 46, - CapabilityImageBuffer = 47, - CapabilityImageMSArray = 48, - CapabilityStorageImageExtendedFormats = 49, - CapabilityImageQuery = 50, - CapabilityDerivativeControl = 51, - CapabilityInterpolationFunction = 52, - CapabilityTransformFeedback = 53, - CapabilityGeometryStreams = 54, - CapabilityStorageImageReadWithoutFormat = 55, - CapabilityStorageImageWriteWithoutFormat = 56, - CapabilityMultiViewport = 57, - CapabilitySubgroupBallotKHR = 4423, - CapabilityDrawParameters = 4427, - CapabilitySubgroupVoteKHR = 4431, - CapabilityStorageBuffer16BitAccess = 4433, - CapabilityStorageUniformBufferBlock16 = 4433, - CapabilityStorageUniform16 = 4434, - CapabilityUniformAndStorageBuffer16BitAccess = 4434, - CapabilityStoragePushConstant16 = 4435, - CapabilityStorageInputOutput16 = 4436, - CapabilityDeviceGroup = 4437, - CapabilityMultiView = 4439, - CapabilityVariablePointersStorageBuffer = 4441, - CapabilityVariablePointers = 4442, - CapabilityAtomicStorageOps = 4445, - CapabilitySampleMaskPostDepthCoverage = 4447, - CapabilityImageGatherBiasLodAMD = 5009, - CapabilityFragmentMaskAMD = 5010, - CapabilityStencilExportEXT = 5013, - CapabilityImageReadWriteLodAMD = 5015, - CapabilitySampleMaskOverrideCoverageNV = 5249, - CapabilityGeometryShaderPassthroughNV = 5251, - CapabilityShaderViewportIndexLayerEXT = 5254, - CapabilityShaderViewportIndexLayerNV = 5254, - CapabilityShaderViewportMaskNV = 5255, - CapabilityShaderStereoViewNV = 5259, - CapabilityPerViewAttributesNV = 5260, - CapabilitySubgroupShuffleINTEL = 5568, - CapabilitySubgroupBufferBlockIOINTEL = 5569, - CapabilitySubgroupImageBlockIOINTEL = 5570, - CapabilityMax = 0x7fffffff, -}; - -enum Op { - OpNop = 0, - OpUndef = 1, - OpSourceContinued = 2, - OpSource = 3, - OpSourceExtension = 4, - OpName = 5, - OpMemberName = 6, - OpString = 7, - OpLine = 8, - OpExtension = 10, - OpExtInstImport = 11, - OpExtInst = 12, - OpMemoryModel = 14, - OpEntryPoint = 15, - OpExecutionMode = 16, - OpCapability = 17, - OpTypeVoid = 19, - OpTypeBool = 20, - OpTypeInt = 21, - OpTypeFloat = 22, - OpTypeVector = 23, - OpTypeMatrix = 24, - OpTypeImage = 25, - OpTypeSampler = 26, - OpTypeSampledImage = 27, - OpTypeArray = 28, - OpTypeRuntimeArray = 29, - OpTypeStruct = 30, - OpTypeOpaque = 31, - OpTypePointer = 32, - OpTypeFunction = 33, - OpTypeEvent = 34, - OpTypeDeviceEvent = 35, - OpTypeReserveId = 36, - OpTypeQueue = 37, - OpTypePipe = 38, - OpTypeForwardPointer = 39, - OpConstantTrue = 41, - OpConstantFalse = 42, - OpConstant = 43, - OpConstantComposite = 44, - OpConstantSampler = 45, - OpConstantNull = 46, - OpSpecConstantTrue = 48, - OpSpecConstantFalse = 49, - OpSpecConstant = 50, - OpSpecConstantComposite = 51, - OpSpecConstantOp = 52, - OpFunction = 54, - OpFunctionParameter = 55, - OpFunctionEnd = 56, - OpFunctionCall = 57, - OpVariable = 59, - OpImageTexelPointer = 60, - OpLoad = 61, - OpStore = 62, - OpCopyMemory = 63, - OpCopyMemorySized = 64, - OpAccessChain = 65, - OpInBoundsAccessChain = 66, - OpPtrAccessChain = 67, - OpArrayLength = 68, - OpGenericPtrMemSemantics = 69, - OpInBoundsPtrAccessChain = 70, - OpDecorate = 71, - OpMemberDecorate = 72, - OpDecorationGroup = 73, - OpGroupDecorate = 74, - OpGroupMemberDecorate = 75, - OpVectorExtractDynamic = 77, - OpVectorInsertDynamic = 78, - OpVectorShuffle = 79, - OpCompositeConstruct = 80, - OpCompositeExtract = 81, - OpCompositeInsert = 82, - OpCopyObject = 83, - OpTranspose = 84, - OpSampledImage = 86, - OpImageSampleImplicitLod = 87, - OpImageSampleExplicitLod = 88, - OpImageSampleDrefImplicitLod = 89, - OpImageSampleDrefExplicitLod = 90, - OpImageSampleProjImplicitLod = 91, - OpImageSampleProjExplicitLod = 92, - OpImageSampleProjDrefImplicitLod = 93, - OpImageSampleProjDrefExplicitLod = 94, - OpImageFetch = 95, - OpImageGather = 96, - OpImageDrefGather = 97, - OpImageRead = 98, - OpImageWrite = 99, - OpImage = 100, - OpImageQueryFormat = 101, - OpImageQueryOrder = 102, - OpImageQuerySizeLod = 103, - OpImageQuerySize = 104, - OpImageQueryLod = 105, - OpImageQueryLevels = 106, - OpImageQuerySamples = 107, - OpConvertFToU = 109, - OpConvertFToS = 110, - OpConvertSToF = 111, - OpConvertUToF = 112, - OpUConvert = 113, - OpSConvert = 114, - OpFConvert = 115, - OpQuantizeToF16 = 116, - OpConvertPtrToU = 117, - OpSatConvertSToU = 118, - OpSatConvertUToS = 119, - OpConvertUToPtr = 120, - OpPtrCastToGeneric = 121, - OpGenericCastToPtr = 122, - OpGenericCastToPtrExplicit = 123, - OpBitcast = 124, - OpSNegate = 126, - OpFNegate = 127, - OpIAdd = 128, - OpFAdd = 129, - OpISub = 130, - OpFSub = 131, - OpIMul = 132, - OpFMul = 133, - OpUDiv = 134, - OpSDiv = 135, - OpFDiv = 136, - OpUMod = 137, - OpSRem = 138, - OpSMod = 139, - OpFRem = 140, - OpFMod = 141, - OpVectorTimesScalar = 142, - OpMatrixTimesScalar = 143, - OpVectorTimesMatrix = 144, - OpMatrixTimesVector = 145, - OpMatrixTimesMatrix = 146, - OpOuterProduct = 147, - OpDot = 148, - OpIAddCarry = 149, - OpISubBorrow = 150, - OpUMulExtended = 151, - OpSMulExtended = 152, - OpAny = 154, - OpAll = 155, - OpIsNan = 156, - OpIsInf = 157, - OpIsFinite = 158, - OpIsNormal = 159, - OpSignBitSet = 160, - OpLessOrGreater = 161, - OpOrdered = 162, - OpUnordered = 163, - OpLogicalEqual = 164, - OpLogicalNotEqual = 165, - OpLogicalOr = 166, - OpLogicalAnd = 167, - OpLogicalNot = 168, - OpSelect = 169, - OpIEqual = 170, - OpINotEqual = 171, - OpUGreaterThan = 172, - OpSGreaterThan = 173, - OpUGreaterThanEqual = 174, - OpSGreaterThanEqual = 175, - OpULessThan = 176, - OpSLessThan = 177, - OpULessThanEqual = 178, - OpSLessThanEqual = 179, - OpFOrdEqual = 180, - OpFUnordEqual = 181, - OpFOrdNotEqual = 182, - OpFUnordNotEqual = 183, - OpFOrdLessThan = 184, - OpFUnordLessThan = 185, - OpFOrdGreaterThan = 186, - OpFUnordGreaterThan = 187, - OpFOrdLessThanEqual = 188, - OpFUnordLessThanEqual = 189, - OpFOrdGreaterThanEqual = 190, - OpFUnordGreaterThanEqual = 191, - OpShiftRightLogical = 194, - OpShiftRightArithmetic = 195, - OpShiftLeftLogical = 196, - OpBitwiseOr = 197, - OpBitwiseXor = 198, - OpBitwiseAnd = 199, - OpNot = 200, - OpBitFieldInsert = 201, - OpBitFieldSExtract = 202, - OpBitFieldUExtract = 203, - OpBitReverse = 204, - OpBitCount = 205, - OpDPdx = 207, - OpDPdy = 208, - OpFwidth = 209, - OpDPdxFine = 210, - OpDPdyFine = 211, - OpFwidthFine = 212, - OpDPdxCoarse = 213, - OpDPdyCoarse = 214, - OpFwidthCoarse = 215, - OpEmitVertex = 218, - OpEndPrimitive = 219, - OpEmitStreamVertex = 220, - OpEndStreamPrimitive = 221, - OpControlBarrier = 224, - OpMemoryBarrier = 225, - OpAtomicLoad = 227, - OpAtomicStore = 228, - OpAtomicExchange = 229, - OpAtomicCompareExchange = 230, - OpAtomicCompareExchangeWeak = 231, - OpAtomicIIncrement = 232, - OpAtomicIDecrement = 233, - OpAtomicIAdd = 234, - OpAtomicISub = 235, - OpAtomicSMin = 236, - OpAtomicUMin = 237, - OpAtomicSMax = 238, - OpAtomicUMax = 239, - OpAtomicAnd = 240, - OpAtomicOr = 241, - OpAtomicXor = 242, - OpPhi = 245, - OpLoopMerge = 246, - OpSelectionMerge = 247, - OpLabel = 248, - OpBranch = 249, - OpBranchConditional = 250, - OpSwitch = 251, - OpKill = 252, - OpReturn = 253, - OpReturnValue = 254, - OpUnreachable = 255, - OpLifetimeStart = 256, - OpLifetimeStop = 257, - OpGroupAsyncCopy = 259, - OpGroupWaitEvents = 260, - OpGroupAll = 261, - OpGroupAny = 262, - OpGroupBroadcast = 263, - OpGroupIAdd = 264, - OpGroupFAdd = 265, - OpGroupFMin = 266, - OpGroupUMin = 267, - OpGroupSMin = 268, - OpGroupFMax = 269, - OpGroupUMax = 270, - OpGroupSMax = 271, - OpReadPipe = 274, - OpWritePipe = 275, - OpReservedReadPipe = 276, - OpReservedWritePipe = 277, - OpReserveReadPipePackets = 278, - OpReserveWritePipePackets = 279, - OpCommitReadPipe = 280, - OpCommitWritePipe = 281, - OpIsValidReserveId = 282, - OpGetNumPipePackets = 283, - OpGetMaxPipePackets = 284, - OpGroupReserveReadPipePackets = 285, - OpGroupReserveWritePipePackets = 286, - OpGroupCommitReadPipe = 287, - OpGroupCommitWritePipe = 288, - OpEnqueueMarker = 291, - OpEnqueueKernel = 292, - OpGetKernelNDrangeSubGroupCount = 293, - OpGetKernelNDrangeMaxSubGroupSize = 294, - OpGetKernelWorkGroupSize = 295, - OpGetKernelPreferredWorkGroupSizeMultiple = 296, - OpRetainEvent = 297, - OpReleaseEvent = 298, - OpCreateUserEvent = 299, - OpIsValidEvent = 300, - OpSetUserEventStatus = 301, - OpCaptureEventProfilingInfo = 302, - OpGetDefaultQueue = 303, - OpBuildNDRange = 304, - OpImageSparseSampleImplicitLod = 305, - OpImageSparseSampleExplicitLod = 306, - OpImageSparseSampleDrefImplicitLod = 307, - OpImageSparseSampleDrefExplicitLod = 308, - OpImageSparseSampleProjImplicitLod = 309, - OpImageSparseSampleProjExplicitLod = 310, - OpImageSparseSampleProjDrefImplicitLod = 311, - OpImageSparseSampleProjDrefExplicitLod = 312, - OpImageSparseFetch = 313, - OpImageSparseGather = 314, - OpImageSparseDrefGather = 315, - OpImageSparseTexelsResident = 316, - OpNoLine = 317, - OpAtomicFlagTestAndSet = 318, - OpAtomicFlagClear = 319, - OpImageSparseRead = 320, - OpDecorateId = 332, - OpSubgroupBallotKHR = 4421, - OpSubgroupFirstInvocationKHR = 4422, - OpSubgroupAllKHR = 4428, - OpSubgroupAnyKHR = 4429, - OpSubgroupAllEqualKHR = 4430, - OpSubgroupReadInvocationKHR = 4432, - OpGroupIAddNonUniformAMD = 5000, - OpGroupFAddNonUniformAMD = 5001, - OpGroupFMinNonUniformAMD = 5002, - OpGroupUMinNonUniformAMD = 5003, - OpGroupSMinNonUniformAMD = 5004, - OpGroupFMaxNonUniformAMD = 5005, - OpGroupUMaxNonUniformAMD = 5006, - OpGroupSMaxNonUniformAMD = 5007, - OpFragmentMaskFetchAMD = 5011, - OpFragmentFetchAMD = 5012, - OpSubgroupShuffleINTEL = 5571, - OpSubgroupShuffleDownINTEL = 5572, - OpSubgroupShuffleUpINTEL = 5573, - OpSubgroupShuffleXorINTEL = 5574, - OpSubgroupBlockReadINTEL = 5575, - OpSubgroupBlockWriteINTEL = 5576, - OpSubgroupImageBlockReadINTEL = 5577, - OpSubgroupImageBlockWriteINTEL = 5578, - OpDecorateStringGOOGLE = 5632, - OpMemberDecorateStringGOOGLE = 5633, - OpMax = 0x7fffffff, -}; - -// Overload operator| for mask bit combining - -inline ImageOperandsMask operator|(ImageOperandsMask a, ImageOperandsMask b) { return ImageOperandsMask(unsigned(a) | unsigned(b)); } -inline FPFastMathModeMask operator|(FPFastMathModeMask a, FPFastMathModeMask b) { return FPFastMathModeMask(unsigned(a) | unsigned(b)); } -inline SelectionControlMask operator|(SelectionControlMask a, SelectionControlMask b) { return SelectionControlMask(unsigned(a) | unsigned(b)); } -inline LoopControlMask operator|(LoopControlMask a, LoopControlMask b) { return LoopControlMask(unsigned(a) | unsigned(b)); } -inline FunctionControlMask operator|(FunctionControlMask a, FunctionControlMask b) { return FunctionControlMask(unsigned(a) | unsigned(b)); } -inline MemorySemanticsMask operator|(MemorySemanticsMask a, MemorySemanticsMask b) { return MemorySemanticsMask(unsigned(a) | unsigned(b)); } -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)); } - -} // end namespace spv - -#endif // #ifndef spirv_HPP - diff --git a/Extern/3rdParty/shaderc/shaderc/include/spirv/1.0/spirv.hpp11 b/Extern/3rdParty/shaderc/shaderc/include/spirv/1.0/spirv.hpp11 deleted file mode 100644 index 8896e81..0000000 --- a/Extern/3rdParty/shaderc/shaderc/include/spirv/1.0/spirv.hpp11 +++ /dev/null @@ -1,1002 +0,0 @@ -// Copyright (c) 2014-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. - -// This header is automatically generated by the same tool that creates -// the Binary Section of the SPIR-V specification. - -// Enumeration tokens for SPIR-V, in various styles: -// C, C++, C++11, JSON, Lua, Python -// -// - C will have tokens with a "Spv" prefix, e.g.: SpvSourceLanguageGLSL -// - C++ will have tokens in the "spv" name space, e.g.: spv::SourceLanguageGLSL -// - C++11 will use enum classes in the spv namespace, e.g.: spv::SourceLanguage::GLSL -// - Lua will use tables, e.g.: spv.SourceLanguage.GLSL -// - Python will use dictionaries, e.g.: spv['SourceLanguage']['GLSL'] -// -// Some tokens act like mask values, which can be OR'd together, -// while others are mutually exclusive. The mask-like ones have -// "Mask" in their name, and a parallel enum that has the shift -// amount (1 << x) for each corresponding enumerant. - -#ifndef spirv_HPP -#define spirv_HPP - -namespace spv { - -typedef unsigned int Id; - -#define SPV_VERSION 0x10000 -#define SPV_REVISION 12 - -static const unsigned int MagicNumber = 0x07230203; -static const unsigned int Version = 0x00010000; -static const unsigned int Revision = 12; -static const unsigned int OpCodeMask = 0xffff; -static const unsigned int WordCountShift = 16; - -enum class SourceLanguage : unsigned { - Unknown = 0, - ESSL = 1, - GLSL = 2, - OpenCL_C = 3, - OpenCL_CPP = 4, - HLSL = 5, - Max = 0x7fffffff, -}; - -enum class ExecutionModel : unsigned { - Vertex = 0, - TessellationControl = 1, - TessellationEvaluation = 2, - Geometry = 3, - Fragment = 4, - GLCompute = 5, - Kernel = 6, - Max = 0x7fffffff, -}; - -enum class AddressingModel : unsigned { - Logical = 0, - Physical32 = 1, - Physical64 = 2, - Max = 0x7fffffff, -}; - -enum class MemoryModel : unsigned { - Simple = 0, - GLSL450 = 1, - OpenCL = 2, - Max = 0x7fffffff, -}; - -enum class ExecutionMode : unsigned { - Invocations = 0, - SpacingEqual = 1, - SpacingFractionalEven = 2, - SpacingFractionalOdd = 3, - VertexOrderCw = 4, - VertexOrderCcw = 5, - PixelCenterInteger = 6, - OriginUpperLeft = 7, - OriginLowerLeft = 8, - EarlyFragmentTests = 9, - PointMode = 10, - Xfb = 11, - DepthReplacing = 12, - DepthGreater = 14, - DepthLess = 15, - DepthUnchanged = 16, - LocalSize = 17, - LocalSizeHint = 18, - InputPoints = 19, - InputLines = 20, - InputLinesAdjacency = 21, - Triangles = 22, - InputTrianglesAdjacency = 23, - Quads = 24, - Isolines = 25, - OutputVertices = 26, - OutputPoints = 27, - OutputLineStrip = 28, - OutputTriangleStrip = 29, - VecTypeHint = 30, - ContractionOff = 31, - PostDepthCoverage = 4446, - StencilRefReplacingEXT = 5027, - Max = 0x7fffffff, -}; - -enum class StorageClass : unsigned { - UniformConstant = 0, - Input = 1, - Uniform = 2, - Output = 3, - Workgroup = 4, - CrossWorkgroup = 5, - Private = 6, - Function = 7, - Generic = 8, - PushConstant = 9, - AtomicCounter = 10, - Image = 11, - StorageBuffer = 12, - Max = 0x7fffffff, -}; - -enum class Dim : unsigned { - Dim1D = 0, - Dim2D = 1, - Dim3D = 2, - Cube = 3, - Rect = 4, - Buffer = 5, - SubpassData = 6, - Max = 0x7fffffff, -}; - -enum class SamplerAddressingMode : unsigned { - None = 0, - ClampToEdge = 1, - Clamp = 2, - Repeat = 3, - RepeatMirrored = 4, - Max = 0x7fffffff, -}; - -enum class SamplerFilterMode : unsigned { - Nearest = 0, - Linear = 1, - Max = 0x7fffffff, -}; - -enum class ImageFormat : unsigned { - Unknown = 0, - Rgba32f = 1, - Rgba16f = 2, - R32f = 3, - Rgba8 = 4, - Rgba8Snorm = 5, - Rg32f = 6, - Rg16f = 7, - R11fG11fB10f = 8, - R16f = 9, - Rgba16 = 10, - Rgb10A2 = 11, - Rg16 = 12, - Rg8 = 13, - R16 = 14, - R8 = 15, - Rgba16Snorm = 16, - Rg16Snorm = 17, - Rg8Snorm = 18, - R16Snorm = 19, - R8Snorm = 20, - Rgba32i = 21, - Rgba16i = 22, - Rgba8i = 23, - R32i = 24, - Rg32i = 25, - Rg16i = 26, - Rg8i = 27, - R16i = 28, - R8i = 29, - Rgba32ui = 30, - Rgba16ui = 31, - Rgba8ui = 32, - R32ui = 33, - Rgb10a2ui = 34, - Rg32ui = 35, - Rg16ui = 36, - Rg8ui = 37, - R16ui = 38, - R8ui = 39, - Max = 0x7fffffff, -}; - -enum class ImageChannelOrder : unsigned { - R = 0, - A = 1, - RG = 2, - RA = 3, - RGB = 4, - RGBA = 5, - BGRA = 6, - ARGB = 7, - Intensity = 8, - Luminance = 9, - Rx = 10, - RGx = 11, - RGBx = 12, - Depth = 13, - DepthStencil = 14, - sRGB = 15, - sRGBx = 16, - sRGBA = 17, - sBGRA = 18, - ABGR = 19, - Max = 0x7fffffff, -}; - -enum class ImageChannelDataType : unsigned { - SnormInt8 = 0, - SnormInt16 = 1, - UnormInt8 = 2, - UnormInt16 = 3, - UnormShort565 = 4, - UnormShort555 = 5, - UnormInt101010 = 6, - SignedInt8 = 7, - SignedInt16 = 8, - SignedInt32 = 9, - UnsignedInt8 = 10, - UnsignedInt16 = 11, - UnsignedInt32 = 12, - HalfFloat = 13, - Float = 14, - UnormInt24 = 15, - UnormInt101010_2 = 16, - Max = 0x7fffffff, -}; - -enum class ImageOperandsShift : unsigned { - Bias = 0, - Lod = 1, - Grad = 2, - ConstOffset = 3, - Offset = 4, - ConstOffsets = 5, - Sample = 6, - MinLod = 7, - Max = 0x7fffffff, -}; - -enum class ImageOperandsMask : unsigned { - MaskNone = 0, - Bias = 0x00000001, - Lod = 0x00000002, - Grad = 0x00000004, - ConstOffset = 0x00000008, - Offset = 0x00000010, - ConstOffsets = 0x00000020, - Sample = 0x00000040, - MinLod = 0x00000080, -}; - -enum class FPFastMathModeShift : unsigned { - NotNaN = 0, - NotInf = 1, - NSZ = 2, - AllowRecip = 3, - Fast = 4, - Max = 0x7fffffff, -}; - -enum class FPFastMathModeMask : unsigned { - MaskNone = 0, - NotNaN = 0x00000001, - NotInf = 0x00000002, - NSZ = 0x00000004, - AllowRecip = 0x00000008, - Fast = 0x00000010, -}; - -enum class FPRoundingMode : unsigned { - RTE = 0, - RTZ = 1, - RTP = 2, - RTN = 3, - Max = 0x7fffffff, -}; - -enum class LinkageType : unsigned { - Export = 0, - Import = 1, - Max = 0x7fffffff, -}; - -enum class AccessQualifier : unsigned { - ReadOnly = 0, - WriteOnly = 1, - ReadWrite = 2, - Max = 0x7fffffff, -}; - -enum class FunctionParameterAttribute : unsigned { - Zext = 0, - Sext = 1, - ByVal = 2, - Sret = 3, - NoAlias = 4, - NoCapture = 5, - NoWrite = 6, - NoReadWrite = 7, - Max = 0x7fffffff, -}; - -enum class Decoration : unsigned { - RelaxedPrecision = 0, - SpecId = 1, - Block = 2, - BufferBlock = 3, - RowMajor = 4, - ColMajor = 5, - ArrayStride = 6, - MatrixStride = 7, - GLSLShared = 8, - GLSLPacked = 9, - CPacked = 10, - BuiltIn = 11, - NoPerspective = 13, - Flat = 14, - Patch = 15, - Centroid = 16, - Sample = 17, - Invariant = 18, - Restrict = 19, - Aliased = 20, - Volatile = 21, - Constant = 22, - Coherent = 23, - NonWritable = 24, - NonReadable = 25, - Uniform = 26, - SaturatedConversion = 28, - Stream = 29, - Location = 30, - Component = 31, - Index = 32, - Binding = 33, - DescriptorSet = 34, - Offset = 35, - XfbBuffer = 36, - XfbStride = 37, - FuncParamAttr = 38, - FPRoundingMode = 39, - FPFastMathMode = 40, - LinkageAttributes = 41, - NoContraction = 42, - InputAttachmentIndex = 43, - Alignment = 44, - ExplicitInterpAMD = 4999, - OverrideCoverageNV = 5248, - PassthroughNV = 5250, - ViewportRelativeNV = 5252, - SecondaryViewportRelativeNV = 5256, - HlslCounterBufferGOOGLE = 5634, - HlslSemanticGOOGLE = 5635, - Max = 0x7fffffff, -}; - -enum class BuiltIn : unsigned { - Position = 0, - PointSize = 1, - ClipDistance = 3, - CullDistance = 4, - VertexId = 5, - InstanceId = 6, - PrimitiveId = 7, - InvocationId = 8, - Layer = 9, - ViewportIndex = 10, - TessLevelOuter = 11, - TessLevelInner = 12, - TessCoord = 13, - PatchVertices = 14, - FragCoord = 15, - PointCoord = 16, - FrontFacing = 17, - SampleId = 18, - SamplePosition = 19, - SampleMask = 20, - FragDepth = 22, - HelperInvocation = 23, - NumWorkgroups = 24, - WorkgroupSize = 25, - WorkgroupId = 26, - LocalInvocationId = 27, - GlobalInvocationId = 28, - LocalInvocationIndex = 29, - WorkDim = 30, - GlobalSize = 31, - EnqueuedWorkgroupSize = 32, - GlobalOffset = 33, - GlobalLinearId = 34, - SubgroupSize = 36, - SubgroupMaxSize = 37, - NumSubgroups = 38, - NumEnqueuedSubgroups = 39, - SubgroupId = 40, - SubgroupLocalInvocationId = 41, - VertexIndex = 42, - InstanceIndex = 43, - SubgroupEqMaskKHR = 4416, - SubgroupGeMaskKHR = 4417, - SubgroupGtMaskKHR = 4418, - SubgroupLeMaskKHR = 4419, - SubgroupLtMaskKHR = 4420, - BaseVertex = 4424, - BaseInstance = 4425, - DrawIndex = 4426, - DeviceIndex = 4438, - ViewIndex = 4440, - BaryCoordNoPerspAMD = 4992, - BaryCoordNoPerspCentroidAMD = 4993, - BaryCoordNoPerspSampleAMD = 4994, - BaryCoordSmoothAMD = 4995, - BaryCoordSmoothCentroidAMD = 4996, - BaryCoordSmoothSampleAMD = 4997, - BaryCoordPullModelAMD = 4998, - FragStencilRefEXT = 5014, - ViewportMaskNV = 5253, - SecondaryPositionNV = 5257, - SecondaryViewportMaskNV = 5258, - PositionPerViewNV = 5261, - ViewportMaskPerViewNV = 5262, - Max = 0x7fffffff, -}; - -enum class SelectionControlShift : unsigned { - Flatten = 0, - DontFlatten = 1, - Max = 0x7fffffff, -}; - -enum class SelectionControlMask : unsigned { - MaskNone = 0, - Flatten = 0x00000001, - DontFlatten = 0x00000002, -}; - -enum class LoopControlShift : unsigned { - Unroll = 0, - DontUnroll = 1, - Max = 0x7fffffff, -}; - -enum class LoopControlMask : unsigned { - MaskNone = 0, - Unroll = 0x00000001, - DontUnroll = 0x00000002, -}; - -enum class FunctionControlShift : unsigned { - Inline = 0, - DontInline = 1, - Pure = 2, - Const = 3, - Max = 0x7fffffff, -}; - -enum class FunctionControlMask : unsigned { - MaskNone = 0, - Inline = 0x00000001, - DontInline = 0x00000002, - Pure = 0x00000004, - Const = 0x00000008, -}; - -enum class MemorySemanticsShift : unsigned { - Acquire = 1, - Release = 2, - AcquireRelease = 3, - SequentiallyConsistent = 4, - UniformMemory = 6, - SubgroupMemory = 7, - WorkgroupMemory = 8, - CrossWorkgroupMemory = 9, - AtomicCounterMemory = 10, - ImageMemory = 11, - Max = 0x7fffffff, -}; - -enum class MemorySemanticsMask : unsigned { - MaskNone = 0, - Acquire = 0x00000002, - Release = 0x00000004, - AcquireRelease = 0x00000008, - SequentiallyConsistent = 0x00000010, - UniformMemory = 0x00000040, - SubgroupMemory = 0x00000080, - WorkgroupMemory = 0x00000100, - CrossWorkgroupMemory = 0x00000200, - AtomicCounterMemory = 0x00000400, - ImageMemory = 0x00000800, -}; - -enum class MemoryAccessShift : unsigned { - Volatile = 0, - Aligned = 1, - Nontemporal = 2, - Max = 0x7fffffff, -}; - -enum class MemoryAccessMask : unsigned { - MaskNone = 0, - Volatile = 0x00000001, - Aligned = 0x00000002, - Nontemporal = 0x00000004, -}; - -enum class Scope : unsigned { - CrossDevice = 0, - Device = 1, - Workgroup = 2, - Subgroup = 3, - Invocation = 4, - Max = 0x7fffffff, -}; - -enum class GroupOperation : unsigned { - Reduce = 0, - InclusiveScan = 1, - ExclusiveScan = 2, - Max = 0x7fffffff, -}; - -enum class KernelEnqueueFlags : unsigned { - NoWait = 0, - WaitKernel = 1, - WaitWorkGroup = 2, - Max = 0x7fffffff, -}; - -enum class KernelProfilingInfoShift : unsigned { - CmdExecTime = 0, - Max = 0x7fffffff, -}; - -enum class KernelProfilingInfoMask : unsigned { - MaskNone = 0, - CmdExecTime = 0x00000001, -}; - -enum class Capability : unsigned { - Matrix = 0, - Shader = 1, - Geometry = 2, - Tessellation = 3, - Addresses = 4, - Linkage = 5, - Kernel = 6, - Vector16 = 7, - Float16Buffer = 8, - Float16 = 9, - Float64 = 10, - Int64 = 11, - Int64Atomics = 12, - ImageBasic = 13, - ImageReadWrite = 14, - ImageMipmap = 15, - Pipes = 17, - Groups = 18, - DeviceEnqueue = 19, - LiteralSampler = 20, - AtomicStorage = 21, - Int16 = 22, - TessellationPointSize = 23, - GeometryPointSize = 24, - ImageGatherExtended = 25, - StorageImageMultisample = 27, - UniformBufferArrayDynamicIndexing = 28, - SampledImageArrayDynamicIndexing = 29, - StorageBufferArrayDynamicIndexing = 30, - StorageImageArrayDynamicIndexing = 31, - ClipDistance = 32, - CullDistance = 33, - ImageCubeArray = 34, - SampleRateShading = 35, - ImageRect = 36, - SampledRect = 37, - GenericPointer = 38, - Int8 = 39, - InputAttachment = 40, - SparseResidency = 41, - MinLod = 42, - Sampled1D = 43, - Image1D = 44, - SampledCubeArray = 45, - SampledBuffer = 46, - ImageBuffer = 47, - ImageMSArray = 48, - StorageImageExtendedFormats = 49, - ImageQuery = 50, - DerivativeControl = 51, - InterpolationFunction = 52, - TransformFeedback = 53, - GeometryStreams = 54, - StorageImageReadWithoutFormat = 55, - StorageImageWriteWithoutFormat = 56, - MultiViewport = 57, - SubgroupBallotKHR = 4423, - DrawParameters = 4427, - SubgroupVoteKHR = 4431, - StorageBuffer16BitAccess = 4433, - StorageUniformBufferBlock16 = 4433, - StorageUniform16 = 4434, - UniformAndStorageBuffer16BitAccess = 4434, - StoragePushConstant16 = 4435, - StorageInputOutput16 = 4436, - DeviceGroup = 4437, - MultiView = 4439, - VariablePointersStorageBuffer = 4441, - VariablePointers = 4442, - AtomicStorageOps = 4445, - SampleMaskPostDepthCoverage = 4447, - ImageGatherBiasLodAMD = 5009, - FragmentMaskAMD = 5010, - StencilExportEXT = 5013, - ImageReadWriteLodAMD = 5015, - SampleMaskOverrideCoverageNV = 5249, - GeometryShaderPassthroughNV = 5251, - ShaderViewportIndexLayerEXT = 5254, - ShaderViewportIndexLayerNV = 5254, - ShaderViewportMaskNV = 5255, - ShaderStereoViewNV = 5259, - PerViewAttributesNV = 5260, - SubgroupShuffleINTEL = 5568, - SubgroupBufferBlockIOINTEL = 5569, - SubgroupImageBlockIOINTEL = 5570, - Max = 0x7fffffff, -}; - -enum class Op : unsigned { - OpNop = 0, - OpUndef = 1, - OpSourceContinued = 2, - OpSource = 3, - OpSourceExtension = 4, - OpName = 5, - OpMemberName = 6, - OpString = 7, - OpLine = 8, - OpExtension = 10, - OpExtInstImport = 11, - OpExtInst = 12, - OpMemoryModel = 14, - OpEntryPoint = 15, - OpExecutionMode = 16, - OpCapability = 17, - OpTypeVoid = 19, - OpTypeBool = 20, - OpTypeInt = 21, - OpTypeFloat = 22, - OpTypeVector = 23, - OpTypeMatrix = 24, - OpTypeImage = 25, - OpTypeSampler = 26, - OpTypeSampledImage = 27, - OpTypeArray = 28, - OpTypeRuntimeArray = 29, - OpTypeStruct = 30, - OpTypeOpaque = 31, - OpTypePointer = 32, - OpTypeFunction = 33, - OpTypeEvent = 34, - OpTypeDeviceEvent = 35, - OpTypeReserveId = 36, - OpTypeQueue = 37, - OpTypePipe = 38, - OpTypeForwardPointer = 39, - OpConstantTrue = 41, - OpConstantFalse = 42, - OpConstant = 43, - OpConstantComposite = 44, - OpConstantSampler = 45, - OpConstantNull = 46, - OpSpecConstantTrue = 48, - OpSpecConstantFalse = 49, - OpSpecConstant = 50, - OpSpecConstantComposite = 51, - OpSpecConstantOp = 52, - OpFunction = 54, - OpFunctionParameter = 55, - OpFunctionEnd = 56, - OpFunctionCall = 57, - OpVariable = 59, - OpImageTexelPointer = 60, - OpLoad = 61, - OpStore = 62, - OpCopyMemory = 63, - OpCopyMemorySized = 64, - OpAccessChain = 65, - OpInBoundsAccessChain = 66, - OpPtrAccessChain = 67, - OpArrayLength = 68, - OpGenericPtrMemSemantics = 69, - OpInBoundsPtrAccessChain = 70, - OpDecorate = 71, - OpMemberDecorate = 72, - OpDecorationGroup = 73, - OpGroupDecorate = 74, - OpGroupMemberDecorate = 75, - OpVectorExtractDynamic = 77, - OpVectorInsertDynamic = 78, - OpVectorShuffle = 79, - OpCompositeConstruct = 80, - OpCompositeExtract = 81, - OpCompositeInsert = 82, - OpCopyObject = 83, - OpTranspose = 84, - OpSampledImage = 86, - OpImageSampleImplicitLod = 87, - OpImageSampleExplicitLod = 88, - OpImageSampleDrefImplicitLod = 89, - OpImageSampleDrefExplicitLod = 90, - OpImageSampleProjImplicitLod = 91, - OpImageSampleProjExplicitLod = 92, - OpImageSampleProjDrefImplicitLod = 93, - OpImageSampleProjDrefExplicitLod = 94, - OpImageFetch = 95, - OpImageGather = 96, - OpImageDrefGather = 97, - OpImageRead = 98, - OpImageWrite = 99, - OpImage = 100, - OpImageQueryFormat = 101, - OpImageQueryOrder = 102, - OpImageQuerySizeLod = 103, - OpImageQuerySize = 104, - OpImageQueryLod = 105, - OpImageQueryLevels = 106, - OpImageQuerySamples = 107, - OpConvertFToU = 109, - OpConvertFToS = 110, - OpConvertSToF = 111, - OpConvertUToF = 112, - OpUConvert = 113, - OpSConvert = 114, - OpFConvert = 115, - OpQuantizeToF16 = 116, - OpConvertPtrToU = 117, - OpSatConvertSToU = 118, - OpSatConvertUToS = 119, - OpConvertUToPtr = 120, - OpPtrCastToGeneric = 121, - OpGenericCastToPtr = 122, - OpGenericCastToPtrExplicit = 123, - OpBitcast = 124, - OpSNegate = 126, - OpFNegate = 127, - OpIAdd = 128, - OpFAdd = 129, - OpISub = 130, - OpFSub = 131, - OpIMul = 132, - OpFMul = 133, - OpUDiv = 134, - OpSDiv = 135, - OpFDiv = 136, - OpUMod = 137, - OpSRem = 138, - OpSMod = 139, - OpFRem = 140, - OpFMod = 141, - OpVectorTimesScalar = 142, - OpMatrixTimesScalar = 143, - OpVectorTimesMatrix = 144, - OpMatrixTimesVector = 145, - OpMatrixTimesMatrix = 146, - OpOuterProduct = 147, - OpDot = 148, - OpIAddCarry = 149, - OpISubBorrow = 150, - OpUMulExtended = 151, - OpSMulExtended = 152, - OpAny = 154, - OpAll = 155, - OpIsNan = 156, - OpIsInf = 157, - OpIsFinite = 158, - OpIsNormal = 159, - OpSignBitSet = 160, - OpLessOrGreater = 161, - OpOrdered = 162, - OpUnordered = 163, - OpLogicalEqual = 164, - OpLogicalNotEqual = 165, - OpLogicalOr = 166, - OpLogicalAnd = 167, - OpLogicalNot = 168, - OpSelect = 169, - OpIEqual = 170, - OpINotEqual = 171, - OpUGreaterThan = 172, - OpSGreaterThan = 173, - OpUGreaterThanEqual = 174, - OpSGreaterThanEqual = 175, - OpULessThan = 176, - OpSLessThan = 177, - OpULessThanEqual = 178, - OpSLessThanEqual = 179, - OpFOrdEqual = 180, - OpFUnordEqual = 181, - OpFOrdNotEqual = 182, - OpFUnordNotEqual = 183, - OpFOrdLessThan = 184, - OpFUnordLessThan = 185, - OpFOrdGreaterThan = 186, - OpFUnordGreaterThan = 187, - OpFOrdLessThanEqual = 188, - OpFUnordLessThanEqual = 189, - OpFOrdGreaterThanEqual = 190, - OpFUnordGreaterThanEqual = 191, - OpShiftRightLogical = 194, - OpShiftRightArithmetic = 195, - OpShiftLeftLogical = 196, - OpBitwiseOr = 197, - OpBitwiseXor = 198, - OpBitwiseAnd = 199, - OpNot = 200, - OpBitFieldInsert = 201, - OpBitFieldSExtract = 202, - OpBitFieldUExtract = 203, - OpBitReverse = 204, - OpBitCount = 205, - OpDPdx = 207, - OpDPdy = 208, - OpFwidth = 209, - OpDPdxFine = 210, - OpDPdyFine = 211, - OpFwidthFine = 212, - OpDPdxCoarse = 213, - OpDPdyCoarse = 214, - OpFwidthCoarse = 215, - OpEmitVertex = 218, - OpEndPrimitive = 219, - OpEmitStreamVertex = 220, - OpEndStreamPrimitive = 221, - OpControlBarrier = 224, - OpMemoryBarrier = 225, - OpAtomicLoad = 227, - OpAtomicStore = 228, - OpAtomicExchange = 229, - OpAtomicCompareExchange = 230, - OpAtomicCompareExchangeWeak = 231, - OpAtomicIIncrement = 232, - OpAtomicIDecrement = 233, - OpAtomicIAdd = 234, - OpAtomicISub = 235, - OpAtomicSMin = 236, - OpAtomicUMin = 237, - OpAtomicSMax = 238, - OpAtomicUMax = 239, - OpAtomicAnd = 240, - OpAtomicOr = 241, - OpAtomicXor = 242, - OpPhi = 245, - OpLoopMerge = 246, - OpSelectionMerge = 247, - OpLabel = 248, - OpBranch = 249, - OpBranchConditional = 250, - OpSwitch = 251, - OpKill = 252, - OpReturn = 253, - OpReturnValue = 254, - OpUnreachable = 255, - OpLifetimeStart = 256, - OpLifetimeStop = 257, - OpGroupAsyncCopy = 259, - OpGroupWaitEvents = 260, - OpGroupAll = 261, - OpGroupAny = 262, - OpGroupBroadcast = 263, - OpGroupIAdd = 264, - OpGroupFAdd = 265, - OpGroupFMin = 266, - OpGroupUMin = 267, - OpGroupSMin = 268, - OpGroupFMax = 269, - OpGroupUMax = 270, - OpGroupSMax = 271, - OpReadPipe = 274, - OpWritePipe = 275, - OpReservedReadPipe = 276, - OpReservedWritePipe = 277, - OpReserveReadPipePackets = 278, - OpReserveWritePipePackets = 279, - OpCommitReadPipe = 280, - OpCommitWritePipe = 281, - OpIsValidReserveId = 282, - OpGetNumPipePackets = 283, - OpGetMaxPipePackets = 284, - OpGroupReserveReadPipePackets = 285, - OpGroupReserveWritePipePackets = 286, - OpGroupCommitReadPipe = 287, - OpGroupCommitWritePipe = 288, - OpEnqueueMarker = 291, - OpEnqueueKernel = 292, - OpGetKernelNDrangeSubGroupCount = 293, - OpGetKernelNDrangeMaxSubGroupSize = 294, - OpGetKernelWorkGroupSize = 295, - OpGetKernelPreferredWorkGroupSizeMultiple = 296, - OpRetainEvent = 297, - OpReleaseEvent = 298, - OpCreateUserEvent = 299, - OpIsValidEvent = 300, - OpSetUserEventStatus = 301, - OpCaptureEventProfilingInfo = 302, - OpGetDefaultQueue = 303, - OpBuildNDRange = 304, - OpImageSparseSampleImplicitLod = 305, - OpImageSparseSampleExplicitLod = 306, - OpImageSparseSampleDrefImplicitLod = 307, - OpImageSparseSampleDrefExplicitLod = 308, - OpImageSparseSampleProjImplicitLod = 309, - OpImageSparseSampleProjExplicitLod = 310, - OpImageSparseSampleProjDrefImplicitLod = 311, - OpImageSparseSampleProjDrefExplicitLod = 312, - OpImageSparseFetch = 313, - OpImageSparseGather = 314, - OpImageSparseDrefGather = 315, - OpImageSparseTexelsResident = 316, - OpNoLine = 317, - OpAtomicFlagTestAndSet = 318, - OpAtomicFlagClear = 319, - OpImageSparseRead = 320, - OpDecorateId = 332, - OpSubgroupBallotKHR = 4421, - OpSubgroupFirstInvocationKHR = 4422, - OpSubgroupAllKHR = 4428, - OpSubgroupAnyKHR = 4429, - OpSubgroupAllEqualKHR = 4430, - OpSubgroupReadInvocationKHR = 4432, - OpGroupIAddNonUniformAMD = 5000, - OpGroupFAddNonUniformAMD = 5001, - OpGroupFMinNonUniformAMD = 5002, - OpGroupUMinNonUniformAMD = 5003, - OpGroupSMinNonUniformAMD = 5004, - OpGroupFMaxNonUniformAMD = 5005, - OpGroupUMaxNonUniformAMD = 5006, - OpGroupSMaxNonUniformAMD = 5007, - OpFragmentMaskFetchAMD = 5011, - OpFragmentFetchAMD = 5012, - OpSubgroupShuffleINTEL = 5571, - OpSubgroupShuffleDownINTEL = 5572, - OpSubgroupShuffleUpINTEL = 5573, - OpSubgroupShuffleXorINTEL = 5574, - OpSubgroupBlockReadINTEL = 5575, - OpSubgroupBlockWriteINTEL = 5576, - OpSubgroupImageBlockReadINTEL = 5577, - OpSubgroupImageBlockWriteINTEL = 5578, - OpDecorateStringGOOGLE = 5632, - OpMemberDecorateStringGOOGLE = 5633, - Max = 0x7fffffff, -}; - -// Overload operator| for mask bit combining - -inline ImageOperandsMask operator|(ImageOperandsMask a, ImageOperandsMask b) { return ImageOperandsMask(unsigned(a) | unsigned(b)); } -inline FPFastMathModeMask operator|(FPFastMathModeMask a, FPFastMathModeMask b) { return FPFastMathModeMask(unsigned(a) | unsigned(b)); } -inline SelectionControlMask operator|(SelectionControlMask a, SelectionControlMask b) { return SelectionControlMask(unsigned(a) | unsigned(b)); } -inline LoopControlMask operator|(LoopControlMask a, LoopControlMask b) { return LoopControlMask(unsigned(a) | unsigned(b)); } -inline FunctionControlMask operator|(FunctionControlMask a, FunctionControlMask b) { return FunctionControlMask(unsigned(a) | unsigned(b)); } -inline MemorySemanticsMask operator|(MemorySemanticsMask a, MemorySemanticsMask b) { return MemorySemanticsMask(unsigned(a) | unsigned(b)); } -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)); } - -} // end namespace spv - -#endif // #ifndef spirv_HPP - diff --git a/Extern/3rdParty/shaderc/shaderc/include/spirv/1.0/spirv.json b/Extern/3rdParty/shaderc/shaderc/include/spirv/1.0/spirv.json deleted file mode 100644 index 9b0a8f3..0000000 --- a/Extern/3rdParty/shaderc/shaderc/include/spirv/1.0/spirv.json +++ /dev/null @@ -1,1020 +0,0 @@ -{ - "spv": - { - "meta": - { - "Comment": - [ - [ - "Copyright (c) 2014-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." - ], - [ - "This header is automatically generated by the same tool that creates", - "the Binary Section of the SPIR-V specification." - ], - [ - "Enumeration tokens for SPIR-V, in various styles:", - " C, C++, C++11, JSON, Lua, Python", - "", - "- C will have tokens with a \"Spv\" prefix, e.g.: SpvSourceLanguageGLSL", - "- C++ will have tokens in the \"spv\" name space, e.g.: spv::SourceLanguageGLSL", - "- C++11 will use enum classes in the spv namespace, e.g.: spv::SourceLanguage::GLSL", - "- Lua will use tables, e.g.: spv.SourceLanguage.GLSL", - "- Python will use dictionaries, e.g.: spv['SourceLanguage']['GLSL']", - "", - "Some tokens act like mask values, which can be OR'd together,", - "while others are mutually exclusive. The mask-like ones have", - "\"Mask\" in their name, and a parallel enum that has the shift", - "amount (1 << x) for each corresponding enumerant." - ] - ], - "MagicNumber": 119734787, - "Version": 65536, - "Revision": 12, - "OpCodeMask": 65535, - "WordCountShift": 16 - }, - "enum": - [ - { - "Name": "SourceLanguage", - "Type": "Value", - "Values": - { - "Unknown": 0, - "ESSL": 1, - "GLSL": 2, - "OpenCL_C": 3, - "OpenCL_CPP": 4, - "HLSL": 5 - } - }, - { - "Name": "ExecutionModel", - "Type": "Value", - "Values": - { - "Vertex": 0, - "TessellationControl": 1, - "TessellationEvaluation": 2, - "Geometry": 3, - "Fragment": 4, - "GLCompute": 5, - "Kernel": 6 - } - }, - { - "Name": "AddressingModel", - "Type": "Value", - "Values": - { - "Logical": 0, - "Physical32": 1, - "Physical64": 2 - } - }, - { - "Name": "MemoryModel", - "Type": "Value", - "Values": - { - "Simple": 0, - "GLSL450": 1, - "OpenCL": 2 - } - }, - { - "Name": "ExecutionMode", - "Type": "Value", - "Values": - { - "Invocations": 0, - "SpacingEqual": 1, - "SpacingFractionalEven": 2, - "SpacingFractionalOdd": 3, - "VertexOrderCw": 4, - "VertexOrderCcw": 5, - "PixelCenterInteger": 6, - "OriginUpperLeft": 7, - "OriginLowerLeft": 8, - "EarlyFragmentTests": 9, - "PointMode": 10, - "Xfb": 11, - "DepthReplacing": 12, - "DepthGreater": 14, - "DepthLess": 15, - "DepthUnchanged": 16, - "LocalSize": 17, - "LocalSizeHint": 18, - "InputPoints": 19, - "InputLines": 20, - "InputLinesAdjacency": 21, - "Triangles": 22, - "InputTrianglesAdjacency": 23, - "Quads": 24, - "Isolines": 25, - "OutputVertices": 26, - "OutputPoints": 27, - "OutputLineStrip": 28, - "OutputTriangleStrip": 29, - "VecTypeHint": 30, - "ContractionOff": 31, - "PostDepthCoverage": 4446, - "StencilRefReplacingEXT": 5027 - } - }, - { - "Name": "StorageClass", - "Type": "Value", - "Values": - { - "UniformConstant": 0, - "Input": 1, - "Uniform": 2, - "Output": 3, - "Workgroup": 4, - "CrossWorkgroup": 5, - "Private": 6, - "Function": 7, - "Generic": 8, - "PushConstant": 9, - "AtomicCounter": 10, - "Image": 11, - "StorageBuffer": 12 - } - }, - { - "Name": "Dim", - "Type": "Value", - "Values": - { - "Dim1D": 0, - "Dim2D": 1, - "Dim3D": 2, - "Cube": 3, - "Rect": 4, - "Buffer": 5, - "SubpassData": 6 - } - }, - { - "Name": "SamplerAddressingMode", - "Type": "Value", - "Values": - { - "None": 0, - "ClampToEdge": 1, - "Clamp": 2, - "Repeat": 3, - "RepeatMirrored": 4 - } - }, - { - "Name": "SamplerFilterMode", - "Type": "Value", - "Values": - { - "Nearest": 0, - "Linear": 1 - } - }, - { - "Name": "ImageFormat", - "Type": "Value", - "Values": - { - "Unknown": 0, - "Rgba32f": 1, - "Rgba16f": 2, - "R32f": 3, - "Rgba8": 4, - "Rgba8Snorm": 5, - "Rg32f": 6, - "Rg16f": 7, - "R11fG11fB10f": 8, - "R16f": 9, - "Rgba16": 10, - "Rgb10A2": 11, - "Rg16": 12, - "Rg8": 13, - "R16": 14, - "R8": 15, - "Rgba16Snorm": 16, - "Rg16Snorm": 17, - "Rg8Snorm": 18, - "R16Snorm": 19, - "R8Snorm": 20, - "Rgba32i": 21, - "Rgba16i": 22, - "Rgba8i": 23, - "R32i": 24, - "Rg32i": 25, - "Rg16i": 26, - "Rg8i": 27, - "R16i": 28, - "R8i": 29, - "Rgba32ui": 30, - "Rgba16ui": 31, - "Rgba8ui": 32, - "R32ui": 33, - "Rgb10a2ui": 34, - "Rg32ui": 35, - "Rg16ui": 36, - "Rg8ui": 37, - "R16ui": 38, - "R8ui": 39 - } - }, - { - "Name": "ImageChannelOrder", - "Type": "Value", - "Values": - { - "R": 0, - "A": 1, - "RG": 2, - "RA": 3, - "RGB": 4, - "RGBA": 5, - "BGRA": 6, - "ARGB": 7, - "Intensity": 8, - "Luminance": 9, - "Rx": 10, - "RGx": 11, - "RGBx": 12, - "Depth": 13, - "DepthStencil": 14, - "sRGB": 15, - "sRGBx": 16, - "sRGBA": 17, - "sBGRA": 18, - "ABGR": 19 - } - }, - { - "Name": "ImageChannelDataType", - "Type": "Value", - "Values": - { - "SnormInt8": 0, - "SnormInt16": 1, - "UnormInt8": 2, - "UnormInt16": 3, - "UnormShort565": 4, - "UnormShort555": 5, - "UnormInt101010": 6, - "SignedInt8": 7, - "SignedInt16": 8, - "SignedInt32": 9, - "UnsignedInt8": 10, - "UnsignedInt16": 11, - "UnsignedInt32": 12, - "HalfFloat": 13, - "Float": 14, - "UnormInt24": 15, - "UnormInt101010_2": 16 - } - }, - { - "Name": "ImageOperands", - "Type": "Bit", - "Values": - { - "Bias": 0, - "Lod": 1, - "Grad": 2, - "ConstOffset": 3, - "Offset": 4, - "ConstOffsets": 5, - "Sample": 6, - "MinLod": 7 - } - }, - { - "Name": "FPFastMathMode", - "Type": "Bit", - "Values": - { - "NotNaN": 0, - "NotInf": 1, - "NSZ": 2, - "AllowRecip": 3, - "Fast": 4 - } - }, - { - "Name": "FPRoundingMode", - "Type": "Value", - "Values": - { - "RTE": 0, - "RTZ": 1, - "RTP": 2, - "RTN": 3 - } - }, - { - "Name": "LinkageType", - "Type": "Value", - "Values": - { - "Export": 0, - "Import": 1 - } - }, - { - "Name": "AccessQualifier", - "Type": "Value", - "Values": - { - "ReadOnly": 0, - "WriteOnly": 1, - "ReadWrite": 2 - } - }, - { - "Name": "FunctionParameterAttribute", - "Type": "Value", - "Values": - { - "Zext": 0, - "Sext": 1, - "ByVal": 2, - "Sret": 3, - "NoAlias": 4, - "NoCapture": 5, - "NoWrite": 6, - "NoReadWrite": 7 - } - }, - { - "Name": "Decoration", - "Type": "Value", - "Values": - { - "RelaxedPrecision": 0, - "SpecId": 1, - "Block": 2, - "BufferBlock": 3, - "RowMajor": 4, - "ColMajor": 5, - "ArrayStride": 6, - "MatrixStride": 7, - "GLSLShared": 8, - "GLSLPacked": 9, - "CPacked": 10, - "BuiltIn": 11, - "NoPerspective": 13, - "Flat": 14, - "Patch": 15, - "Centroid": 16, - "Sample": 17, - "Invariant": 18, - "Restrict": 19, - "Aliased": 20, - "Volatile": 21, - "Constant": 22, - "Coherent": 23, - "NonWritable": 24, - "NonReadable": 25, - "Uniform": 26, - "SaturatedConversion": 28, - "Stream": 29, - "Location": 30, - "Component": 31, - "Index": 32, - "Binding": 33, - "DescriptorSet": 34, - "Offset": 35, - "XfbBuffer": 36, - "XfbStride": 37, - "FuncParamAttr": 38, - "FPRoundingMode": 39, - "FPFastMathMode": 40, - "LinkageAttributes": 41, - "NoContraction": 42, - "InputAttachmentIndex": 43, - "Alignment": 44, - "ExplicitInterpAMD": 4999, - "OverrideCoverageNV": 5248, - "PassthroughNV": 5250, - "ViewportRelativeNV": 5252, - "SecondaryViewportRelativeNV": 5256, - "HlslCounterBufferGOOGLE": 5634, - "HlslSemanticGOOGLE": 5635 - } - }, - { - "Name": "BuiltIn", - "Type": "Value", - "Values": - { - "Position": 0, - "PointSize": 1, - "ClipDistance": 3, - "CullDistance": 4, - "VertexId": 5, - "InstanceId": 6, - "PrimitiveId": 7, - "InvocationId": 8, - "Layer": 9, - "ViewportIndex": 10, - "TessLevelOuter": 11, - "TessLevelInner": 12, - "TessCoord": 13, - "PatchVertices": 14, - "FragCoord": 15, - "PointCoord": 16, - "FrontFacing": 17, - "SampleId": 18, - "SamplePosition": 19, - "SampleMask": 20, - "FragDepth": 22, - "HelperInvocation": 23, - "NumWorkgroups": 24, - "WorkgroupSize": 25, - "WorkgroupId": 26, - "LocalInvocationId": 27, - "GlobalInvocationId": 28, - "LocalInvocationIndex": 29, - "WorkDim": 30, - "GlobalSize": 31, - "EnqueuedWorkgroupSize": 32, - "GlobalOffset": 33, - "GlobalLinearId": 34, - "SubgroupSize": 36, - "SubgroupMaxSize": 37, - "NumSubgroups": 38, - "NumEnqueuedSubgroups": 39, - "SubgroupId": 40, - "SubgroupLocalInvocationId": 41, - "VertexIndex": 42, - "InstanceIndex": 43, - "SubgroupEqMaskKHR": 4416, - "SubgroupGeMaskKHR": 4417, - "SubgroupGtMaskKHR": 4418, - "SubgroupLeMaskKHR": 4419, - "SubgroupLtMaskKHR": 4420, - "BaseVertex": 4424, - "BaseInstance": 4425, - "DrawIndex": 4426, - "DeviceIndex": 4438, - "ViewIndex": 4440, - "BaryCoordNoPerspAMD": 4992, - "BaryCoordNoPerspCentroidAMD": 4993, - "BaryCoordNoPerspSampleAMD": 4994, - "BaryCoordSmoothAMD": 4995, - "BaryCoordSmoothCentroidAMD": 4996, - "BaryCoordSmoothSampleAMD": 4997, - "BaryCoordPullModelAMD": 4998, - "FragStencilRefEXT": 5014, - "ViewportMaskNV": 5253, - "SecondaryPositionNV": 5257, - "SecondaryViewportMaskNV": 5258, - "PositionPerViewNV": 5261, - "ViewportMaskPerViewNV": 5262 - } - }, - { - "Name": "SelectionControl", - "Type": "Bit", - "Values": - { - "Flatten": 0, - "DontFlatten": 1 - } - }, - { - "Name": "LoopControl", - "Type": "Bit", - "Values": - { - "Unroll": 0, - "DontUnroll": 1 - } - }, - { - "Name": "FunctionControl", - "Type": "Bit", - "Values": - { - "Inline": 0, - "DontInline": 1, - "Pure": 2, - "Const": 3 - } - }, - { - "Name": "MemorySemantics", - "Type": "Bit", - "Values": - { - "Acquire": 1, - "Release": 2, - "AcquireRelease": 3, - "SequentiallyConsistent": 4, - "UniformMemory": 6, - "SubgroupMemory": 7, - "WorkgroupMemory": 8, - "CrossWorkgroupMemory": 9, - "AtomicCounterMemory": 10, - "ImageMemory": 11 - } - }, - { - "Name": "MemoryAccess", - "Type": "Bit", - "Values": - { - "Volatile": 0, - "Aligned": 1, - "Nontemporal": 2 - } - }, - { - "Name": "Scope", - "Type": "Value", - "Values": - { - "CrossDevice": 0, - "Device": 1, - "Workgroup": 2, - "Subgroup": 3, - "Invocation": 4 - } - }, - { - "Name": "GroupOperation", - "Type": "Value", - "Values": - { - "Reduce": 0, - "InclusiveScan": 1, - "ExclusiveScan": 2 - } - }, - { - "Name": "KernelEnqueueFlags", - "Type": "Value", - "Values": - { - "NoWait": 0, - "WaitKernel": 1, - "WaitWorkGroup": 2 - } - }, - { - "Name": "KernelProfilingInfo", - "Type": "Bit", - "Values": - { - "CmdExecTime": 0 - } - }, - { - "Name": "Capability", - "Type": "Value", - "Values": - { - "Matrix": 0, - "Shader": 1, - "Geometry": 2, - "Tessellation": 3, - "Addresses": 4, - "Linkage": 5, - "Kernel": 6, - "Vector16": 7, - "Float16Buffer": 8, - "Float16": 9, - "Float64": 10, - "Int64": 11, - "Int64Atomics": 12, - "ImageBasic": 13, - "ImageReadWrite": 14, - "ImageMipmap": 15, - "Pipes": 17, - "Groups": 18, - "DeviceEnqueue": 19, - "LiteralSampler": 20, - "AtomicStorage": 21, - "Int16": 22, - "TessellationPointSize": 23, - "GeometryPointSize": 24, - "ImageGatherExtended": 25, - "StorageImageMultisample": 27, - "UniformBufferArrayDynamicIndexing": 28, - "SampledImageArrayDynamicIndexing": 29, - "StorageBufferArrayDynamicIndexing": 30, - "StorageImageArrayDynamicIndexing": 31, - "ClipDistance": 32, - "CullDistance": 33, - "ImageCubeArray": 34, - "SampleRateShading": 35, - "ImageRect": 36, - "SampledRect": 37, - "GenericPointer": 38, - "Int8": 39, - "InputAttachment": 40, - "SparseResidency": 41, - "MinLod": 42, - "Sampled1D": 43, - "Image1D": 44, - "SampledCubeArray": 45, - "SampledBuffer": 46, - "ImageBuffer": 47, - "ImageMSArray": 48, - "StorageImageExtendedFormats": 49, - "ImageQuery": 50, - "DerivativeControl": 51, - "InterpolationFunction": 52, - "TransformFeedback": 53, - "GeometryStreams": 54, - "StorageImageReadWithoutFormat": 55, - "StorageImageWriteWithoutFormat": 56, - "MultiViewport": 57, - "SubgroupBallotKHR": 4423, - "DrawParameters": 4427, - "SubgroupVoteKHR": 4431, - "StorageBuffer16BitAccess": 4433, - "StorageUniformBufferBlock16": 4433, - "StorageUniform16": 4434, - "UniformAndStorageBuffer16BitAccess": 4434, - "StoragePushConstant16": 4435, - "StorageInputOutput16": 4436, - "DeviceGroup": 4437, - "MultiView": 4439, - "VariablePointersStorageBuffer": 4441, - "VariablePointers": 4442, - "AtomicStorageOps": 4445, - "SampleMaskPostDepthCoverage": 4447, - "ImageGatherBiasLodAMD": 5009, - "FragmentMaskAMD": 5010, - "StencilExportEXT": 5013, - "ImageReadWriteLodAMD": 5015, - "SampleMaskOverrideCoverageNV": 5249, - "GeometryShaderPassthroughNV": 5251, - "ShaderViewportIndexLayerEXT": 5254, - "ShaderViewportIndexLayerNV": 5254, - "ShaderViewportMaskNV": 5255, - "ShaderStereoViewNV": 5259, - "PerViewAttributesNV": 5260, - "SubgroupShuffleINTEL": 5568, - "SubgroupBufferBlockIOINTEL": 5569, - "SubgroupImageBlockIOINTEL": 5570 - } - }, - { - "Name": "Op", - "Type": "Value", - "Values": - { - "OpNop": 0, - "OpUndef": 1, - "OpSourceContinued": 2, - "OpSource": 3, - "OpSourceExtension": 4, - "OpName": 5, - "OpMemberName": 6, - "OpString": 7, - "OpLine": 8, - "OpExtension": 10, - "OpExtInstImport": 11, - "OpExtInst": 12, - "OpMemoryModel": 14, - "OpEntryPoint": 15, - "OpExecutionMode": 16, - "OpCapability": 17, - "OpTypeVoid": 19, - "OpTypeBool": 20, - "OpTypeInt": 21, - "OpTypeFloat": 22, - "OpTypeVector": 23, - "OpTypeMatrix": 24, - "OpTypeImage": 25, - "OpTypeSampler": 26, - "OpTypeSampledImage": 27, - "OpTypeArray": 28, - "OpTypeRuntimeArray": 29, - "OpTypeStruct": 30, - "OpTypeOpaque": 31, - "OpTypePointer": 32, - "OpTypeFunction": 33, - "OpTypeEvent": 34, - "OpTypeDeviceEvent": 35, - "OpTypeReserveId": 36, - "OpTypeQueue": 37, - "OpTypePipe": 38, - "OpTypeForwardPointer": 39, - "OpConstantTrue": 41, - "OpConstantFalse": 42, - "OpConstant": 43, - "OpConstantComposite": 44, - "OpConstantSampler": 45, - "OpConstantNull": 46, - "OpSpecConstantTrue": 48, - "OpSpecConstantFalse": 49, - "OpSpecConstant": 50, - "OpSpecConstantComposite": 51, - "OpSpecConstantOp": 52, - "OpFunction": 54, - "OpFunctionParameter": 55, - "OpFunctionEnd": 56, - "OpFunctionCall": 57, - "OpVariable": 59, - "OpImageTexelPointer": 60, - "OpLoad": 61, - "OpStore": 62, - "OpCopyMemory": 63, - "OpCopyMemorySized": 64, - "OpAccessChain": 65, - "OpInBoundsAccessChain": 66, - "OpPtrAccessChain": 67, - "OpArrayLength": 68, - "OpGenericPtrMemSemantics": 69, - "OpInBoundsPtrAccessChain": 70, - "OpDecorate": 71, - "OpMemberDecorate": 72, - "OpDecorationGroup": 73, - "OpGroupDecorate": 74, - "OpGroupMemberDecorate": 75, - "OpVectorExtractDynamic": 77, - "OpVectorInsertDynamic": 78, - "OpVectorShuffle": 79, - "OpCompositeConstruct": 80, - "OpCompositeExtract": 81, - "OpCompositeInsert": 82, - "OpCopyObject": 83, - "OpTranspose": 84, - "OpSampledImage": 86, - "OpImageSampleImplicitLod": 87, - "OpImageSampleExplicitLod": 88, - "OpImageSampleDrefImplicitLod": 89, - "OpImageSampleDrefExplicitLod": 90, - "OpImageSampleProjImplicitLod": 91, - "OpImageSampleProjExplicitLod": 92, - "OpImageSampleProjDrefImplicitLod": 93, - "OpImageSampleProjDrefExplicitLod": 94, - "OpImageFetch": 95, - "OpImageGather": 96, - "OpImageDrefGather": 97, - "OpImageRead": 98, - "OpImageWrite": 99, - "OpImage": 100, - "OpImageQueryFormat": 101, - "OpImageQueryOrder": 102, - "OpImageQuerySizeLod": 103, - "OpImageQuerySize": 104, - "OpImageQueryLod": 105, - "OpImageQueryLevels": 106, - "OpImageQuerySamples": 107, - "OpConvertFToU": 109, - "OpConvertFToS": 110, - "OpConvertSToF": 111, - "OpConvertUToF": 112, - "OpUConvert": 113, - "OpSConvert": 114, - "OpFConvert": 115, - "OpQuantizeToF16": 116, - "OpConvertPtrToU": 117, - "OpSatConvertSToU": 118, - "OpSatConvertUToS": 119, - "OpConvertUToPtr": 120, - "OpPtrCastToGeneric": 121, - "OpGenericCastToPtr": 122, - "OpGenericCastToPtrExplicit": 123, - "OpBitcast": 124, - "OpSNegate": 126, - "OpFNegate": 127, - "OpIAdd": 128, - "OpFAdd": 129, - "OpISub": 130, - "OpFSub": 131, - "OpIMul": 132, - "OpFMul": 133, - "OpUDiv": 134, - "OpSDiv": 135, - "OpFDiv": 136, - "OpUMod": 137, - "OpSRem": 138, - "OpSMod": 139, - "OpFRem": 140, - "OpFMod": 141, - "OpVectorTimesScalar": 142, - "OpMatrixTimesScalar": 143, - "OpVectorTimesMatrix": 144, - "OpMatrixTimesVector": 145, - "OpMatrixTimesMatrix": 146, - "OpOuterProduct": 147, - "OpDot": 148, - "OpIAddCarry": 149, - "OpISubBorrow": 150, - "OpUMulExtended": 151, - "OpSMulExtended": 152, - "OpAny": 154, - "OpAll": 155, - "OpIsNan": 156, - "OpIsInf": 157, - "OpIsFinite": 158, - "OpIsNormal": 159, - "OpSignBitSet": 160, - "OpLessOrGreater": 161, - "OpOrdered": 162, - "OpUnordered": 163, - "OpLogicalEqual": 164, - "OpLogicalNotEqual": 165, - "OpLogicalOr": 166, - "OpLogicalAnd": 167, - "OpLogicalNot": 168, - "OpSelect": 169, - "OpIEqual": 170, - "OpINotEqual": 171, - "OpUGreaterThan": 172, - "OpSGreaterThan": 173, - "OpUGreaterThanEqual": 174, - "OpSGreaterThanEqual": 175, - "OpULessThan": 176, - "OpSLessThan": 177, - "OpULessThanEqual": 178, - "OpSLessThanEqual": 179, - "OpFOrdEqual": 180, - "OpFUnordEqual": 181, - "OpFOrdNotEqual": 182, - "OpFUnordNotEqual": 183, - "OpFOrdLessThan": 184, - "OpFUnordLessThan": 185, - "OpFOrdGreaterThan": 186, - "OpFUnordGreaterThan": 187, - "OpFOrdLessThanEqual": 188, - "OpFUnordLessThanEqual": 189, - "OpFOrdGreaterThanEqual": 190, - "OpFUnordGreaterThanEqual": 191, - "OpShiftRightLogical": 194, - "OpShiftRightArithmetic": 195, - "OpShiftLeftLogical": 196, - "OpBitwiseOr": 197, - "OpBitwiseXor": 198, - "OpBitwiseAnd": 199, - "OpNot": 200, - "OpBitFieldInsert": 201, - "OpBitFieldSExtract": 202, - "OpBitFieldUExtract": 203, - "OpBitReverse": 204, - "OpBitCount": 205, - "OpDPdx": 207, - "OpDPdy": 208, - "OpFwidth": 209, - "OpDPdxFine": 210, - "OpDPdyFine": 211, - "OpFwidthFine": 212, - "OpDPdxCoarse": 213, - "OpDPdyCoarse": 214, - "OpFwidthCoarse": 215, - "OpEmitVertex": 218, - "OpEndPrimitive": 219, - "OpEmitStreamVertex": 220, - "OpEndStreamPrimitive": 221, - "OpControlBarrier": 224, - "OpMemoryBarrier": 225, - "OpAtomicLoad": 227, - "OpAtomicStore": 228, - "OpAtomicExchange": 229, - "OpAtomicCompareExchange": 230, - "OpAtomicCompareExchangeWeak": 231, - "OpAtomicIIncrement": 232, - "OpAtomicIDecrement": 233, - "OpAtomicIAdd": 234, - "OpAtomicISub": 235, - "OpAtomicSMin": 236, - "OpAtomicUMin": 237, - "OpAtomicSMax": 238, - "OpAtomicUMax": 239, - "OpAtomicAnd": 240, - "OpAtomicOr": 241, - "OpAtomicXor": 242, - "OpPhi": 245, - "OpLoopMerge": 246, - "OpSelectionMerge": 247, - "OpLabel": 248, - "OpBranch": 249, - "OpBranchConditional": 250, - "OpSwitch": 251, - "OpKill": 252, - "OpReturn": 253, - "OpReturnValue": 254, - "OpUnreachable": 255, - "OpLifetimeStart": 256, - "OpLifetimeStop": 257, - "OpGroupAsyncCopy": 259, - "OpGroupWaitEvents": 260, - "OpGroupAll": 261, - "OpGroupAny": 262, - "OpGroupBroadcast": 263, - "OpGroupIAdd": 264, - "OpGroupFAdd": 265, - "OpGroupFMin": 266, - "OpGroupUMin": 267, - "OpGroupSMin": 268, - "OpGroupFMax": 269, - "OpGroupUMax": 270, - "OpGroupSMax": 271, - "OpReadPipe": 274, - "OpWritePipe": 275, - "OpReservedReadPipe": 276, - "OpReservedWritePipe": 277, - "OpReserveReadPipePackets": 278, - "OpReserveWritePipePackets": 279, - "OpCommitReadPipe": 280, - "OpCommitWritePipe": 281, - "OpIsValidReserveId": 282, - "OpGetNumPipePackets": 283, - "OpGetMaxPipePackets": 284, - "OpGroupReserveReadPipePackets": 285, - "OpGroupReserveWritePipePackets": 286, - "OpGroupCommitReadPipe": 287, - "OpGroupCommitWritePipe": 288, - "OpEnqueueMarker": 291, - "OpEnqueueKernel": 292, - "OpGetKernelNDrangeSubGroupCount": 293, - "OpGetKernelNDrangeMaxSubGroupSize": 294, - "OpGetKernelWorkGroupSize": 295, - "OpGetKernelPreferredWorkGroupSizeMultiple": 296, - "OpRetainEvent": 297, - "OpReleaseEvent": 298, - "OpCreateUserEvent": 299, - "OpIsValidEvent": 300, - "OpSetUserEventStatus": 301, - "OpCaptureEventProfilingInfo": 302, - "OpGetDefaultQueue": 303, - "OpBuildNDRange": 304, - "OpImageSparseSampleImplicitLod": 305, - "OpImageSparseSampleExplicitLod": 306, - "OpImageSparseSampleDrefImplicitLod": 307, - "OpImageSparseSampleDrefExplicitLod": 308, - "OpImageSparseSampleProjImplicitLod": 309, - "OpImageSparseSampleProjExplicitLod": 310, - "OpImageSparseSampleProjDrefImplicitLod": 311, - "OpImageSparseSampleProjDrefExplicitLod": 312, - "OpImageSparseFetch": 313, - "OpImageSparseGather": 314, - "OpImageSparseDrefGather": 315, - "OpImageSparseTexelsResident": 316, - "OpNoLine": 317, - "OpAtomicFlagTestAndSet": 318, - "OpAtomicFlagClear": 319, - "OpImageSparseRead": 320, - "OpDecorateId": 332, - "OpSubgroupBallotKHR": 4421, - "OpSubgroupFirstInvocationKHR": 4422, - "OpSubgroupAllKHR": 4428, - "OpSubgroupAnyKHR": 4429, - "OpSubgroupAllEqualKHR": 4430, - "OpSubgroupReadInvocationKHR": 4432, - "OpGroupIAddNonUniformAMD": 5000, - "OpGroupFAddNonUniformAMD": 5001, - "OpGroupFMinNonUniformAMD": 5002, - "OpGroupUMinNonUniformAMD": 5003, - "OpGroupSMinNonUniformAMD": 5004, - "OpGroupFMaxNonUniformAMD": 5005, - "OpGroupUMaxNonUniformAMD": 5006, - "OpGroupSMaxNonUniformAMD": 5007, - "OpFragmentMaskFetchAMD": 5011, - "OpFragmentFetchAMD": 5012, - "OpSubgroupShuffleINTEL": 5571, - "OpSubgroupShuffleDownINTEL": 5572, - "OpSubgroupShuffleUpINTEL": 5573, - "OpSubgroupShuffleXorINTEL": 5574, - "OpSubgroupBlockReadINTEL": 5575, - "OpSubgroupBlockWriteINTEL": 5576, - "OpSubgroupImageBlockReadINTEL": 5577, - "OpSubgroupImageBlockWriteINTEL": 5578, - "OpDecorateStringGOOGLE": 5632, - "OpMemberDecorateStringGOOGLE": 5633 - } - } - ] - } -} - diff --git a/Extern/3rdParty/shaderc/shaderc/include/spirv/1.0/spirv.lua b/Extern/3rdParty/shaderc/shaderc/include/spirv/1.0/spirv.lua deleted file mode 100644 index 2bd33ba..0000000 --- a/Extern/3rdParty/shaderc/shaderc/include/spirv/1.0/spirv.lua +++ /dev/null @@ -1,949 +0,0 @@ --- Copyright (c) 2014-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. - --- This header is automatically generated by the same tool that creates --- the Binary Section of the SPIR-V specification. - --- Enumeration tokens for SPIR-V, in various styles: --- C, C++, C++11, JSON, Lua, Python --- --- - C will have tokens with a "Spv" prefix, e.g.: SpvSourceLanguageGLSL --- - C++ will have tokens in the "spv" name space, e.g.: spv::SourceLanguageGLSL --- - C++11 will use enum classes in the spv namespace, e.g.: spv::SourceLanguage::GLSL --- - Lua will use tables, e.g.: spv.SourceLanguage.GLSL --- - Python will use dictionaries, e.g.: spv['SourceLanguage']['GLSL'] --- --- Some tokens act like mask values, which can be OR'd together, --- while others are mutually exclusive. The mask-like ones have --- "Mask" in their name, and a parallel enum that has the shift --- amount (1 << x) for each corresponding enumerant. - -spv = { - MagicNumber = 0x07230203, - Version = 0x00010000, - Revision = 12, - OpCodeMask = 0xffff, - WordCountShift = 16, - - SourceLanguage = { - Unknown = 0, - ESSL = 1, - GLSL = 2, - OpenCL_C = 3, - OpenCL_CPP = 4, - HLSL = 5, - }, - - ExecutionModel = { - Vertex = 0, - TessellationControl = 1, - TessellationEvaluation = 2, - Geometry = 3, - Fragment = 4, - GLCompute = 5, - Kernel = 6, - }, - - AddressingModel = { - Logical = 0, - Physical32 = 1, - Physical64 = 2, - }, - - MemoryModel = { - Simple = 0, - GLSL450 = 1, - OpenCL = 2, - }, - - ExecutionMode = { - Invocations = 0, - SpacingEqual = 1, - SpacingFractionalEven = 2, - SpacingFractionalOdd = 3, - VertexOrderCw = 4, - VertexOrderCcw = 5, - PixelCenterInteger = 6, - OriginUpperLeft = 7, - OriginLowerLeft = 8, - EarlyFragmentTests = 9, - PointMode = 10, - Xfb = 11, - DepthReplacing = 12, - DepthGreater = 14, - DepthLess = 15, - DepthUnchanged = 16, - LocalSize = 17, - LocalSizeHint = 18, - InputPoints = 19, - InputLines = 20, - InputLinesAdjacency = 21, - Triangles = 22, - InputTrianglesAdjacency = 23, - Quads = 24, - Isolines = 25, - OutputVertices = 26, - OutputPoints = 27, - OutputLineStrip = 28, - OutputTriangleStrip = 29, - VecTypeHint = 30, - ContractionOff = 31, - PostDepthCoverage = 4446, - StencilRefReplacingEXT = 5027, - }, - - StorageClass = { - UniformConstant = 0, - Input = 1, - Uniform = 2, - Output = 3, - Workgroup = 4, - CrossWorkgroup = 5, - Private = 6, - Function = 7, - Generic = 8, - PushConstant = 9, - AtomicCounter = 10, - Image = 11, - StorageBuffer = 12, - }, - - Dim = { - Dim1D = 0, - Dim2D = 1, - Dim3D = 2, - Cube = 3, - Rect = 4, - Buffer = 5, - SubpassData = 6, - }, - - SamplerAddressingMode = { - None = 0, - ClampToEdge = 1, - Clamp = 2, - Repeat = 3, - RepeatMirrored = 4, - }, - - SamplerFilterMode = { - Nearest = 0, - Linear = 1, - }, - - ImageFormat = { - Unknown = 0, - Rgba32f = 1, - Rgba16f = 2, - R32f = 3, - Rgba8 = 4, - Rgba8Snorm = 5, - Rg32f = 6, - Rg16f = 7, - R11fG11fB10f = 8, - R16f = 9, - Rgba16 = 10, - Rgb10A2 = 11, - Rg16 = 12, - Rg8 = 13, - R16 = 14, - R8 = 15, - Rgba16Snorm = 16, - Rg16Snorm = 17, - Rg8Snorm = 18, - R16Snorm = 19, - R8Snorm = 20, - Rgba32i = 21, - Rgba16i = 22, - Rgba8i = 23, - R32i = 24, - Rg32i = 25, - Rg16i = 26, - Rg8i = 27, - R16i = 28, - R8i = 29, - Rgba32ui = 30, - Rgba16ui = 31, - Rgba8ui = 32, - R32ui = 33, - Rgb10a2ui = 34, - Rg32ui = 35, - Rg16ui = 36, - Rg8ui = 37, - R16ui = 38, - R8ui = 39, - }, - - ImageChannelOrder = { - R = 0, - A = 1, - RG = 2, - RA = 3, - RGB = 4, - RGBA = 5, - BGRA = 6, - ARGB = 7, - Intensity = 8, - Luminance = 9, - Rx = 10, - RGx = 11, - RGBx = 12, - Depth = 13, - DepthStencil = 14, - sRGB = 15, - sRGBx = 16, - sRGBA = 17, - sBGRA = 18, - ABGR = 19, - }, - - ImageChannelDataType = { - SnormInt8 = 0, - SnormInt16 = 1, - UnormInt8 = 2, - UnormInt16 = 3, - UnormShort565 = 4, - UnormShort555 = 5, - UnormInt101010 = 6, - SignedInt8 = 7, - SignedInt16 = 8, - SignedInt32 = 9, - UnsignedInt8 = 10, - UnsignedInt16 = 11, - UnsignedInt32 = 12, - HalfFloat = 13, - Float = 14, - UnormInt24 = 15, - UnormInt101010_2 = 16, - }, - - ImageOperandsShift = { - Bias = 0, - Lod = 1, - Grad = 2, - ConstOffset = 3, - Offset = 4, - ConstOffsets = 5, - Sample = 6, - MinLod = 7, - }, - - ImageOperandsMask = { - MaskNone = 0, - Bias = 0x00000001, - Lod = 0x00000002, - Grad = 0x00000004, - ConstOffset = 0x00000008, - Offset = 0x00000010, - ConstOffsets = 0x00000020, - Sample = 0x00000040, - MinLod = 0x00000080, - }, - - FPFastMathModeShift = { - NotNaN = 0, - NotInf = 1, - NSZ = 2, - AllowRecip = 3, - Fast = 4, - }, - - FPFastMathModeMask = { - MaskNone = 0, - NotNaN = 0x00000001, - NotInf = 0x00000002, - NSZ = 0x00000004, - AllowRecip = 0x00000008, - Fast = 0x00000010, - }, - - FPRoundingMode = { - RTE = 0, - RTZ = 1, - RTP = 2, - RTN = 3, - }, - - LinkageType = { - Export = 0, - Import = 1, - }, - - AccessQualifier = { - ReadOnly = 0, - WriteOnly = 1, - ReadWrite = 2, - }, - - FunctionParameterAttribute = { - Zext = 0, - Sext = 1, - ByVal = 2, - Sret = 3, - NoAlias = 4, - NoCapture = 5, - NoWrite = 6, - NoReadWrite = 7, - }, - - Decoration = { - RelaxedPrecision = 0, - SpecId = 1, - Block = 2, - BufferBlock = 3, - RowMajor = 4, - ColMajor = 5, - ArrayStride = 6, - MatrixStride = 7, - GLSLShared = 8, - GLSLPacked = 9, - CPacked = 10, - BuiltIn = 11, - NoPerspective = 13, - Flat = 14, - Patch = 15, - Centroid = 16, - Sample = 17, - Invariant = 18, - Restrict = 19, - Aliased = 20, - Volatile = 21, - Constant = 22, - Coherent = 23, - NonWritable = 24, - NonReadable = 25, - Uniform = 26, - SaturatedConversion = 28, - Stream = 29, - Location = 30, - Component = 31, - Index = 32, - Binding = 33, - DescriptorSet = 34, - Offset = 35, - XfbBuffer = 36, - XfbStride = 37, - FuncParamAttr = 38, - FPRoundingMode = 39, - FPFastMathMode = 40, - LinkageAttributes = 41, - NoContraction = 42, - InputAttachmentIndex = 43, - Alignment = 44, - ExplicitInterpAMD = 4999, - OverrideCoverageNV = 5248, - PassthroughNV = 5250, - ViewportRelativeNV = 5252, - SecondaryViewportRelativeNV = 5256, - HlslCounterBufferGOOGLE = 5634, - HlslSemanticGOOGLE = 5635, - }, - - BuiltIn = { - Position = 0, - PointSize = 1, - ClipDistance = 3, - CullDistance = 4, - VertexId = 5, - InstanceId = 6, - PrimitiveId = 7, - InvocationId = 8, - Layer = 9, - ViewportIndex = 10, - TessLevelOuter = 11, - TessLevelInner = 12, - TessCoord = 13, - PatchVertices = 14, - FragCoord = 15, - PointCoord = 16, - FrontFacing = 17, - SampleId = 18, - SamplePosition = 19, - SampleMask = 20, - FragDepth = 22, - HelperInvocation = 23, - NumWorkgroups = 24, - WorkgroupSize = 25, - WorkgroupId = 26, - LocalInvocationId = 27, - GlobalInvocationId = 28, - LocalInvocationIndex = 29, - WorkDim = 30, - GlobalSize = 31, - EnqueuedWorkgroupSize = 32, - GlobalOffset = 33, - GlobalLinearId = 34, - SubgroupSize = 36, - SubgroupMaxSize = 37, - NumSubgroups = 38, - NumEnqueuedSubgroups = 39, - SubgroupId = 40, - SubgroupLocalInvocationId = 41, - VertexIndex = 42, - InstanceIndex = 43, - SubgroupEqMaskKHR = 4416, - SubgroupGeMaskKHR = 4417, - SubgroupGtMaskKHR = 4418, - SubgroupLeMaskKHR = 4419, - SubgroupLtMaskKHR = 4420, - BaseVertex = 4424, - BaseInstance = 4425, - DrawIndex = 4426, - DeviceIndex = 4438, - ViewIndex = 4440, - BaryCoordNoPerspAMD = 4992, - BaryCoordNoPerspCentroidAMD = 4993, - BaryCoordNoPerspSampleAMD = 4994, - BaryCoordSmoothAMD = 4995, - BaryCoordSmoothCentroidAMD = 4996, - BaryCoordSmoothSampleAMD = 4997, - BaryCoordPullModelAMD = 4998, - FragStencilRefEXT = 5014, - ViewportMaskNV = 5253, - SecondaryPositionNV = 5257, - SecondaryViewportMaskNV = 5258, - PositionPerViewNV = 5261, - ViewportMaskPerViewNV = 5262, - }, - - SelectionControlShift = { - Flatten = 0, - DontFlatten = 1, - }, - - SelectionControlMask = { - MaskNone = 0, - Flatten = 0x00000001, - DontFlatten = 0x00000002, - }, - - LoopControlShift = { - Unroll = 0, - DontUnroll = 1, - }, - - LoopControlMask = { - MaskNone = 0, - Unroll = 0x00000001, - DontUnroll = 0x00000002, - }, - - FunctionControlShift = { - Inline = 0, - DontInline = 1, - Pure = 2, - Const = 3, - }, - - FunctionControlMask = { - MaskNone = 0, - Inline = 0x00000001, - DontInline = 0x00000002, - Pure = 0x00000004, - Const = 0x00000008, - }, - - MemorySemanticsShift = { - Acquire = 1, - Release = 2, - AcquireRelease = 3, - SequentiallyConsistent = 4, - UniformMemory = 6, - SubgroupMemory = 7, - WorkgroupMemory = 8, - CrossWorkgroupMemory = 9, - AtomicCounterMemory = 10, - ImageMemory = 11, - }, - - MemorySemanticsMask = { - MaskNone = 0, - Acquire = 0x00000002, - Release = 0x00000004, - AcquireRelease = 0x00000008, - SequentiallyConsistent = 0x00000010, - UniformMemory = 0x00000040, - SubgroupMemory = 0x00000080, - WorkgroupMemory = 0x00000100, - CrossWorkgroupMemory = 0x00000200, - AtomicCounterMemory = 0x00000400, - ImageMemory = 0x00000800, - }, - - MemoryAccessShift = { - Volatile = 0, - Aligned = 1, - Nontemporal = 2, - }, - - MemoryAccessMask = { - MaskNone = 0, - Volatile = 0x00000001, - Aligned = 0x00000002, - Nontemporal = 0x00000004, - }, - - Scope = { - CrossDevice = 0, - Device = 1, - Workgroup = 2, - Subgroup = 3, - Invocation = 4, - }, - - GroupOperation = { - Reduce = 0, - InclusiveScan = 1, - ExclusiveScan = 2, - }, - - KernelEnqueueFlags = { - NoWait = 0, - WaitKernel = 1, - WaitWorkGroup = 2, - }, - - KernelProfilingInfoShift = { - CmdExecTime = 0, - }, - - KernelProfilingInfoMask = { - MaskNone = 0, - CmdExecTime = 0x00000001, - }, - - Capability = { - Matrix = 0, - Shader = 1, - Geometry = 2, - Tessellation = 3, - Addresses = 4, - Linkage = 5, - Kernel = 6, - Vector16 = 7, - Float16Buffer = 8, - Float16 = 9, - Float64 = 10, - Int64 = 11, - Int64Atomics = 12, - ImageBasic = 13, - ImageReadWrite = 14, - ImageMipmap = 15, - Pipes = 17, - Groups = 18, - DeviceEnqueue = 19, - LiteralSampler = 20, - AtomicStorage = 21, - Int16 = 22, - TessellationPointSize = 23, - GeometryPointSize = 24, - ImageGatherExtended = 25, - StorageImageMultisample = 27, - UniformBufferArrayDynamicIndexing = 28, - SampledImageArrayDynamicIndexing = 29, - StorageBufferArrayDynamicIndexing = 30, - StorageImageArrayDynamicIndexing = 31, - ClipDistance = 32, - CullDistance = 33, - ImageCubeArray = 34, - SampleRateShading = 35, - ImageRect = 36, - SampledRect = 37, - GenericPointer = 38, - Int8 = 39, - InputAttachment = 40, - SparseResidency = 41, - MinLod = 42, - Sampled1D = 43, - Image1D = 44, - SampledCubeArray = 45, - SampledBuffer = 46, - ImageBuffer = 47, - ImageMSArray = 48, - StorageImageExtendedFormats = 49, - ImageQuery = 50, - DerivativeControl = 51, - InterpolationFunction = 52, - TransformFeedback = 53, - GeometryStreams = 54, - StorageImageReadWithoutFormat = 55, - StorageImageWriteWithoutFormat = 56, - MultiViewport = 57, - SubgroupBallotKHR = 4423, - DrawParameters = 4427, - SubgroupVoteKHR = 4431, - StorageBuffer16BitAccess = 4433, - StorageUniformBufferBlock16 = 4433, - StorageUniform16 = 4434, - UniformAndStorageBuffer16BitAccess = 4434, - StoragePushConstant16 = 4435, - StorageInputOutput16 = 4436, - DeviceGroup = 4437, - MultiView = 4439, - VariablePointersStorageBuffer = 4441, - VariablePointers = 4442, - AtomicStorageOps = 4445, - SampleMaskPostDepthCoverage = 4447, - ImageGatherBiasLodAMD = 5009, - FragmentMaskAMD = 5010, - StencilExportEXT = 5013, - ImageReadWriteLodAMD = 5015, - SampleMaskOverrideCoverageNV = 5249, - GeometryShaderPassthroughNV = 5251, - ShaderViewportIndexLayerEXT = 5254, - ShaderViewportIndexLayerNV = 5254, - ShaderViewportMaskNV = 5255, - ShaderStereoViewNV = 5259, - PerViewAttributesNV = 5260, - SubgroupShuffleINTEL = 5568, - SubgroupBufferBlockIOINTEL = 5569, - SubgroupImageBlockIOINTEL = 5570, - }, - - Op = { - OpNop = 0, - OpUndef = 1, - OpSourceContinued = 2, - OpSource = 3, - OpSourceExtension = 4, - OpName = 5, - OpMemberName = 6, - OpString = 7, - OpLine = 8, - OpExtension = 10, - OpExtInstImport = 11, - OpExtInst = 12, - OpMemoryModel = 14, - OpEntryPoint = 15, - OpExecutionMode = 16, - OpCapability = 17, - OpTypeVoid = 19, - OpTypeBool = 20, - OpTypeInt = 21, - OpTypeFloat = 22, - OpTypeVector = 23, - OpTypeMatrix = 24, - OpTypeImage = 25, - OpTypeSampler = 26, - OpTypeSampledImage = 27, - OpTypeArray = 28, - OpTypeRuntimeArray = 29, - OpTypeStruct = 30, - OpTypeOpaque = 31, - OpTypePointer = 32, - OpTypeFunction = 33, - OpTypeEvent = 34, - OpTypeDeviceEvent = 35, - OpTypeReserveId = 36, - OpTypeQueue = 37, - OpTypePipe = 38, - OpTypeForwardPointer = 39, - OpConstantTrue = 41, - OpConstantFalse = 42, - OpConstant = 43, - OpConstantComposite = 44, - OpConstantSampler = 45, - OpConstantNull = 46, - OpSpecConstantTrue = 48, - OpSpecConstantFalse = 49, - OpSpecConstant = 50, - OpSpecConstantComposite = 51, - OpSpecConstantOp = 52, - OpFunction = 54, - OpFunctionParameter = 55, - OpFunctionEnd = 56, - OpFunctionCall = 57, - OpVariable = 59, - OpImageTexelPointer = 60, - OpLoad = 61, - OpStore = 62, - OpCopyMemory = 63, - OpCopyMemorySized = 64, - OpAccessChain = 65, - OpInBoundsAccessChain = 66, - OpPtrAccessChain = 67, - OpArrayLength = 68, - OpGenericPtrMemSemantics = 69, - OpInBoundsPtrAccessChain = 70, - OpDecorate = 71, - OpMemberDecorate = 72, - OpDecorationGroup = 73, - OpGroupDecorate = 74, - OpGroupMemberDecorate = 75, - OpVectorExtractDynamic = 77, - OpVectorInsertDynamic = 78, - OpVectorShuffle = 79, - OpCompositeConstruct = 80, - OpCompositeExtract = 81, - OpCompositeInsert = 82, - OpCopyObject = 83, - OpTranspose = 84, - OpSampledImage = 86, - OpImageSampleImplicitLod = 87, - OpImageSampleExplicitLod = 88, - OpImageSampleDrefImplicitLod = 89, - OpImageSampleDrefExplicitLod = 90, - OpImageSampleProjImplicitLod = 91, - OpImageSampleProjExplicitLod = 92, - OpImageSampleProjDrefImplicitLod = 93, - OpImageSampleProjDrefExplicitLod = 94, - OpImageFetch = 95, - OpImageGather = 96, - OpImageDrefGather = 97, - OpImageRead = 98, - OpImageWrite = 99, - OpImage = 100, - OpImageQueryFormat = 101, - OpImageQueryOrder = 102, - OpImageQuerySizeLod = 103, - OpImageQuerySize = 104, - OpImageQueryLod = 105, - OpImageQueryLevels = 106, - OpImageQuerySamples = 107, - OpConvertFToU = 109, - OpConvertFToS = 110, - OpConvertSToF = 111, - OpConvertUToF = 112, - OpUConvert = 113, - OpSConvert = 114, - OpFConvert = 115, - OpQuantizeToF16 = 116, - OpConvertPtrToU = 117, - OpSatConvertSToU = 118, - OpSatConvertUToS = 119, - OpConvertUToPtr = 120, - OpPtrCastToGeneric = 121, - OpGenericCastToPtr = 122, - OpGenericCastToPtrExplicit = 123, - OpBitcast = 124, - OpSNegate = 126, - OpFNegate = 127, - OpIAdd = 128, - OpFAdd = 129, - OpISub = 130, - OpFSub = 131, - OpIMul = 132, - OpFMul = 133, - OpUDiv = 134, - OpSDiv = 135, - OpFDiv = 136, - OpUMod = 137, - OpSRem = 138, - OpSMod = 139, - OpFRem = 140, - OpFMod = 141, - OpVectorTimesScalar = 142, - OpMatrixTimesScalar = 143, - OpVectorTimesMatrix = 144, - OpMatrixTimesVector = 145, - OpMatrixTimesMatrix = 146, - OpOuterProduct = 147, - OpDot = 148, - OpIAddCarry = 149, - OpISubBorrow = 150, - OpUMulExtended = 151, - OpSMulExtended = 152, - OpAny = 154, - OpAll = 155, - OpIsNan = 156, - OpIsInf = 157, - OpIsFinite = 158, - OpIsNormal = 159, - OpSignBitSet = 160, - OpLessOrGreater = 161, - OpOrdered = 162, - OpUnordered = 163, - OpLogicalEqual = 164, - OpLogicalNotEqual = 165, - OpLogicalOr = 166, - OpLogicalAnd = 167, - OpLogicalNot = 168, - OpSelect = 169, - OpIEqual = 170, - OpINotEqual = 171, - OpUGreaterThan = 172, - OpSGreaterThan = 173, - OpUGreaterThanEqual = 174, - OpSGreaterThanEqual = 175, - OpULessThan = 176, - OpSLessThan = 177, - OpULessThanEqual = 178, - OpSLessThanEqual = 179, - OpFOrdEqual = 180, - OpFUnordEqual = 181, - OpFOrdNotEqual = 182, - OpFUnordNotEqual = 183, - OpFOrdLessThan = 184, - OpFUnordLessThan = 185, - OpFOrdGreaterThan = 186, - OpFUnordGreaterThan = 187, - OpFOrdLessThanEqual = 188, - OpFUnordLessThanEqual = 189, - OpFOrdGreaterThanEqual = 190, - OpFUnordGreaterThanEqual = 191, - OpShiftRightLogical = 194, - OpShiftRightArithmetic = 195, - OpShiftLeftLogical = 196, - OpBitwiseOr = 197, - OpBitwiseXor = 198, - OpBitwiseAnd = 199, - OpNot = 200, - OpBitFieldInsert = 201, - OpBitFieldSExtract = 202, - OpBitFieldUExtract = 203, - OpBitReverse = 204, - OpBitCount = 205, - OpDPdx = 207, - OpDPdy = 208, - OpFwidth = 209, - OpDPdxFine = 210, - OpDPdyFine = 211, - OpFwidthFine = 212, - OpDPdxCoarse = 213, - OpDPdyCoarse = 214, - OpFwidthCoarse = 215, - OpEmitVertex = 218, - OpEndPrimitive = 219, - OpEmitStreamVertex = 220, - OpEndStreamPrimitive = 221, - OpControlBarrier = 224, - OpMemoryBarrier = 225, - OpAtomicLoad = 227, - OpAtomicStore = 228, - OpAtomicExchange = 229, - OpAtomicCompareExchange = 230, - OpAtomicCompareExchangeWeak = 231, - OpAtomicIIncrement = 232, - OpAtomicIDecrement = 233, - OpAtomicIAdd = 234, - OpAtomicISub = 235, - OpAtomicSMin = 236, - OpAtomicUMin = 237, - OpAtomicSMax = 238, - OpAtomicUMax = 239, - OpAtomicAnd = 240, - OpAtomicOr = 241, - OpAtomicXor = 242, - OpPhi = 245, - OpLoopMerge = 246, - OpSelectionMerge = 247, - OpLabel = 248, - OpBranch = 249, - OpBranchConditional = 250, - OpSwitch = 251, - OpKill = 252, - OpReturn = 253, - OpReturnValue = 254, - OpUnreachable = 255, - OpLifetimeStart = 256, - OpLifetimeStop = 257, - OpGroupAsyncCopy = 259, - OpGroupWaitEvents = 260, - OpGroupAll = 261, - OpGroupAny = 262, - OpGroupBroadcast = 263, - OpGroupIAdd = 264, - OpGroupFAdd = 265, - OpGroupFMin = 266, - OpGroupUMin = 267, - OpGroupSMin = 268, - OpGroupFMax = 269, - OpGroupUMax = 270, - OpGroupSMax = 271, - OpReadPipe = 274, - OpWritePipe = 275, - OpReservedReadPipe = 276, - OpReservedWritePipe = 277, - OpReserveReadPipePackets = 278, - OpReserveWritePipePackets = 279, - OpCommitReadPipe = 280, - OpCommitWritePipe = 281, - OpIsValidReserveId = 282, - OpGetNumPipePackets = 283, - OpGetMaxPipePackets = 284, - OpGroupReserveReadPipePackets = 285, - OpGroupReserveWritePipePackets = 286, - OpGroupCommitReadPipe = 287, - OpGroupCommitWritePipe = 288, - OpEnqueueMarker = 291, - OpEnqueueKernel = 292, - OpGetKernelNDrangeSubGroupCount = 293, - OpGetKernelNDrangeMaxSubGroupSize = 294, - OpGetKernelWorkGroupSize = 295, - OpGetKernelPreferredWorkGroupSizeMultiple = 296, - OpRetainEvent = 297, - OpReleaseEvent = 298, - OpCreateUserEvent = 299, - OpIsValidEvent = 300, - OpSetUserEventStatus = 301, - OpCaptureEventProfilingInfo = 302, - OpGetDefaultQueue = 303, - OpBuildNDRange = 304, - OpImageSparseSampleImplicitLod = 305, - OpImageSparseSampleExplicitLod = 306, - OpImageSparseSampleDrefImplicitLod = 307, - OpImageSparseSampleDrefExplicitLod = 308, - OpImageSparseSampleProjImplicitLod = 309, - OpImageSparseSampleProjExplicitLod = 310, - OpImageSparseSampleProjDrefImplicitLod = 311, - OpImageSparseSampleProjDrefExplicitLod = 312, - OpImageSparseFetch = 313, - OpImageSparseGather = 314, - OpImageSparseDrefGather = 315, - OpImageSparseTexelsResident = 316, - OpNoLine = 317, - OpAtomicFlagTestAndSet = 318, - OpAtomicFlagClear = 319, - OpImageSparseRead = 320, - OpDecorateId = 332, - OpSubgroupBallotKHR = 4421, - OpSubgroupFirstInvocationKHR = 4422, - OpSubgroupAllKHR = 4428, - OpSubgroupAnyKHR = 4429, - OpSubgroupAllEqualKHR = 4430, - OpSubgroupReadInvocationKHR = 4432, - OpGroupIAddNonUniformAMD = 5000, - OpGroupFAddNonUniformAMD = 5001, - OpGroupFMinNonUniformAMD = 5002, - OpGroupUMinNonUniformAMD = 5003, - OpGroupSMinNonUniformAMD = 5004, - OpGroupFMaxNonUniformAMD = 5005, - OpGroupUMaxNonUniformAMD = 5006, - OpGroupSMaxNonUniformAMD = 5007, - OpFragmentMaskFetchAMD = 5011, - OpFragmentFetchAMD = 5012, - OpSubgroupShuffleINTEL = 5571, - OpSubgroupShuffleDownINTEL = 5572, - OpSubgroupShuffleUpINTEL = 5573, - OpSubgroupShuffleXorINTEL = 5574, - OpSubgroupBlockReadINTEL = 5575, - OpSubgroupBlockWriteINTEL = 5576, - OpSubgroupImageBlockReadINTEL = 5577, - OpSubgroupImageBlockWriteINTEL = 5578, - OpDecorateStringGOOGLE = 5632, - OpMemberDecorateStringGOOGLE = 5633, - }, - -} - diff --git a/Extern/3rdParty/shaderc/shaderc/include/spirv/1.0/spirv.py b/Extern/3rdParty/shaderc/shaderc/include/spirv/1.0/spirv.py deleted file mode 100644 index 8a200e7..0000000 --- a/Extern/3rdParty/shaderc/shaderc/include/spirv/1.0/spirv.py +++ /dev/null @@ -1,949 +0,0 @@ -# Copyright (c) 2014-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. - -# This header is automatically generated by the same tool that creates -# the Binary Section of the SPIR-V specification. - -# Enumeration tokens for SPIR-V, in various styles: -# C, C++, C++11, JSON, Lua, Python -# -# - C will have tokens with a "Spv" prefix, e.g.: SpvSourceLanguageGLSL -# - C++ will have tokens in the "spv" name space, e.g.: spv::SourceLanguageGLSL -# - C++11 will use enum classes in the spv namespace, e.g.: spv::SourceLanguage::GLSL -# - Lua will use tables, e.g.: spv.SourceLanguage.GLSL -# - Python will use dictionaries, e.g.: spv['SourceLanguage']['GLSL'] -# -# Some tokens act like mask values, which can be OR'd together, -# while others are mutually exclusive. The mask-like ones have -# "Mask" in their name, and a parallel enum that has the shift -# amount (1 << x) for each corresponding enumerant. - -spv = { - 'MagicNumber' : 0x07230203, - 'Version' : 0x00010000, - 'Revision' : 12, - 'OpCodeMask' : 0xffff, - 'WordCountShift' : 16, - - 'SourceLanguage' : { - 'Unknown' : 0, - 'ESSL' : 1, - 'GLSL' : 2, - 'OpenCL_C' : 3, - 'OpenCL_CPP' : 4, - 'HLSL' : 5, - }, - - 'ExecutionModel' : { - 'Vertex' : 0, - 'TessellationControl' : 1, - 'TessellationEvaluation' : 2, - 'Geometry' : 3, - 'Fragment' : 4, - 'GLCompute' : 5, - 'Kernel' : 6, - }, - - 'AddressingModel' : { - 'Logical' : 0, - 'Physical32' : 1, - 'Physical64' : 2, - }, - - 'MemoryModel' : { - 'Simple' : 0, - 'GLSL450' : 1, - 'OpenCL' : 2, - }, - - 'ExecutionMode' : { - 'Invocations' : 0, - 'SpacingEqual' : 1, - 'SpacingFractionalEven' : 2, - 'SpacingFractionalOdd' : 3, - 'VertexOrderCw' : 4, - 'VertexOrderCcw' : 5, - 'PixelCenterInteger' : 6, - 'OriginUpperLeft' : 7, - 'OriginLowerLeft' : 8, - 'EarlyFragmentTests' : 9, - 'PointMode' : 10, - 'Xfb' : 11, - 'DepthReplacing' : 12, - 'DepthGreater' : 14, - 'DepthLess' : 15, - 'DepthUnchanged' : 16, - 'LocalSize' : 17, - 'LocalSizeHint' : 18, - 'InputPoints' : 19, - 'InputLines' : 20, - 'InputLinesAdjacency' : 21, - 'Triangles' : 22, - 'InputTrianglesAdjacency' : 23, - 'Quads' : 24, - 'Isolines' : 25, - 'OutputVertices' : 26, - 'OutputPoints' : 27, - 'OutputLineStrip' : 28, - 'OutputTriangleStrip' : 29, - 'VecTypeHint' : 30, - 'ContractionOff' : 31, - 'PostDepthCoverage' : 4446, - 'StencilRefReplacingEXT' : 5027, - }, - - 'StorageClass' : { - 'UniformConstant' : 0, - 'Input' : 1, - 'Uniform' : 2, - 'Output' : 3, - 'Workgroup' : 4, - 'CrossWorkgroup' : 5, - 'Private' : 6, - 'Function' : 7, - 'Generic' : 8, - 'PushConstant' : 9, - 'AtomicCounter' : 10, - 'Image' : 11, - 'StorageBuffer' : 12, - }, - - 'Dim' : { - 'Dim1D' : 0, - 'Dim2D' : 1, - 'Dim3D' : 2, - 'Cube' : 3, - 'Rect' : 4, - 'Buffer' : 5, - 'SubpassData' : 6, - }, - - 'SamplerAddressingMode' : { - 'None' : 0, - 'ClampToEdge' : 1, - 'Clamp' : 2, - 'Repeat' : 3, - 'RepeatMirrored' : 4, - }, - - 'SamplerFilterMode' : { - 'Nearest' : 0, - 'Linear' : 1, - }, - - 'ImageFormat' : { - 'Unknown' : 0, - 'Rgba32f' : 1, - 'Rgba16f' : 2, - 'R32f' : 3, - 'Rgba8' : 4, - 'Rgba8Snorm' : 5, - 'Rg32f' : 6, - 'Rg16f' : 7, - 'R11fG11fB10f' : 8, - 'R16f' : 9, - 'Rgba16' : 10, - 'Rgb10A2' : 11, - 'Rg16' : 12, - 'Rg8' : 13, - 'R16' : 14, - 'R8' : 15, - 'Rgba16Snorm' : 16, - 'Rg16Snorm' : 17, - 'Rg8Snorm' : 18, - 'R16Snorm' : 19, - 'R8Snorm' : 20, - 'Rgba32i' : 21, - 'Rgba16i' : 22, - 'Rgba8i' : 23, - 'R32i' : 24, - 'Rg32i' : 25, - 'Rg16i' : 26, - 'Rg8i' : 27, - 'R16i' : 28, - 'R8i' : 29, - 'Rgba32ui' : 30, - 'Rgba16ui' : 31, - 'Rgba8ui' : 32, - 'R32ui' : 33, - 'Rgb10a2ui' : 34, - 'Rg32ui' : 35, - 'Rg16ui' : 36, - 'Rg8ui' : 37, - 'R16ui' : 38, - 'R8ui' : 39, - }, - - 'ImageChannelOrder' : { - 'R' : 0, - 'A' : 1, - 'RG' : 2, - 'RA' : 3, - 'RGB' : 4, - 'RGBA' : 5, - 'BGRA' : 6, - 'ARGB' : 7, - 'Intensity' : 8, - 'Luminance' : 9, - 'Rx' : 10, - 'RGx' : 11, - 'RGBx' : 12, - 'Depth' : 13, - 'DepthStencil' : 14, - 'sRGB' : 15, - 'sRGBx' : 16, - 'sRGBA' : 17, - 'sBGRA' : 18, - 'ABGR' : 19, - }, - - 'ImageChannelDataType' : { - 'SnormInt8' : 0, - 'SnormInt16' : 1, - 'UnormInt8' : 2, - 'UnormInt16' : 3, - 'UnormShort565' : 4, - 'UnormShort555' : 5, - 'UnormInt101010' : 6, - 'SignedInt8' : 7, - 'SignedInt16' : 8, - 'SignedInt32' : 9, - 'UnsignedInt8' : 10, - 'UnsignedInt16' : 11, - 'UnsignedInt32' : 12, - 'HalfFloat' : 13, - 'Float' : 14, - 'UnormInt24' : 15, - 'UnormInt101010_2' : 16, - }, - - 'ImageOperandsShift' : { - 'Bias' : 0, - 'Lod' : 1, - 'Grad' : 2, - 'ConstOffset' : 3, - 'Offset' : 4, - 'ConstOffsets' : 5, - 'Sample' : 6, - 'MinLod' : 7, - }, - - 'ImageOperandsMask' : { - 'MaskNone' : 0, - 'Bias' : 0x00000001, - 'Lod' : 0x00000002, - 'Grad' : 0x00000004, - 'ConstOffset' : 0x00000008, - 'Offset' : 0x00000010, - 'ConstOffsets' : 0x00000020, - 'Sample' : 0x00000040, - 'MinLod' : 0x00000080, - }, - - 'FPFastMathModeShift' : { - 'NotNaN' : 0, - 'NotInf' : 1, - 'NSZ' : 2, - 'AllowRecip' : 3, - 'Fast' : 4, - }, - - 'FPFastMathModeMask' : { - 'MaskNone' : 0, - 'NotNaN' : 0x00000001, - 'NotInf' : 0x00000002, - 'NSZ' : 0x00000004, - 'AllowRecip' : 0x00000008, - 'Fast' : 0x00000010, - }, - - 'FPRoundingMode' : { - 'RTE' : 0, - 'RTZ' : 1, - 'RTP' : 2, - 'RTN' : 3, - }, - - 'LinkageType' : { - 'Export' : 0, - 'Import' : 1, - }, - - 'AccessQualifier' : { - 'ReadOnly' : 0, - 'WriteOnly' : 1, - 'ReadWrite' : 2, - }, - - 'FunctionParameterAttribute' : { - 'Zext' : 0, - 'Sext' : 1, - 'ByVal' : 2, - 'Sret' : 3, - 'NoAlias' : 4, - 'NoCapture' : 5, - 'NoWrite' : 6, - 'NoReadWrite' : 7, - }, - - 'Decoration' : { - 'RelaxedPrecision' : 0, - 'SpecId' : 1, - 'Block' : 2, - 'BufferBlock' : 3, - 'RowMajor' : 4, - 'ColMajor' : 5, - 'ArrayStride' : 6, - 'MatrixStride' : 7, - 'GLSLShared' : 8, - 'GLSLPacked' : 9, - 'CPacked' : 10, - 'BuiltIn' : 11, - 'NoPerspective' : 13, - 'Flat' : 14, - 'Patch' : 15, - 'Centroid' : 16, - 'Sample' : 17, - 'Invariant' : 18, - 'Restrict' : 19, - 'Aliased' : 20, - 'Volatile' : 21, - 'Constant' : 22, - 'Coherent' : 23, - 'NonWritable' : 24, - 'NonReadable' : 25, - 'Uniform' : 26, - 'SaturatedConversion' : 28, - 'Stream' : 29, - 'Location' : 30, - 'Component' : 31, - 'Index' : 32, - 'Binding' : 33, - 'DescriptorSet' : 34, - 'Offset' : 35, - 'XfbBuffer' : 36, - 'XfbStride' : 37, - 'FuncParamAttr' : 38, - 'FPRoundingMode' : 39, - 'FPFastMathMode' : 40, - 'LinkageAttributes' : 41, - 'NoContraction' : 42, - 'InputAttachmentIndex' : 43, - 'Alignment' : 44, - 'ExplicitInterpAMD' : 4999, - 'OverrideCoverageNV' : 5248, - 'PassthroughNV' : 5250, - 'ViewportRelativeNV' : 5252, - 'SecondaryViewportRelativeNV' : 5256, - 'HlslCounterBufferGOOGLE' : 5634, - 'HlslSemanticGOOGLE' : 5635, - }, - - 'BuiltIn' : { - 'Position' : 0, - 'PointSize' : 1, - 'ClipDistance' : 3, - 'CullDistance' : 4, - 'VertexId' : 5, - 'InstanceId' : 6, - 'PrimitiveId' : 7, - 'InvocationId' : 8, - 'Layer' : 9, - 'ViewportIndex' : 10, - 'TessLevelOuter' : 11, - 'TessLevelInner' : 12, - 'TessCoord' : 13, - 'PatchVertices' : 14, - 'FragCoord' : 15, - 'PointCoord' : 16, - 'FrontFacing' : 17, - 'SampleId' : 18, - 'SamplePosition' : 19, - 'SampleMask' : 20, - 'FragDepth' : 22, - 'HelperInvocation' : 23, - 'NumWorkgroups' : 24, - 'WorkgroupSize' : 25, - 'WorkgroupId' : 26, - 'LocalInvocationId' : 27, - 'GlobalInvocationId' : 28, - 'LocalInvocationIndex' : 29, - 'WorkDim' : 30, - 'GlobalSize' : 31, - 'EnqueuedWorkgroupSize' : 32, - 'GlobalOffset' : 33, - 'GlobalLinearId' : 34, - 'SubgroupSize' : 36, - 'SubgroupMaxSize' : 37, - 'NumSubgroups' : 38, - 'NumEnqueuedSubgroups' : 39, - 'SubgroupId' : 40, - 'SubgroupLocalInvocationId' : 41, - 'VertexIndex' : 42, - 'InstanceIndex' : 43, - 'SubgroupEqMaskKHR' : 4416, - 'SubgroupGeMaskKHR' : 4417, - 'SubgroupGtMaskKHR' : 4418, - 'SubgroupLeMaskKHR' : 4419, - 'SubgroupLtMaskKHR' : 4420, - 'BaseVertex' : 4424, - 'BaseInstance' : 4425, - 'DrawIndex' : 4426, - 'DeviceIndex' : 4438, - 'ViewIndex' : 4440, - 'BaryCoordNoPerspAMD' : 4992, - 'BaryCoordNoPerspCentroidAMD' : 4993, - 'BaryCoordNoPerspSampleAMD' : 4994, - 'BaryCoordSmoothAMD' : 4995, - 'BaryCoordSmoothCentroidAMD' : 4996, - 'BaryCoordSmoothSampleAMD' : 4997, - 'BaryCoordPullModelAMD' : 4998, - 'FragStencilRefEXT' : 5014, - 'ViewportMaskNV' : 5253, - 'SecondaryPositionNV' : 5257, - 'SecondaryViewportMaskNV' : 5258, - 'PositionPerViewNV' : 5261, - 'ViewportMaskPerViewNV' : 5262, - }, - - 'SelectionControlShift' : { - 'Flatten' : 0, - 'DontFlatten' : 1, - }, - - 'SelectionControlMask' : { - 'MaskNone' : 0, - 'Flatten' : 0x00000001, - 'DontFlatten' : 0x00000002, - }, - - 'LoopControlShift' : { - 'Unroll' : 0, - 'DontUnroll' : 1, - }, - - 'LoopControlMask' : { - 'MaskNone' : 0, - 'Unroll' : 0x00000001, - 'DontUnroll' : 0x00000002, - }, - - 'FunctionControlShift' : { - 'Inline' : 0, - 'DontInline' : 1, - 'Pure' : 2, - 'Const' : 3, - }, - - 'FunctionControlMask' : { - 'MaskNone' : 0, - 'Inline' : 0x00000001, - 'DontInline' : 0x00000002, - 'Pure' : 0x00000004, - 'Const' : 0x00000008, - }, - - 'MemorySemanticsShift' : { - 'Acquire' : 1, - 'Release' : 2, - 'AcquireRelease' : 3, - 'SequentiallyConsistent' : 4, - 'UniformMemory' : 6, - 'SubgroupMemory' : 7, - 'WorkgroupMemory' : 8, - 'CrossWorkgroupMemory' : 9, - 'AtomicCounterMemory' : 10, - 'ImageMemory' : 11, - }, - - 'MemorySemanticsMask' : { - 'MaskNone' : 0, - 'Acquire' : 0x00000002, - 'Release' : 0x00000004, - 'AcquireRelease' : 0x00000008, - 'SequentiallyConsistent' : 0x00000010, - 'UniformMemory' : 0x00000040, - 'SubgroupMemory' : 0x00000080, - 'WorkgroupMemory' : 0x00000100, - 'CrossWorkgroupMemory' : 0x00000200, - 'AtomicCounterMemory' : 0x00000400, - 'ImageMemory' : 0x00000800, - }, - - 'MemoryAccessShift' : { - 'Volatile' : 0, - 'Aligned' : 1, - 'Nontemporal' : 2, - }, - - 'MemoryAccessMask' : { - 'MaskNone' : 0, - 'Volatile' : 0x00000001, - 'Aligned' : 0x00000002, - 'Nontemporal' : 0x00000004, - }, - - 'Scope' : { - 'CrossDevice' : 0, - 'Device' : 1, - 'Workgroup' : 2, - 'Subgroup' : 3, - 'Invocation' : 4, - }, - - 'GroupOperation' : { - 'Reduce' : 0, - 'InclusiveScan' : 1, - 'ExclusiveScan' : 2, - }, - - 'KernelEnqueueFlags' : { - 'NoWait' : 0, - 'WaitKernel' : 1, - 'WaitWorkGroup' : 2, - }, - - 'KernelProfilingInfoShift' : { - 'CmdExecTime' : 0, - }, - - 'KernelProfilingInfoMask' : { - 'MaskNone' : 0, - 'CmdExecTime' : 0x00000001, - }, - - 'Capability' : { - 'Matrix' : 0, - 'Shader' : 1, - 'Geometry' : 2, - 'Tessellation' : 3, - 'Addresses' : 4, - 'Linkage' : 5, - 'Kernel' : 6, - 'Vector16' : 7, - 'Float16Buffer' : 8, - 'Float16' : 9, - 'Float64' : 10, - 'Int64' : 11, - 'Int64Atomics' : 12, - 'ImageBasic' : 13, - 'ImageReadWrite' : 14, - 'ImageMipmap' : 15, - 'Pipes' : 17, - 'Groups' : 18, - 'DeviceEnqueue' : 19, - 'LiteralSampler' : 20, - 'AtomicStorage' : 21, - 'Int16' : 22, - 'TessellationPointSize' : 23, - 'GeometryPointSize' : 24, - 'ImageGatherExtended' : 25, - 'StorageImageMultisample' : 27, - 'UniformBufferArrayDynamicIndexing' : 28, - 'SampledImageArrayDynamicIndexing' : 29, - 'StorageBufferArrayDynamicIndexing' : 30, - 'StorageImageArrayDynamicIndexing' : 31, - 'ClipDistance' : 32, - 'CullDistance' : 33, - 'ImageCubeArray' : 34, - 'SampleRateShading' : 35, - 'ImageRect' : 36, - 'SampledRect' : 37, - 'GenericPointer' : 38, - 'Int8' : 39, - 'InputAttachment' : 40, - 'SparseResidency' : 41, - 'MinLod' : 42, - 'Sampled1D' : 43, - 'Image1D' : 44, - 'SampledCubeArray' : 45, - 'SampledBuffer' : 46, - 'ImageBuffer' : 47, - 'ImageMSArray' : 48, - 'StorageImageExtendedFormats' : 49, - 'ImageQuery' : 50, - 'DerivativeControl' : 51, - 'InterpolationFunction' : 52, - 'TransformFeedback' : 53, - 'GeometryStreams' : 54, - 'StorageImageReadWithoutFormat' : 55, - 'StorageImageWriteWithoutFormat' : 56, - 'MultiViewport' : 57, - 'SubgroupBallotKHR' : 4423, - 'DrawParameters' : 4427, - 'SubgroupVoteKHR' : 4431, - 'StorageBuffer16BitAccess' : 4433, - 'StorageUniformBufferBlock16' : 4433, - 'StorageUniform16' : 4434, - 'UniformAndStorageBuffer16BitAccess' : 4434, - 'StoragePushConstant16' : 4435, - 'StorageInputOutput16' : 4436, - 'DeviceGroup' : 4437, - 'MultiView' : 4439, - 'VariablePointersStorageBuffer' : 4441, - 'VariablePointers' : 4442, - 'AtomicStorageOps' : 4445, - 'SampleMaskPostDepthCoverage' : 4447, - 'ImageGatherBiasLodAMD' : 5009, - 'FragmentMaskAMD' : 5010, - 'StencilExportEXT' : 5013, - 'ImageReadWriteLodAMD' : 5015, - 'SampleMaskOverrideCoverageNV' : 5249, - 'GeometryShaderPassthroughNV' : 5251, - 'ShaderViewportIndexLayerEXT' : 5254, - 'ShaderViewportIndexLayerNV' : 5254, - 'ShaderViewportMaskNV' : 5255, - 'ShaderStereoViewNV' : 5259, - 'PerViewAttributesNV' : 5260, - 'SubgroupShuffleINTEL' : 5568, - 'SubgroupBufferBlockIOINTEL' : 5569, - 'SubgroupImageBlockIOINTEL' : 5570, - }, - - 'Op' : { - 'OpNop' : 0, - 'OpUndef' : 1, - 'OpSourceContinued' : 2, - 'OpSource' : 3, - 'OpSourceExtension' : 4, - 'OpName' : 5, - 'OpMemberName' : 6, - 'OpString' : 7, - 'OpLine' : 8, - 'OpExtension' : 10, - 'OpExtInstImport' : 11, - 'OpExtInst' : 12, - 'OpMemoryModel' : 14, - 'OpEntryPoint' : 15, - 'OpExecutionMode' : 16, - 'OpCapability' : 17, - 'OpTypeVoid' : 19, - 'OpTypeBool' : 20, - 'OpTypeInt' : 21, - 'OpTypeFloat' : 22, - 'OpTypeVector' : 23, - 'OpTypeMatrix' : 24, - 'OpTypeImage' : 25, - 'OpTypeSampler' : 26, - 'OpTypeSampledImage' : 27, - 'OpTypeArray' : 28, - 'OpTypeRuntimeArray' : 29, - 'OpTypeStruct' : 30, - 'OpTypeOpaque' : 31, - 'OpTypePointer' : 32, - 'OpTypeFunction' : 33, - 'OpTypeEvent' : 34, - 'OpTypeDeviceEvent' : 35, - 'OpTypeReserveId' : 36, - 'OpTypeQueue' : 37, - 'OpTypePipe' : 38, - 'OpTypeForwardPointer' : 39, - 'OpConstantTrue' : 41, - 'OpConstantFalse' : 42, - 'OpConstant' : 43, - 'OpConstantComposite' : 44, - 'OpConstantSampler' : 45, - 'OpConstantNull' : 46, - 'OpSpecConstantTrue' : 48, - 'OpSpecConstantFalse' : 49, - 'OpSpecConstant' : 50, - 'OpSpecConstantComposite' : 51, - 'OpSpecConstantOp' : 52, - 'OpFunction' : 54, - 'OpFunctionParameter' : 55, - 'OpFunctionEnd' : 56, - 'OpFunctionCall' : 57, - 'OpVariable' : 59, - 'OpImageTexelPointer' : 60, - 'OpLoad' : 61, - 'OpStore' : 62, - 'OpCopyMemory' : 63, - 'OpCopyMemorySized' : 64, - 'OpAccessChain' : 65, - 'OpInBoundsAccessChain' : 66, - 'OpPtrAccessChain' : 67, - 'OpArrayLength' : 68, - 'OpGenericPtrMemSemantics' : 69, - 'OpInBoundsPtrAccessChain' : 70, - 'OpDecorate' : 71, - 'OpMemberDecorate' : 72, - 'OpDecorationGroup' : 73, - 'OpGroupDecorate' : 74, - 'OpGroupMemberDecorate' : 75, - 'OpVectorExtractDynamic' : 77, - 'OpVectorInsertDynamic' : 78, - 'OpVectorShuffle' : 79, - 'OpCompositeConstruct' : 80, - 'OpCompositeExtract' : 81, - 'OpCompositeInsert' : 82, - 'OpCopyObject' : 83, - 'OpTranspose' : 84, - 'OpSampledImage' : 86, - 'OpImageSampleImplicitLod' : 87, - 'OpImageSampleExplicitLod' : 88, - 'OpImageSampleDrefImplicitLod' : 89, - 'OpImageSampleDrefExplicitLod' : 90, - 'OpImageSampleProjImplicitLod' : 91, - 'OpImageSampleProjExplicitLod' : 92, - 'OpImageSampleProjDrefImplicitLod' : 93, - 'OpImageSampleProjDrefExplicitLod' : 94, - 'OpImageFetch' : 95, - 'OpImageGather' : 96, - 'OpImageDrefGather' : 97, - 'OpImageRead' : 98, - 'OpImageWrite' : 99, - 'OpImage' : 100, - 'OpImageQueryFormat' : 101, - 'OpImageQueryOrder' : 102, - 'OpImageQuerySizeLod' : 103, - 'OpImageQuerySize' : 104, - 'OpImageQueryLod' : 105, - 'OpImageQueryLevels' : 106, - 'OpImageQuerySamples' : 107, - 'OpConvertFToU' : 109, - 'OpConvertFToS' : 110, - 'OpConvertSToF' : 111, - 'OpConvertUToF' : 112, - 'OpUConvert' : 113, - 'OpSConvert' : 114, - 'OpFConvert' : 115, - 'OpQuantizeToF16' : 116, - 'OpConvertPtrToU' : 117, - 'OpSatConvertSToU' : 118, - 'OpSatConvertUToS' : 119, - 'OpConvertUToPtr' : 120, - 'OpPtrCastToGeneric' : 121, - 'OpGenericCastToPtr' : 122, - 'OpGenericCastToPtrExplicit' : 123, - 'OpBitcast' : 124, - 'OpSNegate' : 126, - 'OpFNegate' : 127, - 'OpIAdd' : 128, - 'OpFAdd' : 129, - 'OpISub' : 130, - 'OpFSub' : 131, - 'OpIMul' : 132, - 'OpFMul' : 133, - 'OpUDiv' : 134, - 'OpSDiv' : 135, - 'OpFDiv' : 136, - 'OpUMod' : 137, - 'OpSRem' : 138, - 'OpSMod' : 139, - 'OpFRem' : 140, - 'OpFMod' : 141, - 'OpVectorTimesScalar' : 142, - 'OpMatrixTimesScalar' : 143, - 'OpVectorTimesMatrix' : 144, - 'OpMatrixTimesVector' : 145, - 'OpMatrixTimesMatrix' : 146, - 'OpOuterProduct' : 147, - 'OpDot' : 148, - 'OpIAddCarry' : 149, - 'OpISubBorrow' : 150, - 'OpUMulExtended' : 151, - 'OpSMulExtended' : 152, - 'OpAny' : 154, - 'OpAll' : 155, - 'OpIsNan' : 156, - 'OpIsInf' : 157, - 'OpIsFinite' : 158, - 'OpIsNormal' : 159, - 'OpSignBitSet' : 160, - 'OpLessOrGreater' : 161, - 'OpOrdered' : 162, - 'OpUnordered' : 163, - 'OpLogicalEqual' : 164, - 'OpLogicalNotEqual' : 165, - 'OpLogicalOr' : 166, - 'OpLogicalAnd' : 167, - 'OpLogicalNot' : 168, - 'OpSelect' : 169, - 'OpIEqual' : 170, - 'OpINotEqual' : 171, - 'OpUGreaterThan' : 172, - 'OpSGreaterThan' : 173, - 'OpUGreaterThanEqual' : 174, - 'OpSGreaterThanEqual' : 175, - 'OpULessThan' : 176, - 'OpSLessThan' : 177, - 'OpULessThanEqual' : 178, - 'OpSLessThanEqual' : 179, - 'OpFOrdEqual' : 180, - 'OpFUnordEqual' : 181, - 'OpFOrdNotEqual' : 182, - 'OpFUnordNotEqual' : 183, - 'OpFOrdLessThan' : 184, - 'OpFUnordLessThan' : 185, - 'OpFOrdGreaterThan' : 186, - 'OpFUnordGreaterThan' : 187, - 'OpFOrdLessThanEqual' : 188, - 'OpFUnordLessThanEqual' : 189, - 'OpFOrdGreaterThanEqual' : 190, - 'OpFUnordGreaterThanEqual' : 191, - 'OpShiftRightLogical' : 194, - 'OpShiftRightArithmetic' : 195, - 'OpShiftLeftLogical' : 196, - 'OpBitwiseOr' : 197, - 'OpBitwiseXor' : 198, - 'OpBitwiseAnd' : 199, - 'OpNot' : 200, - 'OpBitFieldInsert' : 201, - 'OpBitFieldSExtract' : 202, - 'OpBitFieldUExtract' : 203, - 'OpBitReverse' : 204, - 'OpBitCount' : 205, - 'OpDPdx' : 207, - 'OpDPdy' : 208, - 'OpFwidth' : 209, - 'OpDPdxFine' : 210, - 'OpDPdyFine' : 211, - 'OpFwidthFine' : 212, - 'OpDPdxCoarse' : 213, - 'OpDPdyCoarse' : 214, - 'OpFwidthCoarse' : 215, - 'OpEmitVertex' : 218, - 'OpEndPrimitive' : 219, - 'OpEmitStreamVertex' : 220, - 'OpEndStreamPrimitive' : 221, - 'OpControlBarrier' : 224, - 'OpMemoryBarrier' : 225, - 'OpAtomicLoad' : 227, - 'OpAtomicStore' : 228, - 'OpAtomicExchange' : 229, - 'OpAtomicCompareExchange' : 230, - 'OpAtomicCompareExchangeWeak' : 231, - 'OpAtomicIIncrement' : 232, - 'OpAtomicIDecrement' : 233, - 'OpAtomicIAdd' : 234, - 'OpAtomicISub' : 235, - 'OpAtomicSMin' : 236, - 'OpAtomicUMin' : 237, - 'OpAtomicSMax' : 238, - 'OpAtomicUMax' : 239, - 'OpAtomicAnd' : 240, - 'OpAtomicOr' : 241, - 'OpAtomicXor' : 242, - 'OpPhi' : 245, - 'OpLoopMerge' : 246, - 'OpSelectionMerge' : 247, - 'OpLabel' : 248, - 'OpBranch' : 249, - 'OpBranchConditional' : 250, - 'OpSwitch' : 251, - 'OpKill' : 252, - 'OpReturn' : 253, - 'OpReturnValue' : 254, - 'OpUnreachable' : 255, - 'OpLifetimeStart' : 256, - 'OpLifetimeStop' : 257, - 'OpGroupAsyncCopy' : 259, - 'OpGroupWaitEvents' : 260, - 'OpGroupAll' : 261, - 'OpGroupAny' : 262, - 'OpGroupBroadcast' : 263, - 'OpGroupIAdd' : 264, - 'OpGroupFAdd' : 265, - 'OpGroupFMin' : 266, - 'OpGroupUMin' : 267, - 'OpGroupSMin' : 268, - 'OpGroupFMax' : 269, - 'OpGroupUMax' : 270, - 'OpGroupSMax' : 271, - 'OpReadPipe' : 274, - 'OpWritePipe' : 275, - 'OpReservedReadPipe' : 276, - 'OpReservedWritePipe' : 277, - 'OpReserveReadPipePackets' : 278, - 'OpReserveWritePipePackets' : 279, - 'OpCommitReadPipe' : 280, - 'OpCommitWritePipe' : 281, - 'OpIsValidReserveId' : 282, - 'OpGetNumPipePackets' : 283, - 'OpGetMaxPipePackets' : 284, - 'OpGroupReserveReadPipePackets' : 285, - 'OpGroupReserveWritePipePackets' : 286, - 'OpGroupCommitReadPipe' : 287, - 'OpGroupCommitWritePipe' : 288, - 'OpEnqueueMarker' : 291, - 'OpEnqueueKernel' : 292, - 'OpGetKernelNDrangeSubGroupCount' : 293, - 'OpGetKernelNDrangeMaxSubGroupSize' : 294, - 'OpGetKernelWorkGroupSize' : 295, - 'OpGetKernelPreferredWorkGroupSizeMultiple' : 296, - 'OpRetainEvent' : 297, - 'OpReleaseEvent' : 298, - 'OpCreateUserEvent' : 299, - 'OpIsValidEvent' : 300, - 'OpSetUserEventStatus' : 301, - 'OpCaptureEventProfilingInfo' : 302, - 'OpGetDefaultQueue' : 303, - 'OpBuildNDRange' : 304, - 'OpImageSparseSampleImplicitLod' : 305, - 'OpImageSparseSampleExplicitLod' : 306, - 'OpImageSparseSampleDrefImplicitLod' : 307, - 'OpImageSparseSampleDrefExplicitLod' : 308, - 'OpImageSparseSampleProjImplicitLod' : 309, - 'OpImageSparseSampleProjExplicitLod' : 310, - 'OpImageSparseSampleProjDrefImplicitLod' : 311, - 'OpImageSparseSampleProjDrefExplicitLod' : 312, - 'OpImageSparseFetch' : 313, - 'OpImageSparseGather' : 314, - 'OpImageSparseDrefGather' : 315, - 'OpImageSparseTexelsResident' : 316, - 'OpNoLine' : 317, - 'OpAtomicFlagTestAndSet' : 318, - 'OpAtomicFlagClear' : 319, - 'OpImageSparseRead' : 320, - 'OpDecorateId' : 332, - 'OpSubgroupBallotKHR' : 4421, - 'OpSubgroupFirstInvocationKHR' : 4422, - 'OpSubgroupAllKHR' : 4428, - 'OpSubgroupAnyKHR' : 4429, - 'OpSubgroupAllEqualKHR' : 4430, - 'OpSubgroupReadInvocationKHR' : 4432, - 'OpGroupIAddNonUniformAMD' : 5000, - 'OpGroupFAddNonUniformAMD' : 5001, - 'OpGroupFMinNonUniformAMD' : 5002, - 'OpGroupUMinNonUniformAMD' : 5003, - 'OpGroupSMinNonUniformAMD' : 5004, - 'OpGroupFMaxNonUniformAMD' : 5005, - 'OpGroupUMaxNonUniformAMD' : 5006, - 'OpGroupSMaxNonUniformAMD' : 5007, - 'OpFragmentMaskFetchAMD' : 5011, - 'OpFragmentFetchAMD' : 5012, - 'OpSubgroupShuffleINTEL' : 5571, - 'OpSubgroupShuffleDownINTEL' : 5572, - 'OpSubgroupShuffleUpINTEL' : 5573, - 'OpSubgroupShuffleXorINTEL' : 5574, - 'OpSubgroupBlockReadINTEL' : 5575, - 'OpSubgroupBlockWriteINTEL' : 5576, - 'OpSubgroupImageBlockReadINTEL' : 5577, - 'OpSubgroupImageBlockWriteINTEL' : 5578, - 'OpDecorateStringGOOGLE' : 5632, - 'OpMemberDecorateStringGOOGLE' : 5633, - }, - -} - diff --git a/Extern/3rdParty/shaderc/shaderc/include/spirv/1.1/GLSL.std.450.h b/Extern/3rdParty/shaderc/shaderc/include/spirv/1.1/GLSL.std.450.h deleted file mode 100644 index 54cc00e..0000000 --- a/Extern/3rdParty/shaderc/shaderc/include/spirv/1.1/GLSL.std.450.h +++ /dev/null @@ -1,131 +0,0 @@ -/* -** Copyright (c) 2014-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. -*/ - -#ifndef GLSLstd450_H -#define GLSLstd450_H - -static const int GLSLstd450Version = 100; -static const int GLSLstd450Revision = 3; - -enum GLSLstd450 { - GLSLstd450Bad = 0, // Don't use - - GLSLstd450Round = 1, - GLSLstd450RoundEven = 2, - GLSLstd450Trunc = 3, - GLSLstd450FAbs = 4, - GLSLstd450SAbs = 5, - GLSLstd450FSign = 6, - GLSLstd450SSign = 7, - GLSLstd450Floor = 8, - GLSLstd450Ceil = 9, - GLSLstd450Fract = 10, - - GLSLstd450Radians = 11, - GLSLstd450Degrees = 12, - GLSLstd450Sin = 13, - GLSLstd450Cos = 14, - GLSLstd450Tan = 15, - GLSLstd450Asin = 16, - GLSLstd450Acos = 17, - GLSLstd450Atan = 18, - GLSLstd450Sinh = 19, - GLSLstd450Cosh = 20, - GLSLstd450Tanh = 21, - GLSLstd450Asinh = 22, - GLSLstd450Acosh = 23, - GLSLstd450Atanh = 24, - GLSLstd450Atan2 = 25, - - GLSLstd450Pow = 26, - GLSLstd450Exp = 27, - GLSLstd450Log = 28, - GLSLstd450Exp2 = 29, - GLSLstd450Log2 = 30, - GLSLstd450Sqrt = 31, - GLSLstd450InverseSqrt = 32, - - GLSLstd450Determinant = 33, - GLSLstd450MatrixInverse = 34, - - GLSLstd450Modf = 35, // second operand needs an OpVariable to write to - GLSLstd450ModfStruct = 36, // no OpVariable operand - GLSLstd450FMin = 37, - GLSLstd450UMin = 38, - GLSLstd450SMin = 39, - GLSLstd450FMax = 40, - GLSLstd450UMax = 41, - GLSLstd450SMax = 42, - GLSLstd450FClamp = 43, - GLSLstd450UClamp = 44, - GLSLstd450SClamp = 45, - GLSLstd450FMix = 46, - GLSLstd450IMix = 47, // Reserved - GLSLstd450Step = 48, - GLSLstd450SmoothStep = 49, - - GLSLstd450Fma = 50, - GLSLstd450Frexp = 51, // second operand needs an OpVariable to write to - GLSLstd450FrexpStruct = 52, // no OpVariable operand - GLSLstd450Ldexp = 53, - - GLSLstd450PackSnorm4x8 = 54, - GLSLstd450PackUnorm4x8 = 55, - GLSLstd450PackSnorm2x16 = 56, - GLSLstd450PackUnorm2x16 = 57, - GLSLstd450PackHalf2x16 = 58, - GLSLstd450PackDouble2x32 = 59, - GLSLstd450UnpackSnorm2x16 = 60, - GLSLstd450UnpackUnorm2x16 = 61, - GLSLstd450UnpackHalf2x16 = 62, - GLSLstd450UnpackSnorm4x8 = 63, - GLSLstd450UnpackUnorm4x8 = 64, - GLSLstd450UnpackDouble2x32 = 65, - - GLSLstd450Length = 66, - GLSLstd450Distance = 67, - GLSLstd450Cross = 68, - GLSLstd450Normalize = 69, - GLSLstd450FaceForward = 70, - GLSLstd450Reflect = 71, - GLSLstd450Refract = 72, - - GLSLstd450FindILsb = 73, - GLSLstd450FindSMsb = 74, - GLSLstd450FindUMsb = 75, - - GLSLstd450InterpolateAtCentroid = 76, - GLSLstd450InterpolateAtSample = 77, - GLSLstd450InterpolateAtOffset = 78, - - GLSLstd450NMin = 79, - GLSLstd450NMax = 80, - GLSLstd450NClamp = 81, - - GLSLstd450Count -}; - -#endif // #ifndef GLSLstd450_H diff --git a/Extern/3rdParty/shaderc/shaderc/include/spirv/1.1/OpenCL.std.h b/Extern/3rdParty/shaderc/shaderc/include/spirv/1.1/OpenCL.std.h deleted file mode 100644 index 19a6688..0000000 --- a/Extern/3rdParty/shaderc/shaderc/include/spirv/1.1/OpenCL.std.h +++ /dev/null @@ -1,210 +0,0 @@ -/* -** Copyright (c) 2015-2017 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. -*/ - -namespace OpenCLLIB { - -enum Entrypoints { - - // Section 2.1: Math extended instructions - Acos = 0, - Acosh = 1, - Acospi = 2, - Asin = 3, - Asinh = 4, - Asinpi = 5, - Atan = 6, - Atan2 = 7, - Atanh = 8, - Atanpi = 9, - Atan2pi = 10, - Cbrt = 11, - Ceil = 12, - Copysign = 13, - Cos = 14, - Cosh = 15, - Cospi = 16, - Erfc = 17, - Erf = 18, - Exp = 19, - Exp2 = 20, - Exp10 = 21, - Expm1 = 22, - Fabs = 23, - Fdim = 24, - Floor = 25, - Fma = 26, - Fmax = 27, - Fmin = 28, - Fmod = 29, - Fract = 30, - Frexp = 31, - Hypot = 32, - Ilogb = 33, - Ldexp = 34, - Lgamma = 35, - Lgamma_r = 36, - Log = 37, - Log2 = 38, - Log10 = 39, - Log1p = 40, - Logb = 41, - Mad = 42, - Maxmag = 43, - Minmag = 44, - Modf = 45, - Nan = 46, - Nextafter = 47, - Pow = 48, - Pown = 49, - Powr = 50, - Remainder = 51, - Remquo = 52, - Rint = 53, - Rootn = 54, - Round = 55, - Rsqrt = 56, - Sin = 57, - Sincos = 58, - Sinh = 59, - Sinpi = 60, - Sqrt = 61, - Tan = 62, - Tanh = 63, - Tanpi = 64, - Tgamma = 65, - Trunc = 66, - Half_cos = 67, - Half_divide = 68, - Half_exp = 69, - Half_exp2 = 70, - Half_exp10 = 71, - Half_log = 72, - Half_log2 = 73, - Half_log10 = 74, - Half_powr = 75, - Half_recip = 76, - Half_rsqrt = 77, - Half_sin = 78, - Half_sqrt = 79, - Half_tan = 80, - Native_cos = 81, - Native_divide = 82, - Native_exp = 83, - Native_exp2 = 84, - Native_exp10 = 85, - Native_log = 86, - Native_log2 = 87, - Native_log10 = 88, - Native_powr = 89, - Native_recip = 90, - Native_rsqrt = 91, - Native_sin = 92, - Native_sqrt = 93, - Native_tan = 94, - - // Section 2.2: Integer instructions - SAbs = 141, - SAbs_diff = 142, - SAdd_sat = 143, - UAdd_sat = 144, - SHadd = 145, - UHadd = 146, - SRhadd = 147, - URhadd = 148, - SClamp = 149, - UClamp = 150, - Clz = 151, - Ctz = 152, - SMad_hi = 153, - UMad_sat = 154, - SMad_sat = 155, - SMax = 156, - UMax = 157, - SMin = 158, - UMin = 159, - SMul_hi = 160, - Rotate = 161, - SSub_sat = 162, - USub_sat = 163, - U_Upsample = 164, - S_Upsample = 165, - Popcount = 166, - SMad24 = 167, - UMad24 = 168, - SMul24 = 169, - UMul24 = 170, - UAbs = 201, - UAbs_diff = 202, - UMul_hi = 203, - UMad_hi = 204, - - // Section 2.3: Common instructions - FClamp = 95, - Degrees = 96, - FMax_common = 97, - FMin_common = 98, - Mix = 99, - Radians = 100, - Step = 101, - Smoothstep = 102, - Sign = 103, - - // Section 2.4: Geometric instructions - Cross = 104, - Distance = 105, - Length = 106, - Normalize = 107, - Fast_distance = 108, - Fast_length = 109, - Fast_normalize = 110, - - // Section 2.5: Relational instructions - Bitselect = 186, - Select = 187, - - // Section 2.6: Vector Data Load and Store instructions - Vloadn = 171, - Vstoren = 172, - Vload_half = 173, - Vload_halfn = 174, - Vstore_half = 175, - Vstore_half_r = 176, - Vstore_halfn = 177, - Vstore_halfn_r = 178, - Vloada_halfn = 179, - Vstorea_halfn = 180, - Vstorea_halfn_r = 181, - - // Section 2.7: Miscellaneous Vector instructions - Shuffle = 182, - Shuffle2 = 183, - - // Section 2.8: Misc instructions - Printf = 184, - Prefetch = 185, -}; - -} // end namespace OpenCLLIB diff --git a/Extern/3rdParty/shaderc/shaderc/include/spirv/1.1/extinst.glsl.std.450.grammar.json b/Extern/3rdParty/shaderc/shaderc/include/spirv/1.1/extinst.glsl.std.450.grammar.json deleted file mode 100644 index 3d9f39e..0000000 --- a/Extern/3rdParty/shaderc/shaderc/include/spirv/1.1/extinst.glsl.std.450.grammar.json +++ /dev/null @@ -1,642 +0,0 @@ -{ - "copyright" : [ - "Copyright (c) 2014-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." - ], - "version" : 100, - "revision" : 2, - "instructions" : [ - { - "opname" : "Round", - "opcode" : 1, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" } - ] - }, - { - "opname" : "RoundEven", - "opcode" : 2, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" } - ] - }, - { - "opname" : "Trunc", - "opcode" : 3, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" } - ] - }, - { - "opname" : "FAbs", - "opcode" : 4, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" } - ] - }, - { - "opname" : "SAbs", - "opcode" : 5, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" } - ] - }, - { - "opname" : "FSign", - "opcode" : 6, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" } - ] - }, - { - "opname" : "SSign", - "opcode" : 7, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" } - ] - }, - { - "opname" : "Floor", - "opcode" : 8, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" } - ] - }, - { - "opname" : "Ceil", - "opcode" : 9, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" } - ] - }, - { - "opname" : "Fract", - "opcode" : 10, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" } - ] - }, - { - "opname" : "Radians", - "opcode" : 11, - "operands" : [ - { "kind" : "IdRef", "name" : "'degrees'" } - ] - }, - { - "opname" : "Degrees", - "opcode" : 12, - "operands" : [ - { "kind" : "IdRef", "name" : "'radians'" } - ] - }, - { - "opname" : "Sin", - "opcode" : 13, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" } - ] - }, - { - "opname" : "Cos", - "opcode" : 14, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" } - ] - }, - { - "opname" : "Tan", - "opcode" : 15, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" } - ] - }, - { - "opname" : "Asin", - "opcode" : 16, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" } - ] - }, - { - "opname" : "Acos", - "opcode" : 17, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" } - ] - }, - { - "opname" : "Atan", - "opcode" : 18, - "operands" : [ - { "kind" : "IdRef", "name" : "'y_over_x'" } - ] - }, - { - "opname" : "Sinh", - "opcode" : 19, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" } - ] - }, - { - "opname" : "Cosh", - "opcode" : 20, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" } - ] - }, - { - "opname" : "Tanh", - "opcode" : 21, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" } - ] - }, - { - "opname" : "Asinh", - "opcode" : 22, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" } - ] - }, - { - "opname" : "Acosh", - "opcode" : 23, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" } - ] - }, - { - "opname" : "Atanh", - "opcode" : 24, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" } - ] - }, - { - "opname" : "Atan2", - "opcode" : 25, - "operands" : [ - { "kind" : "IdRef", "name" : "'y'" }, - { "kind" : "IdRef", "name" : "'x'" } - ] - }, - { - "opname" : "Pow", - "opcode" : 26, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" }, - { "kind" : "IdRef", "name" : "'y'" } - ] - }, - { - "opname" : "Exp", - "opcode" : 27, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" } - ] - }, - { - "opname" : "Log", - "opcode" : 28, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" } - ] - }, - { - "opname" : "Exp2", - "opcode" : 29, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" } - ] - }, - { - "opname" : "Log2", - "opcode" : 30, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" } - ] - }, - { - "opname" : "Sqrt", - "opcode" : 31, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" } - ] - }, - { - "opname" : "InverseSqrt", - "opcode" : 32, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" } - ] - }, - { - "opname" : "Determinant", - "opcode" : 33, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" } - ] - }, - { - "opname" : "MatrixInverse", - "opcode" : 34, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" } - ] - }, - { - "opname" : "Modf", - "opcode" : 35, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" }, - { "kind" : "IdRef", "name" : "'i'" } - ] - }, - { - "opname" : "ModfStruct", - "opcode" : 36, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" } - ] - }, - { - "opname" : "FMin", - "opcode" : 37, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" }, - { "kind" : "IdRef", "name" : "'y'" } - ] - }, - { - "opname" : "UMin", - "opcode" : 38, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" }, - { "kind" : "IdRef", "name" : "'y'" } - ] - }, - { - "opname" : "SMin", - "opcode" : 39, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" }, - { "kind" : "IdRef", "name" : "'y'" } - ] - }, - { - "opname" : "FMax", - "opcode" : 40, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" }, - { "kind" : "IdRef", "name" : "'y'" } - ] - }, - { - "opname" : "UMax", - "opcode" : 41, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" }, - { "kind" : "IdRef", "name" : "'y'" } - ] - }, - { - "opname" : "SMax", - "opcode" : 42, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" }, - { "kind" : "IdRef", "name" : "'y'" } - ] - }, - { - "opname" : "FClamp", - "opcode" : 43, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" }, - { "kind" : "IdRef", "name" : "'minVal'" }, - { "kind" : "IdRef", "name" : "'maxVal'" } - ] - }, - { - "opname" : "UClamp", - "opcode" : 44, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" }, - { "kind" : "IdRef", "name" : "'minVal'" }, - { "kind" : "IdRef", "name" : "'maxVal'" } - ] - }, - { - "opname" : "SClamp", - "opcode" : 45, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" }, - { "kind" : "IdRef", "name" : "'minVal'" }, - { "kind" : "IdRef", "name" : "'maxVal'" } - ] - }, - { - "opname" : "FMix", - "opcode" : 46, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" }, - { "kind" : "IdRef", "name" : "'y'" }, - { "kind" : "IdRef", "name" : "'a'" } - ] - }, - { - "opname" : "IMix", - "opcode" : 47, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" }, - { "kind" : "IdRef", "name" : "'y'" }, - { "kind" : "IdRef", "name" : "'a'" } - ] - }, - { - "opname" : "Step", - "opcode" : 48, - "operands" : [ - { "kind" : "IdRef", "name" : "'edge'" }, - { "kind" : "IdRef", "name" : "'x'" } - ] - }, - { - "opname" : "SmoothStep", - "opcode" : 49, - "operands" : [ - { "kind" : "IdRef", "name" : "'edge0'" }, - { "kind" : "IdRef", "name" : "'edge1'" }, - { "kind" : "IdRef", "name" : "'x'" } - ] - }, - { - "opname" : "Fma", - "opcode" : 50, - "operands" : [ - { "kind" : "IdRef", "name" : "'a'" }, - { "kind" : "IdRef", "name" : "'b'" }, - { "kind" : "IdRef", "name" : "'c'" } - ] - }, - { - "opname" : "Frexp", - "opcode" : 51, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" }, - { "kind" : "IdRef", "name" : "'exp'" } - ] - }, - { - "opname" : "FrexpStruct", - "opcode" : 52, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" } - ] - }, - { - "opname" : "Ldexp", - "opcode" : 53, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" }, - { "kind" : "IdRef", "name" : "'exp'" } - ] - }, - { - "opname" : "PackSnorm4x8", - "opcode" : 54, - "operands" : [ - { "kind" : "IdRef", "name" : "'v'" } - ] - }, - { - "opname" : "PackUnorm4x8", - "opcode" : 55, - "operands" : [ - { "kind" : "IdRef", "name" : "'v'" } - ] - }, - { - "opname" : "PackSnorm2x16", - "opcode" : 56, - "operands" : [ - { "kind" : "IdRef", "name" : "'v'" } - ] - }, - { - "opname" : "PackUnorm2x16", - "opcode" : 57, - "operands" : [ - { "kind" : "IdRef", "name" : "'v'" } - ] - }, - { - "opname" : "PackHalf2x16", - "opcode" : 58, - "operands" : [ - { "kind" : "IdRef", "name" : "'v'" } - ] - }, - { - "opname" : "PackDouble2x32", - "opcode" : 59, - "operands" : [ - { "kind" : "IdRef", "name" : "'v'" } - ], - "capabilities" : [ "Float64" ] - }, - { - "opname" : "UnpackSnorm2x16", - "opcode" : 60, - "operands" : [ - { "kind" : "IdRef", "name" : "'p'" } - ] - }, - { - "opname" : "UnpackUnorm2x16", - "opcode" : 61, - "operands" : [ - { "kind" : "IdRef", "name" : "'p'" } - ] - }, - { - "opname" : "UnpackHalf2x16", - "opcode" : 62, - "operands" : [ - { "kind" : "IdRef", "name" : "'v'" } - ] - }, - { - "opname" : "UnpackSnorm4x8", - "opcode" : 63, - "operands" : [ - { "kind" : "IdRef", "name" : "'p'" } - ] - }, - { - "opname" : "UnpackUnorm4x8", - "opcode" : 64, - "operands" : [ - { "kind" : "IdRef", "name" : "'p'" } - ] - }, - { - "opname" : "UnpackDouble2x32", - "opcode" : 65, - "operands" : [ - { "kind" : "IdRef", "name" : "'v'" } - ], - "capabilities" : [ "Float64" ] - }, - { - "opname" : "Length", - "opcode" : 66, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" } - ] - }, - { - "opname" : "Distance", - "opcode" : 67, - "operands" : [ - { "kind" : "IdRef", "name" : "'p0'" }, - { "kind" : "IdRef", "name" : "'p1'" } - ] - }, - { - "opname" : "Cross", - "opcode" : 68, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" }, - { "kind" : "IdRef", "name" : "'y'" } - ] - }, - { - "opname" : "Normalize", - "opcode" : 69, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" } - ] - }, - { - "opname" : "FaceForward", - "opcode" : 70, - "operands" : [ - { "kind" : "IdRef", "name" : "'N'" }, - { "kind" : "IdRef", "name" : "'I'" }, - { "kind" : "IdRef", "name" : "'Nref'" } - ] - }, - { - "opname" : "Reflect", - "opcode" : 71, - "operands" : [ - { "kind" : "IdRef", "name" : "'I'" }, - { "kind" : "IdRef", "name" : "'N'" } - ] - }, - { - "opname" : "Refract", - "opcode" : 72, - "operands" : [ - { "kind" : "IdRef", "name" : "'I'" }, - { "kind" : "IdRef", "name" : "'N'" }, - { "kind" : "IdRef", "name" : "'eta'" } - ] - }, - { - "opname" : "FindILsb", - "opcode" : 73, - "operands" : [ - { "kind" : "IdRef", "name" : "'Value'" } - ] - }, - { - "opname" : "FindSMsb", - "opcode" : 74, - "operands" : [ - { "kind" : "IdRef", "name" : "'Value'" } - ] - }, - { - "opname" : "FindUMsb", - "opcode" : 75, - "operands" : [ - { "kind" : "IdRef", "name" : "'Value'" } - ] - }, - { - "opname" : "InterpolateAtCentroid", - "opcode" : 76, - "operands" : [ - { "kind" : "IdRef", "name" : "'interpolant'" } - ], - "capabilities" : [ "InterpolationFunction" ] - }, - { - "opname" : "InterpolateAtSample", - "opcode" : 77, - "operands" : [ - { "kind" : "IdRef", "name" : "'interpolant'" }, - { "kind" : "IdRef", "name" : "'sample'" } - ], - "capabilities" : [ "InterpolationFunction" ] - }, - { - "opname" : "InterpolateAtOffset", - "opcode" : 78, - "operands" : [ - { "kind" : "IdRef", "name" : "'interpolant'" }, - { "kind" : "IdRef", "name" : "'offset'" } - ], - "capabilities" : [ "InterpolationFunction" ] - }, - { - "opname" : "NMin", - "opcode" : 79, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" }, - { "kind" : "IdRef", "name" : "'y'" } - ] - }, - { - "opname" : "NMax", - "opcode" : 80, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" }, - { "kind" : "IdRef", "name" : "'y'" } - ] - }, - { - "opname" : "NClamp", - "opcode" : 81, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" }, - { "kind" : "IdRef", "name" : "'minVal'" }, - { "kind" : "IdRef", "name" : "'maxVal'" } - ] - } - ] -} diff --git a/Extern/3rdParty/shaderc/shaderc/include/spirv/1.1/extinst.opencl.std.100.grammar.json b/Extern/3rdParty/shaderc/shaderc/include/spirv/1.1/extinst.opencl.std.100.grammar.json deleted file mode 100644 index 4fe4506..0000000 --- a/Extern/3rdParty/shaderc/shaderc/include/spirv/1.1/extinst.opencl.std.100.grammar.json +++ /dev/null @@ -1,1279 +0,0 @@ -{ - "copyright" : [ - "Copyright (c) 2014-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." - ], - "version" : 100, - "revision" : 2, - "instructions" : [ - { - "opname" : "acos", - "opcode" : 0, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" } - ] - }, - { - "opname" : "acosh", - "opcode" : 1, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" } - ] - }, - { - "opname" : "acospi", - "opcode" : 2, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" } - ] - }, - { - "opname" : "asin", - "opcode" : 3, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" } - ] - }, - { - "opname" : "asinh", - "opcode" : 4, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" } - ] - }, - { - "opname" : "asinpi", - "opcode" : 5, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" } - ] - }, - { - "opname" : "atan", - "opcode" : 6, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" } - ] - }, - { - "opname" : "atan2", - "opcode" : 7, - "operands" : [ - { "kind" : "IdRef", "name" : "'y'" }, - { "kind" : "IdRef", "name" : "'x'" } - ] - }, - { - "opname" : "atanh", - "opcode" : 8, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" } - ] - }, - { - "opname" : "atanpi", - "opcode" : 9, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" } - ] - }, - { - "opname" : "atan2pi", - "opcode" : 10, - "operands" : [ - { "kind" : "IdRef", "name" : "'y'" }, - { "kind" : "IdRef", "name" : "'x'" } - ] - }, - { - "opname" : "cbrt", - "opcode" : 11, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" } - ] - }, - { - "opname" : "ceil", - "opcode" : 12, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" } - ] - }, - { - "opname" : "copysign", - "opcode" : 13, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" }, - { "kind" : "IdRef", "name" : "'y'" } - ] - }, - { - "opname" : "cos", - "opcode" : 14, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" } - ] - }, - { - "opname" : "cosh", - "opcode" : 15, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" } - ] - }, - { - "opname" : "cospi", - "opcode" : 16, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" } - ] - }, - { - "opname" : "erfc", - "opcode" : 17, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" } - ] - }, - { - "opname" : "erf", - "opcode" : 18, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" } - ] - }, - { - "opname" : "exp", - "opcode" : 19, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" } - ] - }, - { - "opname" : "exp2", - "opcode" : 20, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" } - ] - }, - { - "opname" : "exp10", - "opcode" : 21, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" } - ] - }, - { - "opname" : "expm1", - "opcode" : 22, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" } - ] - }, - { - "opname" : "fabs", - "opcode" : 23, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" } - ] - }, - { - "opname" : "fdim", - "opcode" : 24, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" }, - { "kind" : "IdRef", "name" : "'y'" } - ] - }, - { - "opname" : "floor", - "opcode" : 25, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" } - ] - }, - { - "opname" : "fma", - "opcode" : 26, - "operands" : [ - { "kind" : "IdRef", "name" : "'a'" }, - { "kind" : "IdRef", "name" : "'b'" }, - { "kind" : "IdRef", "name" : "'c'" } - ] - }, - { - "opname" : "fmax", - "opcode" : 27, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" }, - { "kind" : "IdRef", "name" : "'y'" } - ] - }, - { - "opname" : "fmin", - "opcode" : 28, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" }, - { "kind" : "IdRef", "name" : "'y'" } - ] - }, - { - "opname" : "fmod", - "opcode" : 29, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" }, - { "kind" : "IdRef", "name" : "'y'" } - ] - }, - { - "opname" : "fract", - "opcode" : 30, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" }, - { "kind" : "IdRef", "name" : "'ptr'" } - ] - }, - { - "opname" : "frexp", - "opcode" : 31, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" }, - { "kind" : "IdRef", "name" : "'exp'" } - ] - }, - { - "opname" : "hypot", - "opcode" : 32, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" }, - { "kind" : "IdRef", "name" : "'y'" } - ] - }, - { - "opname" : "ilogb", - "opcode" : 33, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" } - ] - }, - { - "opname" : "ldexp", - "opcode" : 34, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" }, - { "kind" : "IdRef", "name" : "'k'" } - ] - }, - { - "opname" : "lgamma", - "opcode" : 35, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" } - ] - }, - { - "opname" : "lgamma_r", - "opcode" : 36, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" }, - { "kind" : "IdRef", "name" : "'signp'" } - ] - }, - { - "opname" : "log", - "opcode" : 37, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" } - ] - }, - { - "opname" : "log2", - "opcode" : 38, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" } - ] - }, - { - "opname" : "log10", - "opcode" : 39, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" } - ] - }, - { - "opname" : "log1p", - "opcode" : 40, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" } - ] - }, - { - "opname" : "logb", - "opcode" : 41, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" } - ] - }, - { - "opname" : "mad", - "opcode" : 42, - "operands" : [ - { "kind" : "IdRef", "name" : "'a'" }, - { "kind" : "IdRef", "name" : "'b'" }, - { "kind" : "IdRef", "name" : "'c'" } - ] - }, - { - "opname" : "maxmag", - "opcode" : 43, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" }, - { "kind" : "IdRef", "name" : "'y'" } - ] - }, - { - "opname" : "minmag", - "opcode" : 44, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" }, - { "kind" : "IdRef", "name" : "'y'" } - ] - }, - { - "opname" : "modf", - "opcode" : 45, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" }, - { "kind" : "IdRef", "name" : "'iptr'" } - ] - }, - { - "opname" : "nan", - "opcode" : 46, - "operands" : [ - { "kind" : "IdRef", "name" : "'nancode'" } - ] - }, - { - "opname" : "nextafter", - "opcode" : 47, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" }, - { "kind" : "IdRef", "name" : "'y'" } - ] - }, - { - "opname" : "pow", - "opcode" : 48, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" }, - { "kind" : "IdRef", "name" : "'y" } - ] - }, - { - "opname" : "pown", - "opcode" : 49, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" }, - { "kind" : "IdRef", "name" : "'y'" } - ] - }, - { - "opname" : "powr", - "opcode" : 50, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" }, - { "kind" : "IdRef", "name" : "'y'" } - ] - }, - { - "opname" : "remainder", - "opcode" : 51, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" }, - { "kind" : "IdRef", "name" : "'y'" } - ] - }, - { - "opname" : "remquo", - "opcode" : 52, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" }, - { "kind" : "IdRef", "name" : "'y'" }, - { "kind" : "IdRef", "name" : "'quo'" } - ] - }, - { - "opname" : "rint", - "opcode" : 53, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" } - ] - }, - { - "opname" : "rootn", - "opcode" : 54, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" }, - { "kind" : "IdRef", "name" : "'y'" } - ] - }, - { - "opname" : "round", - "opcode" : 55, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" } - ] - }, - { - "opname" : "rsqrt", - "opcode" : 56, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" } - ] - }, - { - "opname" : "sin", - "opcode" : 57, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" } - ] - }, - { - "opname" : "sincos", - "opcode" : 58, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" }, - { "kind" : "IdRef", "name" : "'cosval'" } - ] - }, - { - "opname" : "sinh", - "opcode" : 59, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" } - ] - }, - { - "opname" : "sinpi", - "opcode" : 60, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" } - ] - }, - { - "opname" : "sqrt", - "opcode" : 61, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" } - ] - }, - { - "opname" : "tan", - "opcode" : 62, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" } - ] - }, - { - "opname" : "tanh", - "opcode" : 63, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" } - ] - }, - { - "opname" : "tanpi", - "opcode" : 64, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" } - ] - }, - { - "opname" : "tgamma", - "opcode" : 65, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" } - ] - }, - { - "opname" : "trunc", - "opcode" : 66, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" } - ] - }, - { - "opname" : "half_cos", - "opcode" : 67, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" } - ] - }, - { - "opname" : "half_divide", - "opcode" : 68, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" }, - { "kind" : "IdRef", "name" : "'y'" } - ] - }, - { - "opname" : "half_exp", - "opcode" : 69, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" } - ] - }, - { - "opname" : "half_exp2", - "opcode" : 70, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" } - ] - }, - { - "opname" : "half_exp10", - "opcode" : 71, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" } - ] - }, - { - "opname" : "half_log", - "opcode" : 72, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" } - ] - }, - { - "opname" : "half_log2", - "opcode" : 73, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" } - ] - }, - { - "opname" : "half_log10", - "opcode" : 74, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" } - ] - }, - { - "opname" : "half_powr", - "opcode" : 75, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" }, - { "kind" : "IdRef", "name" : "'y'" } - ] - }, - { - "opname" : "half_recip", - "opcode" : 76, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" } - ] - }, - { - "opname" : "half_rsqrt", - "opcode" : 77, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" } - ] - }, - { - "opname" : "half_sin", - "opcode" : 78, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" } - ] - }, - { - "opname" : "half_sqrt", - "opcode" : 79, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" } - ] - }, - { - "opname" : "half_tan", - "opcode" : 80, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" } - ] - }, - { - "opname" : "native_cos", - "opcode" : 81, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" } - ] - }, - { - "opname" : "native_divide", - "opcode" : 82, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" }, - { "kind" : "IdRef", "name" : "'y'" } - ] - }, - { - "opname" : "native_exp", - "opcode" : 83, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" } - ] - }, - { - "opname" : "native_exp2", - "opcode" : 84, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" } - ] - }, - { - "opname" : "native_exp10", - "opcode" : 85, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" } - ] - }, - { - "opname" : "native_log", - "opcode" : 86, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" } - ] - }, - { - "opname" : "native_log2", - "opcode" : 87, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" } - ] - }, - { - "opname" : "native_log10", - "opcode" : 88, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" } - ] - }, - { - "opname" : "native_powr", - "opcode" : 89, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" }, - { "kind" : "IdRef", "name" : "'y'" } - ] - }, - { - "opname" : "native_recip", - "opcode" : 90, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" } - ] - }, - { - "opname" : "native_rsqrt", - "opcode" : 91, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" } - ] - }, - { - "opname" : "native_sin", - "opcode" : 92, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" } - ] - }, - { - "opname" : "native_sqrt", - "opcode" : 93, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" } - ] - }, - { - "opname" : "native_tan", - "opcode" : 94, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" } - ] - }, - { - "opname" : "s_abs", - "opcode" : 141, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" } - ] - }, - { - "opname" : "s_abs_diff", - "opcode" : 142, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" }, - { "kind" : "IdRef", "name" : "'y'" } - ] - }, - { - "opname" : "s_add_sat", - "opcode" : 143, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" }, - { "kind" : "IdRef", "name" : "'y'" } - ] - }, - { - "opname" : "u_add_sat", - "opcode" : 144, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" }, - { "kind" : "IdRef", "name" : "'y'" } - ] - }, - { - "opname" : "s_hadd", - "opcode" : 145, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" }, - { "kind" : "IdRef", "name" : "'y'" } - ] - }, - { - "opname" : "u_hadd", - "opcode" : 146, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" }, - { "kind" : "IdRef", "name" : "'y'" } - ] - }, - { - "opname" : "s_rhadd", - "opcode" : 147, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" }, - { "kind" : "IdRef", "name" : "'y'" } - ] - }, - { - "opname" : "u_rhadd", - "opcode" : 148, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" }, - { "kind" : "IdRef", "name" : "'y'" } - ] - }, - { - "opname" : "s_clamp", - "opcode" : 149, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" }, - { "kind" : "IdRef", "name" : "'minval'" }, - { "kind" : "IdRef", "name" : "'maxval'" } - ] - }, - { - "opname" : "u_clamp", - "opcode" : 150, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" }, - { "kind" : "IdRef", "name" : "'minval'" }, - { "kind" : "IdRef", "name" : "'maxval'" } - ] - }, - { - "opname" : "clz", - "opcode" : 151, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" } - ] - }, - { - "opname" : "ctz", - "opcode" : 152, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" } - ] - }, - { - "opname" : "s_mad_hi", - "opcode" : 153, - "operands" : [ - { "kind" : "IdRef", "name" : "'a'" }, - { "kind" : "IdRef", "name" : "'b'" }, - { "kind" : "IdRef", "name" : "'c'" } - ] - }, - { - "opname" : "u_mad_sat", - "opcode" : 154, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" }, - { "kind" : "IdRef", "name" : "'y'" }, - { "kind" : "IdRef", "name" : "'z'" } - ] - }, - { - "opname" : "s_mad_sat", - "opcode" : 155, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" }, - { "kind" : "IdRef", "name" : "'y'" }, - { "kind" : "IdRef", "name" : "'z'" } - ] - }, - { - "opname" : "s_max", - "opcode" : 156, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" }, - { "kind" : "IdRef", "name" : "'y'" } - ] - }, - { - "opname" : "u_max", - "opcode" : 157, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" }, - { "kind" : "IdRef", "name" : "'y'" } - ] - }, - { - "opname" : "s_min", - "opcode" : 158, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" }, - { "kind" : "IdRef", "name" : "'y'" } - ] - }, - { - "opname" : "u_min", - "opcode" : 159, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" }, - { "kind" : "IdRef", "name" : "'y'" } - ] - }, - { - "opname" : "s_mul_hi", - "opcode" : 160, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" }, - { "kind" : "IdRef", "name" : "'y'" } - ] - }, - { - "opname" : "rotate", - "opcode" : 161, - "operands" : [ - { "kind" : "IdRef", "name" : "'v'" }, - { "kind" : "IdRef", "name" : "'i'" } - ] - }, - { - "opname" : "s_sub_sat", - "opcode" : 162, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" }, - { "kind" : "IdRef", "name" : "'y'" } - ] - }, - { - "opname" : "u_sub_sat", - "opcode" : 163, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" }, - { "kind" : "IdRef", "name" : "'y'" } - ] - }, - { - "opname" : "u_upsample", - "opcode" : 164, - "operands" : [ - { "kind" : "IdRef", "name" : "'hi'" }, - { "kind" : "IdRef", "name" : "'lo'" } - ] - }, - { - "opname" : "s_upsample", - "opcode" : 165, - "operands" : [ - { "kind" : "IdRef", "name" : "'hi'" }, - { "kind" : "IdRef", "name" : "'lo'" } - ] - }, - { - "opname" : "popcount", - "opcode" : 166, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" } - ] - }, - { - "opname" : "s_mad24", - "opcode" : 167, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" }, - { "kind" : "IdRef", "name" : "'y'" }, - { "kind" : "IdRef", "name" : "'z'" } - ] - }, - { - "opname" : "u_mad24", - "opcode" : 168, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" }, - { "kind" : "IdRef", "name" : "'y'" }, - { "kind" : "IdRef", "name" : "'z'" } - ] - }, - { - "opname" : "s_mul24", - "opcode" : 169, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" }, - { "kind" : "IdRef", "name" : "'y'" } - ] - }, - { - "opname" : "u_mul24", - "opcode" : 170, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" }, - { "kind" : "IdRef", "name" : "'y'" } - ] - }, - { - "opname" : "u_abs", - "opcode" : 201, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" } - ] - }, - { - "opname" : "u_abs_diff", - "opcode" : 202, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" }, - { "kind" : "IdRef", "name" : "'y'" } - ] - }, - { - "opname" : "u_mul_hi", - "opcode" : 203, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" }, - { "kind" : "IdRef", "name" : "'y'" } - ] - }, - { - "opname" : "u_mad_hi", - "opcode" : 204, - "operands" : [ - { "kind" : "IdRef", "name" : "'a'" }, - { "kind" : "IdRef", "name" : "'b'" }, - { "kind" : "IdRef", "name" : "'c'" } - ] - }, - { - "opname" : "fclamp", - "opcode" : 95, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" }, - { "kind" : "IdRef", "name" : "'minval'" }, - { "kind" : "IdRef", "name" : "'maxval'" } - ] - }, - { - "opname" : "degrees", - "opcode" :96, - "operands" : [ - { "kind" : "IdRef", "name" : "'radians'" } - ] - }, - { - "opname" : "fmax_common", - "opcode" : 97, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" }, - { "kind" : "IdRef", "name" : "'y'" } - ] - }, - { - "opname" : "fmin_common", - "opcode" : 98, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" }, - { "kind" : "IdRef", "name" : "'y'" } - ] - }, - { - "opname" : "mix", - "opcode" : 99, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" }, - { "kind" : "IdRef", "name" : "'y'" }, - { "kind" : "IdRef", "name" : "'a'" } - ] - }, - { - "opname" : "radians", - "opcode" : 100, - "operands" : [ - { "kind" : "IdRef", "name" : "'degrees'" } - ] - }, - { - "opname" : "step", - "opcode" : 101, - "operands" : [ - { "kind" : "IdRef", "name" : "'edge'" }, - { "kind" : "IdRef", "name" : "'x'" } - ] - }, - { - "opname" : "smoothstep", - "opcode" : 102, - "operands" : [ - { "kind" : "IdRef", "name" : "'edge0'" }, - { "kind" : "IdRef", "name" : "'edge1'" }, - { "kind" : "IdRef", "name" : "'x'" } - ] - }, - { - "opname" : "sign", - "opcode" : 103, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" } - ] - }, - { - "opname" : "cross", - "opcode" : 104, - "operands" : [ - { "kind" : "IdRef", "name" : "'p0'" }, - { "kind" : "IdRef", "name" : "'p1'" } - ] - }, - { - "opname" : "distance", - "opcode" : 105, - "operands" : [ - { "kind" : "IdRef", "name" : "'p0'" }, - { "kind" : "IdRef", "name" : "'p1'" } - ] - }, - { - "opname" : "length", - "opcode" : 106, - "operands" : [ - { "kind" : "IdRef", "name" : "'p'" } - ] - }, - { - "opname" : "normalize", - "opcode" : 107, - "operands" : [ - { "kind" : "IdRef", "name" : "'p'" } - ] - }, - { - "opname" : "fast_distance", - "opcode" : 108, - "operands" : [ - { "kind" : "IdRef", "name" : "'p0'" }, - { "kind" : "IdRef", "name" : "'p1'" } - ] - }, - { - "opname" : "fast_length", - "opcode" : 109, - "operands" : [ - { "kind" : "IdRef", "name" : "'p'" } - ] - }, - { - "opname" : "fast_normalize", - "opcode" : 110, - "operands" : [ - { "kind" : "IdRef", "name" : "'p'" } - ] - }, - { - "opname" : "bitselect", - "opcode" : 186, - "operands" : [ - { "kind" : "IdRef", "name" : "'a'" }, - { "kind" : "IdRef", "name" : "'b'" }, - { "kind" : "IdRef", "name" : "'c'" } - ] - }, - { - "opname" : "select", - "opcode" : 187, - "operands" : [ - { "kind" : "IdRef", "name" : "'a'" }, - { "kind" : "IdRef", "name" : "'b'" }, - { "kind" : "IdRef", "name" : "'c'" } - ] - }, - { - "opname" : "vloadn", - "opcode" : 171, - "operands" : [ - { "kind" : "IdRef", "name" : "'offset'" }, - { "kind" : "IdRef", "name" : "'p'" }, - { "kind" : "LiteralInteger", "name" : "'n'" } - ] - }, - { - "opname" : "vstoren", - "opcode" : 172, - "operands" : [ - { "kind" : "IdRef", "name" : "'data'" }, - { "kind" : "IdRef", "name" : "'offset'" }, - { "kind" : "IdRef", "name" : "'p'" } - ] - }, - { - "opname" : "vload_half", - "opcode" : 173, - "operands" : [ - { "kind" : "IdRef", "name" : "'offset'" }, - { "kind" : "IdRef", "name" : "'p'" } - ] - }, - { - "opname" : "vload_halfn", - "opcode" : 174, - "operands" : [ - { "kind" : "IdRef", "name" : "'offset'" }, - { "kind" : "IdRef", "name" : "'p'" }, - { "kind" : "LiteralInteger", "name" : "'n'" } - ] - }, - { - "opname" : "vstore_half", - "opcode" : 175, - "operands" : [ - { "kind" : "IdRef", "name" : "'data'" }, - { "kind" : "IdRef", "name" : "'offset'" }, - { "kind" : "IdRef", "name" : "'p'" } - ] - }, - { - "opname" : "vstore_half_r", - "opcode" : 176, - "operands" : [ - { "kind" : "IdRef", "name" : "'data'" }, - { "kind" : "IdRef", "name" : "'offset'" }, - { "kind" : "IdRef", "name" : "'p'" }, - { "kind" : "FPRoundingMode", "name" : "'mode'" } - ] - }, - { - "opname" : "vstore_halfn", - "opcode" : 177, - "operands" : [ - { "kind" : "IdRef", "name" : "'data'" }, - { "kind" : "IdRef", "name" : "'offset'" }, - { "kind" : "IdRef", "name" : "'p'" } - ] - }, - { - "opname" : "vstore_halfn_r", - "opcode" : 178, - "operands" : [ - { "kind" : "IdRef", "name" : "'data'" }, - { "kind" : "IdRef", "name" : "'offset'" }, - { "kind" : "IdRef", "name" : "'p'" }, - { "kind" : "FPRoundingMode", "name" : "'mode'" } - ] - }, - { - "opname" : "vloada_halfn", - "opcode" : 179, - "operands" : [ - { "kind" : "IdRef", "name" : "'offset'" }, - { "kind" : "IdRef", "name" : "'p'" }, - { "kind" : "LiteralInteger", "name" : "'n'" } - ] - }, - { - "opname" : "vstorea_halfn", - "opcode" : 180, - "operands" : [ - { "kind" : "IdRef", "name" : "'data'" }, - { "kind" : "IdRef", "name" : "'offset'" }, - { "kind" : "IdRef", "name" : "'p'" } - ] - }, - { - "opname" : "vstorea_halfn_r", - "opcode" : 181, - "operands" : [ - { "kind" : "IdRef", "name" : "'data'" }, - { "kind" : "IdRef", "name" : "'offset'" }, - { "kind" : "IdRef", "name" : "'p'" }, - { "kind" : "FPRoundingMode", "name" : "'mode'" } - ] - }, - { - "opname" : "shuffle", - "opcode" : 182, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" }, - { "kind" : "IdRef", "name" : "'shuffle mask'" } - ] - }, - { - "opname" : "shuffle2", - "opcode" : 183, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" }, - { "kind" : "IdRef", "name" : "'y'" }, - { "kind" : "IdRef", "name" : "'shuffle mask'" } - ] - }, - { - "opname" : "printf", - "opcode" : 184, - "operands" : [ - { "kind" : "IdRef", "name" : "'format'" }, - { "kind" : "IdRef", "name" : "'additional arguments'", "quantifier" : "*" } - ] - }, - { - "opname" : "prefetch", - "opcode" : 185, - "operands" : [ - { "kind" : "IdRef", "name" : "'ptr'" }, - { "kind" : "IdRef", "name" : "'num elements'" } - ] - } - ] -} diff --git a/Extern/3rdParty/shaderc/shaderc/include/spirv/1.1/spirv.core.grammar.json b/Extern/3rdParty/shaderc/shaderc/include/spirv/1.1/spirv.core.grammar.json deleted file mode 100644 index c142e60..0000000 --- a/Extern/3rdParty/shaderc/shaderc/include/spirv/1.1/spirv.core.grammar.json +++ /dev/null @@ -1,5938 +0,0 @@ -{ - "copyright" : [ - "Copyright (c) 2014-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." - ], - "magic_number" : "0x07230203", - "major_version" : 1, - "minor_version" : 1, - "revision" : 8, - "instructions" : [ - { - "opname" : "OpNop", - "opcode" : 0 - }, - { - "opname" : "OpUndef", - "opcode" : 1, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" } - ] - }, - { - "opname" : "OpSourceContinued", - "opcode" : 2, - "operands" : [ - { "kind" : "LiteralString", "name" : "'Continued Source'" } - ] - }, - { - "opname" : "OpSource", - "opcode" : 3, - "operands" : [ - { "kind" : "SourceLanguage" }, - { "kind" : "LiteralInteger", "name" : "'Version'" }, - { "kind" : "IdRef", "quantifier" : "?", "name" : "'File'" }, - { "kind" : "LiteralString", "quantifier" : "?", "name" : "'Source'" } - ] - }, - { - "opname" : "OpSourceExtension", - "opcode" : 4, - "operands" : [ - { "kind" : "LiteralString", "name" : "'Extension'" } - ] - }, - { - "opname" : "OpName", - "opcode" : 5, - "operands" : [ - { "kind" : "IdRef", "name" : "'Target'" }, - { "kind" : "LiteralString", "name" : "'Name'" } - ] - }, - { - "opname" : "OpMemberName", - "opcode" : 6, - "operands" : [ - { "kind" : "IdRef", "name" : "'Type'" }, - { "kind" : "LiteralInteger", "name" : "'Member'" }, - { "kind" : "LiteralString", "name" : "'Name'" } - ] - }, - { - "opname" : "OpString", - "opcode" : 7, - "operands" : [ - { "kind" : "IdResult" }, - { "kind" : "LiteralString", "name" : "'String'" } - ] - }, - { - "opname" : "OpLine", - "opcode" : 8, - "operands" : [ - { "kind" : "IdRef", "name" : "'File'" }, - { "kind" : "LiteralInteger", "name" : "'Line'" }, - { "kind" : "LiteralInteger", "name" : "'Column'" } - ] - }, - { - "opname" : "OpExtension", - "opcode" : 10, - "operands" : [ - { "kind" : "LiteralString", "name" : "'Name'" } - ] - }, - { - "opname" : "OpExtInstImport", - "opcode" : 11, - "operands" : [ - { "kind" : "IdResult" }, - { "kind" : "LiteralString", "name" : "'Name'" } - ] - }, - { - "opname" : "OpExtInst", - "opcode" : 12, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Set'" }, - { "kind" : "LiteralExtInstInteger", "name" : "'Instruction'" }, - { "kind" : "IdRef", "quantifier" : "*", "name" : "'Operand 1', +\n'Operand 2', +\n..." } - ] - }, - { - "opname" : "OpMemoryModel", - "opcode" : 14, - "operands" : [ - { "kind" : "AddressingModel" }, - { "kind" : "MemoryModel" } - ] - }, - { - "opname" : "OpEntryPoint", - "opcode" : 15, - "operands" : [ - { "kind" : "ExecutionModel" }, - { "kind" : "IdRef", "name" : "'Entry Point'" }, - { "kind" : "LiteralString", "name" : "'Name'" }, - { "kind" : "IdRef", "quantifier" : "*", "name" : "'Interface'" } - ] - }, - { - "opname" : "OpExecutionMode", - "opcode" : 16, - "operands" : [ - { "kind" : "IdRef", "name" : "'Entry Point'" }, - { "kind" : "ExecutionMode", "name" : "'Mode'" } - ] - }, - { - "opname" : "OpCapability", - "opcode" : 17, - "operands" : [ - { "kind" : "Capability", "name" : "'Capability'" } - ] - }, - { - "opname" : "OpTypeVoid", - "opcode" : 19, - "operands" : [ - { "kind" : "IdResult" } - ] - }, - { - "opname" : "OpTypeBool", - "opcode" : 20, - "operands" : [ - { "kind" : "IdResult" } - ] - }, - { - "opname" : "OpTypeInt", - "opcode" : 21, - "operands" : [ - { "kind" : "IdResult" }, - { "kind" : "LiteralInteger", "name" : "'Width'" }, - { "kind" : "LiteralInteger", "name" : "'Signedness'" } - ] - }, - { - "opname" : "OpTypeFloat", - "opcode" : 22, - "operands" : [ - { "kind" : "IdResult" }, - { "kind" : "LiteralInteger", "name" : "'Width'" } - ] - }, - { - "opname" : "OpTypeVector", - "opcode" : 23, - "operands" : [ - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Component Type'" }, - { "kind" : "LiteralInteger", "name" : "'Component Count'" } - ] - }, - { - "opname" : "OpTypeMatrix", - "opcode" : 24, - "operands" : [ - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Column Type'" }, - { "kind" : "LiteralInteger", "name" : "'Column Count'" } - ], - "capabilities" : [ "Matrix" ] - }, - { - "opname" : "OpTypeImage", - "opcode" : 25, - "operands" : [ - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Sampled Type'" }, - { "kind" : "Dim" }, - { "kind" : "LiteralInteger", "name" : "'Depth'" }, - { "kind" : "LiteralInteger", "name" : "'Arrayed'" }, - { "kind" : "LiteralInteger", "name" : "'MS'" }, - { "kind" : "LiteralInteger", "name" : "'Sampled'" }, - { "kind" : "ImageFormat" }, - { "kind" : "AccessQualifier", "quantifier" : "?" } - ] - }, - { - "opname" : "OpTypeSampler", - "opcode" : 26, - "operands" : [ - { "kind" : "IdResult" } - ] - }, - { - "opname" : "OpTypeSampledImage", - "opcode" : 27, - "operands" : [ - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Image Type'" } - ] - }, - { - "opname" : "OpTypeArray", - "opcode" : 28, - "operands" : [ - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Element Type'" }, - { "kind" : "IdRef", "name" : "'Length'" } - ] - }, - { - "opname" : "OpTypeRuntimeArray", - "opcode" : 29, - "operands" : [ - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Element Type'" } - ], - "capabilities" : [ "Shader" ] - }, - { - "opname" : "OpTypeStruct", - "opcode" : 30, - "operands" : [ - { "kind" : "IdResult" }, - { "kind" : "IdRef", "quantifier" : "*", "name" : "'Member 0 type', +\n'member 1 type', +\n..." } - ] - }, - { - "opname" : "OpTypeOpaque", - "opcode" : 31, - "operands" : [ - { "kind" : "IdResult" }, - { "kind" : "LiteralString", "name" : "The name of the opaque type." } - ], - "capabilities" : [ "Kernel" ] - }, - { - "opname" : "OpTypePointer", - "opcode" : 32, - "operands" : [ - { "kind" : "IdResult" }, - { "kind" : "StorageClass" }, - { "kind" : "IdRef", "name" : "'Type'" } - ] - }, - { - "opname" : "OpTypeFunction", - "opcode" : 33, - "operands" : [ - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Return Type'" }, - { "kind" : "IdRef", "quantifier" : "*", "name" : "'Parameter 0 Type', +\n'Parameter 1 Type', +\n..." } - ] - }, - { - "opname" : "OpTypeEvent", - "opcode" : 34, - "operands" : [ - { "kind" : "IdResult" } - ], - "capabilities" : [ "Kernel" ] - }, - { - "opname" : "OpTypeDeviceEvent", - "opcode" : 35, - "operands" : [ - { "kind" : "IdResult" } - ], - "capabilities" : [ "DeviceEnqueue" ] - }, - { - "opname" : "OpTypeReserveId", - "opcode" : 36, - "operands" : [ - { "kind" : "IdResult" } - ], - "capabilities" : [ "Pipes" ] - }, - { - "opname" : "OpTypeQueue", - "opcode" : 37, - "operands" : [ - { "kind" : "IdResult" } - ], - "capabilities" : [ "DeviceEnqueue" ] - }, - { - "opname" : "OpTypePipe", - "opcode" : 38, - "operands" : [ - { "kind" : "IdResult" }, - { "kind" : "AccessQualifier", "name" : "'Qualifier'" } - ], - "capabilities" : [ "Pipes" ] - }, - { - "opname" : "OpTypeForwardPointer", - "opcode" : 39, - "operands" : [ - { "kind" : "IdRef", "name" : "'Pointer Type'" }, - { "kind" : "StorageClass" } - ], - "capabilities" : [ "Addresses" ] - }, - { - "opname" : "OpConstantTrue", - "opcode" : 41, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" } - ] - }, - { - "opname" : "OpConstantFalse", - "opcode" : 42, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" } - ] - }, - { - "opname" : "OpConstant", - "opcode" : 43, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "LiteralContextDependentNumber", "name" : "'Value'" } - ] - }, - { - "opname" : "OpConstantComposite", - "opcode" : 44, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "quantifier" : "*", "name" : "'Constituents'" } - ] - }, - { - "opname" : "OpConstantSampler", - "opcode" : 45, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "SamplerAddressingMode" }, - { "kind" : "LiteralInteger", "name" : "'Param'" }, - { "kind" : "SamplerFilterMode" } - ], - "capabilities" : [ "LiteralSampler" ] - }, - { - "opname" : "OpConstantNull", - "opcode" : 46, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" } - ] - }, - { - "opname" : "OpSpecConstantTrue", - "opcode" : 48, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" } - ] - }, - { - "opname" : "OpSpecConstantFalse", - "opcode" : 49, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" } - ] - }, - { - "opname" : "OpSpecConstant", - "opcode" : 50, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "LiteralContextDependentNumber", "name" : "'Value'" } - ] - }, - { - "opname" : "OpSpecConstantComposite", - "opcode" : 51, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "quantifier" : "*", "name" : "'Constituents'" } - ] - }, - { - "opname" : "OpSpecConstantOp", - "opcode" : 52, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "LiteralSpecConstantOpInteger", "name" : "'Opcode'" } - ] - }, - { - "opname" : "OpFunction", - "opcode" : 54, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "FunctionControl" }, - { "kind" : "IdRef", "name" : "'Function Type'" } - ] - }, - { - "opname" : "OpFunctionParameter", - "opcode" : 55, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" } - ] - }, - { - "opname" : "OpFunctionEnd", - "opcode" : 56 - }, - { - "opname" : "OpFunctionCall", - "opcode" : 57, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Function'" }, - { "kind" : "IdRef", "quantifier" : "*", "name" : "'Argument 0', +\n'Argument 1', +\n..." } - ] - }, - { - "opname" : "OpVariable", - "opcode" : 59, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "StorageClass" }, - { "kind" : "IdRef", "quantifier" : "?", "name" : "'Initializer'" } - ] - }, - { - "opname" : "OpImageTexelPointer", - "opcode" : 60, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Image'" }, - { "kind" : "IdRef", "name" : "'Coordinate'" }, - { "kind" : "IdRef", "name" : "'Sample'" } - ] - }, - { - "opname" : "OpLoad", - "opcode" : 61, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Pointer'" }, - { "kind" : "MemoryAccess", "quantifier" : "?" } - ] - }, - { - "opname" : "OpStore", - "opcode" : 62, - "operands" : [ - { "kind" : "IdRef", "name" : "'Pointer'" }, - { "kind" : "IdRef", "name" : "'Object'" }, - { "kind" : "MemoryAccess", "quantifier" : "?" } - ] - }, - { - "opname" : "OpCopyMemory", - "opcode" : 63, - "operands" : [ - { "kind" : "IdRef", "name" : "'Target'" }, - { "kind" : "IdRef", "name" : "'Source'" }, - { "kind" : "MemoryAccess", "quantifier" : "?" } - ] - }, - { - "opname" : "OpCopyMemorySized", - "opcode" : 64, - "operands" : [ - { "kind" : "IdRef", "name" : "'Target'" }, - { "kind" : "IdRef", "name" : "'Source'" }, - { "kind" : "IdRef", "name" : "'Size'" }, - { "kind" : "MemoryAccess", "quantifier" : "?" } - ], - "capabilities" : [ "Addresses" ] - }, - { - "opname" : "OpAccessChain", - "opcode" : 65, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Base'" }, - { "kind" : "IdRef", "quantifier" : "*", "name" : "'Indexes'" } - ] - }, - { - "opname" : "OpInBoundsAccessChain", - "opcode" : 66, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Base'" }, - { "kind" : "IdRef", "quantifier" : "*", "name" : "'Indexes'" } - ] - }, - { - "opname" : "OpPtrAccessChain", - "opcode" : 67, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Base'" }, - { "kind" : "IdRef", "name" : "'Element'" }, - { "kind" : "IdRef", "quantifier" : "*", "name" : "'Indexes'" } - ], - "capabilities" : [ - "Addresses", - "VariablePointers", - "VariablePointersStorageBuffer" - ] - }, - { - "opname" : "OpArrayLength", - "opcode" : 68, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Structure'" }, - { "kind" : "LiteralInteger", "name" : "'Array member'" } - ], - "capabilities" : [ "Shader" ] - }, - { - "opname" : "OpGenericPtrMemSemantics", - "opcode" : 69, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Pointer'" } - ], - "capabilities" : [ "Kernel" ] - }, - { - "opname" : "OpInBoundsPtrAccessChain", - "opcode" : 70, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Base'" }, - { "kind" : "IdRef", "name" : "'Element'" }, - { "kind" : "IdRef", "quantifier" : "*", "name" : "'Indexes'" } - ], - "capabilities" : [ "Addresses" ] - }, - { - "opname" : "OpDecorate", - "opcode" : 71, - "operands" : [ - { "kind" : "IdRef", "name" : "'Target'" }, - { "kind" : "Decoration" } - ] - }, - { - "opname" : "OpMemberDecorate", - "opcode" : 72, - "operands" : [ - { "kind" : "IdRef", "name" : "'Structure Type'" }, - { "kind" : "LiteralInteger", "name" : "'Member'" }, - { "kind" : "Decoration" } - ] - }, - { - "opname" : "OpDecorationGroup", - "opcode" : 73, - "operands" : [ - { "kind" : "IdResult" } - ] - }, - { - "opname" : "OpGroupDecorate", - "opcode" : 74, - "operands" : [ - { "kind" : "IdRef", "name" : "'Decoration Group'" }, - { "kind" : "IdRef", "quantifier" : "*", "name" : "'Targets'" } - ] - }, - { - "opname" : "OpGroupMemberDecorate", - "opcode" : 75, - "operands" : [ - { "kind" : "IdRef", "name" : "'Decoration Group'" }, - { "kind" : "PairIdRefLiteralInteger", "quantifier" : "*", "name" : "'Targets'" } - ] - }, - { - "opname" : "OpVectorExtractDynamic", - "opcode" : 77, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Vector'" }, - { "kind" : "IdRef", "name" : "'Index'" } - ] - }, - { - "opname" : "OpVectorInsertDynamic", - "opcode" : 78, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Vector'" }, - { "kind" : "IdRef", "name" : "'Component'" }, - { "kind" : "IdRef", "name" : "'Index'" } - ] - }, - { - "opname" : "OpVectorShuffle", - "opcode" : 79, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Vector 1'" }, - { "kind" : "IdRef", "name" : "'Vector 2'" }, - { "kind" : "LiteralInteger", "quantifier" : "*", "name" : "'Components'" } - ] - }, - { - "opname" : "OpCompositeConstruct", - "opcode" : 80, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "quantifier" : "*", "name" : "'Constituents'" } - ] - }, - { - "opname" : "OpCompositeExtract", - "opcode" : 81, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Composite'" }, - { "kind" : "LiteralInteger", "quantifier" : "*", "name" : "'Indexes'" } - ] - }, - { - "opname" : "OpCompositeInsert", - "opcode" : 82, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Object'" }, - { "kind" : "IdRef", "name" : "'Composite'" }, - { "kind" : "LiteralInteger", "quantifier" : "*", "name" : "'Indexes'" } - ] - }, - { - "opname" : "OpCopyObject", - "opcode" : 83, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Operand'" } - ] - }, - { - "opname" : "OpTranspose", - "opcode" : 84, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Matrix'" } - ], - "capabilities" : [ "Matrix" ] - }, - { - "opname" : "OpSampledImage", - "opcode" : 86, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Image'" }, - { "kind" : "IdRef", "name" : "'Sampler'" } - ] - }, - { - "opname" : "OpImageSampleImplicitLod", - "opcode" : 87, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Sampled Image'" }, - { "kind" : "IdRef", "name" : "'Coordinate'" }, - { "kind" : "ImageOperands", "quantifier" : "?" } - ], - "capabilities" : [ "Shader" ] - }, - { - "opname" : "OpImageSampleExplicitLod", - "opcode" : 88, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Sampled Image'" }, - { "kind" : "IdRef", "name" : "'Coordinate'" }, - { "kind" : "ImageOperands" } - ] - }, - { - "opname" : "OpImageSampleDrefImplicitLod", - "opcode" : 89, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Sampled Image'" }, - { "kind" : "IdRef", "name" : "'Coordinate'" }, - { "kind" : "IdRef", "name" : "'D~ref~'" }, - { "kind" : "ImageOperands", "quantifier" : "?" } - ], - "capabilities" : [ "Shader" ] - }, - { - "opname" : "OpImageSampleDrefExplicitLod", - "opcode" : 90, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Sampled Image'" }, - { "kind" : "IdRef", "name" : "'Coordinate'" }, - { "kind" : "IdRef", "name" : "'D~ref~'" }, - { "kind" : "ImageOperands" } - ], - "capabilities" : [ "Shader" ] - }, - { - "opname" : "OpImageSampleProjImplicitLod", - "opcode" : 91, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Sampled Image'" }, - { "kind" : "IdRef", "name" : "'Coordinate'" }, - { "kind" : "ImageOperands", "quantifier" : "?" } - ], - "capabilities" : [ "Shader" ] - }, - { - "opname" : "OpImageSampleProjExplicitLod", - "opcode" : 92, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Sampled Image'" }, - { "kind" : "IdRef", "name" : "'Coordinate'" }, - { "kind" : "ImageOperands" } - ], - "capabilities" : [ "Shader" ] - }, - { - "opname" : "OpImageSampleProjDrefImplicitLod", - "opcode" : 93, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Sampled Image'" }, - { "kind" : "IdRef", "name" : "'Coordinate'" }, - { "kind" : "IdRef", "name" : "'D~ref~'" }, - { "kind" : "ImageOperands", "quantifier" : "?" } - ], - "capabilities" : [ "Shader" ] - }, - { - "opname" : "OpImageSampleProjDrefExplicitLod", - "opcode" : 94, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Sampled Image'" }, - { "kind" : "IdRef", "name" : "'Coordinate'" }, - { "kind" : "IdRef", "name" : "'D~ref~'" }, - { "kind" : "ImageOperands" } - ], - "capabilities" : [ "Shader" ] - }, - { - "opname" : "OpImageFetch", - "opcode" : 95, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Image'" }, - { "kind" : "IdRef", "name" : "'Coordinate'" }, - { "kind" : "ImageOperands", "quantifier" : "?" } - ] - }, - { - "opname" : "OpImageGather", - "opcode" : 96, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Sampled Image'" }, - { "kind" : "IdRef", "name" : "'Coordinate'" }, - { "kind" : "IdRef", "name" : "'Component'" }, - { "kind" : "ImageOperands", "quantifier" : "?" } - ], - "capabilities" : [ "Shader" ] - }, - { - "opname" : "OpImageDrefGather", - "opcode" : 97, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Sampled Image'" }, - { "kind" : "IdRef", "name" : "'Coordinate'" }, - { "kind" : "IdRef", "name" : "'D~ref~'" }, - { "kind" : "ImageOperands", "quantifier" : "?" } - ], - "capabilities" : [ "Shader" ] - }, - { - "opname" : "OpImageRead", - "opcode" : 98, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Image'" }, - { "kind" : "IdRef", "name" : "'Coordinate'" }, - { "kind" : "ImageOperands", "quantifier" : "?" } - ] - }, - { - "opname" : "OpImageWrite", - "opcode" : 99, - "operands" : [ - { "kind" : "IdRef", "name" : "'Image'" }, - { "kind" : "IdRef", "name" : "'Coordinate'" }, - { "kind" : "IdRef", "name" : "'Texel'" }, - { "kind" : "ImageOperands", "quantifier" : "?" } - ] - }, - { - "opname" : "OpImage", - "opcode" : 100, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Sampled Image'" } - ] - }, - { - "opname" : "OpImageQueryFormat", - "opcode" : 101, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Image'" } - ], - "capabilities" : [ "Kernel" ] - }, - { - "opname" : "OpImageQueryOrder", - "opcode" : 102, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Image'" } - ], - "capabilities" : [ "Kernel" ] - }, - { - "opname" : "OpImageQuerySizeLod", - "opcode" : 103, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Image'" }, - { "kind" : "IdRef", "name" : "'Level of Detail'" } - ], - "capabilities" : [ "Kernel", "ImageQuery" ] - }, - { - "opname" : "OpImageQuerySize", - "opcode" : 104, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Image'" } - ], - "capabilities" : [ "Kernel", "ImageQuery" ] - }, - { - "opname" : "OpImageQueryLod", - "opcode" : 105, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Sampled Image'" }, - { "kind" : "IdRef", "name" : "'Coordinate'" } - ], - "capabilities" : [ "ImageQuery" ] - }, - { - "opname" : "OpImageQueryLevels", - "opcode" : 106, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Image'" } - ], - "capabilities" : [ "Kernel", "ImageQuery" ] - }, - { - "opname" : "OpImageQuerySamples", - "opcode" : 107, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Image'" } - ], - "capabilities" : [ "Kernel", "ImageQuery" ] - }, - { - "opname" : "OpConvertFToU", - "opcode" : 109, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Float Value'" } - ] - }, - { - "opname" : "OpConvertFToS", - "opcode" : 110, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Float Value'" } - ] - }, - { - "opname" : "OpConvertSToF", - "opcode" : 111, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Signed Value'" } - ] - }, - { - "opname" : "OpConvertUToF", - "opcode" : 112, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Unsigned Value'" } - ] - }, - { - "opname" : "OpUConvert", - "opcode" : 113, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Unsigned Value'" } - ] - }, - { - "opname" : "OpSConvert", - "opcode" : 114, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Signed Value'" } - ] - }, - { - "opname" : "OpFConvert", - "opcode" : 115, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Float Value'" } - ] - }, - { - "opname" : "OpQuantizeToF16", - "opcode" : 116, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Value'" } - ] - }, - { - "opname" : "OpConvertPtrToU", - "opcode" : 117, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Pointer'" } - ], - "capabilities" : [ "Addresses" ] - }, - { - "opname" : "OpSatConvertSToU", - "opcode" : 118, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Signed Value'" } - ], - "capabilities" : [ "Kernel" ] - }, - { - "opname" : "OpSatConvertUToS", - "opcode" : 119, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Unsigned Value'" } - ], - "capabilities" : [ "Kernel" ] - }, - { - "opname" : "OpConvertUToPtr", - "opcode" : 120, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Integer Value'" } - ], - "capabilities" : [ "Addresses" ] - }, - { - "opname" : "OpPtrCastToGeneric", - "opcode" : 121, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Pointer'" } - ], - "capabilities" : [ "Kernel" ] - }, - { - "opname" : "OpGenericCastToPtr", - "opcode" : 122, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Pointer'" } - ], - "capabilities" : [ "Kernel" ] - }, - { - "opname" : "OpGenericCastToPtrExplicit", - "opcode" : 123, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Pointer'" }, - { "kind" : "StorageClass", "name" : "'Storage'" } - ], - "capabilities" : [ "Kernel" ] - }, - { - "opname" : "OpBitcast", - "opcode" : 124, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Operand'" } - ] - }, - { - "opname" : "OpSNegate", - "opcode" : 126, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Operand'" } - ] - }, - { - "opname" : "OpFNegate", - "opcode" : 127, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Operand'" } - ] - }, - { - "opname" : "OpIAdd", - "opcode" : 128, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Operand 1'" }, - { "kind" : "IdRef", "name" : "'Operand 2'" } - ] - }, - { - "opname" : "OpFAdd", - "opcode" : 129, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Operand 1'" }, - { "kind" : "IdRef", "name" : "'Operand 2'" } - ] - }, - { - "opname" : "OpISub", - "opcode" : 130, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Operand 1'" }, - { "kind" : "IdRef", "name" : "'Operand 2'" } - ] - }, - { - "opname" : "OpFSub", - "opcode" : 131, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Operand 1'" }, - { "kind" : "IdRef", "name" : "'Operand 2'" } - ] - }, - { - "opname" : "OpIMul", - "opcode" : 132, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Operand 1'" }, - { "kind" : "IdRef", "name" : "'Operand 2'" } - ] - }, - { - "opname" : "OpFMul", - "opcode" : 133, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Operand 1'" }, - { "kind" : "IdRef", "name" : "'Operand 2'" } - ] - }, - { - "opname" : "OpUDiv", - "opcode" : 134, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Operand 1'" }, - { "kind" : "IdRef", "name" : "'Operand 2'" } - ] - }, - { - "opname" : "OpSDiv", - "opcode" : 135, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Operand 1'" }, - { "kind" : "IdRef", "name" : "'Operand 2'" } - ] - }, - { - "opname" : "OpFDiv", - "opcode" : 136, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Operand 1'" }, - { "kind" : "IdRef", "name" : "'Operand 2'" } - ] - }, - { - "opname" : "OpUMod", - "opcode" : 137, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Operand 1'" }, - { "kind" : "IdRef", "name" : "'Operand 2'" } - ] - }, - { - "opname" : "OpSRem", - "opcode" : 138, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Operand 1'" }, - { "kind" : "IdRef", "name" : "'Operand 2'" } - ] - }, - { - "opname" : "OpSMod", - "opcode" : 139, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Operand 1'" }, - { "kind" : "IdRef", "name" : "'Operand 2'" } - ] - }, - { - "opname" : "OpFRem", - "opcode" : 140, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Operand 1'" }, - { "kind" : "IdRef", "name" : "'Operand 2'" } - ] - }, - { - "opname" : "OpFMod", - "opcode" : 141, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Operand 1'" }, - { "kind" : "IdRef", "name" : "'Operand 2'" } - ] - }, - { - "opname" : "OpVectorTimesScalar", - "opcode" : 142, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Vector'" }, - { "kind" : "IdRef", "name" : "'Scalar'" } - ] - }, - { - "opname" : "OpMatrixTimesScalar", - "opcode" : 143, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Matrix'" }, - { "kind" : "IdRef", "name" : "'Scalar'" } - ], - "capabilities" : [ "Matrix" ] - }, - { - "opname" : "OpVectorTimesMatrix", - "opcode" : 144, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Vector'" }, - { "kind" : "IdRef", "name" : "'Matrix'" } - ], - "capabilities" : [ "Matrix" ] - }, - { - "opname" : "OpMatrixTimesVector", - "opcode" : 145, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Matrix'" }, - { "kind" : "IdRef", "name" : "'Vector'" } - ], - "capabilities" : [ "Matrix" ] - }, - { - "opname" : "OpMatrixTimesMatrix", - "opcode" : 146, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'LeftMatrix'" }, - { "kind" : "IdRef", "name" : "'RightMatrix'" } - ], - "capabilities" : [ "Matrix" ] - }, - { - "opname" : "OpOuterProduct", - "opcode" : 147, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Vector 1'" }, - { "kind" : "IdRef", "name" : "'Vector 2'" } - ], - "capabilities" : [ "Matrix" ] - }, - { - "opname" : "OpDot", - "opcode" : 148, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Vector 1'" }, - { "kind" : "IdRef", "name" : "'Vector 2'" } - ] - }, - { - "opname" : "OpIAddCarry", - "opcode" : 149, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Operand 1'" }, - { "kind" : "IdRef", "name" : "'Operand 2'" } - ] - }, - { - "opname" : "OpISubBorrow", - "opcode" : 150, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Operand 1'" }, - { "kind" : "IdRef", "name" : "'Operand 2'" } - ] - }, - { - "opname" : "OpUMulExtended", - "opcode" : 151, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Operand 1'" }, - { "kind" : "IdRef", "name" : "'Operand 2'" } - ] - }, - { - "opname" : "OpSMulExtended", - "opcode" : 152, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Operand 1'" }, - { "kind" : "IdRef", "name" : "'Operand 2'" } - ] - }, - { - "opname" : "OpAny", - "opcode" : 154, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Vector'" } - ] - }, - { - "opname" : "OpAll", - "opcode" : 155, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Vector'" } - ] - }, - { - "opname" : "OpIsNan", - "opcode" : 156, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'x'" } - ] - }, - { - "opname" : "OpIsInf", - "opcode" : 157, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'x'" } - ] - }, - { - "opname" : "OpIsFinite", - "opcode" : 158, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'x'" } - ], - "capabilities" : [ "Kernel" ] - }, - { - "opname" : "OpIsNormal", - "opcode" : 159, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'x'" } - ], - "capabilities" : [ "Kernel" ] - }, - { - "opname" : "OpSignBitSet", - "opcode" : 160, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'x'" } - ], - "capabilities" : [ "Kernel" ] - }, - { - "opname" : "OpLessOrGreater", - "opcode" : 161, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'x'" }, - { "kind" : "IdRef", "name" : "'y'" } - ], - "capabilities" : [ "Kernel" ] - }, - { - "opname" : "OpOrdered", - "opcode" : 162, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'x'" }, - { "kind" : "IdRef", "name" : "'y'" } - ], - "capabilities" : [ "Kernel" ] - }, - { - "opname" : "OpUnordered", - "opcode" : 163, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'x'" }, - { "kind" : "IdRef", "name" : "'y'" } - ], - "capabilities" : [ "Kernel" ] - }, - { - "opname" : "OpLogicalEqual", - "opcode" : 164, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Operand 1'" }, - { "kind" : "IdRef", "name" : "'Operand 2'" } - ] - }, - { - "opname" : "OpLogicalNotEqual", - "opcode" : 165, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Operand 1'" }, - { "kind" : "IdRef", "name" : "'Operand 2'" } - ] - }, - { - "opname" : "OpLogicalOr", - "opcode" : 166, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Operand 1'" }, - { "kind" : "IdRef", "name" : "'Operand 2'" } - ] - }, - { - "opname" : "OpLogicalAnd", - "opcode" : 167, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Operand 1'" }, - { "kind" : "IdRef", "name" : "'Operand 2'" } - ] - }, - { - "opname" : "OpLogicalNot", - "opcode" : 168, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Operand'" } - ] - }, - { - "opname" : "OpSelect", - "opcode" : 169, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Condition'" }, - { "kind" : "IdRef", "name" : "'Object 1'" }, - { "kind" : "IdRef", "name" : "'Object 2'" } - ] - }, - { - "opname" : "OpIEqual", - "opcode" : 170, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Operand 1'" }, - { "kind" : "IdRef", "name" : "'Operand 2'" } - ] - }, - { - "opname" : "OpINotEqual", - "opcode" : 171, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Operand 1'" }, - { "kind" : "IdRef", "name" : "'Operand 2'" } - ] - }, - { - "opname" : "OpUGreaterThan", - "opcode" : 172, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Operand 1'" }, - { "kind" : "IdRef", "name" : "'Operand 2'" } - ] - }, - { - "opname" : "OpSGreaterThan", - "opcode" : 173, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Operand 1'" }, - { "kind" : "IdRef", "name" : "'Operand 2'" } - ] - }, - { - "opname" : "OpUGreaterThanEqual", - "opcode" : 174, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Operand 1'" }, - { "kind" : "IdRef", "name" : "'Operand 2'" } - ] - }, - { - "opname" : "OpSGreaterThanEqual", - "opcode" : 175, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Operand 1'" }, - { "kind" : "IdRef", "name" : "'Operand 2'" } - ] - }, - { - "opname" : "OpULessThan", - "opcode" : 176, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Operand 1'" }, - { "kind" : "IdRef", "name" : "'Operand 2'" } - ] - }, - { - "opname" : "OpSLessThan", - "opcode" : 177, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Operand 1'" }, - { "kind" : "IdRef", "name" : "'Operand 2'" } - ] - }, - { - "opname" : "OpULessThanEqual", - "opcode" : 178, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Operand 1'" }, - { "kind" : "IdRef", "name" : "'Operand 2'" } - ] - }, - { - "opname" : "OpSLessThanEqual", - "opcode" : 179, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Operand 1'" }, - { "kind" : "IdRef", "name" : "'Operand 2'" } - ] - }, - { - "opname" : "OpFOrdEqual", - "opcode" : 180, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Operand 1'" }, - { "kind" : "IdRef", "name" : "'Operand 2'" } - ] - }, - { - "opname" : "OpFUnordEqual", - "opcode" : 181, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Operand 1'" }, - { "kind" : "IdRef", "name" : "'Operand 2'" } - ] - }, - { - "opname" : "OpFOrdNotEqual", - "opcode" : 182, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Operand 1'" }, - { "kind" : "IdRef", "name" : "'Operand 2'" } - ] - }, - { - "opname" : "OpFUnordNotEqual", - "opcode" : 183, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Operand 1'" }, - { "kind" : "IdRef", "name" : "'Operand 2'" } - ] - }, - { - "opname" : "OpFOrdLessThan", - "opcode" : 184, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Operand 1'" }, - { "kind" : "IdRef", "name" : "'Operand 2'" } - ] - }, - { - "opname" : "OpFUnordLessThan", - "opcode" : 185, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Operand 1'" }, - { "kind" : "IdRef", "name" : "'Operand 2'" } - ] - }, - { - "opname" : "OpFOrdGreaterThan", - "opcode" : 186, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Operand 1'" }, - { "kind" : "IdRef", "name" : "'Operand 2'" } - ] - }, - { - "opname" : "OpFUnordGreaterThan", - "opcode" : 187, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Operand 1'" }, - { "kind" : "IdRef", "name" : "'Operand 2'" } - ] - }, - { - "opname" : "OpFOrdLessThanEqual", - "opcode" : 188, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Operand 1'" }, - { "kind" : "IdRef", "name" : "'Operand 2'" } - ] - }, - { - "opname" : "OpFUnordLessThanEqual", - "opcode" : 189, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Operand 1'" }, - { "kind" : "IdRef", "name" : "'Operand 2'" } - ] - }, - { - "opname" : "OpFOrdGreaterThanEqual", - "opcode" : 190, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Operand 1'" }, - { "kind" : "IdRef", "name" : "'Operand 2'" } - ] - }, - { - "opname" : "OpFUnordGreaterThanEqual", - "opcode" : 191, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Operand 1'" }, - { "kind" : "IdRef", "name" : "'Operand 2'" } - ] - }, - { - "opname" : "OpShiftRightLogical", - "opcode" : 194, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Base'" }, - { "kind" : "IdRef", "name" : "'Shift'" } - ] - }, - { - "opname" : "OpShiftRightArithmetic", - "opcode" : 195, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Base'" }, - { "kind" : "IdRef", "name" : "'Shift'" } - ] - }, - { - "opname" : "OpShiftLeftLogical", - "opcode" : 196, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Base'" }, - { "kind" : "IdRef", "name" : "'Shift'" } - ] - }, - { - "opname" : "OpBitwiseOr", - "opcode" : 197, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Operand 1'" }, - { "kind" : "IdRef", "name" : "'Operand 2'" } - ] - }, - { - "opname" : "OpBitwiseXor", - "opcode" : 198, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Operand 1'" }, - { "kind" : "IdRef", "name" : "'Operand 2'" } - ] - }, - { - "opname" : "OpBitwiseAnd", - "opcode" : 199, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Operand 1'" }, - { "kind" : "IdRef", "name" : "'Operand 2'" } - ] - }, - { - "opname" : "OpNot", - "opcode" : 200, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Operand'" } - ] - }, - { - "opname" : "OpBitFieldInsert", - "opcode" : 201, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Base'" }, - { "kind" : "IdRef", "name" : "'Insert'" }, - { "kind" : "IdRef", "name" : "'Offset'" }, - { "kind" : "IdRef", "name" : "'Count'" } - ], - "capabilities" : [ "Shader" ] - }, - { - "opname" : "OpBitFieldSExtract", - "opcode" : 202, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Base'" }, - { "kind" : "IdRef", "name" : "'Offset'" }, - { "kind" : "IdRef", "name" : "'Count'" } - ], - "capabilities" : [ "Shader" ] - }, - { - "opname" : "OpBitFieldUExtract", - "opcode" : 203, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Base'" }, - { "kind" : "IdRef", "name" : "'Offset'" }, - { "kind" : "IdRef", "name" : "'Count'" } - ], - "capabilities" : [ "Shader" ] - }, - { - "opname" : "OpBitReverse", - "opcode" : 204, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Base'" } - ], - "capabilities" : [ "Shader" ] - }, - { - "opname" : "OpBitCount", - "opcode" : 205, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Base'" } - ] - }, - { - "opname" : "OpDPdx", - "opcode" : 207, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'P'" } - ], - "capabilities" : [ "Shader" ] - }, - { - "opname" : "OpDPdy", - "opcode" : 208, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'P'" } - ], - "capabilities" : [ "Shader" ] - }, - { - "opname" : "OpFwidth", - "opcode" : 209, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'P'" } - ], - "capabilities" : [ "Shader" ] - }, - { - "opname" : "OpDPdxFine", - "opcode" : 210, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'P'" } - ], - "capabilities" : [ "DerivativeControl" ] - }, - { - "opname" : "OpDPdyFine", - "opcode" : 211, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'P'" } - ], - "capabilities" : [ "DerivativeControl" ] - }, - { - "opname" : "OpFwidthFine", - "opcode" : 212, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'P'" } - ], - "capabilities" : [ "DerivativeControl" ] - }, - { - "opname" : "OpDPdxCoarse", - "opcode" : 213, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'P'" } - ], - "capabilities" : [ "DerivativeControl" ] - }, - { - "opname" : "OpDPdyCoarse", - "opcode" : 214, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'P'" } - ], - "capabilities" : [ "DerivativeControl" ] - }, - { - "opname" : "OpFwidthCoarse", - "opcode" : 215, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'P'" } - ], - "capabilities" : [ "DerivativeControl" ] - }, - { - "opname" : "OpEmitVertex", - "opcode" : 218, - "capabilities" : [ "Geometry" ] - }, - { - "opname" : "OpEndPrimitive", - "opcode" : 219, - "capabilities" : [ "Geometry" ] - }, - { - "opname" : "OpEmitStreamVertex", - "opcode" : 220, - "operands" : [ - { "kind" : "IdRef", "name" : "'Stream'" } - ], - "capabilities" : [ "GeometryStreams" ] - }, - { - "opname" : "OpEndStreamPrimitive", - "opcode" : 221, - "operands" : [ - { "kind" : "IdRef", "name" : "'Stream'" } - ], - "capabilities" : [ "GeometryStreams" ] - }, - { - "opname" : "OpControlBarrier", - "opcode" : 224, - "operands" : [ - { "kind" : "IdScope", "name" : "'Execution'" }, - { "kind" : "IdScope", "name" : "'Memory'" }, - { "kind" : "IdMemorySemantics", "name" : "'Semantics'" } - ] - }, - { - "opname" : "OpMemoryBarrier", - "opcode" : 225, - "operands" : [ - { "kind" : "IdScope", "name" : "'Memory'" }, - { "kind" : "IdMemorySemantics", "name" : "'Semantics'" } - ] - }, - { - "opname" : "OpAtomicLoad", - "opcode" : 227, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Pointer'" }, - { "kind" : "IdScope", "name" : "'Scope'" }, - { "kind" : "IdMemorySemantics", "name" : "'Semantics'" } - ] - }, - { - "opname" : "OpAtomicStore", - "opcode" : 228, - "operands" : [ - { "kind" : "IdRef", "name" : "'Pointer'" }, - { "kind" : "IdScope", "name" : "'Scope'" }, - { "kind" : "IdMemorySemantics", "name" : "'Semantics'" }, - { "kind" : "IdRef", "name" : "'Value'" } - ] - }, - { - "opname" : "OpAtomicExchange", - "opcode" : 229, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Pointer'" }, - { "kind" : "IdScope", "name" : "'Scope'" }, - { "kind" : "IdMemorySemantics", "name" : "'Semantics'" }, - { "kind" : "IdRef", "name" : "'Value'" } - ] - }, - { - "opname" : "OpAtomicCompareExchange", - "opcode" : 230, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Pointer'" }, - { "kind" : "IdScope", "name" : "'Scope'" }, - { "kind" : "IdMemorySemantics", "name" : "'Equal'" }, - { "kind" : "IdMemorySemantics", "name" : "'Unequal'" }, - { "kind" : "IdRef", "name" : "'Value'" }, - { "kind" : "IdRef", "name" : "'Comparator'" } - ] - }, - { - "opname" : "OpAtomicCompareExchangeWeak", - "opcode" : 231, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Pointer'" }, - { "kind" : "IdScope", "name" : "'Scope'" }, - { "kind" : "IdMemorySemantics", "name" : "'Equal'" }, - { "kind" : "IdMemorySemantics", "name" : "'Unequal'" }, - { "kind" : "IdRef", "name" : "'Value'" }, - { "kind" : "IdRef", "name" : "'Comparator'" } - ], - "capabilities" : [ "Kernel" ] - }, - { - "opname" : "OpAtomicIIncrement", - "opcode" : 232, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Pointer'" }, - { "kind" : "IdScope", "name" : "'Scope'" }, - { "kind" : "IdMemorySemantics", "name" : "'Semantics'" } - ] - }, - { - "opname" : "OpAtomicIDecrement", - "opcode" : 233, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Pointer'" }, - { "kind" : "IdScope", "name" : "'Scope'" }, - { "kind" : "IdMemorySemantics", "name" : "'Semantics'" } - ] - }, - { - "opname" : "OpAtomicIAdd", - "opcode" : 234, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Pointer'" }, - { "kind" : "IdScope", "name" : "'Scope'" }, - { "kind" : "IdMemorySemantics", "name" : "'Semantics'" }, - { "kind" : "IdRef", "name" : "'Value'" } - ] - }, - { - "opname" : "OpAtomicISub", - "opcode" : 235, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Pointer'" }, - { "kind" : "IdScope", "name" : "'Scope'" }, - { "kind" : "IdMemorySemantics", "name" : "'Semantics'" }, - { "kind" : "IdRef", "name" : "'Value'" } - ] - }, - { - "opname" : "OpAtomicSMin", - "opcode" : 236, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Pointer'" }, - { "kind" : "IdScope", "name" : "'Scope'" }, - { "kind" : "IdMemorySemantics", "name" : "'Semantics'" }, - { "kind" : "IdRef", "name" : "'Value'" } - ] - }, - { - "opname" : "OpAtomicUMin", - "opcode" : 237, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Pointer'" }, - { "kind" : "IdScope", "name" : "'Scope'" }, - { "kind" : "IdMemorySemantics", "name" : "'Semantics'" }, - { "kind" : "IdRef", "name" : "'Value'" } - ] - }, - { - "opname" : "OpAtomicSMax", - "opcode" : 238, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Pointer'" }, - { "kind" : "IdScope", "name" : "'Scope'" }, - { "kind" : "IdMemorySemantics", "name" : "'Semantics'" }, - { "kind" : "IdRef", "name" : "'Value'" } - ] - }, - { - "opname" : "OpAtomicUMax", - "opcode" : 239, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Pointer'" }, - { "kind" : "IdScope", "name" : "'Scope'" }, - { "kind" : "IdMemorySemantics", "name" : "'Semantics'" }, - { "kind" : "IdRef", "name" : "'Value'" } - ] - }, - { - "opname" : "OpAtomicAnd", - "opcode" : 240, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Pointer'" }, - { "kind" : "IdScope", "name" : "'Scope'" }, - { "kind" : "IdMemorySemantics", "name" : "'Semantics'" }, - { "kind" : "IdRef", "name" : "'Value'" } - ] - }, - { - "opname" : "OpAtomicOr", - "opcode" : 241, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Pointer'" }, - { "kind" : "IdScope", "name" : "'Scope'" }, - { "kind" : "IdMemorySemantics", "name" : "'Semantics'" }, - { "kind" : "IdRef", "name" : "'Value'" } - ] - }, - { - "opname" : "OpAtomicXor", - "opcode" : 242, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Pointer'" }, - { "kind" : "IdScope", "name" : "'Scope'" }, - { "kind" : "IdMemorySemantics", "name" : "'Semantics'" }, - { "kind" : "IdRef", "name" : "'Value'" } - ] - }, - { - "opname" : "OpPhi", - "opcode" : 245, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "PairIdRefIdRef", "quantifier" : "*", "name" : "'Variable, Parent, ...'" } - ] - }, - { - "opname" : "OpLoopMerge", - "opcode" : 246, - "operands" : [ - { "kind" : "IdRef", "name" : "'Merge Block'" }, - { "kind" : "IdRef", "name" : "'Continue Target'" }, - { "kind" : "LoopControl" } - ] - }, - { - "opname" : "OpSelectionMerge", - "opcode" : 247, - "operands" : [ - { "kind" : "IdRef", "name" : "'Merge Block'" }, - { "kind" : "SelectionControl" } - ] - }, - { - "opname" : "OpLabel", - "opcode" : 248, - "operands" : [ - { "kind" : "IdResult" } - ] - }, - { - "opname" : "OpBranch", - "opcode" : 249, - "operands" : [ - { "kind" : "IdRef", "name" : "'Target Label'" } - ] - }, - { - "opname" : "OpBranchConditional", - "opcode" : 250, - "operands" : [ - { "kind" : "IdRef", "name" : "'Condition'" }, - { "kind" : "IdRef", "name" : "'True Label'" }, - { "kind" : "IdRef", "name" : "'False Label'" }, - { "kind" : "LiteralInteger", "quantifier" : "*", "name" : "'Branch weights'" } - ] - }, - { - "opname" : "OpSwitch", - "opcode" : 251, - "operands" : [ - { "kind" : "IdRef", "name" : "'Selector'" }, - { "kind" : "IdRef", "name" : "'Default'" }, - { "kind" : "PairLiteralIntegerIdRef", "quantifier" : "*", "name" : "'Target'" } - ] - }, - { - "opname" : "OpKill", - "opcode" : 252, - "capabilities" : [ "Shader" ] - }, - { - "opname" : "OpReturn", - "opcode" : 253 - }, - { - "opname" : "OpReturnValue", - "opcode" : 254, - "operands" : [ - { "kind" : "IdRef", "name" : "'Value'" } - ] - }, - { - "opname" : "OpUnreachable", - "opcode" : 255 - }, - { - "opname" : "OpLifetimeStart", - "opcode" : 256, - "operands" : [ - { "kind" : "IdRef", "name" : "'Pointer'" }, - { "kind" : "LiteralInteger", "name" : "'Size'" } - ], - "capabilities" : [ "Kernel" ] - }, - { - "opname" : "OpLifetimeStop", - "opcode" : 257, - "operands" : [ - { "kind" : "IdRef", "name" : "'Pointer'" }, - { "kind" : "LiteralInteger", "name" : "'Size'" } - ], - "capabilities" : [ "Kernel" ] - }, - { - "opname" : "OpGroupAsyncCopy", - "opcode" : 259, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdScope", "name" : "'Execution'" }, - { "kind" : "IdRef", "name" : "'Destination'" }, - { "kind" : "IdRef", "name" : "'Source'" }, - { "kind" : "IdRef", "name" : "'Num Elements'" }, - { "kind" : "IdRef", "name" : "'Stride'" }, - { "kind" : "IdRef", "name" : "'Event'" } - ], - "capabilities" : [ "Kernel" ] - }, - { - "opname" : "OpGroupWaitEvents", - "opcode" : 260, - "operands" : [ - { "kind" : "IdScope", "name" : "'Execution'" }, - { "kind" : "IdRef", "name" : "'Num Events'" }, - { "kind" : "IdRef", "name" : "'Events List'" } - ], - "capabilities" : [ "Kernel" ] - }, - { - "opname" : "OpGroupAll", - "opcode" : 261, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdScope", "name" : "'Execution'" }, - { "kind" : "IdRef", "name" : "'Predicate'" } - ], - "capabilities" : [ "Groups" ] - }, - { - "opname" : "OpGroupAny", - "opcode" : 262, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdScope", "name" : "'Execution'" }, - { "kind" : "IdRef", "name" : "'Predicate'" } - ], - "capabilities" : [ "Groups" ] - }, - { - "opname" : "OpGroupBroadcast", - "opcode" : 263, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdScope", "name" : "'Execution'" }, - { "kind" : "IdRef", "name" : "'Value'" }, - { "kind" : "IdRef", "name" : "'LocalId'" } - ], - "capabilities" : [ "Groups" ] - }, - { - "opname" : "OpGroupIAdd", - "opcode" : 264, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdScope", "name" : "'Execution'" }, - { "kind" : "GroupOperation", "name" : "'Operation'" }, - { "kind" : "IdRef", "name" : "'X'" } - ], - "capabilities" : [ "Groups" ] - }, - { - "opname" : "OpGroupFAdd", - "opcode" : 265, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdScope", "name" : "'Execution'" }, - { "kind" : "GroupOperation", "name" : "'Operation'" }, - { "kind" : "IdRef", "name" : "'X'" } - ], - "capabilities" : [ "Groups" ] - }, - { - "opname" : "OpGroupFMin", - "opcode" : 266, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdScope", "name" : "'Execution'" }, - { "kind" : "GroupOperation", "name" : "'Operation'" }, - { "kind" : "IdRef", "name" : "'X'" } - ], - "capabilities" : [ "Groups" ] - }, - { - "opname" : "OpGroupUMin", - "opcode" : 267, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdScope", "name" : "'Execution'" }, - { "kind" : "GroupOperation", "name" : "'Operation'" }, - { "kind" : "IdRef", "name" : "'X'" } - ], - "capabilities" : [ "Groups" ] - }, - { - "opname" : "OpGroupSMin", - "opcode" : 268, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdScope", "name" : "'Execution'" }, - { "kind" : "GroupOperation", "name" : "'Operation'" }, - { "kind" : "IdRef", "name" : "'X'" } - ], - "capabilities" : [ "Groups" ] - }, - { - "opname" : "OpGroupFMax", - "opcode" : 269, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdScope", "name" : "'Execution'" }, - { "kind" : "GroupOperation", "name" : "'Operation'" }, - { "kind" : "IdRef", "name" : "'X'" } - ], - "capabilities" : [ "Groups" ] - }, - { - "opname" : "OpGroupUMax", - "opcode" : 270, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdScope", "name" : "'Execution'" }, - { "kind" : "GroupOperation", "name" : "'Operation'" }, - { "kind" : "IdRef", "name" : "'X'" } - ], - "capabilities" : [ "Groups" ] - }, - { - "opname" : "OpGroupSMax", - "opcode" : 271, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdScope", "name" : "'Execution'" }, - { "kind" : "GroupOperation", "name" : "'Operation'" }, - { "kind" : "IdRef", "name" : "'X'" } - ], - "capabilities" : [ "Groups" ] - }, - { - "opname" : "OpReadPipe", - "opcode" : 274, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Pipe'" }, - { "kind" : "IdRef", "name" : "'Pointer'" }, - { "kind" : "IdRef", "name" : "'Packet Size'" }, - { "kind" : "IdRef", "name" : "'Packet Alignment'" } - ], - "capabilities" : [ "Pipes" ] - }, - { - "opname" : "OpWritePipe", - "opcode" : 275, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Pipe'" }, - { "kind" : "IdRef", "name" : "'Pointer'" }, - { "kind" : "IdRef", "name" : "'Packet Size'" }, - { "kind" : "IdRef", "name" : "'Packet Alignment'" } - ], - "capabilities" : [ "Pipes" ] - }, - { - "opname" : "OpReservedReadPipe", - "opcode" : 276, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Pipe'" }, - { "kind" : "IdRef", "name" : "'Reserve Id'" }, - { "kind" : "IdRef", "name" : "'Index'" }, - { "kind" : "IdRef", "name" : "'Pointer'" }, - { "kind" : "IdRef", "name" : "'Packet Size'" }, - { "kind" : "IdRef", "name" : "'Packet Alignment'" } - ], - "capabilities" : [ "Pipes" ] - }, - { - "opname" : "OpReservedWritePipe", - "opcode" : 277, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Pipe'" }, - { "kind" : "IdRef", "name" : "'Reserve Id'" }, - { "kind" : "IdRef", "name" : "'Index'" }, - { "kind" : "IdRef", "name" : "'Pointer'" }, - { "kind" : "IdRef", "name" : "'Packet Size'" }, - { "kind" : "IdRef", "name" : "'Packet Alignment'" } - ], - "capabilities" : [ "Pipes" ] - }, - { - "opname" : "OpReserveReadPipePackets", - "opcode" : 278, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Pipe'" }, - { "kind" : "IdRef", "name" : "'Num Packets'" }, - { "kind" : "IdRef", "name" : "'Packet Size'" }, - { "kind" : "IdRef", "name" : "'Packet Alignment'" } - ], - "capabilities" : [ "Pipes" ] - }, - { - "opname" : "OpReserveWritePipePackets", - "opcode" : 279, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Pipe'" }, - { "kind" : "IdRef", "name" : "'Num Packets'" }, - { "kind" : "IdRef", "name" : "'Packet Size'" }, - { "kind" : "IdRef", "name" : "'Packet Alignment'" } - ], - "capabilities" : [ "Pipes" ] - }, - { - "opname" : "OpCommitReadPipe", - "opcode" : 280, - "operands" : [ - { "kind" : "IdRef", "name" : "'Pipe'" }, - { "kind" : "IdRef", "name" : "'Reserve Id'" }, - { "kind" : "IdRef", "name" : "'Packet Size'" }, - { "kind" : "IdRef", "name" : "'Packet Alignment'" } - ], - "capabilities" : [ "Pipes" ] - }, - { - "opname" : "OpCommitWritePipe", - "opcode" : 281, - "operands" : [ - { "kind" : "IdRef", "name" : "'Pipe'" }, - { "kind" : "IdRef", "name" : "'Reserve Id'" }, - { "kind" : "IdRef", "name" : "'Packet Size'" }, - { "kind" : "IdRef", "name" : "'Packet Alignment'" } - ], - "capabilities" : [ "Pipes" ] - }, - { - "opname" : "OpIsValidReserveId", - "opcode" : 282, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Reserve Id'" } - ], - "capabilities" : [ "Pipes" ] - }, - { - "opname" : "OpGetNumPipePackets", - "opcode" : 283, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Pipe'" }, - { "kind" : "IdRef", "name" : "'Packet Size'" }, - { "kind" : "IdRef", "name" : "'Packet Alignment'" } - ], - "capabilities" : [ "Pipes" ] - }, - { - "opname" : "OpGetMaxPipePackets", - "opcode" : 284, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Pipe'" }, - { "kind" : "IdRef", "name" : "'Packet Size'" }, - { "kind" : "IdRef", "name" : "'Packet Alignment'" } - ], - "capabilities" : [ "Pipes" ] - }, - { - "opname" : "OpGroupReserveReadPipePackets", - "opcode" : 285, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdScope", "name" : "'Execution'" }, - { "kind" : "IdRef", "name" : "'Pipe'" }, - { "kind" : "IdRef", "name" : "'Num Packets'" }, - { "kind" : "IdRef", "name" : "'Packet Size'" }, - { "kind" : "IdRef", "name" : "'Packet Alignment'" } - ], - "capabilities" : [ "Pipes" ] - }, - { - "opname" : "OpGroupReserveWritePipePackets", - "opcode" : 286, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdScope", "name" : "'Execution'" }, - { "kind" : "IdRef", "name" : "'Pipe'" }, - { "kind" : "IdRef", "name" : "'Num Packets'" }, - { "kind" : "IdRef", "name" : "'Packet Size'" }, - { "kind" : "IdRef", "name" : "'Packet Alignment'" } - ], - "capabilities" : [ "Pipes" ] - }, - { - "opname" : "OpGroupCommitReadPipe", - "opcode" : 287, - "operands" : [ - { "kind" : "IdScope", "name" : "'Execution'" }, - { "kind" : "IdRef", "name" : "'Pipe'" }, - { "kind" : "IdRef", "name" : "'Reserve Id'" }, - { "kind" : "IdRef", "name" : "'Packet Size'" }, - { "kind" : "IdRef", "name" : "'Packet Alignment'" } - ], - "capabilities" : [ "Pipes" ] - }, - { - "opname" : "OpGroupCommitWritePipe", - "opcode" : 288, - "operands" : [ - { "kind" : "IdScope", "name" : "'Execution'" }, - { "kind" : "IdRef", "name" : "'Pipe'" }, - { "kind" : "IdRef", "name" : "'Reserve Id'" }, - { "kind" : "IdRef", "name" : "'Packet Size'" }, - { "kind" : "IdRef", "name" : "'Packet Alignment'" } - ], - "capabilities" : [ "Pipes" ] - }, - { - "opname" : "OpEnqueueMarker", - "opcode" : 291, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Queue'" }, - { "kind" : "IdRef", "name" : "'Num Events'" }, - { "kind" : "IdRef", "name" : "'Wait Events'" }, - { "kind" : "IdRef", "name" : "'Ret Event'" } - ], - "capabilities" : [ "DeviceEnqueue" ] - }, - { - "opname" : "OpEnqueueKernel", - "opcode" : 292, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Queue'" }, - { "kind" : "IdRef", "name" : "'Flags'" }, - { "kind" : "IdRef", "name" : "'ND Range'" }, - { "kind" : "IdRef", "name" : "'Num Events'" }, - { "kind" : "IdRef", "name" : "'Wait Events'" }, - { "kind" : "IdRef", "name" : "'Ret Event'" }, - { "kind" : "IdRef", "name" : "'Invoke'" }, - { "kind" : "IdRef", "name" : "'Param'" }, - { "kind" : "IdRef", "name" : "'Param Size'" }, - { "kind" : "IdRef", "name" : "'Param Align'" }, - { "kind" : "IdRef", "quantifier" : "*", "name" : "'Local Size'" } - ], - "capabilities" : [ "DeviceEnqueue" ] - }, - { - "opname" : "OpGetKernelNDrangeSubGroupCount", - "opcode" : 293, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'ND Range'" }, - { "kind" : "IdRef", "name" : "'Invoke'" }, - { "kind" : "IdRef", "name" : "'Param'" }, - { "kind" : "IdRef", "name" : "'Param Size'" }, - { "kind" : "IdRef", "name" : "'Param Align'" } - ], - "capabilities" : [ "DeviceEnqueue" ] - }, - { - "opname" : "OpGetKernelNDrangeMaxSubGroupSize", - "opcode" : 294, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'ND Range'" }, - { "kind" : "IdRef", "name" : "'Invoke'" }, - { "kind" : "IdRef", "name" : "'Param'" }, - { "kind" : "IdRef", "name" : "'Param Size'" }, - { "kind" : "IdRef", "name" : "'Param Align'" } - ], - "capabilities" : [ "DeviceEnqueue" ] - }, - { - "opname" : "OpGetKernelWorkGroupSize", - "opcode" : 295, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Invoke'" }, - { "kind" : "IdRef", "name" : "'Param'" }, - { "kind" : "IdRef", "name" : "'Param Size'" }, - { "kind" : "IdRef", "name" : "'Param Align'" } - ], - "capabilities" : [ "DeviceEnqueue" ] - }, - { - "opname" : "OpGetKernelPreferredWorkGroupSizeMultiple", - "opcode" : 296, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Invoke'" }, - { "kind" : "IdRef", "name" : "'Param'" }, - { "kind" : "IdRef", "name" : "'Param Size'" }, - { "kind" : "IdRef", "name" : "'Param Align'" } - ], - "capabilities" : [ "DeviceEnqueue" ] - }, - { - "opname" : "OpRetainEvent", - "opcode" : 297, - "operands" : [ - { "kind" : "IdRef", "name" : "'Event'" } - ], - "capabilities" : [ "DeviceEnqueue" ] - }, - { - "opname" : "OpReleaseEvent", - "opcode" : 298, - "operands" : [ - { "kind" : "IdRef", "name" : "'Event'" } - ], - "capabilities" : [ "DeviceEnqueue" ] - }, - { - "opname" : "OpCreateUserEvent", - "opcode" : 299, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" } - ], - "capabilities" : [ "DeviceEnqueue" ] - }, - { - "opname" : "OpIsValidEvent", - "opcode" : 300, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Event'" } - ], - "capabilities" : [ "DeviceEnqueue" ] - }, - { - "opname" : "OpSetUserEventStatus", - "opcode" : 301, - "operands" : [ - { "kind" : "IdRef", "name" : "'Event'" }, - { "kind" : "IdRef", "name" : "'Status'" } - ], - "capabilities" : [ "DeviceEnqueue" ] - }, - { - "opname" : "OpCaptureEventProfilingInfo", - "opcode" : 302, - "operands" : [ - { "kind" : "IdRef", "name" : "'Event'" }, - { "kind" : "IdRef", "name" : "'Profiling Info'" }, - { "kind" : "IdRef", "name" : "'Value'" } - ], - "capabilities" : [ "DeviceEnqueue" ] - }, - { - "opname" : "OpGetDefaultQueue", - "opcode" : 303, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" } - ], - "capabilities" : [ "DeviceEnqueue" ] - }, - { - "opname" : "OpBuildNDRange", - "opcode" : 304, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'GlobalWorkSize'" }, - { "kind" : "IdRef", "name" : "'LocalWorkSize'" }, - { "kind" : "IdRef", "name" : "'GlobalWorkOffset'" } - ], - "capabilities" : [ "DeviceEnqueue" ] - }, - { - "opname" : "OpImageSparseSampleImplicitLod", - "opcode" : 305, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Sampled Image'" }, - { "kind" : "IdRef", "name" : "'Coordinate'" }, - { "kind" : "ImageOperands", "quantifier" : "?" } - ], - "capabilities" : [ "SparseResidency" ] - }, - { - "opname" : "OpImageSparseSampleExplicitLod", - "opcode" : 306, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Sampled Image'" }, - { "kind" : "IdRef", "name" : "'Coordinate'" }, - { "kind" : "ImageOperands" } - ], - "capabilities" : [ "SparseResidency" ] - }, - { - "opname" : "OpImageSparseSampleDrefImplicitLod", - "opcode" : 307, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Sampled Image'" }, - { "kind" : "IdRef", "name" : "'Coordinate'" }, - { "kind" : "IdRef", "name" : "'D~ref~'" }, - { "kind" : "ImageOperands", "quantifier" : "?" } - ], - "capabilities" : [ "SparseResidency" ] - }, - { - "opname" : "OpImageSparseSampleDrefExplicitLod", - "opcode" : 308, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Sampled Image'" }, - { "kind" : "IdRef", "name" : "'Coordinate'" }, - { "kind" : "IdRef", "name" : "'D~ref~'" }, - { "kind" : "ImageOperands" } - ], - "capabilities" : [ "SparseResidency" ] - }, - { - "opname" : "OpImageSparseSampleProjImplicitLod", - "opcode" : 309, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Sampled Image'" }, - { "kind" : "IdRef", "name" : "'Coordinate'" }, - { "kind" : "ImageOperands", "quantifier" : "?" } - ], - "capabilities" : [ "SparseResidency" ] - }, - { - "opname" : "OpImageSparseSampleProjExplicitLod", - "opcode" : 310, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Sampled Image'" }, - { "kind" : "IdRef", "name" : "'Coordinate'" }, - { "kind" : "ImageOperands" } - ], - "capabilities" : [ "SparseResidency" ] - }, - { - "opname" : "OpImageSparseSampleProjDrefImplicitLod", - "opcode" : 311, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Sampled Image'" }, - { "kind" : "IdRef", "name" : "'Coordinate'" }, - { "kind" : "IdRef", "name" : "'D~ref~'" }, - { "kind" : "ImageOperands", "quantifier" : "?" } - ], - "capabilities" : [ "SparseResidency" ] - }, - { - "opname" : "OpImageSparseSampleProjDrefExplicitLod", - "opcode" : 312, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Sampled Image'" }, - { "kind" : "IdRef", "name" : "'Coordinate'" }, - { "kind" : "IdRef", "name" : "'D~ref~'" }, - { "kind" : "ImageOperands" } - ], - "capabilities" : [ "SparseResidency" ] - }, - { - "opname" : "OpImageSparseFetch", - "opcode" : 313, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Image'" }, - { "kind" : "IdRef", "name" : "'Coordinate'" }, - { "kind" : "ImageOperands", "quantifier" : "?" } - ], - "capabilities" : [ "SparseResidency" ] - }, - { - "opname" : "OpImageSparseGather", - "opcode" : 314, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Sampled Image'" }, - { "kind" : "IdRef", "name" : "'Coordinate'" }, - { "kind" : "IdRef", "name" : "'Component'" }, - { "kind" : "ImageOperands", "quantifier" : "?" } - ], - "capabilities" : [ "SparseResidency" ] - }, - { - "opname" : "OpImageSparseDrefGather", - "opcode" : 315, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Sampled Image'" }, - { "kind" : "IdRef", "name" : "'Coordinate'" }, - { "kind" : "IdRef", "name" : "'D~ref~'" }, - { "kind" : "ImageOperands", "quantifier" : "?" } - ], - "capabilities" : [ "SparseResidency" ] - }, - { - "opname" : "OpImageSparseTexelsResident", - "opcode" : 316, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Resident Code'" } - ], - "capabilities" : [ "SparseResidency" ] - }, - { - "opname" : "OpNoLine", - "opcode" : 317 - }, - { - "opname" : "OpAtomicFlagTestAndSet", - "opcode" : 318, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Pointer'" }, - { "kind" : "IdScope", "name" : "'Scope'" }, - { "kind" : "IdMemorySemantics", "name" : "'Semantics'" } - ], - "capabilities" : [ "Kernel" ] - }, - { - "opname" : "OpAtomicFlagClear", - "opcode" : 319, - "operands" : [ - { "kind" : "IdRef", "name" : "'Pointer'" }, - { "kind" : "IdScope", "name" : "'Scope'" }, - { "kind" : "IdMemorySemantics", "name" : "'Semantics'" } - ], - "capabilities" : [ "Kernel" ] - }, - { - "opname" : "OpImageSparseRead", - "opcode" : 320, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Image'" }, - { "kind" : "IdRef", "name" : "'Coordinate'" }, - { "kind" : "ImageOperands", "quantifier" : "?" } - ], - "capabilities" : [ "SparseResidency" ] - }, - { - "opname" : "OpSizeOf", - "opcode" : 321, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Pointer'" } - ], - "capabilities" : [ "Addresses" ] - }, - { - "opname" : "OpTypePipeStorage", - "opcode" : 322, - "operands" : [ - { "kind" : "IdResult" } - ], - "capabilities" : [ "PipeStorage" ] - }, - { - "opname" : "OpConstantPipeStorage", - "opcode" : 323, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "LiteralInteger", "name" : "'Packet Size'" }, - { "kind" : "LiteralInteger", "name" : "'Packet Alignment'" }, - { "kind" : "LiteralInteger", "name" : "'Capacity'" } - ], - "capabilities" : [ "PipeStorage" ] - }, - { - "opname" : "OpCreatePipeFromPipeStorage", - "opcode" : 324, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Pipe Storage'" } - ], - "capabilities" : [ "PipeStorage" ] - }, - { - "opname" : "OpGetKernelLocalSizeForSubgroupCount", - "opcode" : 325, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Subgroup Count'" }, - { "kind" : "IdRef", "name" : "'Invoke'" }, - { "kind" : "IdRef", "name" : "'Param'" }, - { "kind" : "IdRef", "name" : "'Param Size'" }, - { "kind" : "IdRef", "name" : "'Param Align'" } - ], - "capabilities" : [ "SubgroupDispatch" ] - }, - { - "opname" : "OpGetKernelMaxNumSubgroups", - "opcode" : 326, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Invoke'" }, - { "kind" : "IdRef", "name" : "'Param'" }, - { "kind" : "IdRef", "name" : "'Param Size'" }, - { "kind" : "IdRef", "name" : "'Param Align'" } - ], - "capabilities" : [ "SubgroupDispatch" ] - }, - { - "opname" : "OpTypeNamedBarrier", - "opcode" : 327, - "operands" : [ - { "kind" : "IdResult" } - ], - "capabilities" : [ "NamedBarrier" ] - }, - { - "opname" : "OpNamedBarrierInitialize", - "opcode" : 328, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Subgroup Count'" } - ], - "capabilities" : [ "NamedBarrier" ] - }, - { - "opname" : "OpMemoryNamedBarrier", - "opcode" : 329, - "operands" : [ - { "kind" : "IdRef", "name" : "'Named Barrier'" }, - { "kind" : "IdScope", "name" : "'Memory'" }, - { "kind" : "IdMemorySemantics", "name" : "'Semantics'" } - ], - "capabilities" : [ "NamedBarrier" ] - }, - { - "opname" : "OpModuleProcessed", - "opcode" : 330, - "operands" : [ - { "kind" : "LiteralString", "name" : "'Process'" } - ] - }, - { - "opname" : "OpDecorateId", - "opcode" : 332, - "operands" : [ - { "kind" : "IdRef", "name" : "'Target'" }, - { "kind" : "Decoration" } - ], - "extensions" : [ "SPV_GOOGLE_hlsl_functionality1" ] - }, - { - "opname" : "OpSubgroupBallotKHR", - "opcode" : 4421, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Predicate'" } - ], - "capabilities" : [ "SubgroupBallotKHR" ] - }, - { - "opname" : "OpSubgroupFirstInvocationKHR", - "opcode" : 4422, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Value'" } - ], - "capabilities" : [ "SubgroupBallotKHR" ] - }, - { - "opname" : "OpSubgroupAllKHR", - "opcode" : 4428, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Predicate'" } - ], - "capabilities" : [ "SubgroupVoteKHR" ] - }, - { - "opname" : "OpSubgroupAnyKHR", - "opcode" : 4429, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Predicate'" } - ], - "capabilities" : [ "SubgroupVoteKHR" ] - }, - { - "opname" : "OpSubgroupAllEqualKHR", - "opcode" : 4430, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Predicate'" } - ], - "capabilities" : [ "SubgroupVoteKHR" ] - }, - { - "opname" : "OpSubgroupReadInvocationKHR", - "opcode" : 4432, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Value'" }, - { "kind" : "IdRef", "name" : "'Index'" } - ], - "capabilities" : [ "SubgroupBallotKHR" ] - }, - { - "opname" : "OpGroupIAddNonUniformAMD", - "opcode" : 5000, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdScope", "name" : "'Execution'" }, - { "kind" : "GroupOperation", "name" : "'Operation'" }, - { "kind" : "IdRef", "name" : "'X'" } - ], - "capabilities" : [ "Groups" ] - }, - { - "opname" : "OpGroupFAddNonUniformAMD", - "opcode" : 5001, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdScope", "name" : "'Execution'" }, - { "kind" : "GroupOperation", "name" : "'Operation'" }, - { "kind" : "IdRef", "name" : "'X'" } - ], - "capabilities" : [ "Groups" ] - }, - { - "opname" : "OpGroupFMinNonUniformAMD", - "opcode" : 5002, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdScope", "name" : "'Execution'" }, - { "kind" : "GroupOperation", "name" : "'Operation'" }, - { "kind" : "IdRef", "name" : "'X'" } - ], - "capabilities" : [ "Groups" ] - }, - { - "opname" : "OpGroupUMinNonUniformAMD", - "opcode" : 5003, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdScope", "name" : "'Execution'" }, - { "kind" : "GroupOperation", "name" : "'Operation'" }, - { "kind" : "IdRef", "name" : "'X'" } - ], - "capabilities" : [ "Groups" ] - }, - { - "opname" : "OpGroupSMinNonUniformAMD", - "opcode" : 5004, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdScope", "name" : "'Execution'" }, - { "kind" : "GroupOperation", "name" : "'Operation'" }, - { "kind" : "IdRef", "name" : "'X'" } - ], - "capabilities" : [ "Groups" ] - }, - { - "opname" : "OpGroupFMaxNonUniformAMD", - "opcode" : 5005, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdScope", "name" : "'Execution'" }, - { "kind" : "GroupOperation", "name" : "'Operation'" }, - { "kind" : "IdRef", "name" : "'X'" } - ], - "capabilities" : [ "Groups" ] - }, - { - "opname" : "OpGroupUMaxNonUniformAMD", - "opcode" : 5006, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdScope", "name" : "'Execution'" }, - { "kind" : "GroupOperation", "name" : "'Operation'" }, - { "kind" : "IdRef", "name" : "'X'" } - ], - "capabilities" : [ "Groups" ] - }, - { - "opname" : "OpGroupSMaxNonUniformAMD", - "opcode" : 5007, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdScope", "name" : "'Execution'" }, - { "kind" : "GroupOperation", "name" : "'Operation'" }, - { "kind" : "IdRef", "name" : "'X'" } - ], - "capabilities" : [ "Groups" ] - }, - { - "opname" : "OpFragmentMaskFetchAMD", - "opcode" : 5011, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Image'" }, - { "kind" : "IdRef", "name" : "'Coordinate'" } - ], - "capabilities" : [ "FragmentMaskAMD" ] - }, - { - "opname" : "OpFragmentFetchAMD", - "opcode" : 5012, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Image'" }, - { "kind" : "IdRef", "name" : "'Coordinate'" }, - { "kind" : "IdRef", "name" : "'Fragment Index'" } - ], - "capabilities" : [ "FragmentMaskAMD" ] - }, - { - "opname" : "OpSubgroupShuffleINTEL", - "opcode" : 5571, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Data'" }, - { "kind" : "IdRef", "name" : "'InvocationId'" } - ], - "capabilities" : [ "SubgroupShuffleINTEL" ] - }, - { - "opname" : "OpSubgroupShuffleDownINTEL", - "opcode" : 5572, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Current'" }, - { "kind" : "IdRef", "name" : "'Next'" }, - { "kind" : "IdRef", "name" : "'Delta'" } - ], - "capabilities" : [ "SubgroupShuffleINTEL" ] - }, - { - "opname" : "OpSubgroupShuffleUpINTEL", - "opcode" : 5573, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Previous'" }, - { "kind" : "IdRef", "name" : "'Current'" }, - { "kind" : "IdRef", "name" : "'Delta'" } - ], - "capabilities" : [ "SubgroupShuffleINTEL" ] - }, - { - "opname" : "OpSubgroupShuffleXorINTEL", - "opcode" : 5574, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Data'" }, - { "kind" : "IdRef", "name" : "'Value'" } - ], - "capabilities" : [ "SubgroupShuffleINTEL" ] - }, - { - "opname" : "OpSubgroupBlockReadINTEL", - "opcode" : 5575, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Ptr'" } - ], - "capabilities" : [ "SubgroupBufferBlockIOINTEL" ] - }, - { - "opname" : "OpSubgroupBlockWriteINTEL", - "opcode" : 5576, - "operands" : [ - { "kind" : "IdRef", "name" : "'Ptr'" }, - { "kind" : "IdRef", "name" : "'Data'" } - ], - "capabilities" : [ "SubgroupBufferBlockIOINTEL" ] - }, - { - "opname" : "OpSubgroupImageBlockReadINTEL", - "opcode" : 5577, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Image'" }, - { "kind" : "IdRef", "name" : "'Coordinate'" } - ], - "capabilities" : [ "SubgroupImageBlockIOINTEL" ] - }, - { - "opname" : "OpSubgroupImageBlockWriteINTEL", - "opcode" : 5578, - "operands" : [ - { "kind" : "IdRef", "name" : "'Image'" }, - { "kind" : "IdRef", "name" : "'Coordinate'" }, - { "kind" : "IdRef", "name" : "'Data'" } - ], - "capabilities" : [ "SubgroupImageBlockIOINTEL" ] - }, - { - "opname" : "OpDecorateStringGOOGLE", - "opcode" : 5632, - "operands" : [ - { "kind" : "IdRef", "name" : "'Target'" }, - { "kind" : "Decoration" } - ], - "extensions" : [ "SPV_GOOGLE_decorate_string" ] - }, - { - "opname" : "OpMemberDecorateStringGOOGLE", - "opcode" : 5633, - "operands" : [ - { "kind" : "IdRef", "name" : "'Struct Type'" }, - { "kind" : "LiteralInteger", "name" : "'Member'" }, - { "kind" : "Decoration" } - ], - "extensions" : [ "SPV_GOOGLE_decorate_string" ] - } - ], - "operand_kinds" : [ - { - "category" : "BitEnum", - "kind" : "ImageOperands", - "enumerants" : [ - { - "enumerant" : "None", - "value" : "0x0000" - }, - { - "enumerant" : "Bias", - "value" : "0x0001", - "capabilities" : [ "Shader" ], - "parameters" : [ - { "kind" : "IdRef" } - ] - }, - { - "enumerant" : "Lod", - "value" : "0x0002", - "parameters" : [ - { "kind" : "IdRef" } - ] - }, - { - "enumerant" : "Grad", - "value" : "0x0004", - "parameters" : [ - { "kind" : "IdRef" }, - { "kind" : "IdRef" } - ] - }, - { - "enumerant" : "ConstOffset", - "value" : "0x0008", - "parameters" : [ - { "kind" : "IdRef" } - ] - }, - { - "enumerant" : "Offset", - "value" : "0x0010", - "capabilities" : [ "ImageGatherExtended" ], - "parameters" : [ - { "kind" : "IdRef" } - ] - }, - { - "enumerant" : "ConstOffsets", - "value" : "0x0020", - "parameters" : [ - { "kind" : "IdRef" } - ] - }, - { - "enumerant" : "Sample", - "value" : "0x0040", - "parameters" : [ - { "kind" : "IdRef" } - ] - }, - { - "enumerant" : "MinLod", - "value" : "0x0080", - "capabilities" : [ "MinLod" ], - "parameters" : [ - { "kind" : "IdRef" } - ] - } - ] - }, - { - "category" : "BitEnum", - "kind" : "FPFastMathMode", - "enumerants" : [ - { - "enumerant" : "None", - "value" : "0x0000" - }, - { - "enumerant" : "NotNaN", - "value" : "0x0001", - "capabilities" : [ "Kernel" ] - }, - { - "enumerant" : "NotInf", - "value" : "0x0002", - "capabilities" : [ "Kernel" ] - }, - { - "enumerant" : "NSZ", - "value" : "0x0004", - "capabilities" : [ "Kernel" ] - }, - { - "enumerant" : "AllowRecip", - "value" : "0x0008", - "capabilities" : [ "Kernel" ] - }, - { - "enumerant" : "Fast", - "value" : "0x0010", - "capabilities" : [ "Kernel" ] - } - ] - }, - { - "category" : "BitEnum", - "kind" : "SelectionControl", - "enumerants" : [ - { - "enumerant" : "None", - "value" : "0x0000" - }, - { - "enumerant" : "Flatten", - "value" : "0x0001" - }, - { - "enumerant" : "DontFlatten", - "value" : "0x0002" - } - ] - }, - { - "category" : "BitEnum", - "kind" : "LoopControl", - "enumerants" : [ - { - "enumerant" : "None", - "value" : "0x0000" - }, - { - "enumerant" : "Unroll", - "value" : "0x0001" - }, - { - "enumerant" : "DontUnroll", - "value" : "0x0002" - }, - { - "enumerant" : "DependencyInfinite", - "value" : "0x0004" - }, - { - "enumerant" : "DependencyLength", - "value" : "0x0008", - "parameters" : [ - { "kind" : "LiteralInteger" } - ] - - } - ] - }, - { - "category" : "BitEnum", - "kind" : "FunctionControl", - "enumerants" : [ - { - "enumerant" : "None", - "value" : "0x0000" - }, - { - "enumerant" : "Inline", - "value" : "0x0001" - }, - { - "enumerant" : "DontInline", - "value" : "0x0002" - }, - { - "enumerant" : "Pure", - "value" : "0x0004" - }, - { - "enumerant" : "Const", - "value" : "0x0008" - } - ] - }, - { - "category" : "BitEnum", - "kind" : "MemorySemantics", - "enumerants" : [ - { - "enumerant" : "Relaxed", - "value" : "0x0000" - }, - { - "enumerant" : "None", - "value" : "0x0000" - }, - { - "enumerant" : "Acquire", - "value" : "0x0002" - }, - { - "enumerant" : "Release", - "value" : "0x0004" - }, - { - "enumerant" : "AcquireRelease", - "value" : "0x0008" - }, - { - "enumerant" : "SequentiallyConsistent", - "value" : "0x0010" - }, - { - "enumerant" : "UniformMemory", - "value" : "0x0040", - "capabilities" : [ "Shader" ] - }, - { - "enumerant" : "SubgroupMemory", - "value" : "0x0080" - }, - { - "enumerant" : "WorkgroupMemory", - "value" : "0x0100" - }, - { - "enumerant" : "CrossWorkgroupMemory", - "value" : "0x0200" - }, - { - "enumerant" : "AtomicCounterMemory", - "value" : "0x0400", - "capabilities" : [ "AtomicStorage" ] - }, - { - "enumerant" : "ImageMemory", - "value" : "0x0800" - } - ] - }, - { - "category" : "BitEnum", - "kind" : "MemoryAccess", - "enumerants" : [ - { - "enumerant" : "None", - "value" : "0x0000" - }, - { - "enumerant" : "Volatile", - "value" : "0x0001" - }, - { - "enumerant" : "Aligned", - "value" : "0x0002", - "parameters" : [ - { "kind" : "LiteralInteger" } - ] - }, - { - "enumerant" : "Nontemporal", - "value" : "0x0004" - } - ] - }, - { - "category" : "BitEnum", - "kind" : "KernelProfilingInfo", - "enumerants" : [ - { - "enumerant" : "None", - "value" : "0x0000" - }, - { - "enumerant" : "CmdExecTime", - "value" : "0x0001", - "capabilities" : [ "Kernel" ] - } - ] - }, - { - "category" : "ValueEnum", - "kind" : "SourceLanguage", - "enumerants" : [ - { - "enumerant" : "Unknown", - "value" : 0 - }, - { - "enumerant" : "ESSL", - "value" : 1 - }, - { - "enumerant" : "GLSL", - "value" : 2 - }, - { - "enumerant" : "OpenCL_C", - "value" : 3 - }, - { - "enumerant" : "OpenCL_CPP", - "value" : 4 - }, - { - "enumerant" : "HLSL", - "value" : 5 - } - ] - }, - { - "category" : "ValueEnum", - "kind" : "ExecutionModel", - "enumerants" : [ - { - "enumerant" : "Vertex", - "value" : 0, - "capabilities" : [ "Shader" ] - }, - { - "enumerant" : "TessellationControl", - "value" : 1, - "capabilities" : [ "Tessellation" ] - }, - { - "enumerant" : "TessellationEvaluation", - "value" : 2, - "capabilities" : [ "Tessellation" ] - }, - { - "enumerant" : "Geometry", - "value" : 3, - "capabilities" : [ "Geometry" ] - }, - { - "enumerant" : "Fragment", - "value" : 4, - "capabilities" : [ "Shader" ] - }, - { - "enumerant" : "GLCompute", - "value" : 5, - "capabilities" : [ "Shader" ] - }, - { - "enumerant" : "Kernel", - "value" : 6, - "capabilities" : [ "Kernel" ] - } - ] - }, - { - "category" : "ValueEnum", - "kind" : "AddressingModel", - "enumerants" : [ - { - "enumerant" : "Logical", - "value" : 0 - }, - { - "enumerant" : "Physical32", - "value" : 1, - "capabilities" : [ "Addresses" ] - }, - { - "enumerant" : "Physical64", - "value" : 2, - "capabilities" : [ "Addresses" ] - } - ] - }, - { - "category" : "ValueEnum", - "kind" : "MemoryModel", - "enumerants" : [ - { - "enumerant" : "Simple", - "value" : 0, - "capabilities" : [ "Shader" ] - }, - { - "enumerant" : "GLSL450", - "value" : 1, - "capabilities" : [ "Shader" ] - }, - { - "enumerant" : "OpenCL", - "value" : 2, - "capabilities" : [ "Kernel" ] - } - ] - }, - { - "category" : "ValueEnum", - "kind" : "ExecutionMode", - "enumerants" : [ - { - "enumerant" : "Invocations", - "value" : 0, - "capabilities" : [ "Geometry" ], - "parameters" : [ - { "kind" : "LiteralInteger", "name" : "'Number of <>'" } - ] - }, - { - "enumerant" : "SpacingEqual", - "value" : 1, - "capabilities" : [ "Tessellation" ] - }, - { - "enumerant" : "SpacingFractionalEven", - "value" : 2, - "capabilities" : [ "Tessellation" ] - }, - { - "enumerant" : "SpacingFractionalOdd", - "value" : 3, - "capabilities" : [ "Tessellation" ] - }, - { - "enumerant" : "VertexOrderCw", - "value" : 4, - "capabilities" : [ "Tessellation" ] - }, - { - "enumerant" : "VertexOrderCcw", - "value" : 5, - "capabilities" : [ "Tessellation" ] - }, - { - "enumerant" : "PixelCenterInteger", - "value" : 6, - "capabilities" : [ "Shader" ] - }, - { - "enumerant" : "OriginUpperLeft", - "value" : 7, - "capabilities" : [ "Shader" ] - }, - { - "enumerant" : "OriginLowerLeft", - "value" : 8, - "capabilities" : [ "Shader" ] - }, - { - "enumerant" : "EarlyFragmentTests", - "value" : 9, - "capabilities" : [ "Shader" ] - }, - { - "enumerant" : "PointMode", - "value" : 10, - "capabilities" : [ "Tessellation" ] - }, - { - "enumerant" : "Xfb", - "value" : 11, - "capabilities" : [ "TransformFeedback" ] - }, - { - "enumerant" : "DepthReplacing", - "value" : 12, - "capabilities" : [ "Shader" ] - }, - { - "enumerant" : "DepthGreater", - "value" : 14, - "capabilities" : [ "Shader" ] - }, - { - "enumerant" : "DepthLess", - "value" : 15, - "capabilities" : [ "Shader" ] - }, - { - "enumerant" : "DepthUnchanged", - "value" : 16, - "capabilities" : [ "Shader" ] - }, - { - "enumerant" : "LocalSize", - "value" : 17, - "parameters" : [ - { "kind" : "LiteralInteger", "name" : "'x size'" }, - { "kind" : "LiteralInteger", "name" : "'y size'" }, - { "kind" : "LiteralInteger", "name" : "'z size'" } - ] - }, - { - "enumerant" : "LocalSizeHint", - "value" : 18, - "capabilities" : [ "Kernel" ], - "parameters" : [ - { "kind" : "LiteralInteger", "name" : "'x size'" }, - { "kind" : "LiteralInteger", "name" : "'y size'" }, - { "kind" : "LiteralInteger", "name" : "'z size'" } - ] - }, - { - "enumerant" : "InputPoints", - "value" : 19, - "capabilities" : [ "Geometry" ] - }, - { - "enumerant" : "InputLines", - "value" : 20, - "capabilities" : [ "Geometry" ] - }, - { - "enumerant" : "InputLinesAdjacency", - "value" : 21, - "capabilities" : [ "Geometry" ] - }, - { - "enumerant" : "Triangles", - "value" : 22, - "capabilities" : [ "Geometry", "Tessellation" ] - }, - { - "enumerant" : "InputTrianglesAdjacency", - "value" : 23, - "capabilities" : [ "Geometry" ] - }, - { - "enumerant" : "Quads", - "value" : 24, - "capabilities" : [ "Tessellation" ] - }, - { - "enumerant" : "Isolines", - "value" : 25, - "capabilities" : [ "Tessellation" ] - }, - { - "enumerant" : "OutputVertices", - "value" : 26, - "capabilities" : [ "Geometry", "Tessellation" ], - "parameters" : [ - { "kind" : "LiteralInteger", "name" : "'Vertex count'" } - ] - }, - { - "enumerant" : "OutputPoints", - "value" : 27, - "capabilities" : [ "Geometry" ] - }, - { - "enumerant" : "OutputLineStrip", - "value" : 28, - "capabilities" : [ "Geometry" ] - }, - { - "enumerant" : "OutputTriangleStrip", - "value" : 29, - "capabilities" : [ "Geometry" ] - }, - { - "enumerant" : "VecTypeHint", - "value" : 30, - "capabilities" : [ "Kernel" ], - "parameters" : [ - { "kind" : "LiteralInteger", "name" : "'Vector type'" } - ] - }, - { - "enumerant" : "ContractionOff", - "value" : 31, - "capabilities" : [ "Kernel" ] - }, - { - "enumerant" : "Initializer", - "value" : 33, - "capabilities" : [ "Kernel" ] - }, - { - "enumerant" : "Finalizer", - "value" : 34, - "capabilities" : [ "Kernel" ] - }, - { - "enumerant" : "SubgroupSize", - "value" : 35, - "capabilities" : [ "SubgroupDispatch" ], - "parameters" : [ - { "kind" : "LiteralInteger", "name" : "'Subgroup Size'" } - ] - }, - { - "enumerant" : "SubgroupsPerWorkgroup", - "value" : 36, - "capabilities" : [ "SubgroupDispatch" ], - "parameters" : [ - { "kind" : "LiteralInteger", "name" : "'Subgroups Per Workgroup'" } - ] - }, - { - "enumerant" : "PostDepthCoverage", - "value" : 4446, - "capabilities" : [ "SampleMaskPostDepthCoverage" ] - }, - { - "enumerant" : "StencilRefReplacingEXT", - "value" : 5027, - "capabilities" : [ "StencilExportEXT" ] - } - ] - }, - { - "category" : "ValueEnum", - "kind" : "StorageClass", - "enumerants" : [ - { - "enumerant" : "UniformConstant", - "value" : 0 - }, - { - "enumerant" : "Input", - "value" : 1 - }, - { - "enumerant" : "Uniform", - "value" : 2, - "capabilities" : [ "Shader" ] - }, - { - "enumerant" : "Output", - "value" : 3, - "capabilities" : [ "Shader" ] - }, - { - "enumerant" : "Workgroup", - "value" : 4 - }, - { - "enumerant" : "CrossWorkgroup", - "value" : 5 - }, - { - "enumerant" : "Private", - "value" : 6, - "capabilities" : [ "Shader" ] - }, - { - "enumerant" : "Function", - "value" : 7 - }, - { - "enumerant" : "Generic", - "value" : 8, - "capabilities" : [ "GenericPointer" ] - }, - { - "enumerant" : "PushConstant", - "value" : 9, - "capabilities" : [ "Shader" ] - }, - { - "enumerant" : "AtomicCounter", - "value" : 10, - "capabilities" : [ "AtomicStorage" ] - }, - { - "enumerant" : "Image", - "value" : 11 - }, - { - "enumerant" : "StorageBuffer", - "value" : 12, - "extensions" : [ - "SPV_KHR_storage_buffer_storage_class", - "SPV_KHR_variable_pointers" - ], - "capabilities" : [ "Shader" ] - } - ] - }, - { - "category" : "ValueEnum", - "kind" : "Dim", - "enumerants" : [ - { - "enumerant" : "1D", - "value" : 0, - "capabilities" : [ "Sampled1D" ] - }, - { - "enumerant" : "2D", - "value" : 1 - }, - { - "enumerant" : "3D", - "value" : 2 - }, - { - "enumerant" : "Cube", - "value" : 3, - "capabilities" : [ "Shader" ] - }, - { - "enumerant" : "Rect", - "value" : 4, - "capabilities" : [ "SampledRect" ] - }, - { - "enumerant" : "Buffer", - "value" : 5, - "capabilities" : [ "SampledBuffer" ] - }, - { - "enumerant" : "SubpassData", - "value" : 6, - "capabilities" : [ "InputAttachment" ] - } - ] - }, - { - "category" : "ValueEnum", - "kind" : "SamplerAddressingMode", - "enumerants" : [ - { - "enumerant" : "None", - "value" : 0, - "capabilities" : [ "Kernel" ] - }, - { - "enumerant" : "ClampToEdge", - "value" : 1, - "capabilities" : [ "Kernel" ] - }, - { - "enumerant" : "Clamp", - "value" : 2, - "capabilities" : [ "Kernel" ] - }, - { - "enumerant" : "Repeat", - "value" : 3, - "capabilities" : [ "Kernel" ] - }, - { - "enumerant" : "RepeatMirrored", - "value" : 4, - "capabilities" : [ "Kernel" ] - } - ] - }, - { - "category" : "ValueEnum", - "kind" : "SamplerFilterMode", - "enumerants" : [ - { - "enumerant" : "Nearest", - "value" : 0, - "capabilities" : [ "Kernel" ] - }, - { - "enumerant" : "Linear", - "value" : 1, - "capabilities" : [ "Kernel" ] - } - ] - }, - { - "category" : "ValueEnum", - "kind" : "ImageFormat", - "enumerants" : [ - { - "enumerant" : "Unknown", - "value" : 0 - }, - { - "enumerant" : "Rgba32f", - "value" : 1, - "capabilities" : [ "Shader" ] - }, - { - "enumerant" : "Rgba16f", - "value" : 2, - "capabilities" : [ "Shader" ] - }, - { - "enumerant" : "R32f", - "value" : 3, - "capabilities" : [ "Shader" ] - }, - { - "enumerant" : "Rgba8", - "value" : 4, - "capabilities" : [ "Shader" ] - }, - { - "enumerant" : "Rgba8Snorm", - "value" : 5, - "capabilities" : [ "Shader" ] - }, - { - "enumerant" : "Rg32f", - "value" : 6, - "capabilities" : [ "StorageImageExtendedFormats" ] - }, - { - "enumerant" : "Rg16f", - "value" : 7, - "capabilities" : [ "StorageImageExtendedFormats" ] - }, - { - "enumerant" : "R11fG11fB10f", - "value" : 8, - "capabilities" : [ "StorageImageExtendedFormats" ] - }, - { - "enumerant" : "R16f", - "value" : 9, - "capabilities" : [ "StorageImageExtendedFormats" ] - }, - { - "enumerant" : "Rgba16", - "value" : 10, - "capabilities" : [ "StorageImageExtendedFormats" ] - }, - { - "enumerant" : "Rgb10A2", - "value" : 11, - "capabilities" : [ "StorageImageExtendedFormats" ] - }, - { - "enumerant" : "Rg16", - "value" : 12, - "capabilities" : [ "StorageImageExtendedFormats" ] - }, - { - "enumerant" : "Rg8", - "value" : 13, - "capabilities" : [ "StorageImageExtendedFormats" ] - }, - { - "enumerant" : "R16", - "value" : 14, - "capabilities" : [ "StorageImageExtendedFormats" ] - }, - { - "enumerant" : "R8", - "value" : 15, - "capabilities" : [ "StorageImageExtendedFormats" ] - }, - { - "enumerant" : "Rgba16Snorm", - "value" : 16, - "capabilities" : [ "StorageImageExtendedFormats" ] - }, - { - "enumerant" : "Rg16Snorm", - "value" : 17, - "capabilities" : [ "StorageImageExtendedFormats" ] - }, - { - "enumerant" : "Rg8Snorm", - "value" : 18, - "capabilities" : [ "StorageImageExtendedFormats" ] - }, - { - "enumerant" : "R16Snorm", - "value" : 19, - "capabilities" : [ "StorageImageExtendedFormats" ] - }, - { - "enumerant" : "R8Snorm", - "value" : 20, - "capabilities" : [ "StorageImageExtendedFormats" ] - }, - { - "enumerant" : "Rgba32i", - "value" : 21, - "capabilities" : [ "Shader" ] - }, - { - "enumerant" : "Rgba16i", - "value" : 22, - "capabilities" : [ "Shader" ] - }, - { - "enumerant" : "Rgba8i", - "value" : 23, - "capabilities" : [ "Shader" ] - }, - { - "enumerant" : "R32i", - "value" : 24, - "capabilities" : [ "Shader" ] - }, - { - "enumerant" : "Rg32i", - "value" : 25, - "capabilities" : [ "StorageImageExtendedFormats" ] - }, - { - "enumerant" : "Rg16i", - "value" : 26, - "capabilities" : [ "StorageImageExtendedFormats" ] - }, - { - "enumerant" : "Rg8i", - "value" : 27, - "capabilities" : [ "StorageImageExtendedFormats" ] - }, - { - "enumerant" : "R16i", - "value" : 28, - "capabilities" : [ "StorageImageExtendedFormats" ] - }, - { - "enumerant" : "R8i", - "value" : 29, - "capabilities" : [ "StorageImageExtendedFormats" ] - }, - { - "enumerant" : "Rgba32ui", - "value" : 30, - "capabilities" : [ "Shader" ] - }, - { - "enumerant" : "Rgba16ui", - "value" : 31, - "capabilities" : [ "Shader" ] - }, - { - "enumerant" : "Rgba8ui", - "value" : 32, - "capabilities" : [ "Shader" ] - }, - { - "enumerant" : "R32ui", - "value" : 33, - "capabilities" : [ "Shader" ] - }, - { - "enumerant" : "Rgb10a2ui", - "value" : 34, - "capabilities" : [ "StorageImageExtendedFormats" ] - }, - { - "enumerant" : "Rg32ui", - "value" : 35, - "capabilities" : [ "StorageImageExtendedFormats" ] - }, - { - "enumerant" : "Rg16ui", - "value" : 36, - "capabilities" : [ "StorageImageExtendedFormats" ] - }, - { - "enumerant" : "Rg8ui", - "value" : 37, - "capabilities" : [ "StorageImageExtendedFormats" ] - }, - { - "enumerant" : "R16ui", - "value" : 38, - "capabilities" : [ "StorageImageExtendedFormats" ] - }, - { - "enumerant" : "R8ui", - "value" : 39, - "capabilities" : [ "StorageImageExtendedFormats" ] - } - ] - }, - { - "category" : "ValueEnum", - "kind" : "ImageChannelOrder", - "enumerants" : [ - { - "enumerant" : "R", - "value" : 0, - "capabilities" : [ "Kernel" ] - }, - { - "enumerant" : "A", - "value" : 1, - "capabilities" : [ "Kernel" ] - }, - { - "enumerant" : "RG", - "value" : 2, - "capabilities" : [ "Kernel" ] - }, - { - "enumerant" : "RA", - "value" : 3, - "capabilities" : [ "Kernel" ] - }, - { - "enumerant" : "RGB", - "value" : 4, - "capabilities" : [ "Kernel" ] - }, - { - "enumerant" : "RGBA", - "value" : 5, - "capabilities" : [ "Kernel" ] - }, - { - "enumerant" : "BGRA", - "value" : 6, - "capabilities" : [ "Kernel" ] - }, - { - "enumerant" : "ARGB", - "value" : 7, - "capabilities" : [ "Kernel" ] - }, - { - "enumerant" : "Intensity", - "value" : 8, - "capabilities" : [ "Kernel" ] - }, - { - "enumerant" : "Luminance", - "value" : 9, - "capabilities" : [ "Kernel" ] - }, - { - "enumerant" : "Rx", - "value" : 10, - "capabilities" : [ "Kernel" ] - }, - { - "enumerant" : "RGx", - "value" : 11, - "capabilities" : [ "Kernel" ] - }, - { - "enumerant" : "RGBx", - "value" : 12, - "capabilities" : [ "Kernel" ] - }, - { - "enumerant" : "Depth", - "value" : 13, - "capabilities" : [ "Kernel" ] - }, - { - "enumerant" : "DepthStencil", - "value" : 14, - "capabilities" : [ "Kernel" ] - }, - { - "enumerant" : "sRGB", - "value" : 15, - "capabilities" : [ "Kernel" ] - }, - { - "enumerant" : "sRGBx", - "value" : 16, - "capabilities" : [ "Kernel" ] - }, - { - "enumerant" : "sRGBA", - "value" : 17, - "capabilities" : [ "Kernel" ] - }, - { - "enumerant" : "sBGRA", - "value" : 18, - "capabilities" : [ "Kernel" ] - }, - { - "enumerant" : "ABGR", - "value" : 19, - "capabilities" : [ "Kernel" ] - } - ] - }, - { - "category" : "ValueEnum", - "kind" : "ImageChannelDataType", - "enumerants" : [ - { - "enumerant" : "SnormInt8", - "value" : 0, - "capabilities" : [ "Kernel" ] - }, - { - "enumerant" : "SnormInt16", - "value" : 1, - "capabilities" : [ "Kernel" ] - }, - { - "enumerant" : "UnormInt8", - "value" : 2, - "capabilities" : [ "Kernel" ] - }, - { - "enumerant" : "UnormInt16", - "value" : 3, - "capabilities" : [ "Kernel" ] - }, - { - "enumerant" : "UnormShort565", - "value" : 4, - "capabilities" : [ "Kernel" ] - }, - { - "enumerant" : "UnormShort555", - "value" : 5, - "capabilities" : [ "Kernel" ] - }, - { - "enumerant" : "UnormInt101010", - "value" : 6, - "capabilities" : [ "Kernel" ] - }, - { - "enumerant" : "SignedInt8", - "value" : 7, - "capabilities" : [ "Kernel" ] - }, - { - "enumerant" : "SignedInt16", - "value" : 8, - "capabilities" : [ "Kernel" ] - }, - { - "enumerant" : "SignedInt32", - "value" : 9, - "capabilities" : [ "Kernel" ] - }, - { - "enumerant" : "UnsignedInt8", - "value" : 10, - "capabilities" : [ "Kernel" ] - }, - { - "enumerant" : "UnsignedInt16", - "value" : 11, - "capabilities" : [ "Kernel" ] - }, - { - "enumerant" : "UnsignedInt32", - "value" : 12, - "capabilities" : [ "Kernel" ] - }, - { - "enumerant" : "HalfFloat", - "value" : 13, - "capabilities" : [ "Kernel" ] - }, - { - "enumerant" : "Float", - "value" : 14, - "capabilities" : [ "Kernel" ] - }, - { - "enumerant" : "UnormInt24", - "value" : 15, - "capabilities" : [ "Kernel" ] - }, - { - "enumerant" : "UnormInt101010_2", - "value" : 16, - "capabilities" : [ "Kernel" ] - } - ] - }, - { - "category" : "ValueEnum", - "kind" : "FPRoundingMode", - "enumerants" : [ - { - "enumerant" : "RTE", - "value" : 0, - "capabilities" : [ - "Kernel", - "StorageUniformBufferBlock16", - "StorageUniform16", - "StoragePushConstant16", - "StorageInputOutput16" - ] - }, - { - "enumerant" : "RTZ", - "value" : 1, - "capabilities" : [ - "Kernel", - "StorageUniformBufferBlock16", - "StorageUniform16", - "StoragePushConstant16", - "StorageInputOutput16" - ] - }, - { - "enumerant" : "RTP", - "value" : 2, - "capabilities" : [ - "Kernel", - "StorageUniformBufferBlock16", - "StorageUniform16", - "StoragePushConstant16", - "StorageInputOutput16" - ] - }, - { - "enumerant" : "RTN", - "value" : 3, - "capabilities" : [ - "Kernel", - "StorageUniformBufferBlock16", - "StorageUniform16", - "StoragePushConstant16", - "StorageInputOutput16" - ] - } - ] - }, - { - "category" : "ValueEnum", - "kind" : "LinkageType", - "enumerants" : [ - { - "enumerant" : "Export", - "value" : 0, - "capabilities" : [ "Linkage" ] - }, - { - "enumerant" : "Import", - "value" : 1, - "capabilities" : [ "Linkage" ] - } - ] - }, - { - "category" : "ValueEnum", - "kind" : "AccessQualifier", - "enumerants" : [ - { - "enumerant" : "ReadOnly", - "value" : 0, - "capabilities" : [ "Kernel" ] - }, - { - "enumerant" : "WriteOnly", - "value" : 1, - "capabilities" : [ "Kernel" ] - }, - { - "enumerant" : "ReadWrite", - "value" : 2, - "capabilities" : [ "Kernel" ] - } - ] - }, - { - "category" : "ValueEnum", - "kind" : "FunctionParameterAttribute", - "enumerants" : [ - { - "enumerant" : "Zext", - "value" : 0, - "capabilities" : [ "Kernel" ] - }, - { - "enumerant" : "Sext", - "value" : 1, - "capabilities" : [ "Kernel" ] - }, - { - "enumerant" : "ByVal", - "value" : 2, - "capabilities" : [ "Kernel" ] - }, - { - "enumerant" : "Sret", - "value" : 3, - "capabilities" : [ "Kernel" ] - }, - { - "enumerant" : "NoAlias", - "value" : 4, - "capabilities" : [ "Kernel" ] - }, - { - "enumerant" : "NoCapture", - "value" : 5, - "capabilities" : [ "Kernel" ] - }, - { - "enumerant" : "NoWrite", - "value" : 6, - "capabilities" : [ "Kernel" ] - }, - { - "enumerant" : "NoReadWrite", - "value" : 7, - "capabilities" : [ "Kernel" ] - } - ] - }, - { - "category" : "ValueEnum", - "kind" : "Decoration", - "enumerants" : [ - { - "enumerant" : "RelaxedPrecision", - "value" : 0, - "capabilities" : [ "Shader" ] - }, - { - "enumerant" : "SpecId", - "value" : 1, - "capabilities" : [ "Shader", "Kernel" ], - "parameters" : [ - { "kind" : "LiteralInteger", "name" : "'Specialization Constant ID'" } - ] - }, - { - "enumerant" : "Block", - "value" : 2, - "capabilities" : [ "Shader" ] - }, - { - "enumerant" : "BufferBlock", - "value" : 3, - "capabilities" : [ "Shader" ] - }, - { - "enumerant" : "RowMajor", - "value" : 4, - "capabilities" : [ "Matrix" ] - }, - { - "enumerant" : "ColMajor", - "value" : 5, - "capabilities" : [ "Matrix" ] - }, - { - "enumerant" : "ArrayStride", - "value" : 6, - "capabilities" : [ "Shader" ], - "parameters" : [ - { "kind" : "LiteralInteger", "name" : "'Array Stride'" } - ] - }, - { - "enumerant" : "MatrixStride", - "value" : 7, - "capabilities" : [ "Matrix" ], - "parameters" : [ - { "kind" : "LiteralInteger", "name" : "'Matrix Stride'" } - ] - }, - { - "enumerant" : "GLSLShared", - "value" : 8, - "capabilities" : [ "Shader" ] - }, - { - "enumerant" : "GLSLPacked", - "value" : 9, - "capabilities" : [ "Shader" ] - }, - { - "enumerant" : "CPacked", - "value" : 10, - "capabilities" : [ "Kernel" ] - }, - { - "enumerant" : "BuiltIn", - "value" : 11, - "parameters" : [ - { "kind" : "BuiltIn" } - ] - }, - { - "enumerant" : "NoPerspective", - "value" : 13, - "capabilities" : [ "Shader" ] - }, - { - "enumerant" : "Flat", - "value" : 14, - "capabilities" : [ "Shader" ] - }, - { - "enumerant" : "Patch", - "value" : 15, - "capabilities" : [ "Tessellation" ] - }, - { - "enumerant" : "Centroid", - "value" : 16, - "capabilities" : [ "Shader" ] - }, - { - "enumerant" : "Sample", - "value" : 17, - "capabilities" : [ "SampleRateShading" ] - }, - { - "enumerant" : "Invariant", - "value" : 18, - "capabilities" : [ "Shader" ] - }, - { - "enumerant" : "Restrict", - "value" : 19 - }, - { - "enumerant" : "Aliased", - "value" : 20 - }, - { - "enumerant" : "Volatile", - "value" : 21 - }, - { - "enumerant" : "Constant", - "value" : 22, - "capabilities" : [ "Kernel" ] - }, - { - "enumerant" : "Coherent", - "value" : 23 - }, - { - "enumerant" : "NonWritable", - "value" : 24 - }, - { - "enumerant" : "NonReadable", - "value" : 25 - }, - { - "enumerant" : "Uniform", - "value" : 26, - "capabilities" : [ "Shader" ] - }, - { - "enumerant" : "SaturatedConversion", - "value" : 28, - "capabilities" : [ "Kernel" ] - }, - { - "enumerant" : "Stream", - "value" : 29, - "capabilities" : [ "GeometryStreams" ], - "parameters" : [ - { "kind" : "LiteralInteger", "name" : "'Stream Number'" } - ] - }, - { - "enumerant" : "Location", - "value" : 30, - "capabilities" : [ "Shader" ], - "parameters" : [ - { "kind" : "LiteralInteger", "name" : "'Location'" } - ] - }, - { - "enumerant" : "Component", - "value" : 31, - "capabilities" : [ "Shader" ], - "parameters" : [ - { "kind" : "LiteralInteger", "name" : "'Component'" } - ] - }, - { - "enumerant" : "Index", - "value" : 32, - "capabilities" : [ "Shader" ], - "parameters" : [ - { "kind" : "LiteralInteger", "name" : "'Index'" } - ] - }, - { - "enumerant" : "Binding", - "value" : 33, - "capabilities" : [ "Shader" ], - "parameters" : [ - { "kind" : "LiteralInteger", "name" : "'Binding Point'" } - ] - }, - { - "enumerant" : "DescriptorSet", - "value" : 34, - "capabilities" : [ "Shader" ], - "parameters" : [ - { "kind" : "LiteralInteger", "name" : "'Descriptor Set'" } - ] - }, - { - "enumerant" : "Offset", - "value" : 35, - "capabilities" : [ "Shader" ], - "parameters" : [ - { "kind" : "LiteralInteger", "name" : "'Byte Offset'" } - ] - }, - { - "enumerant" : "XfbBuffer", - "value" : 36, - "capabilities" : [ "TransformFeedback" ], - "parameters" : [ - { "kind" : "LiteralInteger", "name" : "'XFB Buffer Number'" } - ] - }, - { - "enumerant" : "XfbStride", - "value" : 37, - "capabilities" : [ "TransformFeedback" ], - "parameters" : [ - { "kind" : "LiteralInteger", "name" : "'XFB Stride'" } - ] - }, - { - "enumerant" : "FuncParamAttr", - "value" : 38, - "capabilities" : [ "Kernel" ], - "parameters" : [ - { "kind" : "FunctionParameterAttribute", "name" : "'Function Parameter Attribute'" } - ] - }, - { - "enumerant" : "FPRoundingMode", - "value" : 39, - "capabilities" : [ - "Kernel", - "StorageUniformBufferBlock16", - "StorageUniform16", - "StoragePushConstant16", - "StorageInputOutput16" - ], - "parameters" : [ - { "kind" : "FPRoundingMode", "name" : "'Floating-Point Rounding Mode'" } - ] - }, - { - "enumerant" : "FPFastMathMode", - "value" : 40, - "capabilities" : [ "Kernel" ], - "parameters" : [ - { "kind" : "FPFastMathMode", "name" : "'Fast-Math Mode'" } - ] - }, - { - "enumerant" : "LinkageAttributes", - "value" : 41, - "capabilities" : [ "Linkage" ], - "parameters" : [ - { "kind" : "LiteralString", "name" : "'Name'" }, - { "kind" : "LinkageType", "name" : "'Linkage Type'" } - ] - }, - { - "enumerant" : "NoContraction", - "value" : 42, - "capabilities" : [ "Shader" ] - }, - { - "enumerant" : "InputAttachmentIndex", - "value" : 43, - "capabilities" : [ "InputAttachment" ], - "parameters" : [ - { "kind" : "LiteralInteger", "name" : "'Attachment Index'" } - ] - }, - { - "enumerant" : "Alignment", - "value" : 44, - "capabilities" : [ "Kernel" ], - "parameters" : [ - { "kind" : "LiteralInteger", "name" : "'Alignment'" } - ] - }, - { - "enumerant" : "MaxByteOffset", - "value" : 45, - "capabilities" : [ "Addresses" ], - "parameters" : [ - { "kind" : "LiteralInteger", "name" : "'Max Byte Offset'" } - ] - }, - { - "enumerant" : "ExplicitInterpAMD", - "value" : 4999 - }, - { - "enumerant" : "OverrideCoverageNV", - "value" : 5248, - "capabilities" : [ "SampleMaskOverrideCoverageNV" ] - }, - { - "enumerant" : "PassthroughNV", - "value" : 5250, - "capabilities" : [ "GeometryShaderPassthroughNV" ] - }, - { - "enumerant" : "ViewportRelativeNV", - "value" : 5252, - "capabilities" : [ "ShaderViewportMaskNV" ] - }, - { - "enumerant" : "SecondaryViewportRelativeNV", - "value" : 5256, - "capabilities" : [ "ShaderStereoViewNV" ], - "parameters" : [ - { "kind" : "LiteralInteger", "name" : "'Offset'" } - ] - }, - { - "enumerant" : "HlslCounterBufferGOOGLE", - "value" : 5634, - "parameters" : [ - { "kind" : "IdRef", "name" : "'Counter Buffer'" } - ], - "extensions" : [ "SPV_GOOGLE_hlsl_functionality1" ] - }, - { - "enumerant" : "HlslSemanticGOOGLE", - "value" : 5635, - "parameters" : [ - { "kind" : "LiteralString", "name" : "'Semantic'" } - ], - "extensions" : [ "SPV_GOOGLE_hlsl_functionality1" ] - } - ] - }, - { - "category" : "ValueEnum", - "kind" : "BuiltIn", - "enumerants" : [ - { - "enumerant" : "Position", - "value" : 0, - "capabilities" : [ "Shader" ] - }, - { - "enumerant" : "PointSize", - "value" : 1, - "capabilities" : [ "Shader" ] - }, - { - "enumerant" : "ClipDistance", - "value" : 3, - "capabilities" : [ "ClipDistance" ] - }, - { - "enumerant" : "CullDistance", - "value" : 4, - "capabilities" : [ "CullDistance" ] - }, - { - "enumerant" : "VertexId", - "value" : 5, - "capabilities" : [ "Shader" ] - }, - { - "enumerant" : "InstanceId", - "value" : 6, - "capabilities" : [ "Shader" ] - }, - { - "enumerant" : "PrimitiveId", - "value" : 7, - "capabilities" : [ "Geometry", "Tessellation" ] - }, - { - "enumerant" : "InvocationId", - "value" : 8, - "capabilities" : [ "Geometry", "Tessellation" ] - }, - { - "enumerant" : "Layer", - "value" : 9, - "capabilities" : [ "Geometry" ] - }, - { - "enumerant" : "ViewportIndex", - "value" : 10, - "capabilities" : [ "MultiViewport" ] - }, - { - "enumerant" : "TessLevelOuter", - "value" : 11, - "capabilities" : [ "Tessellation" ] - }, - { - "enumerant" : "TessLevelInner", - "value" : 12, - "capabilities" : [ "Tessellation" ] - }, - { - "enumerant" : "TessCoord", - "value" : 13, - "capabilities" : [ "Tessellation" ] - }, - { - "enumerant" : "PatchVertices", - "value" : 14, - "capabilities" : [ "Tessellation" ] - }, - { - "enumerant" : "FragCoord", - "value" : 15, - "capabilities" : [ "Shader" ] - }, - { - "enumerant" : "PointCoord", - "value" : 16, - "capabilities" : [ "Shader" ] - }, - { - "enumerant" : "FrontFacing", - "value" : 17, - "capabilities" : [ "Shader" ] - }, - { - "enumerant" : "SampleId", - "value" : 18, - "capabilities" : [ "SampleRateShading" ] - }, - { - "enumerant" : "SamplePosition", - "value" : 19, - "capabilities" : [ "SampleRateShading" ] - }, - { - "enumerant" : "SampleMask", - "value" : 20, - "capabilities" : [ "Shader" ] - }, - { - "enumerant" : "FragDepth", - "value" : 22, - "capabilities" : [ "Shader" ] - }, - { - "enumerant" : "HelperInvocation", - "value" : 23, - "capabilities" : [ "Shader" ] - }, - { - "enumerant" : "NumWorkgroups", - "value" : 24 - }, - { - "enumerant" : "WorkgroupSize", - "value" : 25 - }, - { - "enumerant" : "WorkgroupId", - "value" : 26 - }, - { - "enumerant" : "LocalInvocationId", - "value" : 27 - }, - { - "enumerant" : "GlobalInvocationId", - "value" : 28 - }, - { - "enumerant" : "LocalInvocationIndex", - "value" : 29 - }, - { - "enumerant" : "WorkDim", - "value" : 30, - "capabilities" : [ "Kernel" ] - }, - { - "enumerant" : "GlobalSize", - "value" : 31, - "capabilities" : [ "Kernel" ] - }, - { - "enumerant" : "EnqueuedWorkgroupSize", - "value" : 32, - "capabilities" : [ "Kernel" ] - }, - { - "enumerant" : "GlobalOffset", - "value" : 33, - "capabilities" : [ "Kernel" ] - }, - { - "enumerant" : "GlobalLinearId", - "value" : 34, - "capabilities" : [ "Kernel" ] - }, - { - "enumerant" : "SubgroupSize", - "value" : 36, - "capabilities" : [ "Kernel", "SubgroupBallotKHR" ] - }, - { - "enumerant" : "SubgroupMaxSize", - "value" : 37, - "capabilities" : [ "Kernel" ] - }, - { - "enumerant" : "NumSubgroups", - "value" : 38, - "capabilities" : [ "Kernel" ] - }, - { - "enumerant" : "NumEnqueuedSubgroups", - "value" : 39, - "capabilities" : [ "Kernel" ] - }, - { - "enumerant" : "SubgroupId", - "value" : 40, - "capabilities" : [ "Kernel" ] - }, - { - "enumerant" : "SubgroupLocalInvocationId", - "value" : 41, - "capabilities" : [ "Kernel", "SubgroupBallotKHR" ] - }, - { - "enumerant" : "VertexIndex", - "value" : 42, - "capabilities" : [ "Shader" ] - }, - { - "enumerant" : "InstanceIndex", - "value" : 43, - "capabilities" : [ "Shader" ] - }, - { - "enumerant" : "SubgroupEqMaskKHR", - "value" : 4416, - "capabilities" : [ "SubgroupBallotKHR" ] - }, - { - "enumerant" : "SubgroupGeMaskKHR", - "value" : 4417, - "capabilities" : [ "SubgroupBallotKHR" ] - }, - { - "enumerant" : "SubgroupGtMaskKHR", - "value" : 4418, - "capabilities" : [ "SubgroupBallotKHR" ] - }, - { - "enumerant" : "SubgroupLeMaskKHR", - "value" : 4419, - "capabilities" : [ "SubgroupBallotKHR" ] - }, - { - "enumerant" : "SubgroupLtMaskKHR", - "value" : 4420, - "capabilities" : [ "SubgroupBallotKHR" ] - }, - { - "enumerant" : "BaseVertex", - "value" : 4424, - "capabilities" : [ "DrawParameters" ] - }, - { - "enumerant" : "BaseInstance", - "value" : 4425, - "capabilities" : [ "DrawParameters" ] - }, - { - "enumerant" : "DrawIndex", - "value" : 4426, - "capabilities" : [ "DrawParameters" ] - }, - { - "enumerant" : "DeviceIndex", - "value" : 4438, - "capabilities" : [ "DeviceGroup" ] - }, - { - "enumerant" : "ViewIndex", - "value" : 4440, - "capabilities" : [ "MultiView" ] - }, - { - "enumerant" : "BaryCoordNoPerspAMD", - "value" : 4992 - }, - { - "enumerant" : "BaryCoordNoPerspCentroidAMD", - "value" : 4993 - }, - { - "enumerant" : "BaryCoordNoPerspSampleAMD", - "value" : 4994 - }, - { - "enumerant" : "BaryCoordSmoothAMD", - "value" : 4995 - }, - { - "enumerant" : "BaryCoordSmoothCentroidAMD", - "value" : 4996 - }, - { - "enumerant" : "BaryCoordSmoothSampleAMD", - "value" : 4997 - }, - { - "enumerant" : "BaryCoordPullModelAMD", - "value" : 4998 - }, - { - "enumerant" : "FragStencilRefEXT", - "value" : 5014, - "capabilities" : [ "StencilExportEXT" ] - }, - { - "enumerant" : "ViewportMaskNV", - "value" : 5253, - "capabilities" : [ "ShaderViewportMaskNV" ] - }, - { - "enumerant" : "SecondaryPositionNV", - "value" : 5257, - "capabilities" : [ "ShaderStereoViewNV" ] - }, - { - "enumerant" : "SecondaryViewportMaskNV", - "value" : 5258, - "capabilities" : [ "ShaderStereoViewNV" ] - }, - { - "enumerant" : "PositionPerViewNV", - "value" : 5261, - "capabilities" : [ "PerViewAttributesNV" ] - }, - { - "enumerant" : "ViewportMaskPerViewNV", - "value" : 5262, - "capabilities" : [ "PerViewAttributesNV" ] - } - ] - }, - { - "category" : "ValueEnum", - "kind" : "Scope", - "enumerants" : [ - { - "enumerant" : "CrossDevice", - "value" : 0 - }, - { - "enumerant" : "Device", - "value" : 1 - }, - { - "enumerant" : "Workgroup", - "value" : 2 - }, - { - "enumerant" : "Subgroup", - "value" : 3 - }, - { - "enumerant" : "Invocation", - "value" : 4 - } - ] - }, - { - "category" : "ValueEnum", - "kind" : "GroupOperation", - "enumerants" : [ - { - "enumerant" : "Reduce", - "value" : 0, - "capabilities" : [ "Kernel" ] - }, - { - "enumerant" : "InclusiveScan", - "value" : 1, - "capabilities" : [ "Kernel" ] - }, - { - "enumerant" : "ExclusiveScan", - "value" : 2, - "capabilities" : [ "Kernel" ] - } - ] - }, - { - "category" : "ValueEnum", - "kind" : "KernelEnqueueFlags", - "enumerants" : [ - { - "enumerant" : "NoWait", - "value" : 0, - "capabilities" : [ "Kernel" ] - }, - { - "enumerant" : "WaitKernel", - "value" : 1, - "capabilities" : [ "Kernel" ] - }, - { - "enumerant" : "WaitWorkGroup", - "value" : 2, - "capabilities" : [ "Kernel" ] - } - ] - }, - { - "category" : "ValueEnum", - "kind" : "Capability", - "enumerants" : [ - { - "enumerant" : "Matrix", - "value" : 0 - }, - { - "enumerant" : "Shader", - "value" : 1, - "capabilities" : [ "Matrix" ] - }, - { - "enumerant" : "Geometry", - "value" : 2, - "capabilities" : [ "Shader" ] - }, - { - "enumerant" : "Tessellation", - "value" : 3, - "capabilities" : [ "Shader" ] - }, - { - "enumerant" : "Addresses", - "value" : 4 - }, - { - "enumerant" : "Linkage", - "value" : 5 - }, - { - "enumerant" : "Kernel", - "value" : 6 - }, - { - "enumerant" : "Vector16", - "value" : 7, - "capabilities" : [ "Kernel" ] - }, - { - "enumerant" : "Float16Buffer", - "value" : 8, - "capabilities" : [ "Kernel" ] - }, - { - "enumerant" : "Float16", - "value" : 9 - }, - { - "enumerant" : "Float64", - "value" : 10 - }, - { - "enumerant" : "Int64", - "value" : 11 - }, - { - "enumerant" : "Int64Atomics", - "value" : 12, - "capabilities" : [ "Int64" ] - }, - { - "enumerant" : "ImageBasic", - "value" : 13, - "capabilities" : [ "Kernel" ] - }, - { - "enumerant" : "ImageReadWrite", - "value" : 14, - "capabilities" : [ "ImageBasic" ] - }, - { - "enumerant" : "ImageMipmap", - "value" : 15, - "capabilities" : [ "ImageBasic" ] - }, - { - "enumerant" : "Pipes", - "value" : 17, - "capabilities" : [ "Kernel" ] - }, - { - "enumerant" : "Groups", - "value" : 18 - }, - { - "enumerant" : "DeviceEnqueue", - "value" : 19, - "capabilities" : [ "Kernel" ] - }, - { - "enumerant" : "LiteralSampler", - "value" : 20, - "capabilities" : [ "Kernel" ] - }, - { - "enumerant" : "AtomicStorage", - "value" : 21, - "capabilities" : [ "Shader" ] - }, - { - "enumerant" : "Int16", - "value" : 22 - }, - { - "enumerant" : "TessellationPointSize", - "value" : 23, - "capabilities" : [ "Tessellation" ] - }, - { - "enumerant" : "GeometryPointSize", - "value" : 24, - "capabilities" : [ "Geometry" ] - }, - { - "enumerant" : "ImageGatherExtended", - "value" : 25, - "capabilities" : [ "Shader" ] - }, - { - "enumerant" : "StorageImageMultisample", - "value" : 27, - "capabilities" : [ "Shader" ] - }, - { - "enumerant" : "UniformBufferArrayDynamicIndexing", - "value" : 28, - "capabilities" : [ "Shader" ] - }, - { - "enumerant" : "SampledImageArrayDynamicIndexing", - "value" : 29, - "capabilities" : [ "Shader" ] - }, - { - "enumerant" : "StorageBufferArrayDynamicIndexing", - "value" : 30, - "capabilities" : [ "Shader" ] - }, - { - "enumerant" : "StorageImageArrayDynamicIndexing", - "value" : 31, - "capabilities" : [ "Shader" ] - }, - { - "enumerant" : "ClipDistance", - "value" : 32, - "capabilities" : [ "Shader" ] - }, - { - "enumerant" : "CullDistance", - "value" : 33, - "capabilities" : [ "Shader" ] - }, - { - "enumerant" : "ImageCubeArray", - "value" : 34, - "capabilities" : [ "SampledCubeArray" ] - }, - { - "enumerant" : "SampleRateShading", - "value" : 35, - "capabilities" : [ "Shader" ] - }, - { - "enumerant" : "ImageRect", - "value" : 36, - "capabilities" : [ "SampledRect" ] - }, - { - "enumerant" : "SampledRect", - "value" : 37, - "capabilities" : [ "Shader" ] - }, - { - "enumerant" : "GenericPointer", - "value" : 38, - "capabilities" : [ "Addresses" ] - }, - { - "enumerant" : "Int8", - "value" : 39, - "capabilities" : [ "Kernel" ] - }, - { - "enumerant" : "InputAttachment", - "value" : 40, - "capabilities" : [ "Shader" ] - }, - { - "enumerant" : "SparseResidency", - "value" : 41, - "capabilities" : [ "Shader" ] - }, - { - "enumerant" : "MinLod", - "value" : 42, - "capabilities" : [ "Shader" ] - }, - { - "enumerant" : "Sampled1D", - "value" : 43 - }, - { - "enumerant" : "Image1D", - "value" : 44, - "capabilities" : [ "Sampled1D" ] - }, - { - "enumerant" : "SampledCubeArray", - "value" : 45, - "capabilities" : [ "Shader" ] - }, - { - "enumerant" : "SampledBuffer", - "value" : 46 - }, - { - "enumerant" : "ImageBuffer", - "value" : 47, - "capabilities" : [ "SampledBuffer" ] - }, - { - "enumerant" : "ImageMSArray", - "value" : 48, - "capabilities" : [ "Shader" ] - }, - { - "enumerant" : "StorageImageExtendedFormats", - "value" : 49, - "capabilities" : [ "Shader" ] - }, - { - "enumerant" : "ImageQuery", - "value" : 50, - "capabilities" : [ "Shader" ] - }, - { - "enumerant" : "DerivativeControl", - "value" : 51, - "capabilities" : [ "Shader" ] - }, - { - "enumerant" : "InterpolationFunction", - "value" : 52, - "capabilities" : [ "Shader" ] - }, - { - "enumerant" : "TransformFeedback", - "value" : 53, - "capabilities" : [ "Shader" ] - }, - { - "enumerant" : "GeometryStreams", - "value" : 54, - "capabilities" : [ "Geometry" ] - }, - { - "enumerant" : "StorageImageReadWithoutFormat", - "value" : 55, - "capabilities" : [ "Shader" ] - }, - { - "enumerant" : "StorageImageWriteWithoutFormat", - "value" : 56, - "capabilities" : [ "Shader" ] - }, - { - "enumerant" : "MultiViewport", - "value" : 57, - "capabilities" : [ "Geometry" ] - }, - { - "enumerant" : "SubgroupDispatch", - "value" : 58, - "capabilities" : [ "DeviceEnqueue" ] - }, - { - "enumerant" : "NamedBarrier", - "value" : 59, - "capabilities" : [ "Kernel" ] - }, - { - "enumerant" : "PipeStorage", - "value" : 60, - "capabilities" : [ "Pipes" ] - }, - { - "enumerant" : "SubgroupBallotKHR", - "value" : 4423, - "extensions" : [ "SPV_KHR_shader_ballot" ] - }, - { - "enumerant" : "DrawParameters", - "value" : 4427, - "extensions" : [ "SPV_KHR_shader_draw_parameters" ] - }, - { - "enumerant" : "SubgroupVoteKHR", - "value" : 4431, - "extensions" : [ "SPV_KHR_subgroup_vote" ] - }, - { - "enumerant" : "StorageBuffer16BitAccess", - "value" : 4433, - "extensions" : [ "SPV_KHR_16bit_storage" ] - }, - { - "enumerant" : "StorageUniformBufferBlock16", - "value" : 4433, - "extensions" : [ "SPV_KHR_16bit_storage" ] - }, - { - "enumerant" : "UniformAndStorageBuffer16BitAccess", - "value" : 4434, - "capabilities" : [ - "StorageBuffer16BitAccess", - "StorageUniformBufferBlock16" - ], - "extensions" : [ "SPV_KHR_16bit_storage" ] - }, - { - "enumerant" : "StorageUniform16", - "value" : 4434, - "capabilities" : [ - "StorageBuffer16BitAccess", - "StorageUniformBufferBlock16" - ], - "extensions" : [ "SPV_KHR_16bit_storage" ] - }, - { - "enumerant" : "StoragePushConstant16", - "value" : 4435, - "extensions" : [ "SPV_KHR_16bit_storage" ] - }, - { - "enumerant" : "StorageInputOutput16", - "value" : 4436, - "extensions" : [ "SPV_KHR_16bit_storage" ] - }, - { - "enumerant" : "DeviceGroup", - "value" : 4437, - "extensions" : [ "SPV_KHR_device_group" ] - }, - { - "enumerant" : "MultiView", - "value" : 4439, - "capabilities" : [ "Shader" ], - "extensions" : [ "SPV_KHR_multiview" ] - }, - { - "enumerant" : "VariablePointersStorageBuffer", - "value" : 4441, - "capabilities" : [ "Shader" ], - "extensions" : [ "SPV_KHR_variable_pointers" ] - }, - { - "enumerant" : "VariablePointers", - "value" : 4442, - "capabilities" : [ "VariablePointersStorageBuffer" ], - "extensions" : [ "SPV_KHR_variable_pointers" ] - }, - { - "enumerant": "AtomicStorageOps", - "value": 4445, - "extensions": [ "SPV_KHR_shader_atomic_counter_ops" ] - }, - { - "enumerant" : "SampleMaskPostDepthCoverage", - "value" : 4447, - "extensions" : [ "SPV_KHR_post_depth_coverage" ] - }, - { - "enumerant" : "ImageGatherBiasLodAMD", - "value" : 5009, - "capabilities" : [ "Shader" ], - "extensions" : [ "SPV_AMD_texture_gather_bias_lod" ] - }, - { - "enumerant" : "FragmentMaskAMD", - "value" : 5010, - "capabilities" : [ "Shader" ], - "extensions" : [ "SPV_AMD_shader_fragment_mask" ] - }, - { - "enumerant" : "StencilExportEXT", - "value" : 5013, - "capabilities" : [ "Shader" ], - "extensions" : [ "SPV_EXT_shader_stencil_export" ] - }, - { - "enumerant" : "ImageReadWriteLodAMD", - "value" : 5015, - "capabilities" : [ "Shader" ], - "extensions" : [ "SPV_AMD_shader_image_load_store_lod" ] - }, - { - "enumerant" : "SampleMaskOverrideCoverageNV", - "value" : 5249, - "capabilities" : [ "SampleRateShading" ], - "extensions" : [ "SPV_NV_sample_mask_override_coverage" ] - }, - { - "enumerant" : "GeometryShaderPassthroughNV", - "value" : 5251, - "capabilities" : [ "Geometry" ], - "extensions" : [ "SPV_NV_geometry_shader_passthrough" ] - }, - { - "enumerant" : "ShaderViewportIndexLayerEXT", - "value" : 5254, - "capabilities" : [ "MultiViewport" ], - "extensions" : [ "SPV_EXT_shader_viewport_index_layer" ] - }, - { - "enumerant" : "ShaderViewportIndexLayerNV", - "value" : 5254, - "capabilities" : [ "MultiViewport" ], - "extensions" : [ "SPV_NV_viewport_array2" ] - }, - { - "enumerant" : "ShaderViewportMaskNV", - "value" : 5255, - "capabilities" : [ "ShaderViewportIndexLayerNV" ], - "extensions" : [ "SPV_NV_viewport_array2" ] - }, - { - "enumerant" : "ShaderStereoViewNV", - "value" : 5259, - "capabilities" : [ "ShaderViewportMaskNV" ], - "extensions" : [ "SPV_NV_stereo_view_rendering" ] - }, - { - "enumerant" : "PerViewAttributesNV", - "value" : 5260, - "capabilities" : [ "MultiView" ], - "extensions" : [ "SPV_NVX_multiview_per_view_attributes" ] - }, - { - "enumerant" : "SubgroupShuffleINTEL", - "value" : 5568, - "extensions" : [ "SPV_INTEL_subgroups" ] - }, - { - "enumerant" : "SubgroupBufferBlockIOINTEL", - "value" : 5569, - "extensions" : [ "SPV_INTEL_subgroups" ] - }, - { - "enumerant" : "SubgroupImageBlockIOINTEL", - "value" : 5570, - "extensions" : [ "SPV_INTEL_subgroups" ] - } - ] - }, - { - "category" : "Id", - "kind" : "IdResultType", - "doc" : "Reference to an representing the result's type of the enclosing instruction" - }, - { - "category" : "Id", - "kind" : "IdResult", - "doc" : "Definition of an representing the result of the enclosing instruction" - }, - { - "category" : "Id", - "kind" : "IdMemorySemantics", - "doc" : "Reference to an representing a 32-bit integer that is a mask from the MemorySemantics operand kind" - }, - { - "category" : "Id", - "kind" : "IdScope", - "doc" : "Reference to an representing a 32-bit integer that is a mask from the Scope operand kind" - }, - { - "category" : "Id", - "kind" : "IdRef", - "doc" : "Reference to an " - }, - { - "category" : "Literal", - "kind" : "LiteralInteger", - "doc" : "An integer consuming one or more words" - }, - { - "category" : "Literal", - "kind" : "LiteralString", - "doc" : "A null-terminated stream of characters consuming an integral number of words" - }, - { - "category" : "Literal", - "kind" : "LiteralContextDependentNumber", - "doc" : "A literal number whose size and format are determined by a previous operand in the enclosing instruction" - }, - { - "category" : "Literal", - "kind" : "LiteralExtInstInteger", - "doc" : "A 32-bit unsigned integer indicating which instruction to use and determining the layout of following operands (for OpExtInst)" - }, - { - "category" : "Literal", - "kind" : "LiteralSpecConstantOpInteger", - "doc" : "An opcode indicating the operation to be performed and determining the layout of following operands (for OpSpecConstantOp)" - }, - { - "category" : "Composite", - "kind" : "PairLiteralIntegerIdRef", - "bases" : [ "LiteralInteger", "IdRef" ] - }, - { - "category" : "Composite", - "kind" : "PairIdRefLiteralInteger", - "bases" : [ "IdRef", "LiteralInteger" ] - }, - { - "category" : "Composite", - "kind" : "PairIdRefIdRef", - "bases" : [ "IdRef", "IdRef" ] - } - ] -} diff --git a/Extern/3rdParty/shaderc/shaderc/include/spirv/1.1/spirv.cs b/Extern/3rdParty/shaderc/shaderc/include/spirv/1.1/spirv.cs deleted file mode 100644 index 99194e5..0000000 --- a/Extern/3rdParty/shaderc/shaderc/include/spirv/1.1/spirv.cs +++ /dev/null @@ -1,1015 +0,0 @@ -// Copyright (c) 2014-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. - -// This header is automatically generated by the same tool that creates -// the Binary Section of the SPIR-V specification. - -// Enumeration tokens for SPIR-V, in various styles: -// C, C++, C++11, JSON, Lua, Python, C# -// -// - C will have tokens with a "Spv" prefix, e.g.: SpvSourceLanguageGLSL -// - C++ will have tokens in the "spv" name space, e.g.: spv::SourceLanguageGLSL -// - C++11 will use enum classes in the spv namespace, e.g.: spv::SourceLanguage::GLSL -// - Lua will use tables, e.g.: spv.SourceLanguage.GLSL -// - Python will use dictionaries, e.g.: spv['SourceLanguage']['GLSL'] -// - C# will use enum classes in the Specification class located in the "Spv" namespace, e.g.: Spv.Specification.SourceLanguage.GLSL -// -// Some tokens act like mask values, which can be OR'd together, -// while others are mutually exclusive. The mask-like ones have -// "Mask" in their name, and a parallel enum that has the shift -// amount (1 << x) for each corresponding enumerant. - -namespace Spv -{ - - public static class Specification - { - public const uint MagicNumber = 0x07230203; - public const uint Version = 0x00010100; - public const uint Revision = 8; - public const uint OpCodeMask = 0xffff; - public const uint WordCountShift = 16; - - public enum SourceLanguage - { - Unknown = 0, - ESSL = 1, - GLSL = 2, - OpenCL_C = 3, - OpenCL_CPP = 4, - HLSL = 5, - } - - public enum ExecutionModel - { - Vertex = 0, - TessellationControl = 1, - TessellationEvaluation = 2, - Geometry = 3, - Fragment = 4, - GLCompute = 5, - Kernel = 6, - } - - public enum AddressingModel - { - Logical = 0, - Physical32 = 1, - Physical64 = 2, - } - - public enum MemoryModel - { - Simple = 0, - GLSL450 = 1, - OpenCL = 2, - } - - public enum ExecutionMode - { - Invocations = 0, - SpacingEqual = 1, - SpacingFractionalEven = 2, - SpacingFractionalOdd = 3, - VertexOrderCw = 4, - VertexOrderCcw = 5, - PixelCenterInteger = 6, - OriginUpperLeft = 7, - OriginLowerLeft = 8, - EarlyFragmentTests = 9, - PointMode = 10, - Xfb = 11, - DepthReplacing = 12, - DepthGreater = 14, - DepthLess = 15, - DepthUnchanged = 16, - LocalSize = 17, - LocalSizeHint = 18, - InputPoints = 19, - InputLines = 20, - InputLinesAdjacency = 21, - Triangles = 22, - InputTrianglesAdjacency = 23, - Quads = 24, - Isolines = 25, - OutputVertices = 26, - OutputPoints = 27, - OutputLineStrip = 28, - OutputTriangleStrip = 29, - VecTypeHint = 30, - ContractionOff = 31, - Initializer = 33, - Finalizer = 34, - SubgroupSize = 35, - SubgroupsPerWorkgroup = 36, - PostDepthCoverage = 4446, - StencilRefReplacingEXT = 5027, - } - - public enum StorageClass - { - UniformConstant = 0, - Input = 1, - Uniform = 2, - Output = 3, - Workgroup = 4, - CrossWorkgroup = 5, - Private = 6, - Function = 7, - Generic = 8, - PushConstant = 9, - AtomicCounter = 10, - Image = 11, - StorageBuffer = 12, - } - - public enum Dim - { - Dim1D = 0, - Dim2D = 1, - Dim3D = 2, - Cube = 3, - Rect = 4, - Buffer = 5, - SubpassData = 6, - } - - public enum SamplerAddressingMode - { - None = 0, - ClampToEdge = 1, - Clamp = 2, - Repeat = 3, - RepeatMirrored = 4, - } - - public enum SamplerFilterMode - { - Nearest = 0, - Linear = 1, - } - - public enum ImageFormat - { - Unknown = 0, - Rgba32f = 1, - Rgba16f = 2, - R32f = 3, - Rgba8 = 4, - Rgba8Snorm = 5, - Rg32f = 6, - Rg16f = 7, - R11fG11fB10f = 8, - R16f = 9, - Rgba16 = 10, - Rgb10A2 = 11, - Rg16 = 12, - Rg8 = 13, - R16 = 14, - R8 = 15, - Rgba16Snorm = 16, - Rg16Snorm = 17, - Rg8Snorm = 18, - R16Snorm = 19, - R8Snorm = 20, - Rgba32i = 21, - Rgba16i = 22, - Rgba8i = 23, - R32i = 24, - Rg32i = 25, - Rg16i = 26, - Rg8i = 27, - R16i = 28, - R8i = 29, - Rgba32ui = 30, - Rgba16ui = 31, - Rgba8ui = 32, - R32ui = 33, - Rgb10a2ui = 34, - Rg32ui = 35, - Rg16ui = 36, - Rg8ui = 37, - R16ui = 38, - R8ui = 39, - } - - public enum ImageChannelOrder - { - R = 0, - A = 1, - RG = 2, - RA = 3, - RGB = 4, - RGBA = 5, - BGRA = 6, - ARGB = 7, - Intensity = 8, - Luminance = 9, - Rx = 10, - RGx = 11, - RGBx = 12, - Depth = 13, - DepthStencil = 14, - sRGB = 15, - sRGBx = 16, - sRGBA = 17, - sBGRA = 18, - ABGR = 19, - } - - public enum ImageChannelDataType - { - SnormInt8 = 0, - SnormInt16 = 1, - UnormInt8 = 2, - UnormInt16 = 3, - UnormShort565 = 4, - UnormShort555 = 5, - UnormInt101010 = 6, - SignedInt8 = 7, - SignedInt16 = 8, - SignedInt32 = 9, - UnsignedInt8 = 10, - UnsignedInt16 = 11, - UnsignedInt32 = 12, - HalfFloat = 13, - Float = 14, - UnormInt24 = 15, - UnormInt101010_2 = 16, - } - - public enum ImageOperandsShift - { - Bias = 0, - Lod = 1, - Grad = 2, - ConstOffset = 3, - Offset = 4, - ConstOffsets = 5, - Sample = 6, - MinLod = 7, - } - - public enum ImageOperandsMask - { - MaskNone = 0, - Bias = 0x00000001, - Lod = 0x00000002, - Grad = 0x00000004, - ConstOffset = 0x00000008, - Offset = 0x00000010, - ConstOffsets = 0x00000020, - Sample = 0x00000040, - MinLod = 0x00000080, - } - - public enum FPFastMathModeShift - { - NotNaN = 0, - NotInf = 1, - NSZ = 2, - AllowRecip = 3, - Fast = 4, - } - - public enum FPFastMathModeMask - { - MaskNone = 0, - NotNaN = 0x00000001, - NotInf = 0x00000002, - NSZ = 0x00000004, - AllowRecip = 0x00000008, - Fast = 0x00000010, - } - - public enum FPRoundingMode - { - RTE = 0, - RTZ = 1, - RTP = 2, - RTN = 3, - } - - public enum LinkageType - { - Export = 0, - Import = 1, - } - - public enum AccessQualifier - { - ReadOnly = 0, - WriteOnly = 1, - ReadWrite = 2, - } - - public enum FunctionParameterAttribute - { - Zext = 0, - Sext = 1, - ByVal = 2, - Sret = 3, - NoAlias = 4, - NoCapture = 5, - NoWrite = 6, - NoReadWrite = 7, - } - - public enum Decoration - { - RelaxedPrecision = 0, - SpecId = 1, - Block = 2, - BufferBlock = 3, - RowMajor = 4, - ColMajor = 5, - ArrayStride = 6, - MatrixStride = 7, - GLSLShared = 8, - GLSLPacked = 9, - CPacked = 10, - BuiltIn = 11, - NoPerspective = 13, - Flat = 14, - Patch = 15, - Centroid = 16, - Sample = 17, - Invariant = 18, - Restrict = 19, - Aliased = 20, - Volatile = 21, - Constant = 22, - Coherent = 23, - NonWritable = 24, - NonReadable = 25, - Uniform = 26, - SaturatedConversion = 28, - Stream = 29, - Location = 30, - Component = 31, - Index = 32, - Binding = 33, - DescriptorSet = 34, - Offset = 35, - XfbBuffer = 36, - XfbStride = 37, - FuncParamAttr = 38, - FPRoundingMode = 39, - FPFastMathMode = 40, - LinkageAttributes = 41, - NoContraction = 42, - InputAttachmentIndex = 43, - Alignment = 44, - MaxByteOffset = 45, - ExplicitInterpAMD = 4999, - OverrideCoverageNV = 5248, - PassthroughNV = 5250, - ViewportRelativeNV = 5252, - SecondaryViewportRelativeNV = 5256, - HlslCounterBufferGOOGLE = 5634, - HlslSemanticGOOGLE = 5635, - } - - public enum BuiltIn - { - Position = 0, - PointSize = 1, - ClipDistance = 3, - CullDistance = 4, - VertexId = 5, - InstanceId = 6, - PrimitiveId = 7, - InvocationId = 8, - Layer = 9, - ViewportIndex = 10, - TessLevelOuter = 11, - TessLevelInner = 12, - TessCoord = 13, - PatchVertices = 14, - FragCoord = 15, - PointCoord = 16, - FrontFacing = 17, - SampleId = 18, - SamplePosition = 19, - SampleMask = 20, - FragDepth = 22, - HelperInvocation = 23, - NumWorkgroups = 24, - WorkgroupSize = 25, - WorkgroupId = 26, - LocalInvocationId = 27, - GlobalInvocationId = 28, - LocalInvocationIndex = 29, - WorkDim = 30, - GlobalSize = 31, - EnqueuedWorkgroupSize = 32, - GlobalOffset = 33, - GlobalLinearId = 34, - SubgroupSize = 36, - SubgroupMaxSize = 37, - NumSubgroups = 38, - NumEnqueuedSubgroups = 39, - SubgroupId = 40, - SubgroupLocalInvocationId = 41, - VertexIndex = 42, - InstanceIndex = 43, - SubgroupEqMaskKHR = 4416, - SubgroupGeMaskKHR = 4417, - SubgroupGtMaskKHR = 4418, - SubgroupLeMaskKHR = 4419, - SubgroupLtMaskKHR = 4420, - BaseVertex = 4424, - BaseInstance = 4425, - DrawIndex = 4426, - DeviceIndex = 4438, - ViewIndex = 4440, - BaryCoordNoPerspAMD = 4992, - BaryCoordNoPerspCentroidAMD = 4993, - BaryCoordNoPerspSampleAMD = 4994, - BaryCoordSmoothAMD = 4995, - BaryCoordSmoothCentroidAMD = 4996, - BaryCoordSmoothSampleAMD = 4997, - BaryCoordPullModelAMD = 4998, - FragStencilRefEXT = 5014, - ViewportMaskNV = 5253, - SecondaryPositionNV = 5257, - SecondaryViewportMaskNV = 5258, - PositionPerViewNV = 5261, - ViewportMaskPerViewNV = 5262, - } - - public enum SelectionControlShift - { - Flatten = 0, - DontFlatten = 1, - } - - public enum SelectionControlMask - { - MaskNone = 0, - Flatten = 0x00000001, - DontFlatten = 0x00000002, - } - - public enum LoopControlShift - { - Unroll = 0, - DontUnroll = 1, - DependencyInfinite = 2, - DependencyLength = 3, - } - - public enum LoopControlMask - { - MaskNone = 0, - Unroll = 0x00000001, - DontUnroll = 0x00000002, - DependencyInfinite = 0x00000004, - DependencyLength = 0x00000008, - } - - public enum FunctionControlShift - { - Inline = 0, - DontInline = 1, - Pure = 2, - Const = 3, - } - - public enum FunctionControlMask - { - MaskNone = 0, - Inline = 0x00000001, - DontInline = 0x00000002, - Pure = 0x00000004, - Const = 0x00000008, - } - - public enum MemorySemanticsShift - { - Acquire = 1, - Release = 2, - AcquireRelease = 3, - SequentiallyConsistent = 4, - UniformMemory = 6, - SubgroupMemory = 7, - WorkgroupMemory = 8, - CrossWorkgroupMemory = 9, - AtomicCounterMemory = 10, - ImageMemory = 11, - } - - public enum MemorySemanticsMask - { - MaskNone = 0, - Acquire = 0x00000002, - Release = 0x00000004, - AcquireRelease = 0x00000008, - SequentiallyConsistent = 0x00000010, - UniformMemory = 0x00000040, - SubgroupMemory = 0x00000080, - WorkgroupMemory = 0x00000100, - CrossWorkgroupMemory = 0x00000200, - AtomicCounterMemory = 0x00000400, - ImageMemory = 0x00000800, - } - - public enum MemoryAccessShift - { - Volatile = 0, - Aligned = 1, - Nontemporal = 2, - } - - public enum MemoryAccessMask - { - MaskNone = 0, - Volatile = 0x00000001, - Aligned = 0x00000002, - Nontemporal = 0x00000004, - } - - public enum Scope - { - CrossDevice = 0, - Device = 1, - Workgroup = 2, - Subgroup = 3, - Invocation = 4, - } - - public enum GroupOperation - { - Reduce = 0, - InclusiveScan = 1, - ExclusiveScan = 2, - } - - public enum KernelEnqueueFlags - { - NoWait = 0, - WaitKernel = 1, - WaitWorkGroup = 2, - } - - public enum KernelProfilingInfoShift - { - CmdExecTime = 0, - } - - public enum KernelProfilingInfoMask - { - MaskNone = 0, - CmdExecTime = 0x00000001, - } - - public enum Capability - { - Matrix = 0, - Shader = 1, - Geometry = 2, - Tessellation = 3, - Addresses = 4, - Linkage = 5, - Kernel = 6, - Vector16 = 7, - Float16Buffer = 8, - Float16 = 9, - Float64 = 10, - Int64 = 11, - Int64Atomics = 12, - ImageBasic = 13, - ImageReadWrite = 14, - ImageMipmap = 15, - Pipes = 17, - Groups = 18, - DeviceEnqueue = 19, - LiteralSampler = 20, - AtomicStorage = 21, - Int16 = 22, - TessellationPointSize = 23, - GeometryPointSize = 24, - ImageGatherExtended = 25, - StorageImageMultisample = 27, - UniformBufferArrayDynamicIndexing = 28, - SampledImageArrayDynamicIndexing = 29, - StorageBufferArrayDynamicIndexing = 30, - StorageImageArrayDynamicIndexing = 31, - ClipDistance = 32, - CullDistance = 33, - ImageCubeArray = 34, - SampleRateShading = 35, - ImageRect = 36, - SampledRect = 37, - GenericPointer = 38, - Int8 = 39, - InputAttachment = 40, - SparseResidency = 41, - MinLod = 42, - Sampled1D = 43, - Image1D = 44, - SampledCubeArray = 45, - SampledBuffer = 46, - ImageBuffer = 47, - ImageMSArray = 48, - StorageImageExtendedFormats = 49, - ImageQuery = 50, - DerivativeControl = 51, - InterpolationFunction = 52, - TransformFeedback = 53, - GeometryStreams = 54, - StorageImageReadWithoutFormat = 55, - StorageImageWriteWithoutFormat = 56, - MultiViewport = 57, - SubgroupDispatch = 58, - NamedBarrier = 59, - PipeStorage = 60, - SubgroupBallotKHR = 4423, - DrawParameters = 4427, - SubgroupVoteKHR = 4431, - StorageBuffer16BitAccess = 4433, - StorageUniformBufferBlock16 = 4433, - StorageUniform16 = 4434, - UniformAndStorageBuffer16BitAccess = 4434, - StoragePushConstant16 = 4435, - StorageInputOutput16 = 4436, - DeviceGroup = 4437, - MultiView = 4439, - VariablePointersStorageBuffer = 4441, - VariablePointers = 4442, - AtomicStorageOps = 4445, - SampleMaskPostDepthCoverage = 4447, - ImageGatherBiasLodAMD = 5009, - FragmentMaskAMD = 5010, - StencilExportEXT = 5013, - ImageReadWriteLodAMD = 5015, - SampleMaskOverrideCoverageNV = 5249, - GeometryShaderPassthroughNV = 5251, - ShaderViewportIndexLayerEXT = 5254, - ShaderViewportIndexLayerNV = 5254, - ShaderViewportMaskNV = 5255, - ShaderStereoViewNV = 5259, - PerViewAttributesNV = 5260, - SubgroupShuffleINTEL = 5568, - SubgroupBufferBlockIOINTEL = 5569, - SubgroupImageBlockIOINTEL = 5570, - } - - public enum Op - { - OpNop = 0, - OpUndef = 1, - OpSourceContinued = 2, - OpSource = 3, - OpSourceExtension = 4, - OpName = 5, - OpMemberName = 6, - OpString = 7, - OpLine = 8, - OpExtension = 10, - OpExtInstImport = 11, - OpExtInst = 12, - OpMemoryModel = 14, - OpEntryPoint = 15, - OpExecutionMode = 16, - OpCapability = 17, - OpTypeVoid = 19, - OpTypeBool = 20, - OpTypeInt = 21, - OpTypeFloat = 22, - OpTypeVector = 23, - OpTypeMatrix = 24, - OpTypeImage = 25, - OpTypeSampler = 26, - OpTypeSampledImage = 27, - OpTypeArray = 28, - OpTypeRuntimeArray = 29, - OpTypeStruct = 30, - OpTypeOpaque = 31, - OpTypePointer = 32, - OpTypeFunction = 33, - OpTypeEvent = 34, - OpTypeDeviceEvent = 35, - OpTypeReserveId = 36, - OpTypeQueue = 37, - OpTypePipe = 38, - OpTypeForwardPointer = 39, - OpConstantTrue = 41, - OpConstantFalse = 42, - OpConstant = 43, - OpConstantComposite = 44, - OpConstantSampler = 45, - OpConstantNull = 46, - OpSpecConstantTrue = 48, - OpSpecConstantFalse = 49, - OpSpecConstant = 50, - OpSpecConstantComposite = 51, - OpSpecConstantOp = 52, - OpFunction = 54, - OpFunctionParameter = 55, - OpFunctionEnd = 56, - OpFunctionCall = 57, - OpVariable = 59, - OpImageTexelPointer = 60, - OpLoad = 61, - OpStore = 62, - OpCopyMemory = 63, - OpCopyMemorySized = 64, - OpAccessChain = 65, - OpInBoundsAccessChain = 66, - OpPtrAccessChain = 67, - OpArrayLength = 68, - OpGenericPtrMemSemantics = 69, - OpInBoundsPtrAccessChain = 70, - OpDecorate = 71, - OpMemberDecorate = 72, - OpDecorationGroup = 73, - OpGroupDecorate = 74, - OpGroupMemberDecorate = 75, - OpVectorExtractDynamic = 77, - OpVectorInsertDynamic = 78, - OpVectorShuffle = 79, - OpCompositeConstruct = 80, - OpCompositeExtract = 81, - OpCompositeInsert = 82, - OpCopyObject = 83, - OpTranspose = 84, - OpSampledImage = 86, - OpImageSampleImplicitLod = 87, - OpImageSampleExplicitLod = 88, - OpImageSampleDrefImplicitLod = 89, - OpImageSampleDrefExplicitLod = 90, - OpImageSampleProjImplicitLod = 91, - OpImageSampleProjExplicitLod = 92, - OpImageSampleProjDrefImplicitLod = 93, - OpImageSampleProjDrefExplicitLod = 94, - OpImageFetch = 95, - OpImageGather = 96, - OpImageDrefGather = 97, - OpImageRead = 98, - OpImageWrite = 99, - OpImage = 100, - OpImageQueryFormat = 101, - OpImageQueryOrder = 102, - OpImageQuerySizeLod = 103, - OpImageQuerySize = 104, - OpImageQueryLod = 105, - OpImageQueryLevels = 106, - OpImageQuerySamples = 107, - OpConvertFToU = 109, - OpConvertFToS = 110, - OpConvertSToF = 111, - OpConvertUToF = 112, - OpUConvert = 113, - OpSConvert = 114, - OpFConvert = 115, - OpQuantizeToF16 = 116, - OpConvertPtrToU = 117, - OpSatConvertSToU = 118, - OpSatConvertUToS = 119, - OpConvertUToPtr = 120, - OpPtrCastToGeneric = 121, - OpGenericCastToPtr = 122, - OpGenericCastToPtrExplicit = 123, - OpBitcast = 124, - OpSNegate = 126, - OpFNegate = 127, - OpIAdd = 128, - OpFAdd = 129, - OpISub = 130, - OpFSub = 131, - OpIMul = 132, - OpFMul = 133, - OpUDiv = 134, - OpSDiv = 135, - OpFDiv = 136, - OpUMod = 137, - OpSRem = 138, - OpSMod = 139, - OpFRem = 140, - OpFMod = 141, - OpVectorTimesScalar = 142, - OpMatrixTimesScalar = 143, - OpVectorTimesMatrix = 144, - OpMatrixTimesVector = 145, - OpMatrixTimesMatrix = 146, - OpOuterProduct = 147, - OpDot = 148, - OpIAddCarry = 149, - OpISubBorrow = 150, - OpUMulExtended = 151, - OpSMulExtended = 152, - OpAny = 154, - OpAll = 155, - OpIsNan = 156, - OpIsInf = 157, - OpIsFinite = 158, - OpIsNormal = 159, - OpSignBitSet = 160, - OpLessOrGreater = 161, - OpOrdered = 162, - OpUnordered = 163, - OpLogicalEqual = 164, - OpLogicalNotEqual = 165, - OpLogicalOr = 166, - OpLogicalAnd = 167, - OpLogicalNot = 168, - OpSelect = 169, - OpIEqual = 170, - OpINotEqual = 171, - OpUGreaterThan = 172, - OpSGreaterThan = 173, - OpUGreaterThanEqual = 174, - OpSGreaterThanEqual = 175, - OpULessThan = 176, - OpSLessThan = 177, - OpULessThanEqual = 178, - OpSLessThanEqual = 179, - OpFOrdEqual = 180, - OpFUnordEqual = 181, - OpFOrdNotEqual = 182, - OpFUnordNotEqual = 183, - OpFOrdLessThan = 184, - OpFUnordLessThan = 185, - OpFOrdGreaterThan = 186, - OpFUnordGreaterThan = 187, - OpFOrdLessThanEqual = 188, - OpFUnordLessThanEqual = 189, - OpFOrdGreaterThanEqual = 190, - OpFUnordGreaterThanEqual = 191, - OpShiftRightLogical = 194, - OpShiftRightArithmetic = 195, - OpShiftLeftLogical = 196, - OpBitwiseOr = 197, - OpBitwiseXor = 198, - OpBitwiseAnd = 199, - OpNot = 200, - OpBitFieldInsert = 201, - OpBitFieldSExtract = 202, - OpBitFieldUExtract = 203, - OpBitReverse = 204, - OpBitCount = 205, - OpDPdx = 207, - OpDPdy = 208, - OpFwidth = 209, - OpDPdxFine = 210, - OpDPdyFine = 211, - OpFwidthFine = 212, - OpDPdxCoarse = 213, - OpDPdyCoarse = 214, - OpFwidthCoarse = 215, - OpEmitVertex = 218, - OpEndPrimitive = 219, - OpEmitStreamVertex = 220, - OpEndStreamPrimitive = 221, - OpControlBarrier = 224, - OpMemoryBarrier = 225, - OpAtomicLoad = 227, - OpAtomicStore = 228, - OpAtomicExchange = 229, - OpAtomicCompareExchange = 230, - OpAtomicCompareExchangeWeak = 231, - OpAtomicIIncrement = 232, - OpAtomicIDecrement = 233, - OpAtomicIAdd = 234, - OpAtomicISub = 235, - OpAtomicSMin = 236, - OpAtomicUMin = 237, - OpAtomicSMax = 238, - OpAtomicUMax = 239, - OpAtomicAnd = 240, - OpAtomicOr = 241, - OpAtomicXor = 242, - OpPhi = 245, - OpLoopMerge = 246, - OpSelectionMerge = 247, - OpLabel = 248, - OpBranch = 249, - OpBranchConditional = 250, - OpSwitch = 251, - OpKill = 252, - OpReturn = 253, - OpReturnValue = 254, - OpUnreachable = 255, - OpLifetimeStart = 256, - OpLifetimeStop = 257, - OpGroupAsyncCopy = 259, - OpGroupWaitEvents = 260, - OpGroupAll = 261, - OpGroupAny = 262, - OpGroupBroadcast = 263, - OpGroupIAdd = 264, - OpGroupFAdd = 265, - OpGroupFMin = 266, - OpGroupUMin = 267, - OpGroupSMin = 268, - OpGroupFMax = 269, - OpGroupUMax = 270, - OpGroupSMax = 271, - OpReadPipe = 274, - OpWritePipe = 275, - OpReservedReadPipe = 276, - OpReservedWritePipe = 277, - OpReserveReadPipePackets = 278, - OpReserveWritePipePackets = 279, - OpCommitReadPipe = 280, - OpCommitWritePipe = 281, - OpIsValidReserveId = 282, - OpGetNumPipePackets = 283, - OpGetMaxPipePackets = 284, - OpGroupReserveReadPipePackets = 285, - OpGroupReserveWritePipePackets = 286, - OpGroupCommitReadPipe = 287, - OpGroupCommitWritePipe = 288, - OpEnqueueMarker = 291, - OpEnqueueKernel = 292, - OpGetKernelNDrangeSubGroupCount = 293, - OpGetKernelNDrangeMaxSubGroupSize = 294, - OpGetKernelWorkGroupSize = 295, - OpGetKernelPreferredWorkGroupSizeMultiple = 296, - OpRetainEvent = 297, - OpReleaseEvent = 298, - OpCreateUserEvent = 299, - OpIsValidEvent = 300, - OpSetUserEventStatus = 301, - OpCaptureEventProfilingInfo = 302, - OpGetDefaultQueue = 303, - OpBuildNDRange = 304, - OpImageSparseSampleImplicitLod = 305, - OpImageSparseSampleExplicitLod = 306, - OpImageSparseSampleDrefImplicitLod = 307, - OpImageSparseSampleDrefExplicitLod = 308, - OpImageSparseSampleProjImplicitLod = 309, - OpImageSparseSampleProjExplicitLod = 310, - OpImageSparseSampleProjDrefImplicitLod = 311, - OpImageSparseSampleProjDrefExplicitLod = 312, - OpImageSparseFetch = 313, - OpImageSparseGather = 314, - OpImageSparseDrefGather = 315, - OpImageSparseTexelsResident = 316, - OpNoLine = 317, - OpAtomicFlagTestAndSet = 318, - OpAtomicFlagClear = 319, - OpImageSparseRead = 320, - OpSizeOf = 321, - OpTypePipeStorage = 322, - OpConstantPipeStorage = 323, - OpCreatePipeFromPipeStorage = 324, - OpGetKernelLocalSizeForSubgroupCount = 325, - OpGetKernelMaxNumSubgroups = 326, - OpTypeNamedBarrier = 327, - OpNamedBarrierInitialize = 328, - OpMemoryNamedBarrier = 329, - OpModuleProcessed = 330, - OpDecorateId = 332, - OpSubgroupBallotKHR = 4421, - OpSubgroupFirstInvocationKHR = 4422, - OpSubgroupAllKHR = 4428, - OpSubgroupAnyKHR = 4429, - OpSubgroupAllEqualKHR = 4430, - OpSubgroupReadInvocationKHR = 4432, - OpGroupIAddNonUniformAMD = 5000, - OpGroupFAddNonUniformAMD = 5001, - OpGroupFMinNonUniformAMD = 5002, - OpGroupUMinNonUniformAMD = 5003, - OpGroupSMinNonUniformAMD = 5004, - OpGroupFMaxNonUniformAMD = 5005, - OpGroupUMaxNonUniformAMD = 5006, - OpGroupSMaxNonUniformAMD = 5007, - OpFragmentMaskFetchAMD = 5011, - OpFragmentFetchAMD = 5012, - OpSubgroupShuffleINTEL = 5571, - OpSubgroupShuffleDownINTEL = 5572, - OpSubgroupShuffleUpINTEL = 5573, - OpSubgroupShuffleXorINTEL = 5574, - OpSubgroupBlockReadINTEL = 5575, - OpSubgroupBlockWriteINTEL = 5576, - OpSubgroupImageBlockReadINTEL = 5577, - OpSubgroupImageBlockWriteINTEL = 5578, - OpDecorateStringGOOGLE = 5632, - OpMemberDecorateStringGOOGLE = 5633, - } - } -} - diff --git a/Extern/3rdParty/shaderc/shaderc/include/spirv/1.1/spirv.h b/Extern/3rdParty/shaderc/shaderc/include/spirv/1.1/spirv.h deleted file mode 100644 index 971c3be..0000000 --- a/Extern/3rdParty/shaderc/shaderc/include/spirv/1.1/spirv.h +++ /dev/null @@ -1,1015 +0,0 @@ -/* -** Copyright (c) 2014-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. -*/ - -/* -** This header is automatically generated by the same tool that creates -** the Binary Section of the SPIR-V specification. -*/ - -/* -** Enumeration tokens for SPIR-V, in various styles: -** C, C++, C++11, JSON, Lua, Python -** -** - C will have tokens with a "Spv" prefix, e.g.: SpvSourceLanguageGLSL -** - C++ will have tokens in the "spv" name space, e.g.: spv::SourceLanguageGLSL -** - C++11 will use enum classes in the spv namespace, e.g.: spv::SourceLanguage::GLSL -** - Lua will use tables, e.g.: spv.SourceLanguage.GLSL -** - Python will use dictionaries, e.g.: spv['SourceLanguage']['GLSL'] -** -** Some tokens act like mask values, which can be OR'd together, -** while others are mutually exclusive. The mask-like ones have -** "Mask" in their name, and a parallel enum that has the shift -** amount (1 << x) for each corresponding enumerant. -*/ - -#ifndef spirv_H -#define spirv_H - -typedef unsigned int SpvId; - -#define SPV_VERSION 0x10100 -#define SPV_REVISION 8 - -static const unsigned int SpvMagicNumber = 0x07230203; -static const unsigned int SpvVersion = 0x00010100; -static const unsigned int SpvRevision = 8; -static const unsigned int SpvOpCodeMask = 0xffff; -static const unsigned int SpvWordCountShift = 16; - -typedef enum SpvSourceLanguage_ { - SpvSourceLanguageUnknown = 0, - SpvSourceLanguageESSL = 1, - SpvSourceLanguageGLSL = 2, - SpvSourceLanguageOpenCL_C = 3, - SpvSourceLanguageOpenCL_CPP = 4, - SpvSourceLanguageHLSL = 5, - SpvSourceLanguageMax = 0x7fffffff, -} SpvSourceLanguage; - -typedef enum SpvExecutionModel_ { - SpvExecutionModelVertex = 0, - SpvExecutionModelTessellationControl = 1, - SpvExecutionModelTessellationEvaluation = 2, - SpvExecutionModelGeometry = 3, - SpvExecutionModelFragment = 4, - SpvExecutionModelGLCompute = 5, - SpvExecutionModelKernel = 6, - SpvExecutionModelMax = 0x7fffffff, -} SpvExecutionModel; - -typedef enum SpvAddressingModel_ { - SpvAddressingModelLogical = 0, - SpvAddressingModelPhysical32 = 1, - SpvAddressingModelPhysical64 = 2, - SpvAddressingModelMax = 0x7fffffff, -} SpvAddressingModel; - -typedef enum SpvMemoryModel_ { - SpvMemoryModelSimple = 0, - SpvMemoryModelGLSL450 = 1, - SpvMemoryModelOpenCL = 2, - SpvMemoryModelMax = 0x7fffffff, -} SpvMemoryModel; - -typedef enum SpvExecutionMode_ { - SpvExecutionModeInvocations = 0, - SpvExecutionModeSpacingEqual = 1, - SpvExecutionModeSpacingFractionalEven = 2, - SpvExecutionModeSpacingFractionalOdd = 3, - SpvExecutionModeVertexOrderCw = 4, - SpvExecutionModeVertexOrderCcw = 5, - SpvExecutionModePixelCenterInteger = 6, - SpvExecutionModeOriginUpperLeft = 7, - SpvExecutionModeOriginLowerLeft = 8, - SpvExecutionModeEarlyFragmentTests = 9, - SpvExecutionModePointMode = 10, - SpvExecutionModeXfb = 11, - SpvExecutionModeDepthReplacing = 12, - SpvExecutionModeDepthGreater = 14, - SpvExecutionModeDepthLess = 15, - SpvExecutionModeDepthUnchanged = 16, - SpvExecutionModeLocalSize = 17, - SpvExecutionModeLocalSizeHint = 18, - SpvExecutionModeInputPoints = 19, - SpvExecutionModeInputLines = 20, - SpvExecutionModeInputLinesAdjacency = 21, - SpvExecutionModeTriangles = 22, - SpvExecutionModeInputTrianglesAdjacency = 23, - SpvExecutionModeQuads = 24, - SpvExecutionModeIsolines = 25, - SpvExecutionModeOutputVertices = 26, - SpvExecutionModeOutputPoints = 27, - SpvExecutionModeOutputLineStrip = 28, - SpvExecutionModeOutputTriangleStrip = 29, - SpvExecutionModeVecTypeHint = 30, - SpvExecutionModeContractionOff = 31, - SpvExecutionModeInitializer = 33, - SpvExecutionModeFinalizer = 34, - SpvExecutionModeSubgroupSize = 35, - SpvExecutionModeSubgroupsPerWorkgroup = 36, - SpvExecutionModePostDepthCoverage = 4446, - SpvExecutionModeStencilRefReplacingEXT = 5027, - SpvExecutionModeMax = 0x7fffffff, -} SpvExecutionMode; - -typedef enum SpvStorageClass_ { - SpvStorageClassUniformConstant = 0, - SpvStorageClassInput = 1, - SpvStorageClassUniform = 2, - SpvStorageClassOutput = 3, - SpvStorageClassWorkgroup = 4, - SpvStorageClassCrossWorkgroup = 5, - SpvStorageClassPrivate = 6, - SpvStorageClassFunction = 7, - SpvStorageClassGeneric = 8, - SpvStorageClassPushConstant = 9, - SpvStorageClassAtomicCounter = 10, - SpvStorageClassImage = 11, - SpvStorageClassStorageBuffer = 12, - SpvStorageClassMax = 0x7fffffff, -} SpvStorageClass; - -typedef enum SpvDim_ { - SpvDim1D = 0, - SpvDim2D = 1, - SpvDim3D = 2, - SpvDimCube = 3, - SpvDimRect = 4, - SpvDimBuffer = 5, - SpvDimSubpassData = 6, - SpvDimMax = 0x7fffffff, -} SpvDim; - -typedef enum SpvSamplerAddressingMode_ { - SpvSamplerAddressingModeNone = 0, - SpvSamplerAddressingModeClampToEdge = 1, - SpvSamplerAddressingModeClamp = 2, - SpvSamplerAddressingModeRepeat = 3, - SpvSamplerAddressingModeRepeatMirrored = 4, - SpvSamplerAddressingModeMax = 0x7fffffff, -} SpvSamplerAddressingMode; - -typedef enum SpvSamplerFilterMode_ { - SpvSamplerFilterModeNearest = 0, - SpvSamplerFilterModeLinear = 1, - SpvSamplerFilterModeMax = 0x7fffffff, -} SpvSamplerFilterMode; - -typedef enum SpvImageFormat_ { - SpvImageFormatUnknown = 0, - SpvImageFormatRgba32f = 1, - SpvImageFormatRgba16f = 2, - SpvImageFormatR32f = 3, - SpvImageFormatRgba8 = 4, - SpvImageFormatRgba8Snorm = 5, - SpvImageFormatRg32f = 6, - SpvImageFormatRg16f = 7, - SpvImageFormatR11fG11fB10f = 8, - SpvImageFormatR16f = 9, - SpvImageFormatRgba16 = 10, - SpvImageFormatRgb10A2 = 11, - SpvImageFormatRg16 = 12, - SpvImageFormatRg8 = 13, - SpvImageFormatR16 = 14, - SpvImageFormatR8 = 15, - SpvImageFormatRgba16Snorm = 16, - SpvImageFormatRg16Snorm = 17, - SpvImageFormatRg8Snorm = 18, - SpvImageFormatR16Snorm = 19, - SpvImageFormatR8Snorm = 20, - SpvImageFormatRgba32i = 21, - SpvImageFormatRgba16i = 22, - SpvImageFormatRgba8i = 23, - SpvImageFormatR32i = 24, - SpvImageFormatRg32i = 25, - SpvImageFormatRg16i = 26, - SpvImageFormatRg8i = 27, - SpvImageFormatR16i = 28, - SpvImageFormatR8i = 29, - SpvImageFormatRgba32ui = 30, - SpvImageFormatRgba16ui = 31, - SpvImageFormatRgba8ui = 32, - SpvImageFormatR32ui = 33, - SpvImageFormatRgb10a2ui = 34, - SpvImageFormatRg32ui = 35, - SpvImageFormatRg16ui = 36, - SpvImageFormatRg8ui = 37, - SpvImageFormatR16ui = 38, - SpvImageFormatR8ui = 39, - SpvImageFormatMax = 0x7fffffff, -} SpvImageFormat; - -typedef enum SpvImageChannelOrder_ { - SpvImageChannelOrderR = 0, - SpvImageChannelOrderA = 1, - SpvImageChannelOrderRG = 2, - SpvImageChannelOrderRA = 3, - SpvImageChannelOrderRGB = 4, - SpvImageChannelOrderRGBA = 5, - SpvImageChannelOrderBGRA = 6, - SpvImageChannelOrderARGB = 7, - SpvImageChannelOrderIntensity = 8, - SpvImageChannelOrderLuminance = 9, - SpvImageChannelOrderRx = 10, - SpvImageChannelOrderRGx = 11, - SpvImageChannelOrderRGBx = 12, - SpvImageChannelOrderDepth = 13, - SpvImageChannelOrderDepthStencil = 14, - SpvImageChannelOrdersRGB = 15, - SpvImageChannelOrdersRGBx = 16, - SpvImageChannelOrdersRGBA = 17, - SpvImageChannelOrdersBGRA = 18, - SpvImageChannelOrderABGR = 19, - SpvImageChannelOrderMax = 0x7fffffff, -} SpvImageChannelOrder; - -typedef enum SpvImageChannelDataType_ { - SpvImageChannelDataTypeSnormInt8 = 0, - SpvImageChannelDataTypeSnormInt16 = 1, - SpvImageChannelDataTypeUnormInt8 = 2, - SpvImageChannelDataTypeUnormInt16 = 3, - SpvImageChannelDataTypeUnormShort565 = 4, - SpvImageChannelDataTypeUnormShort555 = 5, - SpvImageChannelDataTypeUnormInt101010 = 6, - SpvImageChannelDataTypeSignedInt8 = 7, - SpvImageChannelDataTypeSignedInt16 = 8, - SpvImageChannelDataTypeSignedInt32 = 9, - SpvImageChannelDataTypeUnsignedInt8 = 10, - SpvImageChannelDataTypeUnsignedInt16 = 11, - SpvImageChannelDataTypeUnsignedInt32 = 12, - SpvImageChannelDataTypeHalfFloat = 13, - SpvImageChannelDataTypeFloat = 14, - SpvImageChannelDataTypeUnormInt24 = 15, - SpvImageChannelDataTypeUnormInt101010_2 = 16, - SpvImageChannelDataTypeMax = 0x7fffffff, -} SpvImageChannelDataType; - -typedef enum SpvImageOperandsShift_ { - SpvImageOperandsBiasShift = 0, - SpvImageOperandsLodShift = 1, - SpvImageOperandsGradShift = 2, - SpvImageOperandsConstOffsetShift = 3, - SpvImageOperandsOffsetShift = 4, - SpvImageOperandsConstOffsetsShift = 5, - SpvImageOperandsSampleShift = 6, - SpvImageOperandsMinLodShift = 7, - SpvImageOperandsMax = 0x7fffffff, -} SpvImageOperandsShift; - -typedef enum SpvImageOperandsMask_ { - SpvImageOperandsMaskNone = 0, - SpvImageOperandsBiasMask = 0x00000001, - SpvImageOperandsLodMask = 0x00000002, - SpvImageOperandsGradMask = 0x00000004, - SpvImageOperandsConstOffsetMask = 0x00000008, - SpvImageOperandsOffsetMask = 0x00000010, - SpvImageOperandsConstOffsetsMask = 0x00000020, - SpvImageOperandsSampleMask = 0x00000040, - SpvImageOperandsMinLodMask = 0x00000080, -} SpvImageOperandsMask; - -typedef enum SpvFPFastMathModeShift_ { - SpvFPFastMathModeNotNaNShift = 0, - SpvFPFastMathModeNotInfShift = 1, - SpvFPFastMathModeNSZShift = 2, - SpvFPFastMathModeAllowRecipShift = 3, - SpvFPFastMathModeFastShift = 4, - SpvFPFastMathModeMax = 0x7fffffff, -} SpvFPFastMathModeShift; - -typedef enum SpvFPFastMathModeMask_ { - SpvFPFastMathModeMaskNone = 0, - SpvFPFastMathModeNotNaNMask = 0x00000001, - SpvFPFastMathModeNotInfMask = 0x00000002, - SpvFPFastMathModeNSZMask = 0x00000004, - SpvFPFastMathModeAllowRecipMask = 0x00000008, - SpvFPFastMathModeFastMask = 0x00000010, -} SpvFPFastMathModeMask; - -typedef enum SpvFPRoundingMode_ { - SpvFPRoundingModeRTE = 0, - SpvFPRoundingModeRTZ = 1, - SpvFPRoundingModeRTP = 2, - SpvFPRoundingModeRTN = 3, - SpvFPRoundingModeMax = 0x7fffffff, -} SpvFPRoundingMode; - -typedef enum SpvLinkageType_ { - SpvLinkageTypeExport = 0, - SpvLinkageTypeImport = 1, - SpvLinkageTypeMax = 0x7fffffff, -} SpvLinkageType; - -typedef enum SpvAccessQualifier_ { - SpvAccessQualifierReadOnly = 0, - SpvAccessQualifierWriteOnly = 1, - SpvAccessQualifierReadWrite = 2, - SpvAccessQualifierMax = 0x7fffffff, -} SpvAccessQualifier; - -typedef enum SpvFunctionParameterAttribute_ { - SpvFunctionParameterAttributeZext = 0, - SpvFunctionParameterAttributeSext = 1, - SpvFunctionParameterAttributeByVal = 2, - SpvFunctionParameterAttributeSret = 3, - SpvFunctionParameterAttributeNoAlias = 4, - SpvFunctionParameterAttributeNoCapture = 5, - SpvFunctionParameterAttributeNoWrite = 6, - SpvFunctionParameterAttributeNoReadWrite = 7, - SpvFunctionParameterAttributeMax = 0x7fffffff, -} SpvFunctionParameterAttribute; - -typedef enum SpvDecoration_ { - SpvDecorationRelaxedPrecision = 0, - SpvDecorationSpecId = 1, - SpvDecorationBlock = 2, - SpvDecorationBufferBlock = 3, - SpvDecorationRowMajor = 4, - SpvDecorationColMajor = 5, - SpvDecorationArrayStride = 6, - SpvDecorationMatrixStride = 7, - SpvDecorationGLSLShared = 8, - SpvDecorationGLSLPacked = 9, - SpvDecorationCPacked = 10, - SpvDecorationBuiltIn = 11, - SpvDecorationNoPerspective = 13, - SpvDecorationFlat = 14, - SpvDecorationPatch = 15, - SpvDecorationCentroid = 16, - SpvDecorationSample = 17, - SpvDecorationInvariant = 18, - SpvDecorationRestrict = 19, - SpvDecorationAliased = 20, - SpvDecorationVolatile = 21, - SpvDecorationConstant = 22, - SpvDecorationCoherent = 23, - SpvDecorationNonWritable = 24, - SpvDecorationNonReadable = 25, - SpvDecorationUniform = 26, - SpvDecorationSaturatedConversion = 28, - SpvDecorationStream = 29, - SpvDecorationLocation = 30, - SpvDecorationComponent = 31, - SpvDecorationIndex = 32, - SpvDecorationBinding = 33, - SpvDecorationDescriptorSet = 34, - SpvDecorationOffset = 35, - SpvDecorationXfbBuffer = 36, - SpvDecorationXfbStride = 37, - SpvDecorationFuncParamAttr = 38, - SpvDecorationFPRoundingMode = 39, - SpvDecorationFPFastMathMode = 40, - SpvDecorationLinkageAttributes = 41, - SpvDecorationNoContraction = 42, - SpvDecorationInputAttachmentIndex = 43, - SpvDecorationAlignment = 44, - SpvDecorationMaxByteOffset = 45, - SpvDecorationExplicitInterpAMD = 4999, - SpvDecorationOverrideCoverageNV = 5248, - SpvDecorationPassthroughNV = 5250, - SpvDecorationViewportRelativeNV = 5252, - SpvDecorationSecondaryViewportRelativeNV = 5256, - SpvDecorationHlslCounterBufferGOOGLE = 5634, - SpvDecorationHlslSemanticGOOGLE = 5635, - SpvDecorationMax = 0x7fffffff, -} SpvDecoration; - -typedef enum SpvBuiltIn_ { - SpvBuiltInPosition = 0, - SpvBuiltInPointSize = 1, - SpvBuiltInClipDistance = 3, - SpvBuiltInCullDistance = 4, - SpvBuiltInVertexId = 5, - SpvBuiltInInstanceId = 6, - SpvBuiltInPrimitiveId = 7, - SpvBuiltInInvocationId = 8, - SpvBuiltInLayer = 9, - SpvBuiltInViewportIndex = 10, - SpvBuiltInTessLevelOuter = 11, - SpvBuiltInTessLevelInner = 12, - SpvBuiltInTessCoord = 13, - SpvBuiltInPatchVertices = 14, - SpvBuiltInFragCoord = 15, - SpvBuiltInPointCoord = 16, - SpvBuiltInFrontFacing = 17, - SpvBuiltInSampleId = 18, - SpvBuiltInSamplePosition = 19, - SpvBuiltInSampleMask = 20, - SpvBuiltInFragDepth = 22, - SpvBuiltInHelperInvocation = 23, - SpvBuiltInNumWorkgroups = 24, - SpvBuiltInWorkgroupSize = 25, - SpvBuiltInWorkgroupId = 26, - SpvBuiltInLocalInvocationId = 27, - SpvBuiltInGlobalInvocationId = 28, - SpvBuiltInLocalInvocationIndex = 29, - SpvBuiltInWorkDim = 30, - SpvBuiltInGlobalSize = 31, - SpvBuiltInEnqueuedWorkgroupSize = 32, - SpvBuiltInGlobalOffset = 33, - SpvBuiltInGlobalLinearId = 34, - SpvBuiltInSubgroupSize = 36, - SpvBuiltInSubgroupMaxSize = 37, - SpvBuiltInNumSubgroups = 38, - SpvBuiltInNumEnqueuedSubgroups = 39, - SpvBuiltInSubgroupId = 40, - SpvBuiltInSubgroupLocalInvocationId = 41, - SpvBuiltInVertexIndex = 42, - SpvBuiltInInstanceIndex = 43, - SpvBuiltInSubgroupEqMaskKHR = 4416, - SpvBuiltInSubgroupGeMaskKHR = 4417, - SpvBuiltInSubgroupGtMaskKHR = 4418, - SpvBuiltInSubgroupLeMaskKHR = 4419, - SpvBuiltInSubgroupLtMaskKHR = 4420, - SpvBuiltInBaseVertex = 4424, - SpvBuiltInBaseInstance = 4425, - SpvBuiltInDrawIndex = 4426, - SpvBuiltInDeviceIndex = 4438, - SpvBuiltInViewIndex = 4440, - SpvBuiltInBaryCoordNoPerspAMD = 4992, - SpvBuiltInBaryCoordNoPerspCentroidAMD = 4993, - SpvBuiltInBaryCoordNoPerspSampleAMD = 4994, - SpvBuiltInBaryCoordSmoothAMD = 4995, - SpvBuiltInBaryCoordSmoothCentroidAMD = 4996, - SpvBuiltInBaryCoordSmoothSampleAMD = 4997, - SpvBuiltInBaryCoordPullModelAMD = 4998, - SpvBuiltInFragStencilRefEXT = 5014, - SpvBuiltInViewportMaskNV = 5253, - SpvBuiltInSecondaryPositionNV = 5257, - SpvBuiltInSecondaryViewportMaskNV = 5258, - SpvBuiltInPositionPerViewNV = 5261, - SpvBuiltInViewportMaskPerViewNV = 5262, - SpvBuiltInMax = 0x7fffffff, -} SpvBuiltIn; - -typedef enum SpvSelectionControlShift_ { - SpvSelectionControlFlattenShift = 0, - SpvSelectionControlDontFlattenShift = 1, - SpvSelectionControlMax = 0x7fffffff, -} SpvSelectionControlShift; - -typedef enum SpvSelectionControlMask_ { - SpvSelectionControlMaskNone = 0, - SpvSelectionControlFlattenMask = 0x00000001, - SpvSelectionControlDontFlattenMask = 0x00000002, -} SpvSelectionControlMask; - -typedef enum SpvLoopControlShift_ { - SpvLoopControlUnrollShift = 0, - SpvLoopControlDontUnrollShift = 1, - SpvLoopControlDependencyInfiniteShift = 2, - SpvLoopControlDependencyLengthShift = 3, - SpvLoopControlMax = 0x7fffffff, -} SpvLoopControlShift; - -typedef enum SpvLoopControlMask_ { - SpvLoopControlMaskNone = 0, - SpvLoopControlUnrollMask = 0x00000001, - SpvLoopControlDontUnrollMask = 0x00000002, - SpvLoopControlDependencyInfiniteMask = 0x00000004, - SpvLoopControlDependencyLengthMask = 0x00000008, -} SpvLoopControlMask; - -typedef enum SpvFunctionControlShift_ { - SpvFunctionControlInlineShift = 0, - SpvFunctionControlDontInlineShift = 1, - SpvFunctionControlPureShift = 2, - SpvFunctionControlConstShift = 3, - SpvFunctionControlMax = 0x7fffffff, -} SpvFunctionControlShift; - -typedef enum SpvFunctionControlMask_ { - SpvFunctionControlMaskNone = 0, - SpvFunctionControlInlineMask = 0x00000001, - SpvFunctionControlDontInlineMask = 0x00000002, - SpvFunctionControlPureMask = 0x00000004, - SpvFunctionControlConstMask = 0x00000008, -} SpvFunctionControlMask; - -typedef enum SpvMemorySemanticsShift_ { - SpvMemorySemanticsAcquireShift = 1, - SpvMemorySemanticsReleaseShift = 2, - SpvMemorySemanticsAcquireReleaseShift = 3, - SpvMemorySemanticsSequentiallyConsistentShift = 4, - SpvMemorySemanticsUniformMemoryShift = 6, - SpvMemorySemanticsSubgroupMemoryShift = 7, - SpvMemorySemanticsWorkgroupMemoryShift = 8, - SpvMemorySemanticsCrossWorkgroupMemoryShift = 9, - SpvMemorySemanticsAtomicCounterMemoryShift = 10, - SpvMemorySemanticsImageMemoryShift = 11, - SpvMemorySemanticsMax = 0x7fffffff, -} SpvMemorySemanticsShift; - -typedef enum SpvMemorySemanticsMask_ { - SpvMemorySemanticsMaskNone = 0, - SpvMemorySemanticsAcquireMask = 0x00000002, - SpvMemorySemanticsReleaseMask = 0x00000004, - SpvMemorySemanticsAcquireReleaseMask = 0x00000008, - SpvMemorySemanticsSequentiallyConsistentMask = 0x00000010, - SpvMemorySemanticsUniformMemoryMask = 0x00000040, - SpvMemorySemanticsSubgroupMemoryMask = 0x00000080, - SpvMemorySemanticsWorkgroupMemoryMask = 0x00000100, - SpvMemorySemanticsCrossWorkgroupMemoryMask = 0x00000200, - SpvMemorySemanticsAtomicCounterMemoryMask = 0x00000400, - SpvMemorySemanticsImageMemoryMask = 0x00000800, -} SpvMemorySemanticsMask; - -typedef enum SpvMemoryAccessShift_ { - SpvMemoryAccessVolatileShift = 0, - SpvMemoryAccessAlignedShift = 1, - SpvMemoryAccessNontemporalShift = 2, - SpvMemoryAccessMax = 0x7fffffff, -} SpvMemoryAccessShift; - -typedef enum SpvMemoryAccessMask_ { - SpvMemoryAccessMaskNone = 0, - SpvMemoryAccessVolatileMask = 0x00000001, - SpvMemoryAccessAlignedMask = 0x00000002, - SpvMemoryAccessNontemporalMask = 0x00000004, -} SpvMemoryAccessMask; - -typedef enum SpvScope_ { - SpvScopeCrossDevice = 0, - SpvScopeDevice = 1, - SpvScopeWorkgroup = 2, - SpvScopeSubgroup = 3, - SpvScopeInvocation = 4, - SpvScopeMax = 0x7fffffff, -} SpvScope; - -typedef enum SpvGroupOperation_ { - SpvGroupOperationReduce = 0, - SpvGroupOperationInclusiveScan = 1, - SpvGroupOperationExclusiveScan = 2, - SpvGroupOperationMax = 0x7fffffff, -} SpvGroupOperation; - -typedef enum SpvKernelEnqueueFlags_ { - SpvKernelEnqueueFlagsNoWait = 0, - SpvKernelEnqueueFlagsWaitKernel = 1, - SpvKernelEnqueueFlagsWaitWorkGroup = 2, - SpvKernelEnqueueFlagsMax = 0x7fffffff, -} SpvKernelEnqueueFlags; - -typedef enum SpvKernelProfilingInfoShift_ { - SpvKernelProfilingInfoCmdExecTimeShift = 0, - SpvKernelProfilingInfoMax = 0x7fffffff, -} SpvKernelProfilingInfoShift; - -typedef enum SpvKernelProfilingInfoMask_ { - SpvKernelProfilingInfoMaskNone = 0, - SpvKernelProfilingInfoCmdExecTimeMask = 0x00000001, -} SpvKernelProfilingInfoMask; - -typedef enum SpvCapability_ { - SpvCapabilityMatrix = 0, - SpvCapabilityShader = 1, - SpvCapabilityGeometry = 2, - SpvCapabilityTessellation = 3, - SpvCapabilityAddresses = 4, - SpvCapabilityLinkage = 5, - SpvCapabilityKernel = 6, - SpvCapabilityVector16 = 7, - SpvCapabilityFloat16Buffer = 8, - SpvCapabilityFloat16 = 9, - SpvCapabilityFloat64 = 10, - SpvCapabilityInt64 = 11, - SpvCapabilityInt64Atomics = 12, - SpvCapabilityImageBasic = 13, - SpvCapabilityImageReadWrite = 14, - SpvCapabilityImageMipmap = 15, - SpvCapabilityPipes = 17, - SpvCapabilityGroups = 18, - SpvCapabilityDeviceEnqueue = 19, - SpvCapabilityLiteralSampler = 20, - SpvCapabilityAtomicStorage = 21, - SpvCapabilityInt16 = 22, - SpvCapabilityTessellationPointSize = 23, - SpvCapabilityGeometryPointSize = 24, - SpvCapabilityImageGatherExtended = 25, - SpvCapabilityStorageImageMultisample = 27, - SpvCapabilityUniformBufferArrayDynamicIndexing = 28, - SpvCapabilitySampledImageArrayDynamicIndexing = 29, - SpvCapabilityStorageBufferArrayDynamicIndexing = 30, - SpvCapabilityStorageImageArrayDynamicIndexing = 31, - SpvCapabilityClipDistance = 32, - SpvCapabilityCullDistance = 33, - SpvCapabilityImageCubeArray = 34, - SpvCapabilitySampleRateShading = 35, - SpvCapabilityImageRect = 36, - SpvCapabilitySampledRect = 37, - SpvCapabilityGenericPointer = 38, - SpvCapabilityInt8 = 39, - SpvCapabilityInputAttachment = 40, - SpvCapabilitySparseResidency = 41, - SpvCapabilityMinLod = 42, - SpvCapabilitySampled1D = 43, - SpvCapabilityImage1D = 44, - SpvCapabilitySampledCubeArray = 45, - SpvCapabilitySampledBuffer = 46, - SpvCapabilityImageBuffer = 47, - SpvCapabilityImageMSArray = 48, - SpvCapabilityStorageImageExtendedFormats = 49, - SpvCapabilityImageQuery = 50, - SpvCapabilityDerivativeControl = 51, - SpvCapabilityInterpolationFunction = 52, - SpvCapabilityTransformFeedback = 53, - SpvCapabilityGeometryStreams = 54, - SpvCapabilityStorageImageReadWithoutFormat = 55, - SpvCapabilityStorageImageWriteWithoutFormat = 56, - SpvCapabilityMultiViewport = 57, - SpvCapabilitySubgroupDispatch = 58, - SpvCapabilityNamedBarrier = 59, - SpvCapabilityPipeStorage = 60, - SpvCapabilitySubgroupBallotKHR = 4423, - SpvCapabilityDrawParameters = 4427, - SpvCapabilitySubgroupVoteKHR = 4431, - SpvCapabilityStorageBuffer16BitAccess = 4433, - SpvCapabilityStorageUniformBufferBlock16 = 4433, - SpvCapabilityStorageUniform16 = 4434, - SpvCapabilityUniformAndStorageBuffer16BitAccess = 4434, - SpvCapabilityStoragePushConstant16 = 4435, - SpvCapabilityStorageInputOutput16 = 4436, - SpvCapabilityDeviceGroup = 4437, - SpvCapabilityMultiView = 4439, - SpvCapabilityVariablePointersStorageBuffer = 4441, - SpvCapabilityVariablePointers = 4442, - SpvCapabilityAtomicStorageOps = 4445, - SpvCapabilitySampleMaskPostDepthCoverage = 4447, - SpvCapabilityImageGatherBiasLodAMD = 5009, - SpvCapabilityFragmentMaskAMD = 5010, - SpvCapabilityStencilExportEXT = 5013, - SpvCapabilityImageReadWriteLodAMD = 5015, - SpvCapabilitySampleMaskOverrideCoverageNV = 5249, - SpvCapabilityGeometryShaderPassthroughNV = 5251, - SpvCapabilityShaderViewportIndexLayerEXT = 5254, - SpvCapabilityShaderViewportIndexLayerNV = 5254, - SpvCapabilityShaderViewportMaskNV = 5255, - SpvCapabilityShaderStereoViewNV = 5259, - SpvCapabilityPerViewAttributesNV = 5260, - SpvCapabilitySubgroupShuffleINTEL = 5568, - SpvCapabilitySubgroupBufferBlockIOINTEL = 5569, - SpvCapabilitySubgroupImageBlockIOINTEL = 5570, - SpvCapabilityMax = 0x7fffffff, -} SpvCapability; - -typedef enum SpvOp_ { - SpvOpNop = 0, - SpvOpUndef = 1, - SpvOpSourceContinued = 2, - SpvOpSource = 3, - SpvOpSourceExtension = 4, - SpvOpName = 5, - SpvOpMemberName = 6, - SpvOpString = 7, - SpvOpLine = 8, - SpvOpExtension = 10, - SpvOpExtInstImport = 11, - SpvOpExtInst = 12, - SpvOpMemoryModel = 14, - SpvOpEntryPoint = 15, - SpvOpExecutionMode = 16, - SpvOpCapability = 17, - SpvOpTypeVoid = 19, - SpvOpTypeBool = 20, - SpvOpTypeInt = 21, - SpvOpTypeFloat = 22, - SpvOpTypeVector = 23, - SpvOpTypeMatrix = 24, - SpvOpTypeImage = 25, - SpvOpTypeSampler = 26, - SpvOpTypeSampledImage = 27, - SpvOpTypeArray = 28, - SpvOpTypeRuntimeArray = 29, - SpvOpTypeStruct = 30, - SpvOpTypeOpaque = 31, - SpvOpTypePointer = 32, - SpvOpTypeFunction = 33, - SpvOpTypeEvent = 34, - SpvOpTypeDeviceEvent = 35, - SpvOpTypeReserveId = 36, - SpvOpTypeQueue = 37, - SpvOpTypePipe = 38, - SpvOpTypeForwardPointer = 39, - SpvOpConstantTrue = 41, - SpvOpConstantFalse = 42, - SpvOpConstant = 43, - SpvOpConstantComposite = 44, - SpvOpConstantSampler = 45, - SpvOpConstantNull = 46, - SpvOpSpecConstantTrue = 48, - SpvOpSpecConstantFalse = 49, - SpvOpSpecConstant = 50, - SpvOpSpecConstantComposite = 51, - SpvOpSpecConstantOp = 52, - SpvOpFunction = 54, - SpvOpFunctionParameter = 55, - SpvOpFunctionEnd = 56, - SpvOpFunctionCall = 57, - SpvOpVariable = 59, - SpvOpImageTexelPointer = 60, - SpvOpLoad = 61, - SpvOpStore = 62, - SpvOpCopyMemory = 63, - SpvOpCopyMemorySized = 64, - SpvOpAccessChain = 65, - SpvOpInBoundsAccessChain = 66, - SpvOpPtrAccessChain = 67, - SpvOpArrayLength = 68, - SpvOpGenericPtrMemSemantics = 69, - SpvOpInBoundsPtrAccessChain = 70, - SpvOpDecorate = 71, - SpvOpMemberDecorate = 72, - SpvOpDecorationGroup = 73, - SpvOpGroupDecorate = 74, - SpvOpGroupMemberDecorate = 75, - SpvOpVectorExtractDynamic = 77, - SpvOpVectorInsertDynamic = 78, - SpvOpVectorShuffle = 79, - SpvOpCompositeConstruct = 80, - SpvOpCompositeExtract = 81, - SpvOpCompositeInsert = 82, - SpvOpCopyObject = 83, - SpvOpTranspose = 84, - SpvOpSampledImage = 86, - SpvOpImageSampleImplicitLod = 87, - SpvOpImageSampleExplicitLod = 88, - SpvOpImageSampleDrefImplicitLod = 89, - SpvOpImageSampleDrefExplicitLod = 90, - SpvOpImageSampleProjImplicitLod = 91, - SpvOpImageSampleProjExplicitLod = 92, - SpvOpImageSampleProjDrefImplicitLod = 93, - SpvOpImageSampleProjDrefExplicitLod = 94, - SpvOpImageFetch = 95, - SpvOpImageGather = 96, - SpvOpImageDrefGather = 97, - SpvOpImageRead = 98, - SpvOpImageWrite = 99, - SpvOpImage = 100, - SpvOpImageQueryFormat = 101, - SpvOpImageQueryOrder = 102, - SpvOpImageQuerySizeLod = 103, - SpvOpImageQuerySize = 104, - SpvOpImageQueryLod = 105, - SpvOpImageQueryLevels = 106, - SpvOpImageQuerySamples = 107, - SpvOpConvertFToU = 109, - SpvOpConvertFToS = 110, - SpvOpConvertSToF = 111, - SpvOpConvertUToF = 112, - SpvOpUConvert = 113, - SpvOpSConvert = 114, - SpvOpFConvert = 115, - SpvOpQuantizeToF16 = 116, - SpvOpConvertPtrToU = 117, - SpvOpSatConvertSToU = 118, - SpvOpSatConvertUToS = 119, - SpvOpConvertUToPtr = 120, - SpvOpPtrCastToGeneric = 121, - SpvOpGenericCastToPtr = 122, - SpvOpGenericCastToPtrExplicit = 123, - SpvOpBitcast = 124, - SpvOpSNegate = 126, - SpvOpFNegate = 127, - SpvOpIAdd = 128, - SpvOpFAdd = 129, - SpvOpISub = 130, - SpvOpFSub = 131, - SpvOpIMul = 132, - SpvOpFMul = 133, - SpvOpUDiv = 134, - SpvOpSDiv = 135, - SpvOpFDiv = 136, - SpvOpUMod = 137, - SpvOpSRem = 138, - SpvOpSMod = 139, - SpvOpFRem = 140, - SpvOpFMod = 141, - SpvOpVectorTimesScalar = 142, - SpvOpMatrixTimesScalar = 143, - SpvOpVectorTimesMatrix = 144, - SpvOpMatrixTimesVector = 145, - SpvOpMatrixTimesMatrix = 146, - SpvOpOuterProduct = 147, - SpvOpDot = 148, - SpvOpIAddCarry = 149, - SpvOpISubBorrow = 150, - SpvOpUMulExtended = 151, - SpvOpSMulExtended = 152, - SpvOpAny = 154, - SpvOpAll = 155, - SpvOpIsNan = 156, - SpvOpIsInf = 157, - SpvOpIsFinite = 158, - SpvOpIsNormal = 159, - SpvOpSignBitSet = 160, - SpvOpLessOrGreater = 161, - SpvOpOrdered = 162, - SpvOpUnordered = 163, - SpvOpLogicalEqual = 164, - SpvOpLogicalNotEqual = 165, - SpvOpLogicalOr = 166, - SpvOpLogicalAnd = 167, - SpvOpLogicalNot = 168, - SpvOpSelect = 169, - SpvOpIEqual = 170, - SpvOpINotEqual = 171, - SpvOpUGreaterThan = 172, - SpvOpSGreaterThan = 173, - SpvOpUGreaterThanEqual = 174, - SpvOpSGreaterThanEqual = 175, - SpvOpULessThan = 176, - SpvOpSLessThan = 177, - SpvOpULessThanEqual = 178, - SpvOpSLessThanEqual = 179, - SpvOpFOrdEqual = 180, - SpvOpFUnordEqual = 181, - SpvOpFOrdNotEqual = 182, - SpvOpFUnordNotEqual = 183, - SpvOpFOrdLessThan = 184, - SpvOpFUnordLessThan = 185, - SpvOpFOrdGreaterThan = 186, - SpvOpFUnordGreaterThan = 187, - SpvOpFOrdLessThanEqual = 188, - SpvOpFUnordLessThanEqual = 189, - SpvOpFOrdGreaterThanEqual = 190, - SpvOpFUnordGreaterThanEqual = 191, - SpvOpShiftRightLogical = 194, - SpvOpShiftRightArithmetic = 195, - SpvOpShiftLeftLogical = 196, - SpvOpBitwiseOr = 197, - SpvOpBitwiseXor = 198, - SpvOpBitwiseAnd = 199, - SpvOpNot = 200, - SpvOpBitFieldInsert = 201, - SpvOpBitFieldSExtract = 202, - SpvOpBitFieldUExtract = 203, - SpvOpBitReverse = 204, - SpvOpBitCount = 205, - SpvOpDPdx = 207, - SpvOpDPdy = 208, - SpvOpFwidth = 209, - SpvOpDPdxFine = 210, - SpvOpDPdyFine = 211, - SpvOpFwidthFine = 212, - SpvOpDPdxCoarse = 213, - SpvOpDPdyCoarse = 214, - SpvOpFwidthCoarse = 215, - SpvOpEmitVertex = 218, - SpvOpEndPrimitive = 219, - SpvOpEmitStreamVertex = 220, - SpvOpEndStreamPrimitive = 221, - SpvOpControlBarrier = 224, - SpvOpMemoryBarrier = 225, - SpvOpAtomicLoad = 227, - SpvOpAtomicStore = 228, - SpvOpAtomicExchange = 229, - SpvOpAtomicCompareExchange = 230, - SpvOpAtomicCompareExchangeWeak = 231, - SpvOpAtomicIIncrement = 232, - SpvOpAtomicIDecrement = 233, - SpvOpAtomicIAdd = 234, - SpvOpAtomicISub = 235, - SpvOpAtomicSMin = 236, - SpvOpAtomicUMin = 237, - SpvOpAtomicSMax = 238, - SpvOpAtomicUMax = 239, - SpvOpAtomicAnd = 240, - SpvOpAtomicOr = 241, - SpvOpAtomicXor = 242, - SpvOpPhi = 245, - SpvOpLoopMerge = 246, - SpvOpSelectionMerge = 247, - SpvOpLabel = 248, - SpvOpBranch = 249, - SpvOpBranchConditional = 250, - SpvOpSwitch = 251, - SpvOpKill = 252, - SpvOpReturn = 253, - SpvOpReturnValue = 254, - SpvOpUnreachable = 255, - SpvOpLifetimeStart = 256, - SpvOpLifetimeStop = 257, - SpvOpGroupAsyncCopy = 259, - SpvOpGroupWaitEvents = 260, - SpvOpGroupAll = 261, - SpvOpGroupAny = 262, - SpvOpGroupBroadcast = 263, - SpvOpGroupIAdd = 264, - SpvOpGroupFAdd = 265, - SpvOpGroupFMin = 266, - SpvOpGroupUMin = 267, - SpvOpGroupSMin = 268, - SpvOpGroupFMax = 269, - SpvOpGroupUMax = 270, - SpvOpGroupSMax = 271, - SpvOpReadPipe = 274, - SpvOpWritePipe = 275, - SpvOpReservedReadPipe = 276, - SpvOpReservedWritePipe = 277, - SpvOpReserveReadPipePackets = 278, - SpvOpReserveWritePipePackets = 279, - SpvOpCommitReadPipe = 280, - SpvOpCommitWritePipe = 281, - SpvOpIsValidReserveId = 282, - SpvOpGetNumPipePackets = 283, - SpvOpGetMaxPipePackets = 284, - SpvOpGroupReserveReadPipePackets = 285, - SpvOpGroupReserveWritePipePackets = 286, - SpvOpGroupCommitReadPipe = 287, - SpvOpGroupCommitWritePipe = 288, - SpvOpEnqueueMarker = 291, - SpvOpEnqueueKernel = 292, - SpvOpGetKernelNDrangeSubGroupCount = 293, - SpvOpGetKernelNDrangeMaxSubGroupSize = 294, - SpvOpGetKernelWorkGroupSize = 295, - SpvOpGetKernelPreferredWorkGroupSizeMultiple = 296, - SpvOpRetainEvent = 297, - SpvOpReleaseEvent = 298, - SpvOpCreateUserEvent = 299, - SpvOpIsValidEvent = 300, - SpvOpSetUserEventStatus = 301, - SpvOpCaptureEventProfilingInfo = 302, - SpvOpGetDefaultQueue = 303, - SpvOpBuildNDRange = 304, - SpvOpImageSparseSampleImplicitLod = 305, - SpvOpImageSparseSampleExplicitLod = 306, - SpvOpImageSparseSampleDrefImplicitLod = 307, - SpvOpImageSparseSampleDrefExplicitLod = 308, - SpvOpImageSparseSampleProjImplicitLod = 309, - SpvOpImageSparseSampleProjExplicitLod = 310, - SpvOpImageSparseSampleProjDrefImplicitLod = 311, - SpvOpImageSparseSampleProjDrefExplicitLod = 312, - SpvOpImageSparseFetch = 313, - SpvOpImageSparseGather = 314, - SpvOpImageSparseDrefGather = 315, - SpvOpImageSparseTexelsResident = 316, - SpvOpNoLine = 317, - SpvOpAtomicFlagTestAndSet = 318, - SpvOpAtomicFlagClear = 319, - SpvOpImageSparseRead = 320, - SpvOpSizeOf = 321, - SpvOpTypePipeStorage = 322, - SpvOpConstantPipeStorage = 323, - SpvOpCreatePipeFromPipeStorage = 324, - SpvOpGetKernelLocalSizeForSubgroupCount = 325, - SpvOpGetKernelMaxNumSubgroups = 326, - SpvOpTypeNamedBarrier = 327, - SpvOpNamedBarrierInitialize = 328, - SpvOpMemoryNamedBarrier = 329, - SpvOpModuleProcessed = 330, - SpvOpDecorateId = 332, - SpvOpSubgroupBallotKHR = 4421, - SpvOpSubgroupFirstInvocationKHR = 4422, - SpvOpSubgroupAllKHR = 4428, - SpvOpSubgroupAnyKHR = 4429, - SpvOpSubgroupAllEqualKHR = 4430, - SpvOpSubgroupReadInvocationKHR = 4432, - SpvOpGroupIAddNonUniformAMD = 5000, - SpvOpGroupFAddNonUniformAMD = 5001, - SpvOpGroupFMinNonUniformAMD = 5002, - SpvOpGroupUMinNonUniformAMD = 5003, - SpvOpGroupSMinNonUniformAMD = 5004, - SpvOpGroupFMaxNonUniformAMD = 5005, - SpvOpGroupUMaxNonUniformAMD = 5006, - SpvOpGroupSMaxNonUniformAMD = 5007, - SpvOpFragmentMaskFetchAMD = 5011, - SpvOpFragmentFetchAMD = 5012, - SpvOpSubgroupShuffleINTEL = 5571, - SpvOpSubgroupShuffleDownINTEL = 5572, - SpvOpSubgroupShuffleUpINTEL = 5573, - SpvOpSubgroupShuffleXorINTEL = 5574, - SpvOpSubgroupBlockReadINTEL = 5575, - SpvOpSubgroupBlockWriteINTEL = 5576, - SpvOpSubgroupImageBlockReadINTEL = 5577, - SpvOpSubgroupImageBlockWriteINTEL = 5578, - SpvOpDecorateStringGOOGLE = 5632, - SpvOpMemberDecorateStringGOOGLE = 5633, - SpvOpMax = 0x7fffffff, -} SpvOp; - -#endif // #ifndef spirv_H - diff --git a/Extern/3rdParty/shaderc/shaderc/include/spirv/1.1/spirv.hpp b/Extern/3rdParty/shaderc/shaderc/include/spirv/1.1/spirv.hpp deleted file mode 100644 index c26ac1f..0000000 --- a/Extern/3rdParty/shaderc/shaderc/include/spirv/1.1/spirv.hpp +++ /dev/null @@ -1,1024 +0,0 @@ -// Copyright (c) 2014-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. - -// This header is automatically generated by the same tool that creates -// the Binary Section of the SPIR-V specification. - -// Enumeration tokens for SPIR-V, in various styles: -// C, C++, C++11, JSON, Lua, Python -// -// - C will have tokens with a "Spv" prefix, e.g.: SpvSourceLanguageGLSL -// - C++ will have tokens in the "spv" name space, e.g.: spv::SourceLanguageGLSL -// - C++11 will use enum classes in the spv namespace, e.g.: spv::SourceLanguage::GLSL -// - Lua will use tables, e.g.: spv.SourceLanguage.GLSL -// - Python will use dictionaries, e.g.: spv['SourceLanguage']['GLSL'] -// -// Some tokens act like mask values, which can be OR'd together, -// while others are mutually exclusive. The mask-like ones have -// "Mask" in their name, and a parallel enum that has the shift -// amount (1 << x) for each corresponding enumerant. - -#ifndef spirv_HPP -#define spirv_HPP - -namespace spv { - -typedef unsigned int Id; - -#define SPV_VERSION 0x10100 -#define SPV_REVISION 8 - -static const unsigned int MagicNumber = 0x07230203; -static const unsigned int Version = 0x00010100; -static const unsigned int Revision = 8; -static const unsigned int OpCodeMask = 0xffff; -static const unsigned int WordCountShift = 16; - -enum SourceLanguage { - SourceLanguageUnknown = 0, - SourceLanguageESSL = 1, - SourceLanguageGLSL = 2, - SourceLanguageOpenCL_C = 3, - SourceLanguageOpenCL_CPP = 4, - SourceLanguageHLSL = 5, - SourceLanguageMax = 0x7fffffff, -}; - -enum ExecutionModel { - ExecutionModelVertex = 0, - ExecutionModelTessellationControl = 1, - ExecutionModelTessellationEvaluation = 2, - ExecutionModelGeometry = 3, - ExecutionModelFragment = 4, - ExecutionModelGLCompute = 5, - ExecutionModelKernel = 6, - ExecutionModelMax = 0x7fffffff, -}; - -enum AddressingModel { - AddressingModelLogical = 0, - AddressingModelPhysical32 = 1, - AddressingModelPhysical64 = 2, - AddressingModelMax = 0x7fffffff, -}; - -enum MemoryModel { - MemoryModelSimple = 0, - MemoryModelGLSL450 = 1, - MemoryModelOpenCL = 2, - MemoryModelMax = 0x7fffffff, -}; - -enum ExecutionMode { - ExecutionModeInvocations = 0, - ExecutionModeSpacingEqual = 1, - ExecutionModeSpacingFractionalEven = 2, - ExecutionModeSpacingFractionalOdd = 3, - ExecutionModeVertexOrderCw = 4, - ExecutionModeVertexOrderCcw = 5, - ExecutionModePixelCenterInteger = 6, - ExecutionModeOriginUpperLeft = 7, - ExecutionModeOriginLowerLeft = 8, - ExecutionModeEarlyFragmentTests = 9, - ExecutionModePointMode = 10, - ExecutionModeXfb = 11, - ExecutionModeDepthReplacing = 12, - ExecutionModeDepthGreater = 14, - ExecutionModeDepthLess = 15, - ExecutionModeDepthUnchanged = 16, - ExecutionModeLocalSize = 17, - ExecutionModeLocalSizeHint = 18, - ExecutionModeInputPoints = 19, - ExecutionModeInputLines = 20, - ExecutionModeInputLinesAdjacency = 21, - ExecutionModeTriangles = 22, - ExecutionModeInputTrianglesAdjacency = 23, - ExecutionModeQuads = 24, - ExecutionModeIsolines = 25, - ExecutionModeOutputVertices = 26, - ExecutionModeOutputPoints = 27, - ExecutionModeOutputLineStrip = 28, - ExecutionModeOutputTriangleStrip = 29, - ExecutionModeVecTypeHint = 30, - ExecutionModeContractionOff = 31, - ExecutionModeInitializer = 33, - ExecutionModeFinalizer = 34, - ExecutionModeSubgroupSize = 35, - ExecutionModeSubgroupsPerWorkgroup = 36, - ExecutionModePostDepthCoverage = 4446, - ExecutionModeStencilRefReplacingEXT = 5027, - ExecutionModeMax = 0x7fffffff, -}; - -enum StorageClass { - StorageClassUniformConstant = 0, - StorageClassInput = 1, - StorageClassUniform = 2, - StorageClassOutput = 3, - StorageClassWorkgroup = 4, - StorageClassCrossWorkgroup = 5, - StorageClassPrivate = 6, - StorageClassFunction = 7, - StorageClassGeneric = 8, - StorageClassPushConstant = 9, - StorageClassAtomicCounter = 10, - StorageClassImage = 11, - StorageClassStorageBuffer = 12, - StorageClassMax = 0x7fffffff, -}; - -enum Dim { - Dim1D = 0, - Dim2D = 1, - Dim3D = 2, - DimCube = 3, - DimRect = 4, - DimBuffer = 5, - DimSubpassData = 6, - DimMax = 0x7fffffff, -}; - -enum SamplerAddressingMode { - SamplerAddressingModeNone = 0, - SamplerAddressingModeClampToEdge = 1, - SamplerAddressingModeClamp = 2, - SamplerAddressingModeRepeat = 3, - SamplerAddressingModeRepeatMirrored = 4, - SamplerAddressingModeMax = 0x7fffffff, -}; - -enum SamplerFilterMode { - SamplerFilterModeNearest = 0, - SamplerFilterModeLinear = 1, - SamplerFilterModeMax = 0x7fffffff, -}; - -enum ImageFormat { - ImageFormatUnknown = 0, - ImageFormatRgba32f = 1, - ImageFormatRgba16f = 2, - ImageFormatR32f = 3, - ImageFormatRgba8 = 4, - ImageFormatRgba8Snorm = 5, - ImageFormatRg32f = 6, - ImageFormatRg16f = 7, - ImageFormatR11fG11fB10f = 8, - ImageFormatR16f = 9, - ImageFormatRgba16 = 10, - ImageFormatRgb10A2 = 11, - ImageFormatRg16 = 12, - ImageFormatRg8 = 13, - ImageFormatR16 = 14, - ImageFormatR8 = 15, - ImageFormatRgba16Snorm = 16, - ImageFormatRg16Snorm = 17, - ImageFormatRg8Snorm = 18, - ImageFormatR16Snorm = 19, - ImageFormatR8Snorm = 20, - ImageFormatRgba32i = 21, - ImageFormatRgba16i = 22, - ImageFormatRgba8i = 23, - ImageFormatR32i = 24, - ImageFormatRg32i = 25, - ImageFormatRg16i = 26, - ImageFormatRg8i = 27, - ImageFormatR16i = 28, - ImageFormatR8i = 29, - ImageFormatRgba32ui = 30, - ImageFormatRgba16ui = 31, - ImageFormatRgba8ui = 32, - ImageFormatR32ui = 33, - ImageFormatRgb10a2ui = 34, - ImageFormatRg32ui = 35, - ImageFormatRg16ui = 36, - ImageFormatRg8ui = 37, - ImageFormatR16ui = 38, - ImageFormatR8ui = 39, - ImageFormatMax = 0x7fffffff, -}; - -enum ImageChannelOrder { - ImageChannelOrderR = 0, - ImageChannelOrderA = 1, - ImageChannelOrderRG = 2, - ImageChannelOrderRA = 3, - ImageChannelOrderRGB = 4, - ImageChannelOrderRGBA = 5, - ImageChannelOrderBGRA = 6, - ImageChannelOrderARGB = 7, - ImageChannelOrderIntensity = 8, - ImageChannelOrderLuminance = 9, - ImageChannelOrderRx = 10, - ImageChannelOrderRGx = 11, - ImageChannelOrderRGBx = 12, - ImageChannelOrderDepth = 13, - ImageChannelOrderDepthStencil = 14, - ImageChannelOrdersRGB = 15, - ImageChannelOrdersRGBx = 16, - ImageChannelOrdersRGBA = 17, - ImageChannelOrdersBGRA = 18, - ImageChannelOrderABGR = 19, - ImageChannelOrderMax = 0x7fffffff, -}; - -enum ImageChannelDataType { - ImageChannelDataTypeSnormInt8 = 0, - ImageChannelDataTypeSnormInt16 = 1, - ImageChannelDataTypeUnormInt8 = 2, - ImageChannelDataTypeUnormInt16 = 3, - ImageChannelDataTypeUnormShort565 = 4, - ImageChannelDataTypeUnormShort555 = 5, - ImageChannelDataTypeUnormInt101010 = 6, - ImageChannelDataTypeSignedInt8 = 7, - ImageChannelDataTypeSignedInt16 = 8, - ImageChannelDataTypeSignedInt32 = 9, - ImageChannelDataTypeUnsignedInt8 = 10, - ImageChannelDataTypeUnsignedInt16 = 11, - ImageChannelDataTypeUnsignedInt32 = 12, - ImageChannelDataTypeHalfFloat = 13, - ImageChannelDataTypeFloat = 14, - ImageChannelDataTypeUnormInt24 = 15, - ImageChannelDataTypeUnormInt101010_2 = 16, - ImageChannelDataTypeMax = 0x7fffffff, -}; - -enum ImageOperandsShift { - ImageOperandsBiasShift = 0, - ImageOperandsLodShift = 1, - ImageOperandsGradShift = 2, - ImageOperandsConstOffsetShift = 3, - ImageOperandsOffsetShift = 4, - ImageOperandsConstOffsetsShift = 5, - ImageOperandsSampleShift = 6, - ImageOperandsMinLodShift = 7, - ImageOperandsMax = 0x7fffffff, -}; - -enum ImageOperandsMask { - ImageOperandsMaskNone = 0, - ImageOperandsBiasMask = 0x00000001, - ImageOperandsLodMask = 0x00000002, - ImageOperandsGradMask = 0x00000004, - ImageOperandsConstOffsetMask = 0x00000008, - ImageOperandsOffsetMask = 0x00000010, - ImageOperandsConstOffsetsMask = 0x00000020, - ImageOperandsSampleMask = 0x00000040, - ImageOperandsMinLodMask = 0x00000080, -}; - -enum FPFastMathModeShift { - FPFastMathModeNotNaNShift = 0, - FPFastMathModeNotInfShift = 1, - FPFastMathModeNSZShift = 2, - FPFastMathModeAllowRecipShift = 3, - FPFastMathModeFastShift = 4, - FPFastMathModeMax = 0x7fffffff, -}; - -enum FPFastMathModeMask { - FPFastMathModeMaskNone = 0, - FPFastMathModeNotNaNMask = 0x00000001, - FPFastMathModeNotInfMask = 0x00000002, - FPFastMathModeNSZMask = 0x00000004, - FPFastMathModeAllowRecipMask = 0x00000008, - FPFastMathModeFastMask = 0x00000010, -}; - -enum FPRoundingMode { - FPRoundingModeRTE = 0, - FPRoundingModeRTZ = 1, - FPRoundingModeRTP = 2, - FPRoundingModeRTN = 3, - FPRoundingModeMax = 0x7fffffff, -}; - -enum LinkageType { - LinkageTypeExport = 0, - LinkageTypeImport = 1, - LinkageTypeMax = 0x7fffffff, -}; - -enum AccessQualifier { - AccessQualifierReadOnly = 0, - AccessQualifierWriteOnly = 1, - AccessQualifierReadWrite = 2, - AccessQualifierMax = 0x7fffffff, -}; - -enum FunctionParameterAttribute { - FunctionParameterAttributeZext = 0, - FunctionParameterAttributeSext = 1, - FunctionParameterAttributeByVal = 2, - FunctionParameterAttributeSret = 3, - FunctionParameterAttributeNoAlias = 4, - FunctionParameterAttributeNoCapture = 5, - FunctionParameterAttributeNoWrite = 6, - FunctionParameterAttributeNoReadWrite = 7, - FunctionParameterAttributeMax = 0x7fffffff, -}; - -enum Decoration { - DecorationRelaxedPrecision = 0, - DecorationSpecId = 1, - DecorationBlock = 2, - DecorationBufferBlock = 3, - DecorationRowMajor = 4, - DecorationColMajor = 5, - DecorationArrayStride = 6, - DecorationMatrixStride = 7, - DecorationGLSLShared = 8, - DecorationGLSLPacked = 9, - DecorationCPacked = 10, - DecorationBuiltIn = 11, - DecorationNoPerspective = 13, - DecorationFlat = 14, - DecorationPatch = 15, - DecorationCentroid = 16, - DecorationSample = 17, - DecorationInvariant = 18, - DecorationRestrict = 19, - DecorationAliased = 20, - DecorationVolatile = 21, - DecorationConstant = 22, - DecorationCoherent = 23, - DecorationNonWritable = 24, - DecorationNonReadable = 25, - DecorationUniform = 26, - DecorationSaturatedConversion = 28, - DecorationStream = 29, - DecorationLocation = 30, - DecorationComponent = 31, - DecorationIndex = 32, - DecorationBinding = 33, - DecorationDescriptorSet = 34, - DecorationOffset = 35, - DecorationXfbBuffer = 36, - DecorationXfbStride = 37, - DecorationFuncParamAttr = 38, - DecorationFPRoundingMode = 39, - DecorationFPFastMathMode = 40, - DecorationLinkageAttributes = 41, - DecorationNoContraction = 42, - DecorationInputAttachmentIndex = 43, - DecorationAlignment = 44, - DecorationMaxByteOffset = 45, - DecorationExplicitInterpAMD = 4999, - DecorationOverrideCoverageNV = 5248, - DecorationPassthroughNV = 5250, - DecorationViewportRelativeNV = 5252, - DecorationSecondaryViewportRelativeNV = 5256, - DecorationHlslCounterBufferGOOGLE = 5634, - DecorationHlslSemanticGOOGLE = 5635, - DecorationMax = 0x7fffffff, -}; - -enum BuiltIn { - BuiltInPosition = 0, - BuiltInPointSize = 1, - BuiltInClipDistance = 3, - BuiltInCullDistance = 4, - BuiltInVertexId = 5, - BuiltInInstanceId = 6, - BuiltInPrimitiveId = 7, - BuiltInInvocationId = 8, - BuiltInLayer = 9, - BuiltInViewportIndex = 10, - BuiltInTessLevelOuter = 11, - BuiltInTessLevelInner = 12, - BuiltInTessCoord = 13, - BuiltInPatchVertices = 14, - BuiltInFragCoord = 15, - BuiltInPointCoord = 16, - BuiltInFrontFacing = 17, - BuiltInSampleId = 18, - BuiltInSamplePosition = 19, - BuiltInSampleMask = 20, - BuiltInFragDepth = 22, - BuiltInHelperInvocation = 23, - BuiltInNumWorkgroups = 24, - BuiltInWorkgroupSize = 25, - BuiltInWorkgroupId = 26, - BuiltInLocalInvocationId = 27, - BuiltInGlobalInvocationId = 28, - BuiltInLocalInvocationIndex = 29, - BuiltInWorkDim = 30, - BuiltInGlobalSize = 31, - BuiltInEnqueuedWorkgroupSize = 32, - BuiltInGlobalOffset = 33, - BuiltInGlobalLinearId = 34, - BuiltInSubgroupSize = 36, - BuiltInSubgroupMaxSize = 37, - BuiltInNumSubgroups = 38, - BuiltInNumEnqueuedSubgroups = 39, - BuiltInSubgroupId = 40, - BuiltInSubgroupLocalInvocationId = 41, - BuiltInVertexIndex = 42, - BuiltInInstanceIndex = 43, - BuiltInSubgroupEqMaskKHR = 4416, - BuiltInSubgroupGeMaskKHR = 4417, - BuiltInSubgroupGtMaskKHR = 4418, - BuiltInSubgroupLeMaskKHR = 4419, - BuiltInSubgroupLtMaskKHR = 4420, - BuiltInBaseVertex = 4424, - BuiltInBaseInstance = 4425, - BuiltInDrawIndex = 4426, - BuiltInDeviceIndex = 4438, - BuiltInViewIndex = 4440, - BuiltInBaryCoordNoPerspAMD = 4992, - BuiltInBaryCoordNoPerspCentroidAMD = 4993, - BuiltInBaryCoordNoPerspSampleAMD = 4994, - BuiltInBaryCoordSmoothAMD = 4995, - BuiltInBaryCoordSmoothCentroidAMD = 4996, - BuiltInBaryCoordSmoothSampleAMD = 4997, - BuiltInBaryCoordPullModelAMD = 4998, - BuiltInFragStencilRefEXT = 5014, - BuiltInViewportMaskNV = 5253, - BuiltInSecondaryPositionNV = 5257, - BuiltInSecondaryViewportMaskNV = 5258, - BuiltInPositionPerViewNV = 5261, - BuiltInViewportMaskPerViewNV = 5262, - BuiltInMax = 0x7fffffff, -}; - -enum SelectionControlShift { - SelectionControlFlattenShift = 0, - SelectionControlDontFlattenShift = 1, - SelectionControlMax = 0x7fffffff, -}; - -enum SelectionControlMask { - SelectionControlMaskNone = 0, - SelectionControlFlattenMask = 0x00000001, - SelectionControlDontFlattenMask = 0x00000002, -}; - -enum LoopControlShift { - LoopControlUnrollShift = 0, - LoopControlDontUnrollShift = 1, - LoopControlDependencyInfiniteShift = 2, - LoopControlDependencyLengthShift = 3, - LoopControlMax = 0x7fffffff, -}; - -enum LoopControlMask { - LoopControlMaskNone = 0, - LoopControlUnrollMask = 0x00000001, - LoopControlDontUnrollMask = 0x00000002, - LoopControlDependencyInfiniteMask = 0x00000004, - LoopControlDependencyLengthMask = 0x00000008, -}; - -enum FunctionControlShift { - FunctionControlInlineShift = 0, - FunctionControlDontInlineShift = 1, - FunctionControlPureShift = 2, - FunctionControlConstShift = 3, - FunctionControlMax = 0x7fffffff, -}; - -enum FunctionControlMask { - FunctionControlMaskNone = 0, - FunctionControlInlineMask = 0x00000001, - FunctionControlDontInlineMask = 0x00000002, - FunctionControlPureMask = 0x00000004, - FunctionControlConstMask = 0x00000008, -}; - -enum MemorySemanticsShift { - MemorySemanticsAcquireShift = 1, - MemorySemanticsReleaseShift = 2, - MemorySemanticsAcquireReleaseShift = 3, - MemorySemanticsSequentiallyConsistentShift = 4, - MemorySemanticsUniformMemoryShift = 6, - MemorySemanticsSubgroupMemoryShift = 7, - MemorySemanticsWorkgroupMemoryShift = 8, - MemorySemanticsCrossWorkgroupMemoryShift = 9, - MemorySemanticsAtomicCounterMemoryShift = 10, - MemorySemanticsImageMemoryShift = 11, - MemorySemanticsMax = 0x7fffffff, -}; - -enum MemorySemanticsMask { - MemorySemanticsMaskNone = 0, - MemorySemanticsAcquireMask = 0x00000002, - MemorySemanticsReleaseMask = 0x00000004, - MemorySemanticsAcquireReleaseMask = 0x00000008, - MemorySemanticsSequentiallyConsistentMask = 0x00000010, - MemorySemanticsUniformMemoryMask = 0x00000040, - MemorySemanticsSubgroupMemoryMask = 0x00000080, - MemorySemanticsWorkgroupMemoryMask = 0x00000100, - MemorySemanticsCrossWorkgroupMemoryMask = 0x00000200, - MemorySemanticsAtomicCounterMemoryMask = 0x00000400, - MemorySemanticsImageMemoryMask = 0x00000800, -}; - -enum MemoryAccessShift { - MemoryAccessVolatileShift = 0, - MemoryAccessAlignedShift = 1, - MemoryAccessNontemporalShift = 2, - MemoryAccessMax = 0x7fffffff, -}; - -enum MemoryAccessMask { - MemoryAccessMaskNone = 0, - MemoryAccessVolatileMask = 0x00000001, - MemoryAccessAlignedMask = 0x00000002, - MemoryAccessNontemporalMask = 0x00000004, -}; - -enum Scope { - ScopeCrossDevice = 0, - ScopeDevice = 1, - ScopeWorkgroup = 2, - ScopeSubgroup = 3, - ScopeInvocation = 4, - ScopeMax = 0x7fffffff, -}; - -enum GroupOperation { - GroupOperationReduce = 0, - GroupOperationInclusiveScan = 1, - GroupOperationExclusiveScan = 2, - GroupOperationMax = 0x7fffffff, -}; - -enum KernelEnqueueFlags { - KernelEnqueueFlagsNoWait = 0, - KernelEnqueueFlagsWaitKernel = 1, - KernelEnqueueFlagsWaitWorkGroup = 2, - KernelEnqueueFlagsMax = 0x7fffffff, -}; - -enum KernelProfilingInfoShift { - KernelProfilingInfoCmdExecTimeShift = 0, - KernelProfilingInfoMax = 0x7fffffff, -}; - -enum KernelProfilingInfoMask { - KernelProfilingInfoMaskNone = 0, - KernelProfilingInfoCmdExecTimeMask = 0x00000001, -}; - -enum Capability { - CapabilityMatrix = 0, - CapabilityShader = 1, - CapabilityGeometry = 2, - CapabilityTessellation = 3, - CapabilityAddresses = 4, - CapabilityLinkage = 5, - CapabilityKernel = 6, - CapabilityVector16 = 7, - CapabilityFloat16Buffer = 8, - CapabilityFloat16 = 9, - CapabilityFloat64 = 10, - CapabilityInt64 = 11, - CapabilityInt64Atomics = 12, - CapabilityImageBasic = 13, - CapabilityImageReadWrite = 14, - CapabilityImageMipmap = 15, - CapabilityPipes = 17, - CapabilityGroups = 18, - CapabilityDeviceEnqueue = 19, - CapabilityLiteralSampler = 20, - CapabilityAtomicStorage = 21, - CapabilityInt16 = 22, - CapabilityTessellationPointSize = 23, - CapabilityGeometryPointSize = 24, - CapabilityImageGatherExtended = 25, - CapabilityStorageImageMultisample = 27, - CapabilityUniformBufferArrayDynamicIndexing = 28, - CapabilitySampledImageArrayDynamicIndexing = 29, - CapabilityStorageBufferArrayDynamicIndexing = 30, - CapabilityStorageImageArrayDynamicIndexing = 31, - CapabilityClipDistance = 32, - CapabilityCullDistance = 33, - CapabilityImageCubeArray = 34, - CapabilitySampleRateShading = 35, - CapabilityImageRect = 36, - CapabilitySampledRect = 37, - CapabilityGenericPointer = 38, - CapabilityInt8 = 39, - CapabilityInputAttachment = 40, - CapabilitySparseResidency = 41, - CapabilityMinLod = 42, - CapabilitySampled1D = 43, - CapabilityImage1D = 44, - CapabilitySampledCubeArray = 45, - CapabilitySampledBuffer = 46, - CapabilityImageBuffer = 47, - CapabilityImageMSArray = 48, - CapabilityStorageImageExtendedFormats = 49, - CapabilityImageQuery = 50, - CapabilityDerivativeControl = 51, - CapabilityInterpolationFunction = 52, - CapabilityTransformFeedback = 53, - CapabilityGeometryStreams = 54, - CapabilityStorageImageReadWithoutFormat = 55, - CapabilityStorageImageWriteWithoutFormat = 56, - CapabilityMultiViewport = 57, - CapabilitySubgroupDispatch = 58, - CapabilityNamedBarrier = 59, - CapabilityPipeStorage = 60, - CapabilitySubgroupBallotKHR = 4423, - CapabilityDrawParameters = 4427, - CapabilitySubgroupVoteKHR = 4431, - CapabilityStorageBuffer16BitAccess = 4433, - CapabilityStorageUniformBufferBlock16 = 4433, - CapabilityStorageUniform16 = 4434, - CapabilityUniformAndStorageBuffer16BitAccess = 4434, - CapabilityStoragePushConstant16 = 4435, - CapabilityStorageInputOutput16 = 4436, - CapabilityDeviceGroup = 4437, - CapabilityMultiView = 4439, - CapabilityVariablePointersStorageBuffer = 4441, - CapabilityVariablePointers = 4442, - CapabilityAtomicStorageOps = 4445, - CapabilitySampleMaskPostDepthCoverage = 4447, - CapabilityImageGatherBiasLodAMD = 5009, - CapabilityFragmentMaskAMD = 5010, - CapabilityStencilExportEXT = 5013, - CapabilityImageReadWriteLodAMD = 5015, - CapabilitySampleMaskOverrideCoverageNV = 5249, - CapabilityGeometryShaderPassthroughNV = 5251, - CapabilityShaderViewportIndexLayerEXT = 5254, - CapabilityShaderViewportIndexLayerNV = 5254, - CapabilityShaderViewportMaskNV = 5255, - CapabilityShaderStereoViewNV = 5259, - CapabilityPerViewAttributesNV = 5260, - CapabilitySubgroupShuffleINTEL = 5568, - CapabilitySubgroupBufferBlockIOINTEL = 5569, - CapabilitySubgroupImageBlockIOINTEL = 5570, - CapabilityMax = 0x7fffffff, -}; - -enum Op { - OpNop = 0, - OpUndef = 1, - OpSourceContinued = 2, - OpSource = 3, - OpSourceExtension = 4, - OpName = 5, - OpMemberName = 6, - OpString = 7, - OpLine = 8, - OpExtension = 10, - OpExtInstImport = 11, - OpExtInst = 12, - OpMemoryModel = 14, - OpEntryPoint = 15, - OpExecutionMode = 16, - OpCapability = 17, - OpTypeVoid = 19, - OpTypeBool = 20, - OpTypeInt = 21, - OpTypeFloat = 22, - OpTypeVector = 23, - OpTypeMatrix = 24, - OpTypeImage = 25, - OpTypeSampler = 26, - OpTypeSampledImage = 27, - OpTypeArray = 28, - OpTypeRuntimeArray = 29, - OpTypeStruct = 30, - OpTypeOpaque = 31, - OpTypePointer = 32, - OpTypeFunction = 33, - OpTypeEvent = 34, - OpTypeDeviceEvent = 35, - OpTypeReserveId = 36, - OpTypeQueue = 37, - OpTypePipe = 38, - OpTypeForwardPointer = 39, - OpConstantTrue = 41, - OpConstantFalse = 42, - OpConstant = 43, - OpConstantComposite = 44, - OpConstantSampler = 45, - OpConstantNull = 46, - OpSpecConstantTrue = 48, - OpSpecConstantFalse = 49, - OpSpecConstant = 50, - OpSpecConstantComposite = 51, - OpSpecConstantOp = 52, - OpFunction = 54, - OpFunctionParameter = 55, - OpFunctionEnd = 56, - OpFunctionCall = 57, - OpVariable = 59, - OpImageTexelPointer = 60, - OpLoad = 61, - OpStore = 62, - OpCopyMemory = 63, - OpCopyMemorySized = 64, - OpAccessChain = 65, - OpInBoundsAccessChain = 66, - OpPtrAccessChain = 67, - OpArrayLength = 68, - OpGenericPtrMemSemantics = 69, - OpInBoundsPtrAccessChain = 70, - OpDecorate = 71, - OpMemberDecorate = 72, - OpDecorationGroup = 73, - OpGroupDecorate = 74, - OpGroupMemberDecorate = 75, - OpVectorExtractDynamic = 77, - OpVectorInsertDynamic = 78, - OpVectorShuffle = 79, - OpCompositeConstruct = 80, - OpCompositeExtract = 81, - OpCompositeInsert = 82, - OpCopyObject = 83, - OpTranspose = 84, - OpSampledImage = 86, - OpImageSampleImplicitLod = 87, - OpImageSampleExplicitLod = 88, - OpImageSampleDrefImplicitLod = 89, - OpImageSampleDrefExplicitLod = 90, - OpImageSampleProjImplicitLod = 91, - OpImageSampleProjExplicitLod = 92, - OpImageSampleProjDrefImplicitLod = 93, - OpImageSampleProjDrefExplicitLod = 94, - OpImageFetch = 95, - OpImageGather = 96, - OpImageDrefGather = 97, - OpImageRead = 98, - OpImageWrite = 99, - OpImage = 100, - OpImageQueryFormat = 101, - OpImageQueryOrder = 102, - OpImageQuerySizeLod = 103, - OpImageQuerySize = 104, - OpImageQueryLod = 105, - OpImageQueryLevels = 106, - OpImageQuerySamples = 107, - OpConvertFToU = 109, - OpConvertFToS = 110, - OpConvertSToF = 111, - OpConvertUToF = 112, - OpUConvert = 113, - OpSConvert = 114, - OpFConvert = 115, - OpQuantizeToF16 = 116, - OpConvertPtrToU = 117, - OpSatConvertSToU = 118, - OpSatConvertUToS = 119, - OpConvertUToPtr = 120, - OpPtrCastToGeneric = 121, - OpGenericCastToPtr = 122, - OpGenericCastToPtrExplicit = 123, - OpBitcast = 124, - OpSNegate = 126, - OpFNegate = 127, - OpIAdd = 128, - OpFAdd = 129, - OpISub = 130, - OpFSub = 131, - OpIMul = 132, - OpFMul = 133, - OpUDiv = 134, - OpSDiv = 135, - OpFDiv = 136, - OpUMod = 137, - OpSRem = 138, - OpSMod = 139, - OpFRem = 140, - OpFMod = 141, - OpVectorTimesScalar = 142, - OpMatrixTimesScalar = 143, - OpVectorTimesMatrix = 144, - OpMatrixTimesVector = 145, - OpMatrixTimesMatrix = 146, - OpOuterProduct = 147, - OpDot = 148, - OpIAddCarry = 149, - OpISubBorrow = 150, - OpUMulExtended = 151, - OpSMulExtended = 152, - OpAny = 154, - OpAll = 155, - OpIsNan = 156, - OpIsInf = 157, - OpIsFinite = 158, - OpIsNormal = 159, - OpSignBitSet = 160, - OpLessOrGreater = 161, - OpOrdered = 162, - OpUnordered = 163, - OpLogicalEqual = 164, - OpLogicalNotEqual = 165, - OpLogicalOr = 166, - OpLogicalAnd = 167, - OpLogicalNot = 168, - OpSelect = 169, - OpIEqual = 170, - OpINotEqual = 171, - OpUGreaterThan = 172, - OpSGreaterThan = 173, - OpUGreaterThanEqual = 174, - OpSGreaterThanEqual = 175, - OpULessThan = 176, - OpSLessThan = 177, - OpULessThanEqual = 178, - OpSLessThanEqual = 179, - OpFOrdEqual = 180, - OpFUnordEqual = 181, - OpFOrdNotEqual = 182, - OpFUnordNotEqual = 183, - OpFOrdLessThan = 184, - OpFUnordLessThan = 185, - OpFOrdGreaterThan = 186, - OpFUnordGreaterThan = 187, - OpFOrdLessThanEqual = 188, - OpFUnordLessThanEqual = 189, - OpFOrdGreaterThanEqual = 190, - OpFUnordGreaterThanEqual = 191, - OpShiftRightLogical = 194, - OpShiftRightArithmetic = 195, - OpShiftLeftLogical = 196, - OpBitwiseOr = 197, - OpBitwiseXor = 198, - OpBitwiseAnd = 199, - OpNot = 200, - OpBitFieldInsert = 201, - OpBitFieldSExtract = 202, - OpBitFieldUExtract = 203, - OpBitReverse = 204, - OpBitCount = 205, - OpDPdx = 207, - OpDPdy = 208, - OpFwidth = 209, - OpDPdxFine = 210, - OpDPdyFine = 211, - OpFwidthFine = 212, - OpDPdxCoarse = 213, - OpDPdyCoarse = 214, - OpFwidthCoarse = 215, - OpEmitVertex = 218, - OpEndPrimitive = 219, - OpEmitStreamVertex = 220, - OpEndStreamPrimitive = 221, - OpControlBarrier = 224, - OpMemoryBarrier = 225, - OpAtomicLoad = 227, - OpAtomicStore = 228, - OpAtomicExchange = 229, - OpAtomicCompareExchange = 230, - OpAtomicCompareExchangeWeak = 231, - OpAtomicIIncrement = 232, - OpAtomicIDecrement = 233, - OpAtomicIAdd = 234, - OpAtomicISub = 235, - OpAtomicSMin = 236, - OpAtomicUMin = 237, - OpAtomicSMax = 238, - OpAtomicUMax = 239, - OpAtomicAnd = 240, - OpAtomicOr = 241, - OpAtomicXor = 242, - OpPhi = 245, - OpLoopMerge = 246, - OpSelectionMerge = 247, - OpLabel = 248, - OpBranch = 249, - OpBranchConditional = 250, - OpSwitch = 251, - OpKill = 252, - OpReturn = 253, - OpReturnValue = 254, - OpUnreachable = 255, - OpLifetimeStart = 256, - OpLifetimeStop = 257, - OpGroupAsyncCopy = 259, - OpGroupWaitEvents = 260, - OpGroupAll = 261, - OpGroupAny = 262, - OpGroupBroadcast = 263, - OpGroupIAdd = 264, - OpGroupFAdd = 265, - OpGroupFMin = 266, - OpGroupUMin = 267, - OpGroupSMin = 268, - OpGroupFMax = 269, - OpGroupUMax = 270, - OpGroupSMax = 271, - OpReadPipe = 274, - OpWritePipe = 275, - OpReservedReadPipe = 276, - OpReservedWritePipe = 277, - OpReserveReadPipePackets = 278, - OpReserveWritePipePackets = 279, - OpCommitReadPipe = 280, - OpCommitWritePipe = 281, - OpIsValidReserveId = 282, - OpGetNumPipePackets = 283, - OpGetMaxPipePackets = 284, - OpGroupReserveReadPipePackets = 285, - OpGroupReserveWritePipePackets = 286, - OpGroupCommitReadPipe = 287, - OpGroupCommitWritePipe = 288, - OpEnqueueMarker = 291, - OpEnqueueKernel = 292, - OpGetKernelNDrangeSubGroupCount = 293, - OpGetKernelNDrangeMaxSubGroupSize = 294, - OpGetKernelWorkGroupSize = 295, - OpGetKernelPreferredWorkGroupSizeMultiple = 296, - OpRetainEvent = 297, - OpReleaseEvent = 298, - OpCreateUserEvent = 299, - OpIsValidEvent = 300, - OpSetUserEventStatus = 301, - OpCaptureEventProfilingInfo = 302, - OpGetDefaultQueue = 303, - OpBuildNDRange = 304, - OpImageSparseSampleImplicitLod = 305, - OpImageSparseSampleExplicitLod = 306, - OpImageSparseSampleDrefImplicitLod = 307, - OpImageSparseSampleDrefExplicitLod = 308, - OpImageSparseSampleProjImplicitLod = 309, - OpImageSparseSampleProjExplicitLod = 310, - OpImageSparseSampleProjDrefImplicitLod = 311, - OpImageSparseSampleProjDrefExplicitLod = 312, - OpImageSparseFetch = 313, - OpImageSparseGather = 314, - OpImageSparseDrefGather = 315, - OpImageSparseTexelsResident = 316, - OpNoLine = 317, - OpAtomicFlagTestAndSet = 318, - OpAtomicFlagClear = 319, - OpImageSparseRead = 320, - OpSizeOf = 321, - OpTypePipeStorage = 322, - OpConstantPipeStorage = 323, - OpCreatePipeFromPipeStorage = 324, - OpGetKernelLocalSizeForSubgroupCount = 325, - OpGetKernelMaxNumSubgroups = 326, - OpTypeNamedBarrier = 327, - OpNamedBarrierInitialize = 328, - OpMemoryNamedBarrier = 329, - OpModuleProcessed = 330, - OpDecorateId = 332, - OpSubgroupBallotKHR = 4421, - OpSubgroupFirstInvocationKHR = 4422, - OpSubgroupAllKHR = 4428, - OpSubgroupAnyKHR = 4429, - OpSubgroupAllEqualKHR = 4430, - OpSubgroupReadInvocationKHR = 4432, - OpGroupIAddNonUniformAMD = 5000, - OpGroupFAddNonUniformAMD = 5001, - OpGroupFMinNonUniformAMD = 5002, - OpGroupUMinNonUniformAMD = 5003, - OpGroupSMinNonUniformAMD = 5004, - OpGroupFMaxNonUniformAMD = 5005, - OpGroupUMaxNonUniformAMD = 5006, - OpGroupSMaxNonUniformAMD = 5007, - OpFragmentMaskFetchAMD = 5011, - OpFragmentFetchAMD = 5012, - OpSubgroupShuffleINTEL = 5571, - OpSubgroupShuffleDownINTEL = 5572, - OpSubgroupShuffleUpINTEL = 5573, - OpSubgroupShuffleXorINTEL = 5574, - OpSubgroupBlockReadINTEL = 5575, - OpSubgroupBlockWriteINTEL = 5576, - OpSubgroupImageBlockReadINTEL = 5577, - OpSubgroupImageBlockWriteINTEL = 5578, - OpDecorateStringGOOGLE = 5632, - OpMemberDecorateStringGOOGLE = 5633, - OpMax = 0x7fffffff, -}; - -// Overload operator| for mask bit combining - -inline ImageOperandsMask operator|(ImageOperandsMask a, ImageOperandsMask b) { return ImageOperandsMask(unsigned(a) | unsigned(b)); } -inline FPFastMathModeMask operator|(FPFastMathModeMask a, FPFastMathModeMask b) { return FPFastMathModeMask(unsigned(a) | unsigned(b)); } -inline SelectionControlMask operator|(SelectionControlMask a, SelectionControlMask b) { return SelectionControlMask(unsigned(a) | unsigned(b)); } -inline LoopControlMask operator|(LoopControlMask a, LoopControlMask b) { return LoopControlMask(unsigned(a) | unsigned(b)); } -inline FunctionControlMask operator|(FunctionControlMask a, FunctionControlMask b) { return FunctionControlMask(unsigned(a) | unsigned(b)); } -inline MemorySemanticsMask operator|(MemorySemanticsMask a, MemorySemanticsMask b) { return MemorySemanticsMask(unsigned(a) | unsigned(b)); } -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)); } - -} // end namespace spv - -#endif // #ifndef spirv_HPP - diff --git a/Extern/3rdParty/shaderc/shaderc/include/spirv/1.1/spirv.hpp11 b/Extern/3rdParty/shaderc/shaderc/include/spirv/1.1/spirv.hpp11 deleted file mode 100644 index 992d43b..0000000 --- a/Extern/3rdParty/shaderc/shaderc/include/spirv/1.1/spirv.hpp11 +++ /dev/null @@ -1,1024 +0,0 @@ -// Copyright (c) 2014-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. - -// This header is automatically generated by the same tool that creates -// the Binary Section of the SPIR-V specification. - -// Enumeration tokens for SPIR-V, in various styles: -// C, C++, C++11, JSON, Lua, Python -// -// - C will have tokens with a "Spv" prefix, e.g.: SpvSourceLanguageGLSL -// - C++ will have tokens in the "spv" name space, e.g.: spv::SourceLanguageGLSL -// - C++11 will use enum classes in the spv namespace, e.g.: spv::SourceLanguage::GLSL -// - Lua will use tables, e.g.: spv.SourceLanguage.GLSL -// - Python will use dictionaries, e.g.: spv['SourceLanguage']['GLSL'] -// -// Some tokens act like mask values, which can be OR'd together, -// while others are mutually exclusive. The mask-like ones have -// "Mask" in their name, and a parallel enum that has the shift -// amount (1 << x) for each corresponding enumerant. - -#ifndef spirv_HPP -#define spirv_HPP - -namespace spv { - -typedef unsigned int Id; - -#define SPV_VERSION 0x10100 -#define SPV_REVISION 8 - -static const unsigned int MagicNumber = 0x07230203; -static const unsigned int Version = 0x00010100; -static const unsigned int Revision = 8; -static const unsigned int OpCodeMask = 0xffff; -static const unsigned int WordCountShift = 16; - -enum class SourceLanguage : unsigned { - Unknown = 0, - ESSL = 1, - GLSL = 2, - OpenCL_C = 3, - OpenCL_CPP = 4, - HLSL = 5, - Max = 0x7fffffff, -}; - -enum class ExecutionModel : unsigned { - Vertex = 0, - TessellationControl = 1, - TessellationEvaluation = 2, - Geometry = 3, - Fragment = 4, - GLCompute = 5, - Kernel = 6, - Max = 0x7fffffff, -}; - -enum class AddressingModel : unsigned { - Logical = 0, - Physical32 = 1, - Physical64 = 2, - Max = 0x7fffffff, -}; - -enum class MemoryModel : unsigned { - Simple = 0, - GLSL450 = 1, - OpenCL = 2, - Max = 0x7fffffff, -}; - -enum class ExecutionMode : unsigned { - Invocations = 0, - SpacingEqual = 1, - SpacingFractionalEven = 2, - SpacingFractionalOdd = 3, - VertexOrderCw = 4, - VertexOrderCcw = 5, - PixelCenterInteger = 6, - OriginUpperLeft = 7, - OriginLowerLeft = 8, - EarlyFragmentTests = 9, - PointMode = 10, - Xfb = 11, - DepthReplacing = 12, - DepthGreater = 14, - DepthLess = 15, - DepthUnchanged = 16, - LocalSize = 17, - LocalSizeHint = 18, - InputPoints = 19, - InputLines = 20, - InputLinesAdjacency = 21, - Triangles = 22, - InputTrianglesAdjacency = 23, - Quads = 24, - Isolines = 25, - OutputVertices = 26, - OutputPoints = 27, - OutputLineStrip = 28, - OutputTriangleStrip = 29, - VecTypeHint = 30, - ContractionOff = 31, - Initializer = 33, - Finalizer = 34, - SubgroupSize = 35, - SubgroupsPerWorkgroup = 36, - PostDepthCoverage = 4446, - StencilRefReplacingEXT = 5027, - Max = 0x7fffffff, -}; - -enum class StorageClass : unsigned { - UniformConstant = 0, - Input = 1, - Uniform = 2, - Output = 3, - Workgroup = 4, - CrossWorkgroup = 5, - Private = 6, - Function = 7, - Generic = 8, - PushConstant = 9, - AtomicCounter = 10, - Image = 11, - StorageBuffer = 12, - Max = 0x7fffffff, -}; - -enum class Dim : unsigned { - Dim1D = 0, - Dim2D = 1, - Dim3D = 2, - Cube = 3, - Rect = 4, - Buffer = 5, - SubpassData = 6, - Max = 0x7fffffff, -}; - -enum class SamplerAddressingMode : unsigned { - None = 0, - ClampToEdge = 1, - Clamp = 2, - Repeat = 3, - RepeatMirrored = 4, - Max = 0x7fffffff, -}; - -enum class SamplerFilterMode : unsigned { - Nearest = 0, - Linear = 1, - Max = 0x7fffffff, -}; - -enum class ImageFormat : unsigned { - Unknown = 0, - Rgba32f = 1, - Rgba16f = 2, - R32f = 3, - Rgba8 = 4, - Rgba8Snorm = 5, - Rg32f = 6, - Rg16f = 7, - R11fG11fB10f = 8, - R16f = 9, - Rgba16 = 10, - Rgb10A2 = 11, - Rg16 = 12, - Rg8 = 13, - R16 = 14, - R8 = 15, - Rgba16Snorm = 16, - Rg16Snorm = 17, - Rg8Snorm = 18, - R16Snorm = 19, - R8Snorm = 20, - Rgba32i = 21, - Rgba16i = 22, - Rgba8i = 23, - R32i = 24, - Rg32i = 25, - Rg16i = 26, - Rg8i = 27, - R16i = 28, - R8i = 29, - Rgba32ui = 30, - Rgba16ui = 31, - Rgba8ui = 32, - R32ui = 33, - Rgb10a2ui = 34, - Rg32ui = 35, - Rg16ui = 36, - Rg8ui = 37, - R16ui = 38, - R8ui = 39, - Max = 0x7fffffff, -}; - -enum class ImageChannelOrder : unsigned { - R = 0, - A = 1, - RG = 2, - RA = 3, - RGB = 4, - RGBA = 5, - BGRA = 6, - ARGB = 7, - Intensity = 8, - Luminance = 9, - Rx = 10, - RGx = 11, - RGBx = 12, - Depth = 13, - DepthStencil = 14, - sRGB = 15, - sRGBx = 16, - sRGBA = 17, - sBGRA = 18, - ABGR = 19, - Max = 0x7fffffff, -}; - -enum class ImageChannelDataType : unsigned { - SnormInt8 = 0, - SnormInt16 = 1, - UnormInt8 = 2, - UnormInt16 = 3, - UnormShort565 = 4, - UnormShort555 = 5, - UnormInt101010 = 6, - SignedInt8 = 7, - SignedInt16 = 8, - SignedInt32 = 9, - UnsignedInt8 = 10, - UnsignedInt16 = 11, - UnsignedInt32 = 12, - HalfFloat = 13, - Float = 14, - UnormInt24 = 15, - UnormInt101010_2 = 16, - Max = 0x7fffffff, -}; - -enum class ImageOperandsShift : unsigned { - Bias = 0, - Lod = 1, - Grad = 2, - ConstOffset = 3, - Offset = 4, - ConstOffsets = 5, - Sample = 6, - MinLod = 7, - Max = 0x7fffffff, -}; - -enum class ImageOperandsMask : unsigned { - MaskNone = 0, - Bias = 0x00000001, - Lod = 0x00000002, - Grad = 0x00000004, - ConstOffset = 0x00000008, - Offset = 0x00000010, - ConstOffsets = 0x00000020, - Sample = 0x00000040, - MinLod = 0x00000080, -}; - -enum class FPFastMathModeShift : unsigned { - NotNaN = 0, - NotInf = 1, - NSZ = 2, - AllowRecip = 3, - Fast = 4, - Max = 0x7fffffff, -}; - -enum class FPFastMathModeMask : unsigned { - MaskNone = 0, - NotNaN = 0x00000001, - NotInf = 0x00000002, - NSZ = 0x00000004, - AllowRecip = 0x00000008, - Fast = 0x00000010, -}; - -enum class FPRoundingMode : unsigned { - RTE = 0, - RTZ = 1, - RTP = 2, - RTN = 3, - Max = 0x7fffffff, -}; - -enum class LinkageType : unsigned { - Export = 0, - Import = 1, - Max = 0x7fffffff, -}; - -enum class AccessQualifier : unsigned { - ReadOnly = 0, - WriteOnly = 1, - ReadWrite = 2, - Max = 0x7fffffff, -}; - -enum class FunctionParameterAttribute : unsigned { - Zext = 0, - Sext = 1, - ByVal = 2, - Sret = 3, - NoAlias = 4, - NoCapture = 5, - NoWrite = 6, - NoReadWrite = 7, - Max = 0x7fffffff, -}; - -enum class Decoration : unsigned { - RelaxedPrecision = 0, - SpecId = 1, - Block = 2, - BufferBlock = 3, - RowMajor = 4, - ColMajor = 5, - ArrayStride = 6, - MatrixStride = 7, - GLSLShared = 8, - GLSLPacked = 9, - CPacked = 10, - BuiltIn = 11, - NoPerspective = 13, - Flat = 14, - Patch = 15, - Centroid = 16, - Sample = 17, - Invariant = 18, - Restrict = 19, - Aliased = 20, - Volatile = 21, - Constant = 22, - Coherent = 23, - NonWritable = 24, - NonReadable = 25, - Uniform = 26, - SaturatedConversion = 28, - Stream = 29, - Location = 30, - Component = 31, - Index = 32, - Binding = 33, - DescriptorSet = 34, - Offset = 35, - XfbBuffer = 36, - XfbStride = 37, - FuncParamAttr = 38, - FPRoundingMode = 39, - FPFastMathMode = 40, - LinkageAttributes = 41, - NoContraction = 42, - InputAttachmentIndex = 43, - Alignment = 44, - MaxByteOffset = 45, - ExplicitInterpAMD = 4999, - OverrideCoverageNV = 5248, - PassthroughNV = 5250, - ViewportRelativeNV = 5252, - SecondaryViewportRelativeNV = 5256, - HlslCounterBufferGOOGLE = 5634, - HlslSemanticGOOGLE = 5635, - Max = 0x7fffffff, -}; - -enum class BuiltIn : unsigned { - Position = 0, - PointSize = 1, - ClipDistance = 3, - CullDistance = 4, - VertexId = 5, - InstanceId = 6, - PrimitiveId = 7, - InvocationId = 8, - Layer = 9, - ViewportIndex = 10, - TessLevelOuter = 11, - TessLevelInner = 12, - TessCoord = 13, - PatchVertices = 14, - FragCoord = 15, - PointCoord = 16, - FrontFacing = 17, - SampleId = 18, - SamplePosition = 19, - SampleMask = 20, - FragDepth = 22, - HelperInvocation = 23, - NumWorkgroups = 24, - WorkgroupSize = 25, - WorkgroupId = 26, - LocalInvocationId = 27, - GlobalInvocationId = 28, - LocalInvocationIndex = 29, - WorkDim = 30, - GlobalSize = 31, - EnqueuedWorkgroupSize = 32, - GlobalOffset = 33, - GlobalLinearId = 34, - SubgroupSize = 36, - SubgroupMaxSize = 37, - NumSubgroups = 38, - NumEnqueuedSubgroups = 39, - SubgroupId = 40, - SubgroupLocalInvocationId = 41, - VertexIndex = 42, - InstanceIndex = 43, - SubgroupEqMaskKHR = 4416, - SubgroupGeMaskKHR = 4417, - SubgroupGtMaskKHR = 4418, - SubgroupLeMaskKHR = 4419, - SubgroupLtMaskKHR = 4420, - BaseVertex = 4424, - BaseInstance = 4425, - DrawIndex = 4426, - DeviceIndex = 4438, - ViewIndex = 4440, - BaryCoordNoPerspAMD = 4992, - BaryCoordNoPerspCentroidAMD = 4993, - BaryCoordNoPerspSampleAMD = 4994, - BaryCoordSmoothAMD = 4995, - BaryCoordSmoothCentroidAMD = 4996, - BaryCoordSmoothSampleAMD = 4997, - BaryCoordPullModelAMD = 4998, - FragStencilRefEXT = 5014, - ViewportMaskNV = 5253, - SecondaryPositionNV = 5257, - SecondaryViewportMaskNV = 5258, - PositionPerViewNV = 5261, - ViewportMaskPerViewNV = 5262, - Max = 0x7fffffff, -}; - -enum class SelectionControlShift : unsigned { - Flatten = 0, - DontFlatten = 1, - Max = 0x7fffffff, -}; - -enum class SelectionControlMask : unsigned { - MaskNone = 0, - Flatten = 0x00000001, - DontFlatten = 0x00000002, -}; - -enum class LoopControlShift : unsigned { - Unroll = 0, - DontUnroll = 1, - DependencyInfinite = 2, - DependencyLength = 3, - Max = 0x7fffffff, -}; - -enum class LoopControlMask : unsigned { - MaskNone = 0, - Unroll = 0x00000001, - DontUnroll = 0x00000002, - DependencyInfinite = 0x00000004, - DependencyLength = 0x00000008, -}; - -enum class FunctionControlShift : unsigned { - Inline = 0, - DontInline = 1, - Pure = 2, - Const = 3, - Max = 0x7fffffff, -}; - -enum class FunctionControlMask : unsigned { - MaskNone = 0, - Inline = 0x00000001, - DontInline = 0x00000002, - Pure = 0x00000004, - Const = 0x00000008, -}; - -enum class MemorySemanticsShift : unsigned { - Acquire = 1, - Release = 2, - AcquireRelease = 3, - SequentiallyConsistent = 4, - UniformMemory = 6, - SubgroupMemory = 7, - WorkgroupMemory = 8, - CrossWorkgroupMemory = 9, - AtomicCounterMemory = 10, - ImageMemory = 11, - Max = 0x7fffffff, -}; - -enum class MemorySemanticsMask : unsigned { - MaskNone = 0, - Acquire = 0x00000002, - Release = 0x00000004, - AcquireRelease = 0x00000008, - SequentiallyConsistent = 0x00000010, - UniformMemory = 0x00000040, - SubgroupMemory = 0x00000080, - WorkgroupMemory = 0x00000100, - CrossWorkgroupMemory = 0x00000200, - AtomicCounterMemory = 0x00000400, - ImageMemory = 0x00000800, -}; - -enum class MemoryAccessShift : unsigned { - Volatile = 0, - Aligned = 1, - Nontemporal = 2, - Max = 0x7fffffff, -}; - -enum class MemoryAccessMask : unsigned { - MaskNone = 0, - Volatile = 0x00000001, - Aligned = 0x00000002, - Nontemporal = 0x00000004, -}; - -enum class Scope : unsigned { - CrossDevice = 0, - Device = 1, - Workgroup = 2, - Subgroup = 3, - Invocation = 4, - Max = 0x7fffffff, -}; - -enum class GroupOperation : unsigned { - Reduce = 0, - InclusiveScan = 1, - ExclusiveScan = 2, - Max = 0x7fffffff, -}; - -enum class KernelEnqueueFlags : unsigned { - NoWait = 0, - WaitKernel = 1, - WaitWorkGroup = 2, - Max = 0x7fffffff, -}; - -enum class KernelProfilingInfoShift : unsigned { - CmdExecTime = 0, - Max = 0x7fffffff, -}; - -enum class KernelProfilingInfoMask : unsigned { - MaskNone = 0, - CmdExecTime = 0x00000001, -}; - -enum class Capability : unsigned { - Matrix = 0, - Shader = 1, - Geometry = 2, - Tessellation = 3, - Addresses = 4, - Linkage = 5, - Kernel = 6, - Vector16 = 7, - Float16Buffer = 8, - Float16 = 9, - Float64 = 10, - Int64 = 11, - Int64Atomics = 12, - ImageBasic = 13, - ImageReadWrite = 14, - ImageMipmap = 15, - Pipes = 17, - Groups = 18, - DeviceEnqueue = 19, - LiteralSampler = 20, - AtomicStorage = 21, - Int16 = 22, - TessellationPointSize = 23, - GeometryPointSize = 24, - ImageGatherExtended = 25, - StorageImageMultisample = 27, - UniformBufferArrayDynamicIndexing = 28, - SampledImageArrayDynamicIndexing = 29, - StorageBufferArrayDynamicIndexing = 30, - StorageImageArrayDynamicIndexing = 31, - ClipDistance = 32, - CullDistance = 33, - ImageCubeArray = 34, - SampleRateShading = 35, - ImageRect = 36, - SampledRect = 37, - GenericPointer = 38, - Int8 = 39, - InputAttachment = 40, - SparseResidency = 41, - MinLod = 42, - Sampled1D = 43, - Image1D = 44, - SampledCubeArray = 45, - SampledBuffer = 46, - ImageBuffer = 47, - ImageMSArray = 48, - StorageImageExtendedFormats = 49, - ImageQuery = 50, - DerivativeControl = 51, - InterpolationFunction = 52, - TransformFeedback = 53, - GeometryStreams = 54, - StorageImageReadWithoutFormat = 55, - StorageImageWriteWithoutFormat = 56, - MultiViewport = 57, - SubgroupDispatch = 58, - NamedBarrier = 59, - PipeStorage = 60, - SubgroupBallotKHR = 4423, - DrawParameters = 4427, - SubgroupVoteKHR = 4431, - StorageBuffer16BitAccess = 4433, - StorageUniformBufferBlock16 = 4433, - StorageUniform16 = 4434, - UniformAndStorageBuffer16BitAccess = 4434, - StoragePushConstant16 = 4435, - StorageInputOutput16 = 4436, - DeviceGroup = 4437, - MultiView = 4439, - VariablePointersStorageBuffer = 4441, - VariablePointers = 4442, - AtomicStorageOps = 4445, - SampleMaskPostDepthCoverage = 4447, - ImageGatherBiasLodAMD = 5009, - FragmentMaskAMD = 5010, - StencilExportEXT = 5013, - ImageReadWriteLodAMD = 5015, - SampleMaskOverrideCoverageNV = 5249, - GeometryShaderPassthroughNV = 5251, - ShaderViewportIndexLayerEXT = 5254, - ShaderViewportIndexLayerNV = 5254, - ShaderViewportMaskNV = 5255, - ShaderStereoViewNV = 5259, - PerViewAttributesNV = 5260, - SubgroupShuffleINTEL = 5568, - SubgroupBufferBlockIOINTEL = 5569, - SubgroupImageBlockIOINTEL = 5570, - Max = 0x7fffffff, -}; - -enum class Op : unsigned { - OpNop = 0, - OpUndef = 1, - OpSourceContinued = 2, - OpSource = 3, - OpSourceExtension = 4, - OpName = 5, - OpMemberName = 6, - OpString = 7, - OpLine = 8, - OpExtension = 10, - OpExtInstImport = 11, - OpExtInst = 12, - OpMemoryModel = 14, - OpEntryPoint = 15, - OpExecutionMode = 16, - OpCapability = 17, - OpTypeVoid = 19, - OpTypeBool = 20, - OpTypeInt = 21, - OpTypeFloat = 22, - OpTypeVector = 23, - OpTypeMatrix = 24, - OpTypeImage = 25, - OpTypeSampler = 26, - OpTypeSampledImage = 27, - OpTypeArray = 28, - OpTypeRuntimeArray = 29, - OpTypeStruct = 30, - OpTypeOpaque = 31, - OpTypePointer = 32, - OpTypeFunction = 33, - OpTypeEvent = 34, - OpTypeDeviceEvent = 35, - OpTypeReserveId = 36, - OpTypeQueue = 37, - OpTypePipe = 38, - OpTypeForwardPointer = 39, - OpConstantTrue = 41, - OpConstantFalse = 42, - OpConstant = 43, - OpConstantComposite = 44, - OpConstantSampler = 45, - OpConstantNull = 46, - OpSpecConstantTrue = 48, - OpSpecConstantFalse = 49, - OpSpecConstant = 50, - OpSpecConstantComposite = 51, - OpSpecConstantOp = 52, - OpFunction = 54, - OpFunctionParameter = 55, - OpFunctionEnd = 56, - OpFunctionCall = 57, - OpVariable = 59, - OpImageTexelPointer = 60, - OpLoad = 61, - OpStore = 62, - OpCopyMemory = 63, - OpCopyMemorySized = 64, - OpAccessChain = 65, - OpInBoundsAccessChain = 66, - OpPtrAccessChain = 67, - OpArrayLength = 68, - OpGenericPtrMemSemantics = 69, - OpInBoundsPtrAccessChain = 70, - OpDecorate = 71, - OpMemberDecorate = 72, - OpDecorationGroup = 73, - OpGroupDecorate = 74, - OpGroupMemberDecorate = 75, - OpVectorExtractDynamic = 77, - OpVectorInsertDynamic = 78, - OpVectorShuffle = 79, - OpCompositeConstruct = 80, - OpCompositeExtract = 81, - OpCompositeInsert = 82, - OpCopyObject = 83, - OpTranspose = 84, - OpSampledImage = 86, - OpImageSampleImplicitLod = 87, - OpImageSampleExplicitLod = 88, - OpImageSampleDrefImplicitLod = 89, - OpImageSampleDrefExplicitLod = 90, - OpImageSampleProjImplicitLod = 91, - OpImageSampleProjExplicitLod = 92, - OpImageSampleProjDrefImplicitLod = 93, - OpImageSampleProjDrefExplicitLod = 94, - OpImageFetch = 95, - OpImageGather = 96, - OpImageDrefGather = 97, - OpImageRead = 98, - OpImageWrite = 99, - OpImage = 100, - OpImageQueryFormat = 101, - OpImageQueryOrder = 102, - OpImageQuerySizeLod = 103, - OpImageQuerySize = 104, - OpImageQueryLod = 105, - OpImageQueryLevels = 106, - OpImageQuerySamples = 107, - OpConvertFToU = 109, - OpConvertFToS = 110, - OpConvertSToF = 111, - OpConvertUToF = 112, - OpUConvert = 113, - OpSConvert = 114, - OpFConvert = 115, - OpQuantizeToF16 = 116, - OpConvertPtrToU = 117, - OpSatConvertSToU = 118, - OpSatConvertUToS = 119, - OpConvertUToPtr = 120, - OpPtrCastToGeneric = 121, - OpGenericCastToPtr = 122, - OpGenericCastToPtrExplicit = 123, - OpBitcast = 124, - OpSNegate = 126, - OpFNegate = 127, - OpIAdd = 128, - OpFAdd = 129, - OpISub = 130, - OpFSub = 131, - OpIMul = 132, - OpFMul = 133, - OpUDiv = 134, - OpSDiv = 135, - OpFDiv = 136, - OpUMod = 137, - OpSRem = 138, - OpSMod = 139, - OpFRem = 140, - OpFMod = 141, - OpVectorTimesScalar = 142, - OpMatrixTimesScalar = 143, - OpVectorTimesMatrix = 144, - OpMatrixTimesVector = 145, - OpMatrixTimesMatrix = 146, - OpOuterProduct = 147, - OpDot = 148, - OpIAddCarry = 149, - OpISubBorrow = 150, - OpUMulExtended = 151, - OpSMulExtended = 152, - OpAny = 154, - OpAll = 155, - OpIsNan = 156, - OpIsInf = 157, - OpIsFinite = 158, - OpIsNormal = 159, - OpSignBitSet = 160, - OpLessOrGreater = 161, - OpOrdered = 162, - OpUnordered = 163, - OpLogicalEqual = 164, - OpLogicalNotEqual = 165, - OpLogicalOr = 166, - OpLogicalAnd = 167, - OpLogicalNot = 168, - OpSelect = 169, - OpIEqual = 170, - OpINotEqual = 171, - OpUGreaterThan = 172, - OpSGreaterThan = 173, - OpUGreaterThanEqual = 174, - OpSGreaterThanEqual = 175, - OpULessThan = 176, - OpSLessThan = 177, - OpULessThanEqual = 178, - OpSLessThanEqual = 179, - OpFOrdEqual = 180, - OpFUnordEqual = 181, - OpFOrdNotEqual = 182, - OpFUnordNotEqual = 183, - OpFOrdLessThan = 184, - OpFUnordLessThan = 185, - OpFOrdGreaterThan = 186, - OpFUnordGreaterThan = 187, - OpFOrdLessThanEqual = 188, - OpFUnordLessThanEqual = 189, - OpFOrdGreaterThanEqual = 190, - OpFUnordGreaterThanEqual = 191, - OpShiftRightLogical = 194, - OpShiftRightArithmetic = 195, - OpShiftLeftLogical = 196, - OpBitwiseOr = 197, - OpBitwiseXor = 198, - OpBitwiseAnd = 199, - OpNot = 200, - OpBitFieldInsert = 201, - OpBitFieldSExtract = 202, - OpBitFieldUExtract = 203, - OpBitReverse = 204, - OpBitCount = 205, - OpDPdx = 207, - OpDPdy = 208, - OpFwidth = 209, - OpDPdxFine = 210, - OpDPdyFine = 211, - OpFwidthFine = 212, - OpDPdxCoarse = 213, - OpDPdyCoarse = 214, - OpFwidthCoarse = 215, - OpEmitVertex = 218, - OpEndPrimitive = 219, - OpEmitStreamVertex = 220, - OpEndStreamPrimitive = 221, - OpControlBarrier = 224, - OpMemoryBarrier = 225, - OpAtomicLoad = 227, - OpAtomicStore = 228, - OpAtomicExchange = 229, - OpAtomicCompareExchange = 230, - OpAtomicCompareExchangeWeak = 231, - OpAtomicIIncrement = 232, - OpAtomicIDecrement = 233, - OpAtomicIAdd = 234, - OpAtomicISub = 235, - OpAtomicSMin = 236, - OpAtomicUMin = 237, - OpAtomicSMax = 238, - OpAtomicUMax = 239, - OpAtomicAnd = 240, - OpAtomicOr = 241, - OpAtomicXor = 242, - OpPhi = 245, - OpLoopMerge = 246, - OpSelectionMerge = 247, - OpLabel = 248, - OpBranch = 249, - OpBranchConditional = 250, - OpSwitch = 251, - OpKill = 252, - OpReturn = 253, - OpReturnValue = 254, - OpUnreachable = 255, - OpLifetimeStart = 256, - OpLifetimeStop = 257, - OpGroupAsyncCopy = 259, - OpGroupWaitEvents = 260, - OpGroupAll = 261, - OpGroupAny = 262, - OpGroupBroadcast = 263, - OpGroupIAdd = 264, - OpGroupFAdd = 265, - OpGroupFMin = 266, - OpGroupUMin = 267, - OpGroupSMin = 268, - OpGroupFMax = 269, - OpGroupUMax = 270, - OpGroupSMax = 271, - OpReadPipe = 274, - OpWritePipe = 275, - OpReservedReadPipe = 276, - OpReservedWritePipe = 277, - OpReserveReadPipePackets = 278, - OpReserveWritePipePackets = 279, - OpCommitReadPipe = 280, - OpCommitWritePipe = 281, - OpIsValidReserveId = 282, - OpGetNumPipePackets = 283, - OpGetMaxPipePackets = 284, - OpGroupReserveReadPipePackets = 285, - OpGroupReserveWritePipePackets = 286, - OpGroupCommitReadPipe = 287, - OpGroupCommitWritePipe = 288, - OpEnqueueMarker = 291, - OpEnqueueKernel = 292, - OpGetKernelNDrangeSubGroupCount = 293, - OpGetKernelNDrangeMaxSubGroupSize = 294, - OpGetKernelWorkGroupSize = 295, - OpGetKernelPreferredWorkGroupSizeMultiple = 296, - OpRetainEvent = 297, - OpReleaseEvent = 298, - OpCreateUserEvent = 299, - OpIsValidEvent = 300, - OpSetUserEventStatus = 301, - OpCaptureEventProfilingInfo = 302, - OpGetDefaultQueue = 303, - OpBuildNDRange = 304, - OpImageSparseSampleImplicitLod = 305, - OpImageSparseSampleExplicitLod = 306, - OpImageSparseSampleDrefImplicitLod = 307, - OpImageSparseSampleDrefExplicitLod = 308, - OpImageSparseSampleProjImplicitLod = 309, - OpImageSparseSampleProjExplicitLod = 310, - OpImageSparseSampleProjDrefImplicitLod = 311, - OpImageSparseSampleProjDrefExplicitLod = 312, - OpImageSparseFetch = 313, - OpImageSparseGather = 314, - OpImageSparseDrefGather = 315, - OpImageSparseTexelsResident = 316, - OpNoLine = 317, - OpAtomicFlagTestAndSet = 318, - OpAtomicFlagClear = 319, - OpImageSparseRead = 320, - OpSizeOf = 321, - OpTypePipeStorage = 322, - OpConstantPipeStorage = 323, - OpCreatePipeFromPipeStorage = 324, - OpGetKernelLocalSizeForSubgroupCount = 325, - OpGetKernelMaxNumSubgroups = 326, - OpTypeNamedBarrier = 327, - OpNamedBarrierInitialize = 328, - OpMemoryNamedBarrier = 329, - OpModuleProcessed = 330, - OpDecorateId = 332, - OpSubgroupBallotKHR = 4421, - OpSubgroupFirstInvocationKHR = 4422, - OpSubgroupAllKHR = 4428, - OpSubgroupAnyKHR = 4429, - OpSubgroupAllEqualKHR = 4430, - OpSubgroupReadInvocationKHR = 4432, - OpGroupIAddNonUniformAMD = 5000, - OpGroupFAddNonUniformAMD = 5001, - OpGroupFMinNonUniformAMD = 5002, - OpGroupUMinNonUniformAMD = 5003, - OpGroupSMinNonUniformAMD = 5004, - OpGroupFMaxNonUniformAMD = 5005, - OpGroupUMaxNonUniformAMD = 5006, - OpGroupSMaxNonUniformAMD = 5007, - OpFragmentMaskFetchAMD = 5011, - OpFragmentFetchAMD = 5012, - OpSubgroupShuffleINTEL = 5571, - OpSubgroupShuffleDownINTEL = 5572, - OpSubgroupShuffleUpINTEL = 5573, - OpSubgroupShuffleXorINTEL = 5574, - OpSubgroupBlockReadINTEL = 5575, - OpSubgroupBlockWriteINTEL = 5576, - OpSubgroupImageBlockReadINTEL = 5577, - OpSubgroupImageBlockWriteINTEL = 5578, - OpDecorateStringGOOGLE = 5632, - OpMemberDecorateStringGOOGLE = 5633, - Max = 0x7fffffff, -}; - -// Overload operator| for mask bit combining - -inline ImageOperandsMask operator|(ImageOperandsMask a, ImageOperandsMask b) { return ImageOperandsMask(unsigned(a) | unsigned(b)); } -inline FPFastMathModeMask operator|(FPFastMathModeMask a, FPFastMathModeMask b) { return FPFastMathModeMask(unsigned(a) | unsigned(b)); } -inline SelectionControlMask operator|(SelectionControlMask a, SelectionControlMask b) { return SelectionControlMask(unsigned(a) | unsigned(b)); } -inline LoopControlMask operator|(LoopControlMask a, LoopControlMask b) { return LoopControlMask(unsigned(a) | unsigned(b)); } -inline FunctionControlMask operator|(FunctionControlMask a, FunctionControlMask b) { return FunctionControlMask(unsigned(a) | unsigned(b)); } -inline MemorySemanticsMask operator|(MemorySemanticsMask a, MemorySemanticsMask b) { return MemorySemanticsMask(unsigned(a) | unsigned(b)); } -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)); } - -} // end namespace spv - -#endif // #ifndef spirv_HPP - diff --git a/Extern/3rdParty/shaderc/shaderc/include/spirv/1.1/spirv.json b/Extern/3rdParty/shaderc/shaderc/include/spirv/1.1/spirv.json deleted file mode 100644 index 4c18e01..0000000 --- a/Extern/3rdParty/shaderc/shaderc/include/spirv/1.1/spirv.json +++ /dev/null @@ -1,1040 +0,0 @@ -{ - "spv": - { - "meta": - { - "Comment": - [ - [ - "Copyright (c) 2014-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." - ], - [ - "This header is automatically generated by the same tool that creates", - "the Binary Section of the SPIR-V specification." - ], - [ - "Enumeration tokens for SPIR-V, in various styles:", - " C, C++, C++11, JSON, Lua, Python", - "", - "- C will have tokens with a \"Spv\" prefix, e.g.: SpvSourceLanguageGLSL", - "- C++ will have tokens in the \"spv\" name space, e.g.: spv::SourceLanguageGLSL", - "- C++11 will use enum classes in the spv namespace, e.g.: spv::SourceLanguage::GLSL", - "- Lua will use tables, e.g.: spv.SourceLanguage.GLSL", - "- Python will use dictionaries, e.g.: spv['SourceLanguage']['GLSL']", - "", - "Some tokens act like mask values, which can be OR'd together,", - "while others are mutually exclusive. The mask-like ones have", - "\"Mask\" in their name, and a parallel enum that has the shift", - "amount (1 << x) for each corresponding enumerant." - ] - ], - "MagicNumber": 119734787, - "Version": 65792, - "Revision": 8, - "OpCodeMask": 65535, - "WordCountShift": 16 - }, - "enum": - [ - { - "Name": "SourceLanguage", - "Type": "Value", - "Values": - { - "Unknown": 0, - "ESSL": 1, - "GLSL": 2, - "OpenCL_C": 3, - "OpenCL_CPP": 4, - "HLSL": 5 - } - }, - { - "Name": "ExecutionModel", - "Type": "Value", - "Values": - { - "Vertex": 0, - "TessellationControl": 1, - "TessellationEvaluation": 2, - "Geometry": 3, - "Fragment": 4, - "GLCompute": 5, - "Kernel": 6 - } - }, - { - "Name": "AddressingModel", - "Type": "Value", - "Values": - { - "Logical": 0, - "Physical32": 1, - "Physical64": 2 - } - }, - { - "Name": "MemoryModel", - "Type": "Value", - "Values": - { - "Simple": 0, - "GLSL450": 1, - "OpenCL": 2 - } - }, - { - "Name": "ExecutionMode", - "Type": "Value", - "Values": - { - "Invocations": 0, - "SpacingEqual": 1, - "SpacingFractionalEven": 2, - "SpacingFractionalOdd": 3, - "VertexOrderCw": 4, - "VertexOrderCcw": 5, - "PixelCenterInteger": 6, - "OriginUpperLeft": 7, - "OriginLowerLeft": 8, - "EarlyFragmentTests": 9, - "PointMode": 10, - "Xfb": 11, - "DepthReplacing": 12, - "DepthGreater": 14, - "DepthLess": 15, - "DepthUnchanged": 16, - "LocalSize": 17, - "LocalSizeHint": 18, - "InputPoints": 19, - "InputLines": 20, - "InputLinesAdjacency": 21, - "Triangles": 22, - "InputTrianglesAdjacency": 23, - "Quads": 24, - "Isolines": 25, - "OutputVertices": 26, - "OutputPoints": 27, - "OutputLineStrip": 28, - "OutputTriangleStrip": 29, - "VecTypeHint": 30, - "ContractionOff": 31, - "Initializer": 33, - "Finalizer": 34, - "SubgroupSize": 35, - "SubgroupsPerWorkgroup": 36, - "PostDepthCoverage": 4446, - "StencilRefReplacingEXT": 5027 - } - }, - { - "Name": "StorageClass", - "Type": "Value", - "Values": - { - "UniformConstant": 0, - "Input": 1, - "Uniform": 2, - "Output": 3, - "Workgroup": 4, - "CrossWorkgroup": 5, - "Private": 6, - "Function": 7, - "Generic": 8, - "PushConstant": 9, - "AtomicCounter": 10, - "Image": 11, - "StorageBuffer": 12 - } - }, - { - "Name": "Dim", - "Type": "Value", - "Values": - { - "Dim1D": 0, - "Dim2D": 1, - "Dim3D": 2, - "Cube": 3, - "Rect": 4, - "Buffer": 5, - "SubpassData": 6 - } - }, - { - "Name": "SamplerAddressingMode", - "Type": "Value", - "Values": - { - "None": 0, - "ClampToEdge": 1, - "Clamp": 2, - "Repeat": 3, - "RepeatMirrored": 4 - } - }, - { - "Name": "SamplerFilterMode", - "Type": "Value", - "Values": - { - "Nearest": 0, - "Linear": 1 - } - }, - { - "Name": "ImageFormat", - "Type": "Value", - "Values": - { - "Unknown": 0, - "Rgba32f": 1, - "Rgba16f": 2, - "R32f": 3, - "Rgba8": 4, - "Rgba8Snorm": 5, - "Rg32f": 6, - "Rg16f": 7, - "R11fG11fB10f": 8, - "R16f": 9, - "Rgba16": 10, - "Rgb10A2": 11, - "Rg16": 12, - "Rg8": 13, - "R16": 14, - "R8": 15, - "Rgba16Snorm": 16, - "Rg16Snorm": 17, - "Rg8Snorm": 18, - "R16Snorm": 19, - "R8Snorm": 20, - "Rgba32i": 21, - "Rgba16i": 22, - "Rgba8i": 23, - "R32i": 24, - "Rg32i": 25, - "Rg16i": 26, - "Rg8i": 27, - "R16i": 28, - "R8i": 29, - "Rgba32ui": 30, - "Rgba16ui": 31, - "Rgba8ui": 32, - "R32ui": 33, - "Rgb10a2ui": 34, - "Rg32ui": 35, - "Rg16ui": 36, - "Rg8ui": 37, - "R16ui": 38, - "R8ui": 39 - } - }, - { - "Name": "ImageChannelOrder", - "Type": "Value", - "Values": - { - "R": 0, - "A": 1, - "RG": 2, - "RA": 3, - "RGB": 4, - "RGBA": 5, - "BGRA": 6, - "ARGB": 7, - "Intensity": 8, - "Luminance": 9, - "Rx": 10, - "RGx": 11, - "RGBx": 12, - "Depth": 13, - "DepthStencil": 14, - "sRGB": 15, - "sRGBx": 16, - "sRGBA": 17, - "sBGRA": 18, - "ABGR": 19 - } - }, - { - "Name": "ImageChannelDataType", - "Type": "Value", - "Values": - { - "SnormInt8": 0, - "SnormInt16": 1, - "UnormInt8": 2, - "UnormInt16": 3, - "UnormShort565": 4, - "UnormShort555": 5, - "UnormInt101010": 6, - "SignedInt8": 7, - "SignedInt16": 8, - "SignedInt32": 9, - "UnsignedInt8": 10, - "UnsignedInt16": 11, - "UnsignedInt32": 12, - "HalfFloat": 13, - "Float": 14, - "UnormInt24": 15, - "UnormInt101010_2": 16 - } - }, - { - "Name": "ImageOperands", - "Type": "Bit", - "Values": - { - "Bias": 0, - "Lod": 1, - "Grad": 2, - "ConstOffset": 3, - "Offset": 4, - "ConstOffsets": 5, - "Sample": 6, - "MinLod": 7 - } - }, - { - "Name": "FPFastMathMode", - "Type": "Bit", - "Values": - { - "NotNaN": 0, - "NotInf": 1, - "NSZ": 2, - "AllowRecip": 3, - "Fast": 4 - } - }, - { - "Name": "FPRoundingMode", - "Type": "Value", - "Values": - { - "RTE": 0, - "RTZ": 1, - "RTP": 2, - "RTN": 3 - } - }, - { - "Name": "LinkageType", - "Type": "Value", - "Values": - { - "Export": 0, - "Import": 1 - } - }, - { - "Name": "AccessQualifier", - "Type": "Value", - "Values": - { - "ReadOnly": 0, - "WriteOnly": 1, - "ReadWrite": 2 - } - }, - { - "Name": "FunctionParameterAttribute", - "Type": "Value", - "Values": - { - "Zext": 0, - "Sext": 1, - "ByVal": 2, - "Sret": 3, - "NoAlias": 4, - "NoCapture": 5, - "NoWrite": 6, - "NoReadWrite": 7 - } - }, - { - "Name": "Decoration", - "Type": "Value", - "Values": - { - "RelaxedPrecision": 0, - "SpecId": 1, - "Block": 2, - "BufferBlock": 3, - "RowMajor": 4, - "ColMajor": 5, - "ArrayStride": 6, - "MatrixStride": 7, - "GLSLShared": 8, - "GLSLPacked": 9, - "CPacked": 10, - "BuiltIn": 11, - "NoPerspective": 13, - "Flat": 14, - "Patch": 15, - "Centroid": 16, - "Sample": 17, - "Invariant": 18, - "Restrict": 19, - "Aliased": 20, - "Volatile": 21, - "Constant": 22, - "Coherent": 23, - "NonWritable": 24, - "NonReadable": 25, - "Uniform": 26, - "SaturatedConversion": 28, - "Stream": 29, - "Location": 30, - "Component": 31, - "Index": 32, - "Binding": 33, - "DescriptorSet": 34, - "Offset": 35, - "XfbBuffer": 36, - "XfbStride": 37, - "FuncParamAttr": 38, - "FPRoundingMode": 39, - "FPFastMathMode": 40, - "LinkageAttributes": 41, - "NoContraction": 42, - "InputAttachmentIndex": 43, - "Alignment": 44, - "MaxByteOffset": 45, - "ExplicitInterpAMD": 4999, - "OverrideCoverageNV": 5248, - "PassthroughNV": 5250, - "ViewportRelativeNV": 5252, - "SecondaryViewportRelativeNV": 5256, - "HlslCounterBufferGOOGLE": 5634, - "HlslSemanticGOOGLE": 5635 - } - }, - { - "Name": "BuiltIn", - "Type": "Value", - "Values": - { - "Position": 0, - "PointSize": 1, - "ClipDistance": 3, - "CullDistance": 4, - "VertexId": 5, - "InstanceId": 6, - "PrimitiveId": 7, - "InvocationId": 8, - "Layer": 9, - "ViewportIndex": 10, - "TessLevelOuter": 11, - "TessLevelInner": 12, - "TessCoord": 13, - "PatchVertices": 14, - "FragCoord": 15, - "PointCoord": 16, - "FrontFacing": 17, - "SampleId": 18, - "SamplePosition": 19, - "SampleMask": 20, - "FragDepth": 22, - "HelperInvocation": 23, - "NumWorkgroups": 24, - "WorkgroupSize": 25, - "WorkgroupId": 26, - "LocalInvocationId": 27, - "GlobalInvocationId": 28, - "LocalInvocationIndex": 29, - "WorkDim": 30, - "GlobalSize": 31, - "EnqueuedWorkgroupSize": 32, - "GlobalOffset": 33, - "GlobalLinearId": 34, - "SubgroupSize": 36, - "SubgroupMaxSize": 37, - "NumSubgroups": 38, - "NumEnqueuedSubgroups": 39, - "SubgroupId": 40, - "SubgroupLocalInvocationId": 41, - "VertexIndex": 42, - "InstanceIndex": 43, - "SubgroupEqMaskKHR": 4416, - "SubgroupGeMaskKHR": 4417, - "SubgroupGtMaskKHR": 4418, - "SubgroupLeMaskKHR": 4419, - "SubgroupLtMaskKHR": 4420, - "BaseVertex": 4424, - "BaseInstance": 4425, - "DrawIndex": 4426, - "DeviceIndex": 4438, - "ViewIndex": 4440, - "BaryCoordNoPerspAMD": 4992, - "BaryCoordNoPerspCentroidAMD": 4993, - "BaryCoordNoPerspSampleAMD": 4994, - "BaryCoordSmoothAMD": 4995, - "BaryCoordSmoothCentroidAMD": 4996, - "BaryCoordSmoothSampleAMD": 4997, - "BaryCoordPullModelAMD": 4998, - "FragStencilRefEXT": 5014, - "ViewportMaskNV": 5253, - "SecondaryPositionNV": 5257, - "SecondaryViewportMaskNV": 5258, - "PositionPerViewNV": 5261, - "ViewportMaskPerViewNV": 5262 - } - }, - { - "Name": "SelectionControl", - "Type": "Bit", - "Values": - { - "Flatten": 0, - "DontFlatten": 1 - } - }, - { - "Name": "LoopControl", - "Type": "Bit", - "Values": - { - "Unroll": 0, - "DontUnroll": 1, - "DependencyInfinite": 2, - "DependencyLength": 3 - } - }, - { - "Name": "FunctionControl", - "Type": "Bit", - "Values": - { - "Inline": 0, - "DontInline": 1, - "Pure": 2, - "Const": 3 - } - }, - { - "Name": "MemorySemantics", - "Type": "Bit", - "Values": - { - "Acquire": 1, - "Release": 2, - "AcquireRelease": 3, - "SequentiallyConsistent": 4, - "UniformMemory": 6, - "SubgroupMemory": 7, - "WorkgroupMemory": 8, - "CrossWorkgroupMemory": 9, - "AtomicCounterMemory": 10, - "ImageMemory": 11 - } - }, - { - "Name": "MemoryAccess", - "Type": "Bit", - "Values": - { - "Volatile": 0, - "Aligned": 1, - "Nontemporal": 2 - } - }, - { - "Name": "Scope", - "Type": "Value", - "Values": - { - "CrossDevice": 0, - "Device": 1, - "Workgroup": 2, - "Subgroup": 3, - "Invocation": 4 - } - }, - { - "Name": "GroupOperation", - "Type": "Value", - "Values": - { - "Reduce": 0, - "InclusiveScan": 1, - "ExclusiveScan": 2 - } - }, - { - "Name": "KernelEnqueueFlags", - "Type": "Value", - "Values": - { - "NoWait": 0, - "WaitKernel": 1, - "WaitWorkGroup": 2 - } - }, - { - "Name": "KernelProfilingInfo", - "Type": "Bit", - "Values": - { - "CmdExecTime": 0 - } - }, - { - "Name": "Capability", - "Type": "Value", - "Values": - { - "Matrix": 0, - "Shader": 1, - "Geometry": 2, - "Tessellation": 3, - "Addresses": 4, - "Linkage": 5, - "Kernel": 6, - "Vector16": 7, - "Float16Buffer": 8, - "Float16": 9, - "Float64": 10, - "Int64": 11, - "Int64Atomics": 12, - "ImageBasic": 13, - "ImageReadWrite": 14, - "ImageMipmap": 15, - "Pipes": 17, - "Groups": 18, - "DeviceEnqueue": 19, - "LiteralSampler": 20, - "AtomicStorage": 21, - "Int16": 22, - "TessellationPointSize": 23, - "GeometryPointSize": 24, - "ImageGatherExtended": 25, - "StorageImageMultisample": 27, - "UniformBufferArrayDynamicIndexing": 28, - "SampledImageArrayDynamicIndexing": 29, - "StorageBufferArrayDynamicIndexing": 30, - "StorageImageArrayDynamicIndexing": 31, - "ClipDistance": 32, - "CullDistance": 33, - "ImageCubeArray": 34, - "SampleRateShading": 35, - "ImageRect": 36, - "SampledRect": 37, - "GenericPointer": 38, - "Int8": 39, - "InputAttachment": 40, - "SparseResidency": 41, - "MinLod": 42, - "Sampled1D": 43, - "Image1D": 44, - "SampledCubeArray": 45, - "SampledBuffer": 46, - "ImageBuffer": 47, - "ImageMSArray": 48, - "StorageImageExtendedFormats": 49, - "ImageQuery": 50, - "DerivativeControl": 51, - "InterpolationFunction": 52, - "TransformFeedback": 53, - "GeometryStreams": 54, - "StorageImageReadWithoutFormat": 55, - "StorageImageWriteWithoutFormat": 56, - "MultiViewport": 57, - "SubgroupDispatch": 58, - "NamedBarrier": 59, - "PipeStorage": 60, - "SubgroupBallotKHR": 4423, - "DrawParameters": 4427, - "SubgroupVoteKHR": 4431, - "StorageBuffer16BitAccess": 4433, - "StorageUniformBufferBlock16": 4433, - "StorageUniform16": 4434, - "UniformAndStorageBuffer16BitAccess": 4434, - "StoragePushConstant16": 4435, - "StorageInputOutput16": 4436, - "DeviceGroup": 4437, - "MultiView": 4439, - "VariablePointersStorageBuffer": 4441, - "VariablePointers": 4442, - "AtomicStorageOps": 4445, - "SampleMaskPostDepthCoverage": 4447, - "ImageGatherBiasLodAMD": 5009, - "FragmentMaskAMD": 5010, - "StencilExportEXT": 5013, - "ImageReadWriteLodAMD": 5015, - "SampleMaskOverrideCoverageNV": 5249, - "GeometryShaderPassthroughNV": 5251, - "ShaderViewportIndexLayerEXT": 5254, - "ShaderViewportIndexLayerNV": 5254, - "ShaderViewportMaskNV": 5255, - "ShaderStereoViewNV": 5259, - "PerViewAttributesNV": 5260, - "SubgroupShuffleINTEL": 5568, - "SubgroupBufferBlockIOINTEL": 5569, - "SubgroupImageBlockIOINTEL": 5570 - } - }, - { - "Name": "Op", - "Type": "Value", - "Values": - { - "OpNop": 0, - "OpUndef": 1, - "OpSourceContinued": 2, - "OpSource": 3, - "OpSourceExtension": 4, - "OpName": 5, - "OpMemberName": 6, - "OpString": 7, - "OpLine": 8, - "OpExtension": 10, - "OpExtInstImport": 11, - "OpExtInst": 12, - "OpMemoryModel": 14, - "OpEntryPoint": 15, - "OpExecutionMode": 16, - "OpCapability": 17, - "OpTypeVoid": 19, - "OpTypeBool": 20, - "OpTypeInt": 21, - "OpTypeFloat": 22, - "OpTypeVector": 23, - "OpTypeMatrix": 24, - "OpTypeImage": 25, - "OpTypeSampler": 26, - "OpTypeSampledImage": 27, - "OpTypeArray": 28, - "OpTypeRuntimeArray": 29, - "OpTypeStruct": 30, - "OpTypeOpaque": 31, - "OpTypePointer": 32, - "OpTypeFunction": 33, - "OpTypeEvent": 34, - "OpTypeDeviceEvent": 35, - "OpTypeReserveId": 36, - "OpTypeQueue": 37, - "OpTypePipe": 38, - "OpTypeForwardPointer": 39, - "OpConstantTrue": 41, - "OpConstantFalse": 42, - "OpConstant": 43, - "OpConstantComposite": 44, - "OpConstantSampler": 45, - "OpConstantNull": 46, - "OpSpecConstantTrue": 48, - "OpSpecConstantFalse": 49, - "OpSpecConstant": 50, - "OpSpecConstantComposite": 51, - "OpSpecConstantOp": 52, - "OpFunction": 54, - "OpFunctionParameter": 55, - "OpFunctionEnd": 56, - "OpFunctionCall": 57, - "OpVariable": 59, - "OpImageTexelPointer": 60, - "OpLoad": 61, - "OpStore": 62, - "OpCopyMemory": 63, - "OpCopyMemorySized": 64, - "OpAccessChain": 65, - "OpInBoundsAccessChain": 66, - "OpPtrAccessChain": 67, - "OpArrayLength": 68, - "OpGenericPtrMemSemantics": 69, - "OpInBoundsPtrAccessChain": 70, - "OpDecorate": 71, - "OpMemberDecorate": 72, - "OpDecorationGroup": 73, - "OpGroupDecorate": 74, - "OpGroupMemberDecorate": 75, - "OpVectorExtractDynamic": 77, - "OpVectorInsertDynamic": 78, - "OpVectorShuffle": 79, - "OpCompositeConstruct": 80, - "OpCompositeExtract": 81, - "OpCompositeInsert": 82, - "OpCopyObject": 83, - "OpTranspose": 84, - "OpSampledImage": 86, - "OpImageSampleImplicitLod": 87, - "OpImageSampleExplicitLod": 88, - "OpImageSampleDrefImplicitLod": 89, - "OpImageSampleDrefExplicitLod": 90, - "OpImageSampleProjImplicitLod": 91, - "OpImageSampleProjExplicitLod": 92, - "OpImageSampleProjDrefImplicitLod": 93, - "OpImageSampleProjDrefExplicitLod": 94, - "OpImageFetch": 95, - "OpImageGather": 96, - "OpImageDrefGather": 97, - "OpImageRead": 98, - "OpImageWrite": 99, - "OpImage": 100, - "OpImageQueryFormat": 101, - "OpImageQueryOrder": 102, - "OpImageQuerySizeLod": 103, - "OpImageQuerySize": 104, - "OpImageQueryLod": 105, - "OpImageQueryLevels": 106, - "OpImageQuerySamples": 107, - "OpConvertFToU": 109, - "OpConvertFToS": 110, - "OpConvertSToF": 111, - "OpConvertUToF": 112, - "OpUConvert": 113, - "OpSConvert": 114, - "OpFConvert": 115, - "OpQuantizeToF16": 116, - "OpConvertPtrToU": 117, - "OpSatConvertSToU": 118, - "OpSatConvertUToS": 119, - "OpConvertUToPtr": 120, - "OpPtrCastToGeneric": 121, - "OpGenericCastToPtr": 122, - "OpGenericCastToPtrExplicit": 123, - "OpBitcast": 124, - "OpSNegate": 126, - "OpFNegate": 127, - "OpIAdd": 128, - "OpFAdd": 129, - "OpISub": 130, - "OpFSub": 131, - "OpIMul": 132, - "OpFMul": 133, - "OpUDiv": 134, - "OpSDiv": 135, - "OpFDiv": 136, - "OpUMod": 137, - "OpSRem": 138, - "OpSMod": 139, - "OpFRem": 140, - "OpFMod": 141, - "OpVectorTimesScalar": 142, - "OpMatrixTimesScalar": 143, - "OpVectorTimesMatrix": 144, - "OpMatrixTimesVector": 145, - "OpMatrixTimesMatrix": 146, - "OpOuterProduct": 147, - "OpDot": 148, - "OpIAddCarry": 149, - "OpISubBorrow": 150, - "OpUMulExtended": 151, - "OpSMulExtended": 152, - "OpAny": 154, - "OpAll": 155, - "OpIsNan": 156, - "OpIsInf": 157, - "OpIsFinite": 158, - "OpIsNormal": 159, - "OpSignBitSet": 160, - "OpLessOrGreater": 161, - "OpOrdered": 162, - "OpUnordered": 163, - "OpLogicalEqual": 164, - "OpLogicalNotEqual": 165, - "OpLogicalOr": 166, - "OpLogicalAnd": 167, - "OpLogicalNot": 168, - "OpSelect": 169, - "OpIEqual": 170, - "OpINotEqual": 171, - "OpUGreaterThan": 172, - "OpSGreaterThan": 173, - "OpUGreaterThanEqual": 174, - "OpSGreaterThanEqual": 175, - "OpULessThan": 176, - "OpSLessThan": 177, - "OpULessThanEqual": 178, - "OpSLessThanEqual": 179, - "OpFOrdEqual": 180, - "OpFUnordEqual": 181, - "OpFOrdNotEqual": 182, - "OpFUnordNotEqual": 183, - "OpFOrdLessThan": 184, - "OpFUnordLessThan": 185, - "OpFOrdGreaterThan": 186, - "OpFUnordGreaterThan": 187, - "OpFOrdLessThanEqual": 188, - "OpFUnordLessThanEqual": 189, - "OpFOrdGreaterThanEqual": 190, - "OpFUnordGreaterThanEqual": 191, - "OpShiftRightLogical": 194, - "OpShiftRightArithmetic": 195, - "OpShiftLeftLogical": 196, - "OpBitwiseOr": 197, - "OpBitwiseXor": 198, - "OpBitwiseAnd": 199, - "OpNot": 200, - "OpBitFieldInsert": 201, - "OpBitFieldSExtract": 202, - "OpBitFieldUExtract": 203, - "OpBitReverse": 204, - "OpBitCount": 205, - "OpDPdx": 207, - "OpDPdy": 208, - "OpFwidth": 209, - "OpDPdxFine": 210, - "OpDPdyFine": 211, - "OpFwidthFine": 212, - "OpDPdxCoarse": 213, - "OpDPdyCoarse": 214, - "OpFwidthCoarse": 215, - "OpEmitVertex": 218, - "OpEndPrimitive": 219, - "OpEmitStreamVertex": 220, - "OpEndStreamPrimitive": 221, - "OpControlBarrier": 224, - "OpMemoryBarrier": 225, - "OpAtomicLoad": 227, - "OpAtomicStore": 228, - "OpAtomicExchange": 229, - "OpAtomicCompareExchange": 230, - "OpAtomicCompareExchangeWeak": 231, - "OpAtomicIIncrement": 232, - "OpAtomicIDecrement": 233, - "OpAtomicIAdd": 234, - "OpAtomicISub": 235, - "OpAtomicSMin": 236, - "OpAtomicUMin": 237, - "OpAtomicSMax": 238, - "OpAtomicUMax": 239, - "OpAtomicAnd": 240, - "OpAtomicOr": 241, - "OpAtomicXor": 242, - "OpPhi": 245, - "OpLoopMerge": 246, - "OpSelectionMerge": 247, - "OpLabel": 248, - "OpBranch": 249, - "OpBranchConditional": 250, - "OpSwitch": 251, - "OpKill": 252, - "OpReturn": 253, - "OpReturnValue": 254, - "OpUnreachable": 255, - "OpLifetimeStart": 256, - "OpLifetimeStop": 257, - "OpGroupAsyncCopy": 259, - "OpGroupWaitEvents": 260, - "OpGroupAll": 261, - "OpGroupAny": 262, - "OpGroupBroadcast": 263, - "OpGroupIAdd": 264, - "OpGroupFAdd": 265, - "OpGroupFMin": 266, - "OpGroupUMin": 267, - "OpGroupSMin": 268, - "OpGroupFMax": 269, - "OpGroupUMax": 270, - "OpGroupSMax": 271, - "OpReadPipe": 274, - "OpWritePipe": 275, - "OpReservedReadPipe": 276, - "OpReservedWritePipe": 277, - "OpReserveReadPipePackets": 278, - "OpReserveWritePipePackets": 279, - "OpCommitReadPipe": 280, - "OpCommitWritePipe": 281, - "OpIsValidReserveId": 282, - "OpGetNumPipePackets": 283, - "OpGetMaxPipePackets": 284, - "OpGroupReserveReadPipePackets": 285, - "OpGroupReserveWritePipePackets": 286, - "OpGroupCommitReadPipe": 287, - "OpGroupCommitWritePipe": 288, - "OpEnqueueMarker": 291, - "OpEnqueueKernel": 292, - "OpGetKernelNDrangeSubGroupCount": 293, - "OpGetKernelNDrangeMaxSubGroupSize": 294, - "OpGetKernelWorkGroupSize": 295, - "OpGetKernelPreferredWorkGroupSizeMultiple": 296, - "OpRetainEvent": 297, - "OpReleaseEvent": 298, - "OpCreateUserEvent": 299, - "OpIsValidEvent": 300, - "OpSetUserEventStatus": 301, - "OpCaptureEventProfilingInfo": 302, - "OpGetDefaultQueue": 303, - "OpBuildNDRange": 304, - "OpImageSparseSampleImplicitLod": 305, - "OpImageSparseSampleExplicitLod": 306, - "OpImageSparseSampleDrefImplicitLod": 307, - "OpImageSparseSampleDrefExplicitLod": 308, - "OpImageSparseSampleProjImplicitLod": 309, - "OpImageSparseSampleProjExplicitLod": 310, - "OpImageSparseSampleProjDrefImplicitLod": 311, - "OpImageSparseSampleProjDrefExplicitLod": 312, - "OpImageSparseFetch": 313, - "OpImageSparseGather": 314, - "OpImageSparseDrefGather": 315, - "OpImageSparseTexelsResident": 316, - "OpNoLine": 317, - "OpAtomicFlagTestAndSet": 318, - "OpAtomicFlagClear": 319, - "OpImageSparseRead": 320, - "OpSizeOf": 321, - "OpTypePipeStorage": 322, - "OpConstantPipeStorage": 323, - "OpCreatePipeFromPipeStorage": 324, - "OpGetKernelLocalSizeForSubgroupCount": 325, - "OpGetKernelMaxNumSubgroups": 326, - "OpTypeNamedBarrier": 327, - "OpNamedBarrierInitialize": 328, - "OpMemoryNamedBarrier": 329, - "OpModuleProcessed": 330, - "OpDecorateId": 332, - "OpSubgroupBallotKHR": 4421, - "OpSubgroupFirstInvocationKHR": 4422, - "OpSubgroupAllKHR": 4428, - "OpSubgroupAnyKHR": 4429, - "OpSubgroupAllEqualKHR": 4430, - "OpSubgroupReadInvocationKHR": 4432, - "OpGroupIAddNonUniformAMD": 5000, - "OpGroupFAddNonUniformAMD": 5001, - "OpGroupFMinNonUniformAMD": 5002, - "OpGroupUMinNonUniformAMD": 5003, - "OpGroupSMinNonUniformAMD": 5004, - "OpGroupFMaxNonUniformAMD": 5005, - "OpGroupUMaxNonUniformAMD": 5006, - "OpGroupSMaxNonUniformAMD": 5007, - "OpFragmentMaskFetchAMD": 5011, - "OpFragmentFetchAMD": 5012, - "OpSubgroupShuffleINTEL": 5571, - "OpSubgroupShuffleDownINTEL": 5572, - "OpSubgroupShuffleUpINTEL": 5573, - "OpSubgroupShuffleXorINTEL": 5574, - "OpSubgroupBlockReadINTEL": 5575, - "OpSubgroupBlockWriteINTEL": 5576, - "OpSubgroupImageBlockReadINTEL": 5577, - "OpSubgroupImageBlockWriteINTEL": 5578, - "OpDecorateStringGOOGLE": 5632, - "OpMemberDecorateStringGOOGLE": 5633 - } - } - ] - } -} - diff --git a/Extern/3rdParty/shaderc/shaderc/include/spirv/1.1/spirv.lua b/Extern/3rdParty/shaderc/shaderc/include/spirv/1.1/spirv.lua deleted file mode 100644 index ad34e0a..0000000 --- a/Extern/3rdParty/shaderc/shaderc/include/spirv/1.1/spirv.lua +++ /dev/null @@ -1,971 +0,0 @@ --- Copyright (c) 2014-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. - --- This header is automatically generated by the same tool that creates --- the Binary Section of the SPIR-V specification. - --- Enumeration tokens for SPIR-V, in various styles: --- C, C++, C++11, JSON, Lua, Python --- --- - C will have tokens with a "Spv" prefix, e.g.: SpvSourceLanguageGLSL --- - C++ will have tokens in the "spv" name space, e.g.: spv::SourceLanguageGLSL --- - C++11 will use enum classes in the spv namespace, e.g.: spv::SourceLanguage::GLSL --- - Lua will use tables, e.g.: spv.SourceLanguage.GLSL --- - Python will use dictionaries, e.g.: spv['SourceLanguage']['GLSL'] --- --- Some tokens act like mask values, which can be OR'd together, --- while others are mutually exclusive. The mask-like ones have --- "Mask" in their name, and a parallel enum that has the shift --- amount (1 << x) for each corresponding enumerant. - -spv = { - MagicNumber = 0x07230203, - Version = 0x00010100, - Revision = 8, - OpCodeMask = 0xffff, - WordCountShift = 16, - - SourceLanguage = { - Unknown = 0, - ESSL = 1, - GLSL = 2, - OpenCL_C = 3, - OpenCL_CPP = 4, - HLSL = 5, - }, - - ExecutionModel = { - Vertex = 0, - TessellationControl = 1, - TessellationEvaluation = 2, - Geometry = 3, - Fragment = 4, - GLCompute = 5, - Kernel = 6, - }, - - AddressingModel = { - Logical = 0, - Physical32 = 1, - Physical64 = 2, - }, - - MemoryModel = { - Simple = 0, - GLSL450 = 1, - OpenCL = 2, - }, - - ExecutionMode = { - Invocations = 0, - SpacingEqual = 1, - SpacingFractionalEven = 2, - SpacingFractionalOdd = 3, - VertexOrderCw = 4, - VertexOrderCcw = 5, - PixelCenterInteger = 6, - OriginUpperLeft = 7, - OriginLowerLeft = 8, - EarlyFragmentTests = 9, - PointMode = 10, - Xfb = 11, - DepthReplacing = 12, - DepthGreater = 14, - DepthLess = 15, - DepthUnchanged = 16, - LocalSize = 17, - LocalSizeHint = 18, - InputPoints = 19, - InputLines = 20, - InputLinesAdjacency = 21, - Triangles = 22, - InputTrianglesAdjacency = 23, - Quads = 24, - Isolines = 25, - OutputVertices = 26, - OutputPoints = 27, - OutputLineStrip = 28, - OutputTriangleStrip = 29, - VecTypeHint = 30, - ContractionOff = 31, - Initializer = 33, - Finalizer = 34, - SubgroupSize = 35, - SubgroupsPerWorkgroup = 36, - PostDepthCoverage = 4446, - StencilRefReplacingEXT = 5027, - }, - - StorageClass = { - UniformConstant = 0, - Input = 1, - Uniform = 2, - Output = 3, - Workgroup = 4, - CrossWorkgroup = 5, - Private = 6, - Function = 7, - Generic = 8, - PushConstant = 9, - AtomicCounter = 10, - Image = 11, - StorageBuffer = 12, - }, - - Dim = { - Dim1D = 0, - Dim2D = 1, - Dim3D = 2, - Cube = 3, - Rect = 4, - Buffer = 5, - SubpassData = 6, - }, - - SamplerAddressingMode = { - None = 0, - ClampToEdge = 1, - Clamp = 2, - Repeat = 3, - RepeatMirrored = 4, - }, - - SamplerFilterMode = { - Nearest = 0, - Linear = 1, - }, - - ImageFormat = { - Unknown = 0, - Rgba32f = 1, - Rgba16f = 2, - R32f = 3, - Rgba8 = 4, - Rgba8Snorm = 5, - Rg32f = 6, - Rg16f = 7, - R11fG11fB10f = 8, - R16f = 9, - Rgba16 = 10, - Rgb10A2 = 11, - Rg16 = 12, - Rg8 = 13, - R16 = 14, - R8 = 15, - Rgba16Snorm = 16, - Rg16Snorm = 17, - Rg8Snorm = 18, - R16Snorm = 19, - R8Snorm = 20, - Rgba32i = 21, - Rgba16i = 22, - Rgba8i = 23, - R32i = 24, - Rg32i = 25, - Rg16i = 26, - Rg8i = 27, - R16i = 28, - R8i = 29, - Rgba32ui = 30, - Rgba16ui = 31, - Rgba8ui = 32, - R32ui = 33, - Rgb10a2ui = 34, - Rg32ui = 35, - Rg16ui = 36, - Rg8ui = 37, - R16ui = 38, - R8ui = 39, - }, - - ImageChannelOrder = { - R = 0, - A = 1, - RG = 2, - RA = 3, - RGB = 4, - RGBA = 5, - BGRA = 6, - ARGB = 7, - Intensity = 8, - Luminance = 9, - Rx = 10, - RGx = 11, - RGBx = 12, - Depth = 13, - DepthStencil = 14, - sRGB = 15, - sRGBx = 16, - sRGBA = 17, - sBGRA = 18, - ABGR = 19, - }, - - ImageChannelDataType = { - SnormInt8 = 0, - SnormInt16 = 1, - UnormInt8 = 2, - UnormInt16 = 3, - UnormShort565 = 4, - UnormShort555 = 5, - UnormInt101010 = 6, - SignedInt8 = 7, - SignedInt16 = 8, - SignedInt32 = 9, - UnsignedInt8 = 10, - UnsignedInt16 = 11, - UnsignedInt32 = 12, - HalfFloat = 13, - Float = 14, - UnormInt24 = 15, - UnormInt101010_2 = 16, - }, - - ImageOperandsShift = { - Bias = 0, - Lod = 1, - Grad = 2, - ConstOffset = 3, - Offset = 4, - ConstOffsets = 5, - Sample = 6, - MinLod = 7, - }, - - ImageOperandsMask = { - MaskNone = 0, - Bias = 0x00000001, - Lod = 0x00000002, - Grad = 0x00000004, - ConstOffset = 0x00000008, - Offset = 0x00000010, - ConstOffsets = 0x00000020, - Sample = 0x00000040, - MinLod = 0x00000080, - }, - - FPFastMathModeShift = { - NotNaN = 0, - NotInf = 1, - NSZ = 2, - AllowRecip = 3, - Fast = 4, - }, - - FPFastMathModeMask = { - MaskNone = 0, - NotNaN = 0x00000001, - NotInf = 0x00000002, - NSZ = 0x00000004, - AllowRecip = 0x00000008, - Fast = 0x00000010, - }, - - FPRoundingMode = { - RTE = 0, - RTZ = 1, - RTP = 2, - RTN = 3, - }, - - LinkageType = { - Export = 0, - Import = 1, - }, - - AccessQualifier = { - ReadOnly = 0, - WriteOnly = 1, - ReadWrite = 2, - }, - - FunctionParameterAttribute = { - Zext = 0, - Sext = 1, - ByVal = 2, - Sret = 3, - NoAlias = 4, - NoCapture = 5, - NoWrite = 6, - NoReadWrite = 7, - }, - - Decoration = { - RelaxedPrecision = 0, - SpecId = 1, - Block = 2, - BufferBlock = 3, - RowMajor = 4, - ColMajor = 5, - ArrayStride = 6, - MatrixStride = 7, - GLSLShared = 8, - GLSLPacked = 9, - CPacked = 10, - BuiltIn = 11, - NoPerspective = 13, - Flat = 14, - Patch = 15, - Centroid = 16, - Sample = 17, - Invariant = 18, - Restrict = 19, - Aliased = 20, - Volatile = 21, - Constant = 22, - Coherent = 23, - NonWritable = 24, - NonReadable = 25, - Uniform = 26, - SaturatedConversion = 28, - Stream = 29, - Location = 30, - Component = 31, - Index = 32, - Binding = 33, - DescriptorSet = 34, - Offset = 35, - XfbBuffer = 36, - XfbStride = 37, - FuncParamAttr = 38, - FPRoundingMode = 39, - FPFastMathMode = 40, - LinkageAttributes = 41, - NoContraction = 42, - InputAttachmentIndex = 43, - Alignment = 44, - MaxByteOffset = 45, - ExplicitInterpAMD = 4999, - OverrideCoverageNV = 5248, - PassthroughNV = 5250, - ViewportRelativeNV = 5252, - SecondaryViewportRelativeNV = 5256, - HlslCounterBufferGOOGLE = 5634, - HlslSemanticGOOGLE = 5635, - }, - - BuiltIn = { - Position = 0, - PointSize = 1, - ClipDistance = 3, - CullDistance = 4, - VertexId = 5, - InstanceId = 6, - PrimitiveId = 7, - InvocationId = 8, - Layer = 9, - ViewportIndex = 10, - TessLevelOuter = 11, - TessLevelInner = 12, - TessCoord = 13, - PatchVertices = 14, - FragCoord = 15, - PointCoord = 16, - FrontFacing = 17, - SampleId = 18, - SamplePosition = 19, - SampleMask = 20, - FragDepth = 22, - HelperInvocation = 23, - NumWorkgroups = 24, - WorkgroupSize = 25, - WorkgroupId = 26, - LocalInvocationId = 27, - GlobalInvocationId = 28, - LocalInvocationIndex = 29, - WorkDim = 30, - GlobalSize = 31, - EnqueuedWorkgroupSize = 32, - GlobalOffset = 33, - GlobalLinearId = 34, - SubgroupSize = 36, - SubgroupMaxSize = 37, - NumSubgroups = 38, - NumEnqueuedSubgroups = 39, - SubgroupId = 40, - SubgroupLocalInvocationId = 41, - VertexIndex = 42, - InstanceIndex = 43, - SubgroupEqMaskKHR = 4416, - SubgroupGeMaskKHR = 4417, - SubgroupGtMaskKHR = 4418, - SubgroupLeMaskKHR = 4419, - SubgroupLtMaskKHR = 4420, - BaseVertex = 4424, - BaseInstance = 4425, - DrawIndex = 4426, - DeviceIndex = 4438, - ViewIndex = 4440, - BaryCoordNoPerspAMD = 4992, - BaryCoordNoPerspCentroidAMD = 4993, - BaryCoordNoPerspSampleAMD = 4994, - BaryCoordSmoothAMD = 4995, - BaryCoordSmoothCentroidAMD = 4996, - BaryCoordSmoothSampleAMD = 4997, - BaryCoordPullModelAMD = 4998, - FragStencilRefEXT = 5014, - ViewportMaskNV = 5253, - SecondaryPositionNV = 5257, - SecondaryViewportMaskNV = 5258, - PositionPerViewNV = 5261, - ViewportMaskPerViewNV = 5262, - }, - - SelectionControlShift = { - Flatten = 0, - DontFlatten = 1, - }, - - SelectionControlMask = { - MaskNone = 0, - Flatten = 0x00000001, - DontFlatten = 0x00000002, - }, - - LoopControlShift = { - Unroll = 0, - DontUnroll = 1, - DependencyInfinite = 2, - DependencyLength = 3, - }, - - LoopControlMask = { - MaskNone = 0, - Unroll = 0x00000001, - DontUnroll = 0x00000002, - DependencyInfinite = 0x00000004, - DependencyLength = 0x00000008, - }, - - FunctionControlShift = { - Inline = 0, - DontInline = 1, - Pure = 2, - Const = 3, - }, - - FunctionControlMask = { - MaskNone = 0, - Inline = 0x00000001, - DontInline = 0x00000002, - Pure = 0x00000004, - Const = 0x00000008, - }, - - MemorySemanticsShift = { - Acquire = 1, - Release = 2, - AcquireRelease = 3, - SequentiallyConsistent = 4, - UniformMemory = 6, - SubgroupMemory = 7, - WorkgroupMemory = 8, - CrossWorkgroupMemory = 9, - AtomicCounterMemory = 10, - ImageMemory = 11, - }, - - MemorySemanticsMask = { - MaskNone = 0, - Acquire = 0x00000002, - Release = 0x00000004, - AcquireRelease = 0x00000008, - SequentiallyConsistent = 0x00000010, - UniformMemory = 0x00000040, - SubgroupMemory = 0x00000080, - WorkgroupMemory = 0x00000100, - CrossWorkgroupMemory = 0x00000200, - AtomicCounterMemory = 0x00000400, - ImageMemory = 0x00000800, - }, - - MemoryAccessShift = { - Volatile = 0, - Aligned = 1, - Nontemporal = 2, - }, - - MemoryAccessMask = { - MaskNone = 0, - Volatile = 0x00000001, - Aligned = 0x00000002, - Nontemporal = 0x00000004, - }, - - Scope = { - CrossDevice = 0, - Device = 1, - Workgroup = 2, - Subgroup = 3, - Invocation = 4, - }, - - GroupOperation = { - Reduce = 0, - InclusiveScan = 1, - ExclusiveScan = 2, - }, - - KernelEnqueueFlags = { - NoWait = 0, - WaitKernel = 1, - WaitWorkGroup = 2, - }, - - KernelProfilingInfoShift = { - CmdExecTime = 0, - }, - - KernelProfilingInfoMask = { - MaskNone = 0, - CmdExecTime = 0x00000001, - }, - - Capability = { - Matrix = 0, - Shader = 1, - Geometry = 2, - Tessellation = 3, - Addresses = 4, - Linkage = 5, - Kernel = 6, - Vector16 = 7, - Float16Buffer = 8, - Float16 = 9, - Float64 = 10, - Int64 = 11, - Int64Atomics = 12, - ImageBasic = 13, - ImageReadWrite = 14, - ImageMipmap = 15, - Pipes = 17, - Groups = 18, - DeviceEnqueue = 19, - LiteralSampler = 20, - AtomicStorage = 21, - Int16 = 22, - TessellationPointSize = 23, - GeometryPointSize = 24, - ImageGatherExtended = 25, - StorageImageMultisample = 27, - UniformBufferArrayDynamicIndexing = 28, - SampledImageArrayDynamicIndexing = 29, - StorageBufferArrayDynamicIndexing = 30, - StorageImageArrayDynamicIndexing = 31, - ClipDistance = 32, - CullDistance = 33, - ImageCubeArray = 34, - SampleRateShading = 35, - ImageRect = 36, - SampledRect = 37, - GenericPointer = 38, - Int8 = 39, - InputAttachment = 40, - SparseResidency = 41, - MinLod = 42, - Sampled1D = 43, - Image1D = 44, - SampledCubeArray = 45, - SampledBuffer = 46, - ImageBuffer = 47, - ImageMSArray = 48, - StorageImageExtendedFormats = 49, - ImageQuery = 50, - DerivativeControl = 51, - InterpolationFunction = 52, - TransformFeedback = 53, - GeometryStreams = 54, - StorageImageReadWithoutFormat = 55, - StorageImageWriteWithoutFormat = 56, - MultiViewport = 57, - SubgroupDispatch = 58, - NamedBarrier = 59, - PipeStorage = 60, - SubgroupBallotKHR = 4423, - DrawParameters = 4427, - SubgroupVoteKHR = 4431, - StorageBuffer16BitAccess = 4433, - StorageUniformBufferBlock16 = 4433, - StorageUniform16 = 4434, - UniformAndStorageBuffer16BitAccess = 4434, - StoragePushConstant16 = 4435, - StorageInputOutput16 = 4436, - DeviceGroup = 4437, - MultiView = 4439, - VariablePointersStorageBuffer = 4441, - VariablePointers = 4442, - AtomicStorageOps = 4445, - SampleMaskPostDepthCoverage = 4447, - ImageGatherBiasLodAMD = 5009, - FragmentMaskAMD = 5010, - StencilExportEXT = 5013, - ImageReadWriteLodAMD = 5015, - SampleMaskOverrideCoverageNV = 5249, - GeometryShaderPassthroughNV = 5251, - ShaderViewportIndexLayerEXT = 5254, - ShaderViewportIndexLayerNV = 5254, - ShaderViewportMaskNV = 5255, - ShaderStereoViewNV = 5259, - PerViewAttributesNV = 5260, - SubgroupShuffleINTEL = 5568, - SubgroupBufferBlockIOINTEL = 5569, - SubgroupImageBlockIOINTEL = 5570, - }, - - Op = { - OpNop = 0, - OpUndef = 1, - OpSourceContinued = 2, - OpSource = 3, - OpSourceExtension = 4, - OpName = 5, - OpMemberName = 6, - OpString = 7, - OpLine = 8, - OpExtension = 10, - OpExtInstImport = 11, - OpExtInst = 12, - OpMemoryModel = 14, - OpEntryPoint = 15, - OpExecutionMode = 16, - OpCapability = 17, - OpTypeVoid = 19, - OpTypeBool = 20, - OpTypeInt = 21, - OpTypeFloat = 22, - OpTypeVector = 23, - OpTypeMatrix = 24, - OpTypeImage = 25, - OpTypeSampler = 26, - OpTypeSampledImage = 27, - OpTypeArray = 28, - OpTypeRuntimeArray = 29, - OpTypeStruct = 30, - OpTypeOpaque = 31, - OpTypePointer = 32, - OpTypeFunction = 33, - OpTypeEvent = 34, - OpTypeDeviceEvent = 35, - OpTypeReserveId = 36, - OpTypeQueue = 37, - OpTypePipe = 38, - OpTypeForwardPointer = 39, - OpConstantTrue = 41, - OpConstantFalse = 42, - OpConstant = 43, - OpConstantComposite = 44, - OpConstantSampler = 45, - OpConstantNull = 46, - OpSpecConstantTrue = 48, - OpSpecConstantFalse = 49, - OpSpecConstant = 50, - OpSpecConstantComposite = 51, - OpSpecConstantOp = 52, - OpFunction = 54, - OpFunctionParameter = 55, - OpFunctionEnd = 56, - OpFunctionCall = 57, - OpVariable = 59, - OpImageTexelPointer = 60, - OpLoad = 61, - OpStore = 62, - OpCopyMemory = 63, - OpCopyMemorySized = 64, - OpAccessChain = 65, - OpInBoundsAccessChain = 66, - OpPtrAccessChain = 67, - OpArrayLength = 68, - OpGenericPtrMemSemantics = 69, - OpInBoundsPtrAccessChain = 70, - OpDecorate = 71, - OpMemberDecorate = 72, - OpDecorationGroup = 73, - OpGroupDecorate = 74, - OpGroupMemberDecorate = 75, - OpVectorExtractDynamic = 77, - OpVectorInsertDynamic = 78, - OpVectorShuffle = 79, - OpCompositeConstruct = 80, - OpCompositeExtract = 81, - OpCompositeInsert = 82, - OpCopyObject = 83, - OpTranspose = 84, - OpSampledImage = 86, - OpImageSampleImplicitLod = 87, - OpImageSampleExplicitLod = 88, - OpImageSampleDrefImplicitLod = 89, - OpImageSampleDrefExplicitLod = 90, - OpImageSampleProjImplicitLod = 91, - OpImageSampleProjExplicitLod = 92, - OpImageSampleProjDrefImplicitLod = 93, - OpImageSampleProjDrefExplicitLod = 94, - OpImageFetch = 95, - OpImageGather = 96, - OpImageDrefGather = 97, - OpImageRead = 98, - OpImageWrite = 99, - OpImage = 100, - OpImageQueryFormat = 101, - OpImageQueryOrder = 102, - OpImageQuerySizeLod = 103, - OpImageQuerySize = 104, - OpImageQueryLod = 105, - OpImageQueryLevels = 106, - OpImageQuerySamples = 107, - OpConvertFToU = 109, - OpConvertFToS = 110, - OpConvertSToF = 111, - OpConvertUToF = 112, - OpUConvert = 113, - OpSConvert = 114, - OpFConvert = 115, - OpQuantizeToF16 = 116, - OpConvertPtrToU = 117, - OpSatConvertSToU = 118, - OpSatConvertUToS = 119, - OpConvertUToPtr = 120, - OpPtrCastToGeneric = 121, - OpGenericCastToPtr = 122, - OpGenericCastToPtrExplicit = 123, - OpBitcast = 124, - OpSNegate = 126, - OpFNegate = 127, - OpIAdd = 128, - OpFAdd = 129, - OpISub = 130, - OpFSub = 131, - OpIMul = 132, - OpFMul = 133, - OpUDiv = 134, - OpSDiv = 135, - OpFDiv = 136, - OpUMod = 137, - OpSRem = 138, - OpSMod = 139, - OpFRem = 140, - OpFMod = 141, - OpVectorTimesScalar = 142, - OpMatrixTimesScalar = 143, - OpVectorTimesMatrix = 144, - OpMatrixTimesVector = 145, - OpMatrixTimesMatrix = 146, - OpOuterProduct = 147, - OpDot = 148, - OpIAddCarry = 149, - OpISubBorrow = 150, - OpUMulExtended = 151, - OpSMulExtended = 152, - OpAny = 154, - OpAll = 155, - OpIsNan = 156, - OpIsInf = 157, - OpIsFinite = 158, - OpIsNormal = 159, - OpSignBitSet = 160, - OpLessOrGreater = 161, - OpOrdered = 162, - OpUnordered = 163, - OpLogicalEqual = 164, - OpLogicalNotEqual = 165, - OpLogicalOr = 166, - OpLogicalAnd = 167, - OpLogicalNot = 168, - OpSelect = 169, - OpIEqual = 170, - OpINotEqual = 171, - OpUGreaterThan = 172, - OpSGreaterThan = 173, - OpUGreaterThanEqual = 174, - OpSGreaterThanEqual = 175, - OpULessThan = 176, - OpSLessThan = 177, - OpULessThanEqual = 178, - OpSLessThanEqual = 179, - OpFOrdEqual = 180, - OpFUnordEqual = 181, - OpFOrdNotEqual = 182, - OpFUnordNotEqual = 183, - OpFOrdLessThan = 184, - OpFUnordLessThan = 185, - OpFOrdGreaterThan = 186, - OpFUnordGreaterThan = 187, - OpFOrdLessThanEqual = 188, - OpFUnordLessThanEqual = 189, - OpFOrdGreaterThanEqual = 190, - OpFUnordGreaterThanEqual = 191, - OpShiftRightLogical = 194, - OpShiftRightArithmetic = 195, - OpShiftLeftLogical = 196, - OpBitwiseOr = 197, - OpBitwiseXor = 198, - OpBitwiseAnd = 199, - OpNot = 200, - OpBitFieldInsert = 201, - OpBitFieldSExtract = 202, - OpBitFieldUExtract = 203, - OpBitReverse = 204, - OpBitCount = 205, - OpDPdx = 207, - OpDPdy = 208, - OpFwidth = 209, - OpDPdxFine = 210, - OpDPdyFine = 211, - OpFwidthFine = 212, - OpDPdxCoarse = 213, - OpDPdyCoarse = 214, - OpFwidthCoarse = 215, - OpEmitVertex = 218, - OpEndPrimitive = 219, - OpEmitStreamVertex = 220, - OpEndStreamPrimitive = 221, - OpControlBarrier = 224, - OpMemoryBarrier = 225, - OpAtomicLoad = 227, - OpAtomicStore = 228, - OpAtomicExchange = 229, - OpAtomicCompareExchange = 230, - OpAtomicCompareExchangeWeak = 231, - OpAtomicIIncrement = 232, - OpAtomicIDecrement = 233, - OpAtomicIAdd = 234, - OpAtomicISub = 235, - OpAtomicSMin = 236, - OpAtomicUMin = 237, - OpAtomicSMax = 238, - OpAtomicUMax = 239, - OpAtomicAnd = 240, - OpAtomicOr = 241, - OpAtomicXor = 242, - OpPhi = 245, - OpLoopMerge = 246, - OpSelectionMerge = 247, - OpLabel = 248, - OpBranch = 249, - OpBranchConditional = 250, - OpSwitch = 251, - OpKill = 252, - OpReturn = 253, - OpReturnValue = 254, - OpUnreachable = 255, - OpLifetimeStart = 256, - OpLifetimeStop = 257, - OpGroupAsyncCopy = 259, - OpGroupWaitEvents = 260, - OpGroupAll = 261, - OpGroupAny = 262, - OpGroupBroadcast = 263, - OpGroupIAdd = 264, - OpGroupFAdd = 265, - OpGroupFMin = 266, - OpGroupUMin = 267, - OpGroupSMin = 268, - OpGroupFMax = 269, - OpGroupUMax = 270, - OpGroupSMax = 271, - OpReadPipe = 274, - OpWritePipe = 275, - OpReservedReadPipe = 276, - OpReservedWritePipe = 277, - OpReserveReadPipePackets = 278, - OpReserveWritePipePackets = 279, - OpCommitReadPipe = 280, - OpCommitWritePipe = 281, - OpIsValidReserveId = 282, - OpGetNumPipePackets = 283, - OpGetMaxPipePackets = 284, - OpGroupReserveReadPipePackets = 285, - OpGroupReserveWritePipePackets = 286, - OpGroupCommitReadPipe = 287, - OpGroupCommitWritePipe = 288, - OpEnqueueMarker = 291, - OpEnqueueKernel = 292, - OpGetKernelNDrangeSubGroupCount = 293, - OpGetKernelNDrangeMaxSubGroupSize = 294, - OpGetKernelWorkGroupSize = 295, - OpGetKernelPreferredWorkGroupSizeMultiple = 296, - OpRetainEvent = 297, - OpReleaseEvent = 298, - OpCreateUserEvent = 299, - OpIsValidEvent = 300, - OpSetUserEventStatus = 301, - OpCaptureEventProfilingInfo = 302, - OpGetDefaultQueue = 303, - OpBuildNDRange = 304, - OpImageSparseSampleImplicitLod = 305, - OpImageSparseSampleExplicitLod = 306, - OpImageSparseSampleDrefImplicitLod = 307, - OpImageSparseSampleDrefExplicitLod = 308, - OpImageSparseSampleProjImplicitLod = 309, - OpImageSparseSampleProjExplicitLod = 310, - OpImageSparseSampleProjDrefImplicitLod = 311, - OpImageSparseSampleProjDrefExplicitLod = 312, - OpImageSparseFetch = 313, - OpImageSparseGather = 314, - OpImageSparseDrefGather = 315, - OpImageSparseTexelsResident = 316, - OpNoLine = 317, - OpAtomicFlagTestAndSet = 318, - OpAtomicFlagClear = 319, - OpImageSparseRead = 320, - OpSizeOf = 321, - OpTypePipeStorage = 322, - OpConstantPipeStorage = 323, - OpCreatePipeFromPipeStorage = 324, - OpGetKernelLocalSizeForSubgroupCount = 325, - OpGetKernelMaxNumSubgroups = 326, - OpTypeNamedBarrier = 327, - OpNamedBarrierInitialize = 328, - OpMemoryNamedBarrier = 329, - OpModuleProcessed = 330, - OpDecorateId = 332, - OpSubgroupBallotKHR = 4421, - OpSubgroupFirstInvocationKHR = 4422, - OpSubgroupAllKHR = 4428, - OpSubgroupAnyKHR = 4429, - OpSubgroupAllEqualKHR = 4430, - OpSubgroupReadInvocationKHR = 4432, - OpGroupIAddNonUniformAMD = 5000, - OpGroupFAddNonUniformAMD = 5001, - OpGroupFMinNonUniformAMD = 5002, - OpGroupUMinNonUniformAMD = 5003, - OpGroupSMinNonUniformAMD = 5004, - OpGroupFMaxNonUniformAMD = 5005, - OpGroupUMaxNonUniformAMD = 5006, - OpGroupSMaxNonUniformAMD = 5007, - OpFragmentMaskFetchAMD = 5011, - OpFragmentFetchAMD = 5012, - OpSubgroupShuffleINTEL = 5571, - OpSubgroupShuffleDownINTEL = 5572, - OpSubgroupShuffleUpINTEL = 5573, - OpSubgroupShuffleXorINTEL = 5574, - OpSubgroupBlockReadINTEL = 5575, - OpSubgroupBlockWriteINTEL = 5576, - OpSubgroupImageBlockReadINTEL = 5577, - OpSubgroupImageBlockWriteINTEL = 5578, - OpDecorateStringGOOGLE = 5632, - OpMemberDecorateStringGOOGLE = 5633, - }, - -} - diff --git a/Extern/3rdParty/shaderc/shaderc/include/spirv/1.1/spirv.py b/Extern/3rdParty/shaderc/shaderc/include/spirv/1.1/spirv.py deleted file mode 100644 index 519a597..0000000 --- a/Extern/3rdParty/shaderc/shaderc/include/spirv/1.1/spirv.py +++ /dev/null @@ -1,971 +0,0 @@ -# Copyright (c) 2014-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. - -# This header is automatically generated by the same tool that creates -# the Binary Section of the SPIR-V specification. - -# Enumeration tokens for SPIR-V, in various styles: -# C, C++, C++11, JSON, Lua, Python -# -# - C will have tokens with a "Spv" prefix, e.g.: SpvSourceLanguageGLSL -# - C++ will have tokens in the "spv" name space, e.g.: spv::SourceLanguageGLSL -# - C++11 will use enum classes in the spv namespace, e.g.: spv::SourceLanguage::GLSL -# - Lua will use tables, e.g.: spv.SourceLanguage.GLSL -# - Python will use dictionaries, e.g.: spv['SourceLanguage']['GLSL'] -# -# Some tokens act like mask values, which can be OR'd together, -# while others are mutually exclusive. The mask-like ones have -# "Mask" in their name, and a parallel enum that has the shift -# amount (1 << x) for each corresponding enumerant. - -spv = { - 'MagicNumber' : 0x07230203, - 'Version' : 0x00010100, - 'Revision' : 8, - 'OpCodeMask' : 0xffff, - 'WordCountShift' : 16, - - 'SourceLanguage' : { - 'Unknown' : 0, - 'ESSL' : 1, - 'GLSL' : 2, - 'OpenCL_C' : 3, - 'OpenCL_CPP' : 4, - 'HLSL' : 5, - }, - - 'ExecutionModel' : { - 'Vertex' : 0, - 'TessellationControl' : 1, - 'TessellationEvaluation' : 2, - 'Geometry' : 3, - 'Fragment' : 4, - 'GLCompute' : 5, - 'Kernel' : 6, - }, - - 'AddressingModel' : { - 'Logical' : 0, - 'Physical32' : 1, - 'Physical64' : 2, - }, - - 'MemoryModel' : { - 'Simple' : 0, - 'GLSL450' : 1, - 'OpenCL' : 2, - }, - - 'ExecutionMode' : { - 'Invocations' : 0, - 'SpacingEqual' : 1, - 'SpacingFractionalEven' : 2, - 'SpacingFractionalOdd' : 3, - 'VertexOrderCw' : 4, - 'VertexOrderCcw' : 5, - 'PixelCenterInteger' : 6, - 'OriginUpperLeft' : 7, - 'OriginLowerLeft' : 8, - 'EarlyFragmentTests' : 9, - 'PointMode' : 10, - 'Xfb' : 11, - 'DepthReplacing' : 12, - 'DepthGreater' : 14, - 'DepthLess' : 15, - 'DepthUnchanged' : 16, - 'LocalSize' : 17, - 'LocalSizeHint' : 18, - 'InputPoints' : 19, - 'InputLines' : 20, - 'InputLinesAdjacency' : 21, - 'Triangles' : 22, - 'InputTrianglesAdjacency' : 23, - 'Quads' : 24, - 'Isolines' : 25, - 'OutputVertices' : 26, - 'OutputPoints' : 27, - 'OutputLineStrip' : 28, - 'OutputTriangleStrip' : 29, - 'VecTypeHint' : 30, - 'ContractionOff' : 31, - 'Initializer' : 33, - 'Finalizer' : 34, - 'SubgroupSize' : 35, - 'SubgroupsPerWorkgroup' : 36, - 'PostDepthCoverage' : 4446, - 'StencilRefReplacingEXT' : 5027, - }, - - 'StorageClass' : { - 'UniformConstant' : 0, - 'Input' : 1, - 'Uniform' : 2, - 'Output' : 3, - 'Workgroup' : 4, - 'CrossWorkgroup' : 5, - 'Private' : 6, - 'Function' : 7, - 'Generic' : 8, - 'PushConstant' : 9, - 'AtomicCounter' : 10, - 'Image' : 11, - 'StorageBuffer' : 12, - }, - - 'Dim' : { - 'Dim1D' : 0, - 'Dim2D' : 1, - 'Dim3D' : 2, - 'Cube' : 3, - 'Rect' : 4, - 'Buffer' : 5, - 'SubpassData' : 6, - }, - - 'SamplerAddressingMode' : { - 'None' : 0, - 'ClampToEdge' : 1, - 'Clamp' : 2, - 'Repeat' : 3, - 'RepeatMirrored' : 4, - }, - - 'SamplerFilterMode' : { - 'Nearest' : 0, - 'Linear' : 1, - }, - - 'ImageFormat' : { - 'Unknown' : 0, - 'Rgba32f' : 1, - 'Rgba16f' : 2, - 'R32f' : 3, - 'Rgba8' : 4, - 'Rgba8Snorm' : 5, - 'Rg32f' : 6, - 'Rg16f' : 7, - 'R11fG11fB10f' : 8, - 'R16f' : 9, - 'Rgba16' : 10, - 'Rgb10A2' : 11, - 'Rg16' : 12, - 'Rg8' : 13, - 'R16' : 14, - 'R8' : 15, - 'Rgba16Snorm' : 16, - 'Rg16Snorm' : 17, - 'Rg8Snorm' : 18, - 'R16Snorm' : 19, - 'R8Snorm' : 20, - 'Rgba32i' : 21, - 'Rgba16i' : 22, - 'Rgba8i' : 23, - 'R32i' : 24, - 'Rg32i' : 25, - 'Rg16i' : 26, - 'Rg8i' : 27, - 'R16i' : 28, - 'R8i' : 29, - 'Rgba32ui' : 30, - 'Rgba16ui' : 31, - 'Rgba8ui' : 32, - 'R32ui' : 33, - 'Rgb10a2ui' : 34, - 'Rg32ui' : 35, - 'Rg16ui' : 36, - 'Rg8ui' : 37, - 'R16ui' : 38, - 'R8ui' : 39, - }, - - 'ImageChannelOrder' : { - 'R' : 0, - 'A' : 1, - 'RG' : 2, - 'RA' : 3, - 'RGB' : 4, - 'RGBA' : 5, - 'BGRA' : 6, - 'ARGB' : 7, - 'Intensity' : 8, - 'Luminance' : 9, - 'Rx' : 10, - 'RGx' : 11, - 'RGBx' : 12, - 'Depth' : 13, - 'DepthStencil' : 14, - 'sRGB' : 15, - 'sRGBx' : 16, - 'sRGBA' : 17, - 'sBGRA' : 18, - 'ABGR' : 19, - }, - - 'ImageChannelDataType' : { - 'SnormInt8' : 0, - 'SnormInt16' : 1, - 'UnormInt8' : 2, - 'UnormInt16' : 3, - 'UnormShort565' : 4, - 'UnormShort555' : 5, - 'UnormInt101010' : 6, - 'SignedInt8' : 7, - 'SignedInt16' : 8, - 'SignedInt32' : 9, - 'UnsignedInt8' : 10, - 'UnsignedInt16' : 11, - 'UnsignedInt32' : 12, - 'HalfFloat' : 13, - 'Float' : 14, - 'UnormInt24' : 15, - 'UnormInt101010_2' : 16, - }, - - 'ImageOperandsShift' : { - 'Bias' : 0, - 'Lod' : 1, - 'Grad' : 2, - 'ConstOffset' : 3, - 'Offset' : 4, - 'ConstOffsets' : 5, - 'Sample' : 6, - 'MinLod' : 7, - }, - - 'ImageOperandsMask' : { - 'MaskNone' : 0, - 'Bias' : 0x00000001, - 'Lod' : 0x00000002, - 'Grad' : 0x00000004, - 'ConstOffset' : 0x00000008, - 'Offset' : 0x00000010, - 'ConstOffsets' : 0x00000020, - 'Sample' : 0x00000040, - 'MinLod' : 0x00000080, - }, - - 'FPFastMathModeShift' : { - 'NotNaN' : 0, - 'NotInf' : 1, - 'NSZ' : 2, - 'AllowRecip' : 3, - 'Fast' : 4, - }, - - 'FPFastMathModeMask' : { - 'MaskNone' : 0, - 'NotNaN' : 0x00000001, - 'NotInf' : 0x00000002, - 'NSZ' : 0x00000004, - 'AllowRecip' : 0x00000008, - 'Fast' : 0x00000010, - }, - - 'FPRoundingMode' : { - 'RTE' : 0, - 'RTZ' : 1, - 'RTP' : 2, - 'RTN' : 3, - }, - - 'LinkageType' : { - 'Export' : 0, - 'Import' : 1, - }, - - 'AccessQualifier' : { - 'ReadOnly' : 0, - 'WriteOnly' : 1, - 'ReadWrite' : 2, - }, - - 'FunctionParameterAttribute' : { - 'Zext' : 0, - 'Sext' : 1, - 'ByVal' : 2, - 'Sret' : 3, - 'NoAlias' : 4, - 'NoCapture' : 5, - 'NoWrite' : 6, - 'NoReadWrite' : 7, - }, - - 'Decoration' : { - 'RelaxedPrecision' : 0, - 'SpecId' : 1, - 'Block' : 2, - 'BufferBlock' : 3, - 'RowMajor' : 4, - 'ColMajor' : 5, - 'ArrayStride' : 6, - 'MatrixStride' : 7, - 'GLSLShared' : 8, - 'GLSLPacked' : 9, - 'CPacked' : 10, - 'BuiltIn' : 11, - 'NoPerspective' : 13, - 'Flat' : 14, - 'Patch' : 15, - 'Centroid' : 16, - 'Sample' : 17, - 'Invariant' : 18, - 'Restrict' : 19, - 'Aliased' : 20, - 'Volatile' : 21, - 'Constant' : 22, - 'Coherent' : 23, - 'NonWritable' : 24, - 'NonReadable' : 25, - 'Uniform' : 26, - 'SaturatedConversion' : 28, - 'Stream' : 29, - 'Location' : 30, - 'Component' : 31, - 'Index' : 32, - 'Binding' : 33, - 'DescriptorSet' : 34, - 'Offset' : 35, - 'XfbBuffer' : 36, - 'XfbStride' : 37, - 'FuncParamAttr' : 38, - 'FPRoundingMode' : 39, - 'FPFastMathMode' : 40, - 'LinkageAttributes' : 41, - 'NoContraction' : 42, - 'InputAttachmentIndex' : 43, - 'Alignment' : 44, - 'MaxByteOffset' : 45, - 'ExplicitInterpAMD' : 4999, - 'OverrideCoverageNV' : 5248, - 'PassthroughNV' : 5250, - 'ViewportRelativeNV' : 5252, - 'SecondaryViewportRelativeNV' : 5256, - 'HlslCounterBufferGOOGLE' : 5634, - 'HlslSemanticGOOGLE' : 5635, - }, - - 'BuiltIn' : { - 'Position' : 0, - 'PointSize' : 1, - 'ClipDistance' : 3, - 'CullDistance' : 4, - 'VertexId' : 5, - 'InstanceId' : 6, - 'PrimitiveId' : 7, - 'InvocationId' : 8, - 'Layer' : 9, - 'ViewportIndex' : 10, - 'TessLevelOuter' : 11, - 'TessLevelInner' : 12, - 'TessCoord' : 13, - 'PatchVertices' : 14, - 'FragCoord' : 15, - 'PointCoord' : 16, - 'FrontFacing' : 17, - 'SampleId' : 18, - 'SamplePosition' : 19, - 'SampleMask' : 20, - 'FragDepth' : 22, - 'HelperInvocation' : 23, - 'NumWorkgroups' : 24, - 'WorkgroupSize' : 25, - 'WorkgroupId' : 26, - 'LocalInvocationId' : 27, - 'GlobalInvocationId' : 28, - 'LocalInvocationIndex' : 29, - 'WorkDim' : 30, - 'GlobalSize' : 31, - 'EnqueuedWorkgroupSize' : 32, - 'GlobalOffset' : 33, - 'GlobalLinearId' : 34, - 'SubgroupSize' : 36, - 'SubgroupMaxSize' : 37, - 'NumSubgroups' : 38, - 'NumEnqueuedSubgroups' : 39, - 'SubgroupId' : 40, - 'SubgroupLocalInvocationId' : 41, - 'VertexIndex' : 42, - 'InstanceIndex' : 43, - 'SubgroupEqMaskKHR' : 4416, - 'SubgroupGeMaskKHR' : 4417, - 'SubgroupGtMaskKHR' : 4418, - 'SubgroupLeMaskKHR' : 4419, - 'SubgroupLtMaskKHR' : 4420, - 'BaseVertex' : 4424, - 'BaseInstance' : 4425, - 'DrawIndex' : 4426, - 'DeviceIndex' : 4438, - 'ViewIndex' : 4440, - 'BaryCoordNoPerspAMD' : 4992, - 'BaryCoordNoPerspCentroidAMD' : 4993, - 'BaryCoordNoPerspSampleAMD' : 4994, - 'BaryCoordSmoothAMD' : 4995, - 'BaryCoordSmoothCentroidAMD' : 4996, - 'BaryCoordSmoothSampleAMD' : 4997, - 'BaryCoordPullModelAMD' : 4998, - 'FragStencilRefEXT' : 5014, - 'ViewportMaskNV' : 5253, - 'SecondaryPositionNV' : 5257, - 'SecondaryViewportMaskNV' : 5258, - 'PositionPerViewNV' : 5261, - 'ViewportMaskPerViewNV' : 5262, - }, - - 'SelectionControlShift' : { - 'Flatten' : 0, - 'DontFlatten' : 1, - }, - - 'SelectionControlMask' : { - 'MaskNone' : 0, - 'Flatten' : 0x00000001, - 'DontFlatten' : 0x00000002, - }, - - 'LoopControlShift' : { - 'Unroll' : 0, - 'DontUnroll' : 1, - 'DependencyInfinite' : 2, - 'DependencyLength' : 3, - }, - - 'LoopControlMask' : { - 'MaskNone' : 0, - 'Unroll' : 0x00000001, - 'DontUnroll' : 0x00000002, - 'DependencyInfinite' : 0x00000004, - 'DependencyLength' : 0x00000008, - }, - - 'FunctionControlShift' : { - 'Inline' : 0, - 'DontInline' : 1, - 'Pure' : 2, - 'Const' : 3, - }, - - 'FunctionControlMask' : { - 'MaskNone' : 0, - 'Inline' : 0x00000001, - 'DontInline' : 0x00000002, - 'Pure' : 0x00000004, - 'Const' : 0x00000008, - }, - - 'MemorySemanticsShift' : { - 'Acquire' : 1, - 'Release' : 2, - 'AcquireRelease' : 3, - 'SequentiallyConsistent' : 4, - 'UniformMemory' : 6, - 'SubgroupMemory' : 7, - 'WorkgroupMemory' : 8, - 'CrossWorkgroupMemory' : 9, - 'AtomicCounterMemory' : 10, - 'ImageMemory' : 11, - }, - - 'MemorySemanticsMask' : { - 'MaskNone' : 0, - 'Acquire' : 0x00000002, - 'Release' : 0x00000004, - 'AcquireRelease' : 0x00000008, - 'SequentiallyConsistent' : 0x00000010, - 'UniformMemory' : 0x00000040, - 'SubgroupMemory' : 0x00000080, - 'WorkgroupMemory' : 0x00000100, - 'CrossWorkgroupMemory' : 0x00000200, - 'AtomicCounterMemory' : 0x00000400, - 'ImageMemory' : 0x00000800, - }, - - 'MemoryAccessShift' : { - 'Volatile' : 0, - 'Aligned' : 1, - 'Nontemporal' : 2, - }, - - 'MemoryAccessMask' : { - 'MaskNone' : 0, - 'Volatile' : 0x00000001, - 'Aligned' : 0x00000002, - 'Nontemporal' : 0x00000004, - }, - - 'Scope' : { - 'CrossDevice' : 0, - 'Device' : 1, - 'Workgroup' : 2, - 'Subgroup' : 3, - 'Invocation' : 4, - }, - - 'GroupOperation' : { - 'Reduce' : 0, - 'InclusiveScan' : 1, - 'ExclusiveScan' : 2, - }, - - 'KernelEnqueueFlags' : { - 'NoWait' : 0, - 'WaitKernel' : 1, - 'WaitWorkGroup' : 2, - }, - - 'KernelProfilingInfoShift' : { - 'CmdExecTime' : 0, - }, - - 'KernelProfilingInfoMask' : { - 'MaskNone' : 0, - 'CmdExecTime' : 0x00000001, - }, - - 'Capability' : { - 'Matrix' : 0, - 'Shader' : 1, - 'Geometry' : 2, - 'Tessellation' : 3, - 'Addresses' : 4, - 'Linkage' : 5, - 'Kernel' : 6, - 'Vector16' : 7, - 'Float16Buffer' : 8, - 'Float16' : 9, - 'Float64' : 10, - 'Int64' : 11, - 'Int64Atomics' : 12, - 'ImageBasic' : 13, - 'ImageReadWrite' : 14, - 'ImageMipmap' : 15, - 'Pipes' : 17, - 'Groups' : 18, - 'DeviceEnqueue' : 19, - 'LiteralSampler' : 20, - 'AtomicStorage' : 21, - 'Int16' : 22, - 'TessellationPointSize' : 23, - 'GeometryPointSize' : 24, - 'ImageGatherExtended' : 25, - 'StorageImageMultisample' : 27, - 'UniformBufferArrayDynamicIndexing' : 28, - 'SampledImageArrayDynamicIndexing' : 29, - 'StorageBufferArrayDynamicIndexing' : 30, - 'StorageImageArrayDynamicIndexing' : 31, - 'ClipDistance' : 32, - 'CullDistance' : 33, - 'ImageCubeArray' : 34, - 'SampleRateShading' : 35, - 'ImageRect' : 36, - 'SampledRect' : 37, - 'GenericPointer' : 38, - 'Int8' : 39, - 'InputAttachment' : 40, - 'SparseResidency' : 41, - 'MinLod' : 42, - 'Sampled1D' : 43, - 'Image1D' : 44, - 'SampledCubeArray' : 45, - 'SampledBuffer' : 46, - 'ImageBuffer' : 47, - 'ImageMSArray' : 48, - 'StorageImageExtendedFormats' : 49, - 'ImageQuery' : 50, - 'DerivativeControl' : 51, - 'InterpolationFunction' : 52, - 'TransformFeedback' : 53, - 'GeometryStreams' : 54, - 'StorageImageReadWithoutFormat' : 55, - 'StorageImageWriteWithoutFormat' : 56, - 'MultiViewport' : 57, - 'SubgroupDispatch' : 58, - 'NamedBarrier' : 59, - 'PipeStorage' : 60, - 'SubgroupBallotKHR' : 4423, - 'DrawParameters' : 4427, - 'SubgroupVoteKHR' : 4431, - 'StorageBuffer16BitAccess' : 4433, - 'StorageUniformBufferBlock16' : 4433, - 'StorageUniform16' : 4434, - 'UniformAndStorageBuffer16BitAccess' : 4434, - 'StoragePushConstant16' : 4435, - 'StorageInputOutput16' : 4436, - 'DeviceGroup' : 4437, - 'MultiView' : 4439, - 'VariablePointersStorageBuffer' : 4441, - 'VariablePointers' : 4442, - 'AtomicStorageOps' : 4445, - 'SampleMaskPostDepthCoverage' : 4447, - 'ImageGatherBiasLodAMD' : 5009, - 'FragmentMaskAMD' : 5010, - 'StencilExportEXT' : 5013, - 'ImageReadWriteLodAMD' : 5015, - 'SampleMaskOverrideCoverageNV' : 5249, - 'GeometryShaderPassthroughNV' : 5251, - 'ShaderViewportIndexLayerEXT' : 5254, - 'ShaderViewportIndexLayerNV' : 5254, - 'ShaderViewportMaskNV' : 5255, - 'ShaderStereoViewNV' : 5259, - 'PerViewAttributesNV' : 5260, - 'SubgroupShuffleINTEL' : 5568, - 'SubgroupBufferBlockIOINTEL' : 5569, - 'SubgroupImageBlockIOINTEL' : 5570, - }, - - 'Op' : { - 'OpNop' : 0, - 'OpUndef' : 1, - 'OpSourceContinued' : 2, - 'OpSource' : 3, - 'OpSourceExtension' : 4, - 'OpName' : 5, - 'OpMemberName' : 6, - 'OpString' : 7, - 'OpLine' : 8, - 'OpExtension' : 10, - 'OpExtInstImport' : 11, - 'OpExtInst' : 12, - 'OpMemoryModel' : 14, - 'OpEntryPoint' : 15, - 'OpExecutionMode' : 16, - 'OpCapability' : 17, - 'OpTypeVoid' : 19, - 'OpTypeBool' : 20, - 'OpTypeInt' : 21, - 'OpTypeFloat' : 22, - 'OpTypeVector' : 23, - 'OpTypeMatrix' : 24, - 'OpTypeImage' : 25, - 'OpTypeSampler' : 26, - 'OpTypeSampledImage' : 27, - 'OpTypeArray' : 28, - 'OpTypeRuntimeArray' : 29, - 'OpTypeStruct' : 30, - 'OpTypeOpaque' : 31, - 'OpTypePointer' : 32, - 'OpTypeFunction' : 33, - 'OpTypeEvent' : 34, - 'OpTypeDeviceEvent' : 35, - 'OpTypeReserveId' : 36, - 'OpTypeQueue' : 37, - 'OpTypePipe' : 38, - 'OpTypeForwardPointer' : 39, - 'OpConstantTrue' : 41, - 'OpConstantFalse' : 42, - 'OpConstant' : 43, - 'OpConstantComposite' : 44, - 'OpConstantSampler' : 45, - 'OpConstantNull' : 46, - 'OpSpecConstantTrue' : 48, - 'OpSpecConstantFalse' : 49, - 'OpSpecConstant' : 50, - 'OpSpecConstantComposite' : 51, - 'OpSpecConstantOp' : 52, - 'OpFunction' : 54, - 'OpFunctionParameter' : 55, - 'OpFunctionEnd' : 56, - 'OpFunctionCall' : 57, - 'OpVariable' : 59, - 'OpImageTexelPointer' : 60, - 'OpLoad' : 61, - 'OpStore' : 62, - 'OpCopyMemory' : 63, - 'OpCopyMemorySized' : 64, - 'OpAccessChain' : 65, - 'OpInBoundsAccessChain' : 66, - 'OpPtrAccessChain' : 67, - 'OpArrayLength' : 68, - 'OpGenericPtrMemSemantics' : 69, - 'OpInBoundsPtrAccessChain' : 70, - 'OpDecorate' : 71, - 'OpMemberDecorate' : 72, - 'OpDecorationGroup' : 73, - 'OpGroupDecorate' : 74, - 'OpGroupMemberDecorate' : 75, - 'OpVectorExtractDynamic' : 77, - 'OpVectorInsertDynamic' : 78, - 'OpVectorShuffle' : 79, - 'OpCompositeConstruct' : 80, - 'OpCompositeExtract' : 81, - 'OpCompositeInsert' : 82, - 'OpCopyObject' : 83, - 'OpTranspose' : 84, - 'OpSampledImage' : 86, - 'OpImageSampleImplicitLod' : 87, - 'OpImageSampleExplicitLod' : 88, - 'OpImageSampleDrefImplicitLod' : 89, - 'OpImageSampleDrefExplicitLod' : 90, - 'OpImageSampleProjImplicitLod' : 91, - 'OpImageSampleProjExplicitLod' : 92, - 'OpImageSampleProjDrefImplicitLod' : 93, - 'OpImageSampleProjDrefExplicitLod' : 94, - 'OpImageFetch' : 95, - 'OpImageGather' : 96, - 'OpImageDrefGather' : 97, - 'OpImageRead' : 98, - 'OpImageWrite' : 99, - 'OpImage' : 100, - 'OpImageQueryFormat' : 101, - 'OpImageQueryOrder' : 102, - 'OpImageQuerySizeLod' : 103, - 'OpImageQuerySize' : 104, - 'OpImageQueryLod' : 105, - 'OpImageQueryLevels' : 106, - 'OpImageQuerySamples' : 107, - 'OpConvertFToU' : 109, - 'OpConvertFToS' : 110, - 'OpConvertSToF' : 111, - 'OpConvertUToF' : 112, - 'OpUConvert' : 113, - 'OpSConvert' : 114, - 'OpFConvert' : 115, - 'OpQuantizeToF16' : 116, - 'OpConvertPtrToU' : 117, - 'OpSatConvertSToU' : 118, - 'OpSatConvertUToS' : 119, - 'OpConvertUToPtr' : 120, - 'OpPtrCastToGeneric' : 121, - 'OpGenericCastToPtr' : 122, - 'OpGenericCastToPtrExplicit' : 123, - 'OpBitcast' : 124, - 'OpSNegate' : 126, - 'OpFNegate' : 127, - 'OpIAdd' : 128, - 'OpFAdd' : 129, - 'OpISub' : 130, - 'OpFSub' : 131, - 'OpIMul' : 132, - 'OpFMul' : 133, - 'OpUDiv' : 134, - 'OpSDiv' : 135, - 'OpFDiv' : 136, - 'OpUMod' : 137, - 'OpSRem' : 138, - 'OpSMod' : 139, - 'OpFRem' : 140, - 'OpFMod' : 141, - 'OpVectorTimesScalar' : 142, - 'OpMatrixTimesScalar' : 143, - 'OpVectorTimesMatrix' : 144, - 'OpMatrixTimesVector' : 145, - 'OpMatrixTimesMatrix' : 146, - 'OpOuterProduct' : 147, - 'OpDot' : 148, - 'OpIAddCarry' : 149, - 'OpISubBorrow' : 150, - 'OpUMulExtended' : 151, - 'OpSMulExtended' : 152, - 'OpAny' : 154, - 'OpAll' : 155, - 'OpIsNan' : 156, - 'OpIsInf' : 157, - 'OpIsFinite' : 158, - 'OpIsNormal' : 159, - 'OpSignBitSet' : 160, - 'OpLessOrGreater' : 161, - 'OpOrdered' : 162, - 'OpUnordered' : 163, - 'OpLogicalEqual' : 164, - 'OpLogicalNotEqual' : 165, - 'OpLogicalOr' : 166, - 'OpLogicalAnd' : 167, - 'OpLogicalNot' : 168, - 'OpSelect' : 169, - 'OpIEqual' : 170, - 'OpINotEqual' : 171, - 'OpUGreaterThan' : 172, - 'OpSGreaterThan' : 173, - 'OpUGreaterThanEqual' : 174, - 'OpSGreaterThanEqual' : 175, - 'OpULessThan' : 176, - 'OpSLessThan' : 177, - 'OpULessThanEqual' : 178, - 'OpSLessThanEqual' : 179, - 'OpFOrdEqual' : 180, - 'OpFUnordEqual' : 181, - 'OpFOrdNotEqual' : 182, - 'OpFUnordNotEqual' : 183, - 'OpFOrdLessThan' : 184, - 'OpFUnordLessThan' : 185, - 'OpFOrdGreaterThan' : 186, - 'OpFUnordGreaterThan' : 187, - 'OpFOrdLessThanEqual' : 188, - 'OpFUnordLessThanEqual' : 189, - 'OpFOrdGreaterThanEqual' : 190, - 'OpFUnordGreaterThanEqual' : 191, - 'OpShiftRightLogical' : 194, - 'OpShiftRightArithmetic' : 195, - 'OpShiftLeftLogical' : 196, - 'OpBitwiseOr' : 197, - 'OpBitwiseXor' : 198, - 'OpBitwiseAnd' : 199, - 'OpNot' : 200, - 'OpBitFieldInsert' : 201, - 'OpBitFieldSExtract' : 202, - 'OpBitFieldUExtract' : 203, - 'OpBitReverse' : 204, - 'OpBitCount' : 205, - 'OpDPdx' : 207, - 'OpDPdy' : 208, - 'OpFwidth' : 209, - 'OpDPdxFine' : 210, - 'OpDPdyFine' : 211, - 'OpFwidthFine' : 212, - 'OpDPdxCoarse' : 213, - 'OpDPdyCoarse' : 214, - 'OpFwidthCoarse' : 215, - 'OpEmitVertex' : 218, - 'OpEndPrimitive' : 219, - 'OpEmitStreamVertex' : 220, - 'OpEndStreamPrimitive' : 221, - 'OpControlBarrier' : 224, - 'OpMemoryBarrier' : 225, - 'OpAtomicLoad' : 227, - 'OpAtomicStore' : 228, - 'OpAtomicExchange' : 229, - 'OpAtomicCompareExchange' : 230, - 'OpAtomicCompareExchangeWeak' : 231, - 'OpAtomicIIncrement' : 232, - 'OpAtomicIDecrement' : 233, - 'OpAtomicIAdd' : 234, - 'OpAtomicISub' : 235, - 'OpAtomicSMin' : 236, - 'OpAtomicUMin' : 237, - 'OpAtomicSMax' : 238, - 'OpAtomicUMax' : 239, - 'OpAtomicAnd' : 240, - 'OpAtomicOr' : 241, - 'OpAtomicXor' : 242, - 'OpPhi' : 245, - 'OpLoopMerge' : 246, - 'OpSelectionMerge' : 247, - 'OpLabel' : 248, - 'OpBranch' : 249, - 'OpBranchConditional' : 250, - 'OpSwitch' : 251, - 'OpKill' : 252, - 'OpReturn' : 253, - 'OpReturnValue' : 254, - 'OpUnreachable' : 255, - 'OpLifetimeStart' : 256, - 'OpLifetimeStop' : 257, - 'OpGroupAsyncCopy' : 259, - 'OpGroupWaitEvents' : 260, - 'OpGroupAll' : 261, - 'OpGroupAny' : 262, - 'OpGroupBroadcast' : 263, - 'OpGroupIAdd' : 264, - 'OpGroupFAdd' : 265, - 'OpGroupFMin' : 266, - 'OpGroupUMin' : 267, - 'OpGroupSMin' : 268, - 'OpGroupFMax' : 269, - 'OpGroupUMax' : 270, - 'OpGroupSMax' : 271, - 'OpReadPipe' : 274, - 'OpWritePipe' : 275, - 'OpReservedReadPipe' : 276, - 'OpReservedWritePipe' : 277, - 'OpReserveReadPipePackets' : 278, - 'OpReserveWritePipePackets' : 279, - 'OpCommitReadPipe' : 280, - 'OpCommitWritePipe' : 281, - 'OpIsValidReserveId' : 282, - 'OpGetNumPipePackets' : 283, - 'OpGetMaxPipePackets' : 284, - 'OpGroupReserveReadPipePackets' : 285, - 'OpGroupReserveWritePipePackets' : 286, - 'OpGroupCommitReadPipe' : 287, - 'OpGroupCommitWritePipe' : 288, - 'OpEnqueueMarker' : 291, - 'OpEnqueueKernel' : 292, - 'OpGetKernelNDrangeSubGroupCount' : 293, - 'OpGetKernelNDrangeMaxSubGroupSize' : 294, - 'OpGetKernelWorkGroupSize' : 295, - 'OpGetKernelPreferredWorkGroupSizeMultiple' : 296, - 'OpRetainEvent' : 297, - 'OpReleaseEvent' : 298, - 'OpCreateUserEvent' : 299, - 'OpIsValidEvent' : 300, - 'OpSetUserEventStatus' : 301, - 'OpCaptureEventProfilingInfo' : 302, - 'OpGetDefaultQueue' : 303, - 'OpBuildNDRange' : 304, - 'OpImageSparseSampleImplicitLod' : 305, - 'OpImageSparseSampleExplicitLod' : 306, - 'OpImageSparseSampleDrefImplicitLod' : 307, - 'OpImageSparseSampleDrefExplicitLod' : 308, - 'OpImageSparseSampleProjImplicitLod' : 309, - 'OpImageSparseSampleProjExplicitLod' : 310, - 'OpImageSparseSampleProjDrefImplicitLod' : 311, - 'OpImageSparseSampleProjDrefExplicitLod' : 312, - 'OpImageSparseFetch' : 313, - 'OpImageSparseGather' : 314, - 'OpImageSparseDrefGather' : 315, - 'OpImageSparseTexelsResident' : 316, - 'OpNoLine' : 317, - 'OpAtomicFlagTestAndSet' : 318, - 'OpAtomicFlagClear' : 319, - 'OpImageSparseRead' : 320, - 'OpSizeOf' : 321, - 'OpTypePipeStorage' : 322, - 'OpConstantPipeStorage' : 323, - 'OpCreatePipeFromPipeStorage' : 324, - 'OpGetKernelLocalSizeForSubgroupCount' : 325, - 'OpGetKernelMaxNumSubgroups' : 326, - 'OpTypeNamedBarrier' : 327, - 'OpNamedBarrierInitialize' : 328, - 'OpMemoryNamedBarrier' : 329, - 'OpModuleProcessed' : 330, - 'OpDecorateId' : 332, - 'OpSubgroupBallotKHR' : 4421, - 'OpSubgroupFirstInvocationKHR' : 4422, - 'OpSubgroupAllKHR' : 4428, - 'OpSubgroupAnyKHR' : 4429, - 'OpSubgroupAllEqualKHR' : 4430, - 'OpSubgroupReadInvocationKHR' : 4432, - 'OpGroupIAddNonUniformAMD' : 5000, - 'OpGroupFAddNonUniformAMD' : 5001, - 'OpGroupFMinNonUniformAMD' : 5002, - 'OpGroupUMinNonUniformAMD' : 5003, - 'OpGroupSMinNonUniformAMD' : 5004, - 'OpGroupFMaxNonUniformAMD' : 5005, - 'OpGroupUMaxNonUniformAMD' : 5006, - 'OpGroupSMaxNonUniformAMD' : 5007, - 'OpFragmentMaskFetchAMD' : 5011, - 'OpFragmentFetchAMD' : 5012, - 'OpSubgroupShuffleINTEL' : 5571, - 'OpSubgroupShuffleDownINTEL' : 5572, - 'OpSubgroupShuffleUpINTEL' : 5573, - 'OpSubgroupShuffleXorINTEL' : 5574, - 'OpSubgroupBlockReadINTEL' : 5575, - 'OpSubgroupBlockWriteINTEL' : 5576, - 'OpSubgroupImageBlockReadINTEL' : 5577, - 'OpSubgroupImageBlockWriteINTEL' : 5578, - 'OpDecorateStringGOOGLE' : 5632, - 'OpMemberDecorateStringGOOGLE' : 5633, - }, - -} - diff --git a/Extern/3rdParty/shaderc/shaderc/include/spirv/1.2/GLSL.std.450.h b/Extern/3rdParty/shaderc/shaderc/include/spirv/1.2/GLSL.std.450.h deleted file mode 100644 index 54cc00e..0000000 --- a/Extern/3rdParty/shaderc/shaderc/include/spirv/1.2/GLSL.std.450.h +++ /dev/null @@ -1,131 +0,0 @@ -/* -** Copyright (c) 2014-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. -*/ - -#ifndef GLSLstd450_H -#define GLSLstd450_H - -static const int GLSLstd450Version = 100; -static const int GLSLstd450Revision = 3; - -enum GLSLstd450 { - GLSLstd450Bad = 0, // Don't use - - GLSLstd450Round = 1, - GLSLstd450RoundEven = 2, - GLSLstd450Trunc = 3, - GLSLstd450FAbs = 4, - GLSLstd450SAbs = 5, - GLSLstd450FSign = 6, - GLSLstd450SSign = 7, - GLSLstd450Floor = 8, - GLSLstd450Ceil = 9, - GLSLstd450Fract = 10, - - GLSLstd450Radians = 11, - GLSLstd450Degrees = 12, - GLSLstd450Sin = 13, - GLSLstd450Cos = 14, - GLSLstd450Tan = 15, - GLSLstd450Asin = 16, - GLSLstd450Acos = 17, - GLSLstd450Atan = 18, - GLSLstd450Sinh = 19, - GLSLstd450Cosh = 20, - GLSLstd450Tanh = 21, - GLSLstd450Asinh = 22, - GLSLstd450Acosh = 23, - GLSLstd450Atanh = 24, - GLSLstd450Atan2 = 25, - - GLSLstd450Pow = 26, - GLSLstd450Exp = 27, - GLSLstd450Log = 28, - GLSLstd450Exp2 = 29, - GLSLstd450Log2 = 30, - GLSLstd450Sqrt = 31, - GLSLstd450InverseSqrt = 32, - - GLSLstd450Determinant = 33, - GLSLstd450MatrixInverse = 34, - - GLSLstd450Modf = 35, // second operand needs an OpVariable to write to - GLSLstd450ModfStruct = 36, // no OpVariable operand - GLSLstd450FMin = 37, - GLSLstd450UMin = 38, - GLSLstd450SMin = 39, - GLSLstd450FMax = 40, - GLSLstd450UMax = 41, - GLSLstd450SMax = 42, - GLSLstd450FClamp = 43, - GLSLstd450UClamp = 44, - GLSLstd450SClamp = 45, - GLSLstd450FMix = 46, - GLSLstd450IMix = 47, // Reserved - GLSLstd450Step = 48, - GLSLstd450SmoothStep = 49, - - GLSLstd450Fma = 50, - GLSLstd450Frexp = 51, // second operand needs an OpVariable to write to - GLSLstd450FrexpStruct = 52, // no OpVariable operand - GLSLstd450Ldexp = 53, - - GLSLstd450PackSnorm4x8 = 54, - GLSLstd450PackUnorm4x8 = 55, - GLSLstd450PackSnorm2x16 = 56, - GLSLstd450PackUnorm2x16 = 57, - GLSLstd450PackHalf2x16 = 58, - GLSLstd450PackDouble2x32 = 59, - GLSLstd450UnpackSnorm2x16 = 60, - GLSLstd450UnpackUnorm2x16 = 61, - GLSLstd450UnpackHalf2x16 = 62, - GLSLstd450UnpackSnorm4x8 = 63, - GLSLstd450UnpackUnorm4x8 = 64, - GLSLstd450UnpackDouble2x32 = 65, - - GLSLstd450Length = 66, - GLSLstd450Distance = 67, - GLSLstd450Cross = 68, - GLSLstd450Normalize = 69, - GLSLstd450FaceForward = 70, - GLSLstd450Reflect = 71, - GLSLstd450Refract = 72, - - GLSLstd450FindILsb = 73, - GLSLstd450FindSMsb = 74, - GLSLstd450FindUMsb = 75, - - GLSLstd450InterpolateAtCentroid = 76, - GLSLstd450InterpolateAtSample = 77, - GLSLstd450InterpolateAtOffset = 78, - - GLSLstd450NMin = 79, - GLSLstd450NMax = 80, - GLSLstd450NClamp = 81, - - GLSLstd450Count -}; - -#endif // #ifndef GLSLstd450_H diff --git a/Extern/3rdParty/shaderc/shaderc/include/spirv/1.2/OpenCL.std.h b/Extern/3rdParty/shaderc/shaderc/include/spirv/1.2/OpenCL.std.h deleted file mode 100644 index 19a6688..0000000 --- a/Extern/3rdParty/shaderc/shaderc/include/spirv/1.2/OpenCL.std.h +++ /dev/null @@ -1,210 +0,0 @@ -/* -** Copyright (c) 2015-2017 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. -*/ - -namespace OpenCLLIB { - -enum Entrypoints { - - // Section 2.1: Math extended instructions - Acos = 0, - Acosh = 1, - Acospi = 2, - Asin = 3, - Asinh = 4, - Asinpi = 5, - Atan = 6, - Atan2 = 7, - Atanh = 8, - Atanpi = 9, - Atan2pi = 10, - Cbrt = 11, - Ceil = 12, - Copysign = 13, - Cos = 14, - Cosh = 15, - Cospi = 16, - Erfc = 17, - Erf = 18, - Exp = 19, - Exp2 = 20, - Exp10 = 21, - Expm1 = 22, - Fabs = 23, - Fdim = 24, - Floor = 25, - Fma = 26, - Fmax = 27, - Fmin = 28, - Fmod = 29, - Fract = 30, - Frexp = 31, - Hypot = 32, - Ilogb = 33, - Ldexp = 34, - Lgamma = 35, - Lgamma_r = 36, - Log = 37, - Log2 = 38, - Log10 = 39, - Log1p = 40, - Logb = 41, - Mad = 42, - Maxmag = 43, - Minmag = 44, - Modf = 45, - Nan = 46, - Nextafter = 47, - Pow = 48, - Pown = 49, - Powr = 50, - Remainder = 51, - Remquo = 52, - Rint = 53, - Rootn = 54, - Round = 55, - Rsqrt = 56, - Sin = 57, - Sincos = 58, - Sinh = 59, - Sinpi = 60, - Sqrt = 61, - Tan = 62, - Tanh = 63, - Tanpi = 64, - Tgamma = 65, - Trunc = 66, - Half_cos = 67, - Half_divide = 68, - Half_exp = 69, - Half_exp2 = 70, - Half_exp10 = 71, - Half_log = 72, - Half_log2 = 73, - Half_log10 = 74, - Half_powr = 75, - Half_recip = 76, - Half_rsqrt = 77, - Half_sin = 78, - Half_sqrt = 79, - Half_tan = 80, - Native_cos = 81, - Native_divide = 82, - Native_exp = 83, - Native_exp2 = 84, - Native_exp10 = 85, - Native_log = 86, - Native_log2 = 87, - Native_log10 = 88, - Native_powr = 89, - Native_recip = 90, - Native_rsqrt = 91, - Native_sin = 92, - Native_sqrt = 93, - Native_tan = 94, - - // Section 2.2: Integer instructions - SAbs = 141, - SAbs_diff = 142, - SAdd_sat = 143, - UAdd_sat = 144, - SHadd = 145, - UHadd = 146, - SRhadd = 147, - URhadd = 148, - SClamp = 149, - UClamp = 150, - Clz = 151, - Ctz = 152, - SMad_hi = 153, - UMad_sat = 154, - SMad_sat = 155, - SMax = 156, - UMax = 157, - SMin = 158, - UMin = 159, - SMul_hi = 160, - Rotate = 161, - SSub_sat = 162, - USub_sat = 163, - U_Upsample = 164, - S_Upsample = 165, - Popcount = 166, - SMad24 = 167, - UMad24 = 168, - SMul24 = 169, - UMul24 = 170, - UAbs = 201, - UAbs_diff = 202, - UMul_hi = 203, - UMad_hi = 204, - - // Section 2.3: Common instructions - FClamp = 95, - Degrees = 96, - FMax_common = 97, - FMin_common = 98, - Mix = 99, - Radians = 100, - Step = 101, - Smoothstep = 102, - Sign = 103, - - // Section 2.4: Geometric instructions - Cross = 104, - Distance = 105, - Length = 106, - Normalize = 107, - Fast_distance = 108, - Fast_length = 109, - Fast_normalize = 110, - - // Section 2.5: Relational instructions - Bitselect = 186, - Select = 187, - - // Section 2.6: Vector Data Load and Store instructions - Vloadn = 171, - Vstoren = 172, - Vload_half = 173, - Vload_halfn = 174, - Vstore_half = 175, - Vstore_half_r = 176, - Vstore_halfn = 177, - Vstore_halfn_r = 178, - Vloada_halfn = 179, - Vstorea_halfn = 180, - Vstorea_halfn_r = 181, - - // Section 2.7: Miscellaneous Vector instructions - Shuffle = 182, - Shuffle2 = 183, - - // Section 2.8: Misc instructions - Printf = 184, - Prefetch = 185, -}; - -} // end namespace OpenCLLIB diff --git a/Extern/3rdParty/shaderc/shaderc/include/spirv/1.2/extinst.glsl.std.450.grammar.json b/Extern/3rdParty/shaderc/shaderc/include/spirv/1.2/extinst.glsl.std.450.grammar.json deleted file mode 100644 index 3d9f39e..0000000 --- a/Extern/3rdParty/shaderc/shaderc/include/spirv/1.2/extinst.glsl.std.450.grammar.json +++ /dev/null @@ -1,642 +0,0 @@ -{ - "copyright" : [ - "Copyright (c) 2014-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." - ], - "version" : 100, - "revision" : 2, - "instructions" : [ - { - "opname" : "Round", - "opcode" : 1, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" } - ] - }, - { - "opname" : "RoundEven", - "opcode" : 2, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" } - ] - }, - { - "opname" : "Trunc", - "opcode" : 3, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" } - ] - }, - { - "opname" : "FAbs", - "opcode" : 4, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" } - ] - }, - { - "opname" : "SAbs", - "opcode" : 5, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" } - ] - }, - { - "opname" : "FSign", - "opcode" : 6, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" } - ] - }, - { - "opname" : "SSign", - "opcode" : 7, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" } - ] - }, - { - "opname" : "Floor", - "opcode" : 8, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" } - ] - }, - { - "opname" : "Ceil", - "opcode" : 9, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" } - ] - }, - { - "opname" : "Fract", - "opcode" : 10, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" } - ] - }, - { - "opname" : "Radians", - "opcode" : 11, - "operands" : [ - { "kind" : "IdRef", "name" : "'degrees'" } - ] - }, - { - "opname" : "Degrees", - "opcode" : 12, - "operands" : [ - { "kind" : "IdRef", "name" : "'radians'" } - ] - }, - { - "opname" : "Sin", - "opcode" : 13, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" } - ] - }, - { - "opname" : "Cos", - "opcode" : 14, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" } - ] - }, - { - "opname" : "Tan", - "opcode" : 15, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" } - ] - }, - { - "opname" : "Asin", - "opcode" : 16, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" } - ] - }, - { - "opname" : "Acos", - "opcode" : 17, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" } - ] - }, - { - "opname" : "Atan", - "opcode" : 18, - "operands" : [ - { "kind" : "IdRef", "name" : "'y_over_x'" } - ] - }, - { - "opname" : "Sinh", - "opcode" : 19, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" } - ] - }, - { - "opname" : "Cosh", - "opcode" : 20, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" } - ] - }, - { - "opname" : "Tanh", - "opcode" : 21, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" } - ] - }, - { - "opname" : "Asinh", - "opcode" : 22, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" } - ] - }, - { - "opname" : "Acosh", - "opcode" : 23, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" } - ] - }, - { - "opname" : "Atanh", - "opcode" : 24, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" } - ] - }, - { - "opname" : "Atan2", - "opcode" : 25, - "operands" : [ - { "kind" : "IdRef", "name" : "'y'" }, - { "kind" : "IdRef", "name" : "'x'" } - ] - }, - { - "opname" : "Pow", - "opcode" : 26, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" }, - { "kind" : "IdRef", "name" : "'y'" } - ] - }, - { - "opname" : "Exp", - "opcode" : 27, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" } - ] - }, - { - "opname" : "Log", - "opcode" : 28, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" } - ] - }, - { - "opname" : "Exp2", - "opcode" : 29, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" } - ] - }, - { - "opname" : "Log2", - "opcode" : 30, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" } - ] - }, - { - "opname" : "Sqrt", - "opcode" : 31, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" } - ] - }, - { - "opname" : "InverseSqrt", - "opcode" : 32, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" } - ] - }, - { - "opname" : "Determinant", - "opcode" : 33, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" } - ] - }, - { - "opname" : "MatrixInverse", - "opcode" : 34, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" } - ] - }, - { - "opname" : "Modf", - "opcode" : 35, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" }, - { "kind" : "IdRef", "name" : "'i'" } - ] - }, - { - "opname" : "ModfStruct", - "opcode" : 36, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" } - ] - }, - { - "opname" : "FMin", - "opcode" : 37, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" }, - { "kind" : "IdRef", "name" : "'y'" } - ] - }, - { - "opname" : "UMin", - "opcode" : 38, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" }, - { "kind" : "IdRef", "name" : "'y'" } - ] - }, - { - "opname" : "SMin", - "opcode" : 39, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" }, - { "kind" : "IdRef", "name" : "'y'" } - ] - }, - { - "opname" : "FMax", - "opcode" : 40, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" }, - { "kind" : "IdRef", "name" : "'y'" } - ] - }, - { - "opname" : "UMax", - "opcode" : 41, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" }, - { "kind" : "IdRef", "name" : "'y'" } - ] - }, - { - "opname" : "SMax", - "opcode" : 42, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" }, - { "kind" : "IdRef", "name" : "'y'" } - ] - }, - { - "opname" : "FClamp", - "opcode" : 43, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" }, - { "kind" : "IdRef", "name" : "'minVal'" }, - { "kind" : "IdRef", "name" : "'maxVal'" } - ] - }, - { - "opname" : "UClamp", - "opcode" : 44, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" }, - { "kind" : "IdRef", "name" : "'minVal'" }, - { "kind" : "IdRef", "name" : "'maxVal'" } - ] - }, - { - "opname" : "SClamp", - "opcode" : 45, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" }, - { "kind" : "IdRef", "name" : "'minVal'" }, - { "kind" : "IdRef", "name" : "'maxVal'" } - ] - }, - { - "opname" : "FMix", - "opcode" : 46, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" }, - { "kind" : "IdRef", "name" : "'y'" }, - { "kind" : "IdRef", "name" : "'a'" } - ] - }, - { - "opname" : "IMix", - "opcode" : 47, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" }, - { "kind" : "IdRef", "name" : "'y'" }, - { "kind" : "IdRef", "name" : "'a'" } - ] - }, - { - "opname" : "Step", - "opcode" : 48, - "operands" : [ - { "kind" : "IdRef", "name" : "'edge'" }, - { "kind" : "IdRef", "name" : "'x'" } - ] - }, - { - "opname" : "SmoothStep", - "opcode" : 49, - "operands" : [ - { "kind" : "IdRef", "name" : "'edge0'" }, - { "kind" : "IdRef", "name" : "'edge1'" }, - { "kind" : "IdRef", "name" : "'x'" } - ] - }, - { - "opname" : "Fma", - "opcode" : 50, - "operands" : [ - { "kind" : "IdRef", "name" : "'a'" }, - { "kind" : "IdRef", "name" : "'b'" }, - { "kind" : "IdRef", "name" : "'c'" } - ] - }, - { - "opname" : "Frexp", - "opcode" : 51, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" }, - { "kind" : "IdRef", "name" : "'exp'" } - ] - }, - { - "opname" : "FrexpStruct", - "opcode" : 52, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" } - ] - }, - { - "opname" : "Ldexp", - "opcode" : 53, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" }, - { "kind" : "IdRef", "name" : "'exp'" } - ] - }, - { - "opname" : "PackSnorm4x8", - "opcode" : 54, - "operands" : [ - { "kind" : "IdRef", "name" : "'v'" } - ] - }, - { - "opname" : "PackUnorm4x8", - "opcode" : 55, - "operands" : [ - { "kind" : "IdRef", "name" : "'v'" } - ] - }, - { - "opname" : "PackSnorm2x16", - "opcode" : 56, - "operands" : [ - { "kind" : "IdRef", "name" : "'v'" } - ] - }, - { - "opname" : "PackUnorm2x16", - "opcode" : 57, - "operands" : [ - { "kind" : "IdRef", "name" : "'v'" } - ] - }, - { - "opname" : "PackHalf2x16", - "opcode" : 58, - "operands" : [ - { "kind" : "IdRef", "name" : "'v'" } - ] - }, - { - "opname" : "PackDouble2x32", - "opcode" : 59, - "operands" : [ - { "kind" : "IdRef", "name" : "'v'" } - ], - "capabilities" : [ "Float64" ] - }, - { - "opname" : "UnpackSnorm2x16", - "opcode" : 60, - "operands" : [ - { "kind" : "IdRef", "name" : "'p'" } - ] - }, - { - "opname" : "UnpackUnorm2x16", - "opcode" : 61, - "operands" : [ - { "kind" : "IdRef", "name" : "'p'" } - ] - }, - { - "opname" : "UnpackHalf2x16", - "opcode" : 62, - "operands" : [ - { "kind" : "IdRef", "name" : "'v'" } - ] - }, - { - "opname" : "UnpackSnorm4x8", - "opcode" : 63, - "operands" : [ - { "kind" : "IdRef", "name" : "'p'" } - ] - }, - { - "opname" : "UnpackUnorm4x8", - "opcode" : 64, - "operands" : [ - { "kind" : "IdRef", "name" : "'p'" } - ] - }, - { - "opname" : "UnpackDouble2x32", - "opcode" : 65, - "operands" : [ - { "kind" : "IdRef", "name" : "'v'" } - ], - "capabilities" : [ "Float64" ] - }, - { - "opname" : "Length", - "opcode" : 66, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" } - ] - }, - { - "opname" : "Distance", - "opcode" : 67, - "operands" : [ - { "kind" : "IdRef", "name" : "'p0'" }, - { "kind" : "IdRef", "name" : "'p1'" } - ] - }, - { - "opname" : "Cross", - "opcode" : 68, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" }, - { "kind" : "IdRef", "name" : "'y'" } - ] - }, - { - "opname" : "Normalize", - "opcode" : 69, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" } - ] - }, - { - "opname" : "FaceForward", - "opcode" : 70, - "operands" : [ - { "kind" : "IdRef", "name" : "'N'" }, - { "kind" : "IdRef", "name" : "'I'" }, - { "kind" : "IdRef", "name" : "'Nref'" } - ] - }, - { - "opname" : "Reflect", - "opcode" : 71, - "operands" : [ - { "kind" : "IdRef", "name" : "'I'" }, - { "kind" : "IdRef", "name" : "'N'" } - ] - }, - { - "opname" : "Refract", - "opcode" : 72, - "operands" : [ - { "kind" : "IdRef", "name" : "'I'" }, - { "kind" : "IdRef", "name" : "'N'" }, - { "kind" : "IdRef", "name" : "'eta'" } - ] - }, - { - "opname" : "FindILsb", - "opcode" : 73, - "operands" : [ - { "kind" : "IdRef", "name" : "'Value'" } - ] - }, - { - "opname" : "FindSMsb", - "opcode" : 74, - "operands" : [ - { "kind" : "IdRef", "name" : "'Value'" } - ] - }, - { - "opname" : "FindUMsb", - "opcode" : 75, - "operands" : [ - { "kind" : "IdRef", "name" : "'Value'" } - ] - }, - { - "opname" : "InterpolateAtCentroid", - "opcode" : 76, - "operands" : [ - { "kind" : "IdRef", "name" : "'interpolant'" } - ], - "capabilities" : [ "InterpolationFunction" ] - }, - { - "opname" : "InterpolateAtSample", - "opcode" : 77, - "operands" : [ - { "kind" : "IdRef", "name" : "'interpolant'" }, - { "kind" : "IdRef", "name" : "'sample'" } - ], - "capabilities" : [ "InterpolationFunction" ] - }, - { - "opname" : "InterpolateAtOffset", - "opcode" : 78, - "operands" : [ - { "kind" : "IdRef", "name" : "'interpolant'" }, - { "kind" : "IdRef", "name" : "'offset'" } - ], - "capabilities" : [ "InterpolationFunction" ] - }, - { - "opname" : "NMin", - "opcode" : 79, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" }, - { "kind" : "IdRef", "name" : "'y'" } - ] - }, - { - "opname" : "NMax", - "opcode" : 80, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" }, - { "kind" : "IdRef", "name" : "'y'" } - ] - }, - { - "opname" : "NClamp", - "opcode" : 81, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" }, - { "kind" : "IdRef", "name" : "'minVal'" }, - { "kind" : "IdRef", "name" : "'maxVal'" } - ] - } - ] -} diff --git a/Extern/3rdParty/shaderc/shaderc/include/spirv/1.2/extinst.opencl.std.100.grammar.json b/Extern/3rdParty/shaderc/shaderc/include/spirv/1.2/extinst.opencl.std.100.grammar.json deleted file mode 100644 index 4fe4506..0000000 --- a/Extern/3rdParty/shaderc/shaderc/include/spirv/1.2/extinst.opencl.std.100.grammar.json +++ /dev/null @@ -1,1279 +0,0 @@ -{ - "copyright" : [ - "Copyright (c) 2014-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." - ], - "version" : 100, - "revision" : 2, - "instructions" : [ - { - "opname" : "acos", - "opcode" : 0, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" } - ] - }, - { - "opname" : "acosh", - "opcode" : 1, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" } - ] - }, - { - "opname" : "acospi", - "opcode" : 2, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" } - ] - }, - { - "opname" : "asin", - "opcode" : 3, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" } - ] - }, - { - "opname" : "asinh", - "opcode" : 4, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" } - ] - }, - { - "opname" : "asinpi", - "opcode" : 5, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" } - ] - }, - { - "opname" : "atan", - "opcode" : 6, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" } - ] - }, - { - "opname" : "atan2", - "opcode" : 7, - "operands" : [ - { "kind" : "IdRef", "name" : "'y'" }, - { "kind" : "IdRef", "name" : "'x'" } - ] - }, - { - "opname" : "atanh", - "opcode" : 8, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" } - ] - }, - { - "opname" : "atanpi", - "opcode" : 9, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" } - ] - }, - { - "opname" : "atan2pi", - "opcode" : 10, - "operands" : [ - { "kind" : "IdRef", "name" : "'y'" }, - { "kind" : "IdRef", "name" : "'x'" } - ] - }, - { - "opname" : "cbrt", - "opcode" : 11, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" } - ] - }, - { - "opname" : "ceil", - "opcode" : 12, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" } - ] - }, - { - "opname" : "copysign", - "opcode" : 13, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" }, - { "kind" : "IdRef", "name" : "'y'" } - ] - }, - { - "opname" : "cos", - "opcode" : 14, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" } - ] - }, - { - "opname" : "cosh", - "opcode" : 15, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" } - ] - }, - { - "opname" : "cospi", - "opcode" : 16, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" } - ] - }, - { - "opname" : "erfc", - "opcode" : 17, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" } - ] - }, - { - "opname" : "erf", - "opcode" : 18, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" } - ] - }, - { - "opname" : "exp", - "opcode" : 19, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" } - ] - }, - { - "opname" : "exp2", - "opcode" : 20, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" } - ] - }, - { - "opname" : "exp10", - "opcode" : 21, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" } - ] - }, - { - "opname" : "expm1", - "opcode" : 22, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" } - ] - }, - { - "opname" : "fabs", - "opcode" : 23, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" } - ] - }, - { - "opname" : "fdim", - "opcode" : 24, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" }, - { "kind" : "IdRef", "name" : "'y'" } - ] - }, - { - "opname" : "floor", - "opcode" : 25, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" } - ] - }, - { - "opname" : "fma", - "opcode" : 26, - "operands" : [ - { "kind" : "IdRef", "name" : "'a'" }, - { "kind" : "IdRef", "name" : "'b'" }, - { "kind" : "IdRef", "name" : "'c'" } - ] - }, - { - "opname" : "fmax", - "opcode" : 27, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" }, - { "kind" : "IdRef", "name" : "'y'" } - ] - }, - { - "opname" : "fmin", - "opcode" : 28, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" }, - { "kind" : "IdRef", "name" : "'y'" } - ] - }, - { - "opname" : "fmod", - "opcode" : 29, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" }, - { "kind" : "IdRef", "name" : "'y'" } - ] - }, - { - "opname" : "fract", - "opcode" : 30, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" }, - { "kind" : "IdRef", "name" : "'ptr'" } - ] - }, - { - "opname" : "frexp", - "opcode" : 31, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" }, - { "kind" : "IdRef", "name" : "'exp'" } - ] - }, - { - "opname" : "hypot", - "opcode" : 32, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" }, - { "kind" : "IdRef", "name" : "'y'" } - ] - }, - { - "opname" : "ilogb", - "opcode" : 33, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" } - ] - }, - { - "opname" : "ldexp", - "opcode" : 34, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" }, - { "kind" : "IdRef", "name" : "'k'" } - ] - }, - { - "opname" : "lgamma", - "opcode" : 35, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" } - ] - }, - { - "opname" : "lgamma_r", - "opcode" : 36, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" }, - { "kind" : "IdRef", "name" : "'signp'" } - ] - }, - { - "opname" : "log", - "opcode" : 37, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" } - ] - }, - { - "opname" : "log2", - "opcode" : 38, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" } - ] - }, - { - "opname" : "log10", - "opcode" : 39, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" } - ] - }, - { - "opname" : "log1p", - "opcode" : 40, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" } - ] - }, - { - "opname" : "logb", - "opcode" : 41, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" } - ] - }, - { - "opname" : "mad", - "opcode" : 42, - "operands" : [ - { "kind" : "IdRef", "name" : "'a'" }, - { "kind" : "IdRef", "name" : "'b'" }, - { "kind" : "IdRef", "name" : "'c'" } - ] - }, - { - "opname" : "maxmag", - "opcode" : 43, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" }, - { "kind" : "IdRef", "name" : "'y'" } - ] - }, - { - "opname" : "minmag", - "opcode" : 44, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" }, - { "kind" : "IdRef", "name" : "'y'" } - ] - }, - { - "opname" : "modf", - "opcode" : 45, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" }, - { "kind" : "IdRef", "name" : "'iptr'" } - ] - }, - { - "opname" : "nan", - "opcode" : 46, - "operands" : [ - { "kind" : "IdRef", "name" : "'nancode'" } - ] - }, - { - "opname" : "nextafter", - "opcode" : 47, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" }, - { "kind" : "IdRef", "name" : "'y'" } - ] - }, - { - "opname" : "pow", - "opcode" : 48, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" }, - { "kind" : "IdRef", "name" : "'y" } - ] - }, - { - "opname" : "pown", - "opcode" : 49, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" }, - { "kind" : "IdRef", "name" : "'y'" } - ] - }, - { - "opname" : "powr", - "opcode" : 50, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" }, - { "kind" : "IdRef", "name" : "'y'" } - ] - }, - { - "opname" : "remainder", - "opcode" : 51, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" }, - { "kind" : "IdRef", "name" : "'y'" } - ] - }, - { - "opname" : "remquo", - "opcode" : 52, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" }, - { "kind" : "IdRef", "name" : "'y'" }, - { "kind" : "IdRef", "name" : "'quo'" } - ] - }, - { - "opname" : "rint", - "opcode" : 53, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" } - ] - }, - { - "opname" : "rootn", - "opcode" : 54, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" }, - { "kind" : "IdRef", "name" : "'y'" } - ] - }, - { - "opname" : "round", - "opcode" : 55, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" } - ] - }, - { - "opname" : "rsqrt", - "opcode" : 56, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" } - ] - }, - { - "opname" : "sin", - "opcode" : 57, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" } - ] - }, - { - "opname" : "sincos", - "opcode" : 58, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" }, - { "kind" : "IdRef", "name" : "'cosval'" } - ] - }, - { - "opname" : "sinh", - "opcode" : 59, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" } - ] - }, - { - "opname" : "sinpi", - "opcode" : 60, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" } - ] - }, - { - "opname" : "sqrt", - "opcode" : 61, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" } - ] - }, - { - "opname" : "tan", - "opcode" : 62, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" } - ] - }, - { - "opname" : "tanh", - "opcode" : 63, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" } - ] - }, - { - "opname" : "tanpi", - "opcode" : 64, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" } - ] - }, - { - "opname" : "tgamma", - "opcode" : 65, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" } - ] - }, - { - "opname" : "trunc", - "opcode" : 66, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" } - ] - }, - { - "opname" : "half_cos", - "opcode" : 67, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" } - ] - }, - { - "opname" : "half_divide", - "opcode" : 68, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" }, - { "kind" : "IdRef", "name" : "'y'" } - ] - }, - { - "opname" : "half_exp", - "opcode" : 69, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" } - ] - }, - { - "opname" : "half_exp2", - "opcode" : 70, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" } - ] - }, - { - "opname" : "half_exp10", - "opcode" : 71, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" } - ] - }, - { - "opname" : "half_log", - "opcode" : 72, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" } - ] - }, - { - "opname" : "half_log2", - "opcode" : 73, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" } - ] - }, - { - "opname" : "half_log10", - "opcode" : 74, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" } - ] - }, - { - "opname" : "half_powr", - "opcode" : 75, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" }, - { "kind" : "IdRef", "name" : "'y'" } - ] - }, - { - "opname" : "half_recip", - "opcode" : 76, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" } - ] - }, - { - "opname" : "half_rsqrt", - "opcode" : 77, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" } - ] - }, - { - "opname" : "half_sin", - "opcode" : 78, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" } - ] - }, - { - "opname" : "half_sqrt", - "opcode" : 79, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" } - ] - }, - { - "opname" : "half_tan", - "opcode" : 80, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" } - ] - }, - { - "opname" : "native_cos", - "opcode" : 81, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" } - ] - }, - { - "opname" : "native_divide", - "opcode" : 82, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" }, - { "kind" : "IdRef", "name" : "'y'" } - ] - }, - { - "opname" : "native_exp", - "opcode" : 83, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" } - ] - }, - { - "opname" : "native_exp2", - "opcode" : 84, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" } - ] - }, - { - "opname" : "native_exp10", - "opcode" : 85, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" } - ] - }, - { - "opname" : "native_log", - "opcode" : 86, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" } - ] - }, - { - "opname" : "native_log2", - "opcode" : 87, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" } - ] - }, - { - "opname" : "native_log10", - "opcode" : 88, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" } - ] - }, - { - "opname" : "native_powr", - "opcode" : 89, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" }, - { "kind" : "IdRef", "name" : "'y'" } - ] - }, - { - "opname" : "native_recip", - "opcode" : 90, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" } - ] - }, - { - "opname" : "native_rsqrt", - "opcode" : 91, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" } - ] - }, - { - "opname" : "native_sin", - "opcode" : 92, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" } - ] - }, - { - "opname" : "native_sqrt", - "opcode" : 93, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" } - ] - }, - { - "opname" : "native_tan", - "opcode" : 94, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" } - ] - }, - { - "opname" : "s_abs", - "opcode" : 141, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" } - ] - }, - { - "opname" : "s_abs_diff", - "opcode" : 142, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" }, - { "kind" : "IdRef", "name" : "'y'" } - ] - }, - { - "opname" : "s_add_sat", - "opcode" : 143, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" }, - { "kind" : "IdRef", "name" : "'y'" } - ] - }, - { - "opname" : "u_add_sat", - "opcode" : 144, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" }, - { "kind" : "IdRef", "name" : "'y'" } - ] - }, - { - "opname" : "s_hadd", - "opcode" : 145, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" }, - { "kind" : "IdRef", "name" : "'y'" } - ] - }, - { - "opname" : "u_hadd", - "opcode" : 146, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" }, - { "kind" : "IdRef", "name" : "'y'" } - ] - }, - { - "opname" : "s_rhadd", - "opcode" : 147, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" }, - { "kind" : "IdRef", "name" : "'y'" } - ] - }, - { - "opname" : "u_rhadd", - "opcode" : 148, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" }, - { "kind" : "IdRef", "name" : "'y'" } - ] - }, - { - "opname" : "s_clamp", - "opcode" : 149, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" }, - { "kind" : "IdRef", "name" : "'minval'" }, - { "kind" : "IdRef", "name" : "'maxval'" } - ] - }, - { - "opname" : "u_clamp", - "opcode" : 150, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" }, - { "kind" : "IdRef", "name" : "'minval'" }, - { "kind" : "IdRef", "name" : "'maxval'" } - ] - }, - { - "opname" : "clz", - "opcode" : 151, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" } - ] - }, - { - "opname" : "ctz", - "opcode" : 152, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" } - ] - }, - { - "opname" : "s_mad_hi", - "opcode" : 153, - "operands" : [ - { "kind" : "IdRef", "name" : "'a'" }, - { "kind" : "IdRef", "name" : "'b'" }, - { "kind" : "IdRef", "name" : "'c'" } - ] - }, - { - "opname" : "u_mad_sat", - "opcode" : 154, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" }, - { "kind" : "IdRef", "name" : "'y'" }, - { "kind" : "IdRef", "name" : "'z'" } - ] - }, - { - "opname" : "s_mad_sat", - "opcode" : 155, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" }, - { "kind" : "IdRef", "name" : "'y'" }, - { "kind" : "IdRef", "name" : "'z'" } - ] - }, - { - "opname" : "s_max", - "opcode" : 156, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" }, - { "kind" : "IdRef", "name" : "'y'" } - ] - }, - { - "opname" : "u_max", - "opcode" : 157, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" }, - { "kind" : "IdRef", "name" : "'y'" } - ] - }, - { - "opname" : "s_min", - "opcode" : 158, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" }, - { "kind" : "IdRef", "name" : "'y'" } - ] - }, - { - "opname" : "u_min", - "opcode" : 159, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" }, - { "kind" : "IdRef", "name" : "'y'" } - ] - }, - { - "opname" : "s_mul_hi", - "opcode" : 160, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" }, - { "kind" : "IdRef", "name" : "'y'" } - ] - }, - { - "opname" : "rotate", - "opcode" : 161, - "operands" : [ - { "kind" : "IdRef", "name" : "'v'" }, - { "kind" : "IdRef", "name" : "'i'" } - ] - }, - { - "opname" : "s_sub_sat", - "opcode" : 162, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" }, - { "kind" : "IdRef", "name" : "'y'" } - ] - }, - { - "opname" : "u_sub_sat", - "opcode" : 163, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" }, - { "kind" : "IdRef", "name" : "'y'" } - ] - }, - { - "opname" : "u_upsample", - "opcode" : 164, - "operands" : [ - { "kind" : "IdRef", "name" : "'hi'" }, - { "kind" : "IdRef", "name" : "'lo'" } - ] - }, - { - "opname" : "s_upsample", - "opcode" : 165, - "operands" : [ - { "kind" : "IdRef", "name" : "'hi'" }, - { "kind" : "IdRef", "name" : "'lo'" } - ] - }, - { - "opname" : "popcount", - "opcode" : 166, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" } - ] - }, - { - "opname" : "s_mad24", - "opcode" : 167, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" }, - { "kind" : "IdRef", "name" : "'y'" }, - { "kind" : "IdRef", "name" : "'z'" } - ] - }, - { - "opname" : "u_mad24", - "opcode" : 168, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" }, - { "kind" : "IdRef", "name" : "'y'" }, - { "kind" : "IdRef", "name" : "'z'" } - ] - }, - { - "opname" : "s_mul24", - "opcode" : 169, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" }, - { "kind" : "IdRef", "name" : "'y'" } - ] - }, - { - "opname" : "u_mul24", - "opcode" : 170, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" }, - { "kind" : "IdRef", "name" : "'y'" } - ] - }, - { - "opname" : "u_abs", - "opcode" : 201, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" } - ] - }, - { - "opname" : "u_abs_diff", - "opcode" : 202, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" }, - { "kind" : "IdRef", "name" : "'y'" } - ] - }, - { - "opname" : "u_mul_hi", - "opcode" : 203, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" }, - { "kind" : "IdRef", "name" : "'y'" } - ] - }, - { - "opname" : "u_mad_hi", - "opcode" : 204, - "operands" : [ - { "kind" : "IdRef", "name" : "'a'" }, - { "kind" : "IdRef", "name" : "'b'" }, - { "kind" : "IdRef", "name" : "'c'" } - ] - }, - { - "opname" : "fclamp", - "opcode" : 95, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" }, - { "kind" : "IdRef", "name" : "'minval'" }, - { "kind" : "IdRef", "name" : "'maxval'" } - ] - }, - { - "opname" : "degrees", - "opcode" :96, - "operands" : [ - { "kind" : "IdRef", "name" : "'radians'" } - ] - }, - { - "opname" : "fmax_common", - "opcode" : 97, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" }, - { "kind" : "IdRef", "name" : "'y'" } - ] - }, - { - "opname" : "fmin_common", - "opcode" : 98, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" }, - { "kind" : "IdRef", "name" : "'y'" } - ] - }, - { - "opname" : "mix", - "opcode" : 99, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" }, - { "kind" : "IdRef", "name" : "'y'" }, - { "kind" : "IdRef", "name" : "'a'" } - ] - }, - { - "opname" : "radians", - "opcode" : 100, - "operands" : [ - { "kind" : "IdRef", "name" : "'degrees'" } - ] - }, - { - "opname" : "step", - "opcode" : 101, - "operands" : [ - { "kind" : "IdRef", "name" : "'edge'" }, - { "kind" : "IdRef", "name" : "'x'" } - ] - }, - { - "opname" : "smoothstep", - "opcode" : 102, - "operands" : [ - { "kind" : "IdRef", "name" : "'edge0'" }, - { "kind" : "IdRef", "name" : "'edge1'" }, - { "kind" : "IdRef", "name" : "'x'" } - ] - }, - { - "opname" : "sign", - "opcode" : 103, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" } - ] - }, - { - "opname" : "cross", - "opcode" : 104, - "operands" : [ - { "kind" : "IdRef", "name" : "'p0'" }, - { "kind" : "IdRef", "name" : "'p1'" } - ] - }, - { - "opname" : "distance", - "opcode" : 105, - "operands" : [ - { "kind" : "IdRef", "name" : "'p0'" }, - { "kind" : "IdRef", "name" : "'p1'" } - ] - }, - { - "opname" : "length", - "opcode" : 106, - "operands" : [ - { "kind" : "IdRef", "name" : "'p'" } - ] - }, - { - "opname" : "normalize", - "opcode" : 107, - "operands" : [ - { "kind" : "IdRef", "name" : "'p'" } - ] - }, - { - "opname" : "fast_distance", - "opcode" : 108, - "operands" : [ - { "kind" : "IdRef", "name" : "'p0'" }, - { "kind" : "IdRef", "name" : "'p1'" } - ] - }, - { - "opname" : "fast_length", - "opcode" : 109, - "operands" : [ - { "kind" : "IdRef", "name" : "'p'" } - ] - }, - { - "opname" : "fast_normalize", - "opcode" : 110, - "operands" : [ - { "kind" : "IdRef", "name" : "'p'" } - ] - }, - { - "opname" : "bitselect", - "opcode" : 186, - "operands" : [ - { "kind" : "IdRef", "name" : "'a'" }, - { "kind" : "IdRef", "name" : "'b'" }, - { "kind" : "IdRef", "name" : "'c'" } - ] - }, - { - "opname" : "select", - "opcode" : 187, - "operands" : [ - { "kind" : "IdRef", "name" : "'a'" }, - { "kind" : "IdRef", "name" : "'b'" }, - { "kind" : "IdRef", "name" : "'c'" } - ] - }, - { - "opname" : "vloadn", - "opcode" : 171, - "operands" : [ - { "kind" : "IdRef", "name" : "'offset'" }, - { "kind" : "IdRef", "name" : "'p'" }, - { "kind" : "LiteralInteger", "name" : "'n'" } - ] - }, - { - "opname" : "vstoren", - "opcode" : 172, - "operands" : [ - { "kind" : "IdRef", "name" : "'data'" }, - { "kind" : "IdRef", "name" : "'offset'" }, - { "kind" : "IdRef", "name" : "'p'" } - ] - }, - { - "opname" : "vload_half", - "opcode" : 173, - "operands" : [ - { "kind" : "IdRef", "name" : "'offset'" }, - { "kind" : "IdRef", "name" : "'p'" } - ] - }, - { - "opname" : "vload_halfn", - "opcode" : 174, - "operands" : [ - { "kind" : "IdRef", "name" : "'offset'" }, - { "kind" : "IdRef", "name" : "'p'" }, - { "kind" : "LiteralInteger", "name" : "'n'" } - ] - }, - { - "opname" : "vstore_half", - "opcode" : 175, - "operands" : [ - { "kind" : "IdRef", "name" : "'data'" }, - { "kind" : "IdRef", "name" : "'offset'" }, - { "kind" : "IdRef", "name" : "'p'" } - ] - }, - { - "opname" : "vstore_half_r", - "opcode" : 176, - "operands" : [ - { "kind" : "IdRef", "name" : "'data'" }, - { "kind" : "IdRef", "name" : "'offset'" }, - { "kind" : "IdRef", "name" : "'p'" }, - { "kind" : "FPRoundingMode", "name" : "'mode'" } - ] - }, - { - "opname" : "vstore_halfn", - "opcode" : 177, - "operands" : [ - { "kind" : "IdRef", "name" : "'data'" }, - { "kind" : "IdRef", "name" : "'offset'" }, - { "kind" : "IdRef", "name" : "'p'" } - ] - }, - { - "opname" : "vstore_halfn_r", - "opcode" : 178, - "operands" : [ - { "kind" : "IdRef", "name" : "'data'" }, - { "kind" : "IdRef", "name" : "'offset'" }, - { "kind" : "IdRef", "name" : "'p'" }, - { "kind" : "FPRoundingMode", "name" : "'mode'" } - ] - }, - { - "opname" : "vloada_halfn", - "opcode" : 179, - "operands" : [ - { "kind" : "IdRef", "name" : "'offset'" }, - { "kind" : "IdRef", "name" : "'p'" }, - { "kind" : "LiteralInteger", "name" : "'n'" } - ] - }, - { - "opname" : "vstorea_halfn", - "opcode" : 180, - "operands" : [ - { "kind" : "IdRef", "name" : "'data'" }, - { "kind" : "IdRef", "name" : "'offset'" }, - { "kind" : "IdRef", "name" : "'p'" } - ] - }, - { - "opname" : "vstorea_halfn_r", - "opcode" : 181, - "operands" : [ - { "kind" : "IdRef", "name" : "'data'" }, - { "kind" : "IdRef", "name" : "'offset'" }, - { "kind" : "IdRef", "name" : "'p'" }, - { "kind" : "FPRoundingMode", "name" : "'mode'" } - ] - }, - { - "opname" : "shuffle", - "opcode" : 182, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" }, - { "kind" : "IdRef", "name" : "'shuffle mask'" } - ] - }, - { - "opname" : "shuffle2", - "opcode" : 183, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" }, - { "kind" : "IdRef", "name" : "'y'" }, - { "kind" : "IdRef", "name" : "'shuffle mask'" } - ] - }, - { - "opname" : "printf", - "opcode" : 184, - "operands" : [ - { "kind" : "IdRef", "name" : "'format'" }, - { "kind" : "IdRef", "name" : "'additional arguments'", "quantifier" : "*" } - ] - }, - { - "opname" : "prefetch", - "opcode" : 185, - "operands" : [ - { "kind" : "IdRef", "name" : "'ptr'" }, - { "kind" : "IdRef", "name" : "'num elements'" } - ] - } - ] -} diff --git a/Extern/3rdParty/shaderc/shaderc/include/spirv/1.2/spirv.core.grammar.json b/Extern/3rdParty/shaderc/shaderc/include/spirv/1.2/spirv.core.grammar.json deleted file mode 100644 index 393ee3c..0000000 --- a/Extern/3rdParty/shaderc/shaderc/include/spirv/1.2/spirv.core.grammar.json +++ /dev/null @@ -1,5986 +0,0 @@ -{ - "copyright" : [ - "Copyright (c) 2014-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." - ], - "magic_number" : "0x07230203", - "major_version" : 1, - "minor_version" : 2, - "revision" : 2, - "instructions" : [ - { - "opname" : "OpNop", - "opcode" : 0 - }, - { - "opname" : "OpUndef", - "opcode" : 1, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" } - ] - }, - { - "opname" : "OpSourceContinued", - "opcode" : 2, - "operands" : [ - { "kind" : "LiteralString", "name" : "'Continued Source'" } - ] - }, - { - "opname" : "OpSource", - "opcode" : 3, - "operands" : [ - { "kind" : "SourceLanguage" }, - { "kind" : "LiteralInteger", "name" : "'Version'" }, - { "kind" : "IdRef", "quantifier" : "?", "name" : "'File'" }, - { "kind" : "LiteralString", "quantifier" : "?", "name" : "'Source'" } - ] - }, - { - "opname" : "OpSourceExtension", - "opcode" : 4, - "operands" : [ - { "kind" : "LiteralString", "name" : "'Extension'" } - ] - }, - { - "opname" : "OpName", - "opcode" : 5, - "operands" : [ - { "kind" : "IdRef", "name" : "'Target'" }, - { "kind" : "LiteralString", "name" : "'Name'" } - ] - }, - { - "opname" : "OpMemberName", - "opcode" : 6, - "operands" : [ - { "kind" : "IdRef", "name" : "'Type'" }, - { "kind" : "LiteralInteger", "name" : "'Member'" }, - { "kind" : "LiteralString", "name" : "'Name'" } - ] - }, - { - "opname" : "OpString", - "opcode" : 7, - "operands" : [ - { "kind" : "IdResult" }, - { "kind" : "LiteralString", "name" : "'String'" } - ] - }, - { - "opname" : "OpLine", - "opcode" : 8, - "operands" : [ - { "kind" : "IdRef", "name" : "'File'" }, - { "kind" : "LiteralInteger", "name" : "'Line'" }, - { "kind" : "LiteralInteger", "name" : "'Column'" } - ] - }, - { - "opname" : "OpExtension", - "opcode" : 10, - "operands" : [ - { "kind" : "LiteralString", "name" : "'Name'" } - ] - }, - { - "opname" : "OpExtInstImport", - "opcode" : 11, - "operands" : [ - { "kind" : "IdResult" }, - { "kind" : "LiteralString", "name" : "'Name'" } - ] - }, - { - "opname" : "OpExtInst", - "opcode" : 12, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Set'" }, - { "kind" : "LiteralExtInstInteger", "name" : "'Instruction'" }, - { "kind" : "IdRef", "quantifier" : "*", "name" : "'Operand 1', +\n'Operand 2', +\n..." } - ] - }, - { - "opname" : "OpMemoryModel", - "opcode" : 14, - "operands" : [ - { "kind" : "AddressingModel" }, - { "kind" : "MemoryModel" } - ] - }, - { - "opname" : "OpEntryPoint", - "opcode" : 15, - "operands" : [ - { "kind" : "ExecutionModel" }, - { "kind" : "IdRef", "name" : "'Entry Point'" }, - { "kind" : "LiteralString", "name" : "'Name'" }, - { "kind" : "IdRef", "quantifier" : "*", "name" : "'Interface'" } - ] - }, - { - "opname" : "OpExecutionMode", - "opcode" : 16, - "operands" : [ - { "kind" : "IdRef", "name" : "'Entry Point'" }, - { "kind" : "ExecutionMode", "name" : "'Mode'" } - ] - }, - { - "opname" : "OpCapability", - "opcode" : 17, - "operands" : [ - { "kind" : "Capability", "name" : "'Capability'" } - ] - }, - { - "opname" : "OpTypeVoid", - "opcode" : 19, - "operands" : [ - { "kind" : "IdResult" } - ] - }, - { - "opname" : "OpTypeBool", - "opcode" : 20, - "operands" : [ - { "kind" : "IdResult" } - ] - }, - { - "opname" : "OpTypeInt", - "opcode" : 21, - "operands" : [ - { "kind" : "IdResult" }, - { "kind" : "LiteralInteger", "name" : "'Width'" }, - { "kind" : "LiteralInteger", "name" : "'Signedness'" } - ] - }, - { - "opname" : "OpTypeFloat", - "opcode" : 22, - "operands" : [ - { "kind" : "IdResult" }, - { "kind" : "LiteralInteger", "name" : "'Width'" } - ] - }, - { - "opname" : "OpTypeVector", - "opcode" : 23, - "operands" : [ - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Component Type'" }, - { "kind" : "LiteralInteger", "name" : "'Component Count'" } - ] - }, - { - "opname" : "OpTypeMatrix", - "opcode" : 24, - "operands" : [ - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Column Type'" }, - { "kind" : "LiteralInteger", "name" : "'Column Count'" } - ], - "capabilities" : [ "Matrix" ] - }, - { - "opname" : "OpTypeImage", - "opcode" : 25, - "operands" : [ - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Sampled Type'" }, - { "kind" : "Dim" }, - { "kind" : "LiteralInteger", "name" : "'Depth'" }, - { "kind" : "LiteralInteger", "name" : "'Arrayed'" }, - { "kind" : "LiteralInteger", "name" : "'MS'" }, - { "kind" : "LiteralInteger", "name" : "'Sampled'" }, - { "kind" : "ImageFormat" }, - { "kind" : "AccessQualifier", "quantifier" : "?" } - ] - }, - { - "opname" : "OpTypeSampler", - "opcode" : 26, - "operands" : [ - { "kind" : "IdResult" } - ] - }, - { - "opname" : "OpTypeSampledImage", - "opcode" : 27, - "operands" : [ - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Image Type'" } - ] - }, - { - "opname" : "OpTypeArray", - "opcode" : 28, - "operands" : [ - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Element Type'" }, - { "kind" : "IdRef", "name" : "'Length'" } - ] - }, - { - "opname" : "OpTypeRuntimeArray", - "opcode" : 29, - "operands" : [ - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Element Type'" } - ], - "capabilities" : [ "Shader" ] - }, - { - "opname" : "OpTypeStruct", - "opcode" : 30, - "operands" : [ - { "kind" : "IdResult" }, - { "kind" : "IdRef", "quantifier" : "*", "name" : "'Member 0 type', +\n'member 1 type', +\n..." } - ] - }, - { - "opname" : "OpTypeOpaque", - "opcode" : 31, - "operands" : [ - { "kind" : "IdResult" }, - { "kind" : "LiteralString", "name" : "The name of the opaque type." } - ], - "capabilities" : [ "Kernel" ] - }, - { - "opname" : "OpTypePointer", - "opcode" : 32, - "operands" : [ - { "kind" : "IdResult" }, - { "kind" : "StorageClass" }, - { "kind" : "IdRef", "name" : "'Type'" } - ] - }, - { - "opname" : "OpTypeFunction", - "opcode" : 33, - "operands" : [ - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Return Type'" }, - { "kind" : "IdRef", "quantifier" : "*", "name" : "'Parameter 0 Type', +\n'Parameter 1 Type', +\n..." } - ] - }, - { - "opname" : "OpTypeEvent", - "opcode" : 34, - "operands" : [ - { "kind" : "IdResult" } - ], - "capabilities" : [ "Kernel" ] - }, - { - "opname" : "OpTypeDeviceEvent", - "opcode" : 35, - "operands" : [ - { "kind" : "IdResult" } - ], - "capabilities" : [ "DeviceEnqueue" ] - }, - { - "opname" : "OpTypeReserveId", - "opcode" : 36, - "operands" : [ - { "kind" : "IdResult" } - ], - "capabilities" : [ "Pipes" ] - }, - { - "opname" : "OpTypeQueue", - "opcode" : 37, - "operands" : [ - { "kind" : "IdResult" } - ], - "capabilities" : [ "DeviceEnqueue" ] - }, - { - "opname" : "OpTypePipe", - "opcode" : 38, - "operands" : [ - { "kind" : "IdResult" }, - { "kind" : "AccessQualifier", "name" : "'Qualifier'" } - ], - "capabilities" : [ "Pipes" ] - }, - { - "opname" : "OpTypeForwardPointer", - "opcode" : 39, - "operands" : [ - { "kind" : "IdRef", "name" : "'Pointer Type'" }, - { "kind" : "StorageClass" } - ], - "capabilities" : [ "Addresses" ] - }, - { - "opname" : "OpConstantTrue", - "opcode" : 41, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" } - ] - }, - { - "opname" : "OpConstantFalse", - "opcode" : 42, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" } - ] - }, - { - "opname" : "OpConstant", - "opcode" : 43, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "LiteralContextDependentNumber", "name" : "'Value'" } - ] - }, - { - "opname" : "OpConstantComposite", - "opcode" : 44, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "quantifier" : "*", "name" : "'Constituents'" } - ] - }, - { - "opname" : "OpConstantSampler", - "opcode" : 45, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "SamplerAddressingMode" }, - { "kind" : "LiteralInteger", "name" : "'Param'" }, - { "kind" : "SamplerFilterMode" } - ], - "capabilities" : [ "LiteralSampler" ] - }, - { - "opname" : "OpConstantNull", - "opcode" : 46, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" } - ] - }, - { - "opname" : "OpSpecConstantTrue", - "opcode" : 48, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" } - ] - }, - { - "opname" : "OpSpecConstantFalse", - "opcode" : 49, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" } - ] - }, - { - "opname" : "OpSpecConstant", - "opcode" : 50, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "LiteralContextDependentNumber", "name" : "'Value'" } - ] - }, - { - "opname" : "OpSpecConstantComposite", - "opcode" : 51, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "quantifier" : "*", "name" : "'Constituents'" } - ] - }, - { - "opname" : "OpSpecConstantOp", - "opcode" : 52, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "LiteralSpecConstantOpInteger", "name" : "'Opcode'" } - ] - }, - { - "opname" : "OpFunction", - "opcode" : 54, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "FunctionControl" }, - { "kind" : "IdRef", "name" : "'Function Type'" } - ] - }, - { - "opname" : "OpFunctionParameter", - "opcode" : 55, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" } - ] - }, - { - "opname" : "OpFunctionEnd", - "opcode" : 56 - }, - { - "opname" : "OpFunctionCall", - "opcode" : 57, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Function'" }, - { "kind" : "IdRef", "quantifier" : "*", "name" : "'Argument 0', +\n'Argument 1', +\n..." } - ] - }, - { - "opname" : "OpVariable", - "opcode" : 59, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "StorageClass" }, - { "kind" : "IdRef", "quantifier" : "?", "name" : "'Initializer'" } - ] - }, - { - "opname" : "OpImageTexelPointer", - "opcode" : 60, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Image'" }, - { "kind" : "IdRef", "name" : "'Coordinate'" }, - { "kind" : "IdRef", "name" : "'Sample'" } - ] - }, - { - "opname" : "OpLoad", - "opcode" : 61, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Pointer'" }, - { "kind" : "MemoryAccess", "quantifier" : "?" } - ] - }, - { - "opname" : "OpStore", - "opcode" : 62, - "operands" : [ - { "kind" : "IdRef", "name" : "'Pointer'" }, - { "kind" : "IdRef", "name" : "'Object'" }, - { "kind" : "MemoryAccess", "quantifier" : "?" } - ] - }, - { - "opname" : "OpCopyMemory", - "opcode" : 63, - "operands" : [ - { "kind" : "IdRef", "name" : "'Target'" }, - { "kind" : "IdRef", "name" : "'Source'" }, - { "kind" : "MemoryAccess", "quantifier" : "?" } - ] - }, - { - "opname" : "OpCopyMemorySized", - "opcode" : 64, - "operands" : [ - { "kind" : "IdRef", "name" : "'Target'" }, - { "kind" : "IdRef", "name" : "'Source'" }, - { "kind" : "IdRef", "name" : "'Size'" }, - { "kind" : "MemoryAccess", "quantifier" : "?" } - ], - "capabilities" : [ "Addresses" ] - }, - { - "opname" : "OpAccessChain", - "opcode" : 65, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Base'" }, - { "kind" : "IdRef", "quantifier" : "*", "name" : "'Indexes'" } - ] - }, - { - "opname" : "OpInBoundsAccessChain", - "opcode" : 66, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Base'" }, - { "kind" : "IdRef", "quantifier" : "*", "name" : "'Indexes'" } - ] - }, - { - "opname" : "OpPtrAccessChain", - "opcode" : 67, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Base'" }, - { "kind" : "IdRef", "name" : "'Element'" }, - { "kind" : "IdRef", "quantifier" : "*", "name" : "'Indexes'" } - ], - "capabilities" : [ - "Addresses", - "VariablePointers", - "VariablePointersStorageBuffer" - ] - }, - { - "opname" : "OpArrayLength", - "opcode" : 68, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Structure'" }, - { "kind" : "LiteralInteger", "name" : "'Array member'" } - ], - "capabilities" : [ "Shader" ] - }, - { - "opname" : "OpGenericPtrMemSemantics", - "opcode" : 69, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Pointer'" } - ], - "capabilities" : [ "Kernel" ] - }, - { - "opname" : "OpInBoundsPtrAccessChain", - "opcode" : 70, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Base'" }, - { "kind" : "IdRef", "name" : "'Element'" }, - { "kind" : "IdRef", "quantifier" : "*", "name" : "'Indexes'" } - ], - "capabilities" : [ "Addresses" ] - }, - { - "opname" : "OpDecorate", - "opcode" : 71, - "operands" : [ - { "kind" : "IdRef", "name" : "'Target'" }, - { "kind" : "Decoration" } - ] - }, - { - "opname" : "OpMemberDecorate", - "opcode" : 72, - "operands" : [ - { "kind" : "IdRef", "name" : "'Structure Type'" }, - { "kind" : "LiteralInteger", "name" : "'Member'" }, - { "kind" : "Decoration" } - ] - }, - { - "opname" : "OpDecorationGroup", - "opcode" : 73, - "operands" : [ - { "kind" : "IdResult" } - ] - }, - { - "opname" : "OpGroupDecorate", - "opcode" : 74, - "operands" : [ - { "kind" : "IdRef", "name" : "'Decoration Group'" }, - { "kind" : "IdRef", "quantifier" : "*", "name" : "'Targets'" } - ] - }, - { - "opname" : "OpGroupMemberDecorate", - "opcode" : 75, - "operands" : [ - { "kind" : "IdRef", "name" : "'Decoration Group'" }, - { "kind" : "PairIdRefLiteralInteger", "quantifier" : "*", "name" : "'Targets'" } - ] - }, - { - "opname" : "OpVectorExtractDynamic", - "opcode" : 77, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Vector'" }, - { "kind" : "IdRef", "name" : "'Index'" } - ] - }, - { - "opname" : "OpVectorInsertDynamic", - "opcode" : 78, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Vector'" }, - { "kind" : "IdRef", "name" : "'Component'" }, - { "kind" : "IdRef", "name" : "'Index'" } - ] - }, - { - "opname" : "OpVectorShuffle", - "opcode" : 79, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Vector 1'" }, - { "kind" : "IdRef", "name" : "'Vector 2'" }, - { "kind" : "LiteralInteger", "quantifier" : "*", "name" : "'Components'" } - ] - }, - { - "opname" : "OpCompositeConstruct", - "opcode" : 80, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "quantifier" : "*", "name" : "'Constituents'" } - ] - }, - { - "opname" : "OpCompositeExtract", - "opcode" : 81, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Composite'" }, - { "kind" : "LiteralInteger", "quantifier" : "*", "name" : "'Indexes'" } - ] - }, - { - "opname" : "OpCompositeInsert", - "opcode" : 82, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Object'" }, - { "kind" : "IdRef", "name" : "'Composite'" }, - { "kind" : "LiteralInteger", "quantifier" : "*", "name" : "'Indexes'" } - ] - }, - { - "opname" : "OpCopyObject", - "opcode" : 83, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Operand'" } - ] - }, - { - "opname" : "OpTranspose", - "opcode" : 84, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Matrix'" } - ], - "capabilities" : [ "Matrix" ] - }, - { - "opname" : "OpSampledImage", - "opcode" : 86, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Image'" }, - { "kind" : "IdRef", "name" : "'Sampler'" } - ] - }, - { - "opname" : "OpImageSampleImplicitLod", - "opcode" : 87, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Sampled Image'" }, - { "kind" : "IdRef", "name" : "'Coordinate'" }, - { "kind" : "ImageOperands", "quantifier" : "?" } - ], - "capabilities" : [ "Shader" ] - }, - { - "opname" : "OpImageSampleExplicitLod", - "opcode" : 88, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Sampled Image'" }, - { "kind" : "IdRef", "name" : "'Coordinate'" }, - { "kind" : "ImageOperands" } - ] - }, - { - "opname" : "OpImageSampleDrefImplicitLod", - "opcode" : 89, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Sampled Image'" }, - { "kind" : "IdRef", "name" : "'Coordinate'" }, - { "kind" : "IdRef", "name" : "'D~ref~'" }, - { "kind" : "ImageOperands", "quantifier" : "?" } - ], - "capabilities" : [ "Shader" ] - }, - { - "opname" : "OpImageSampleDrefExplicitLod", - "opcode" : 90, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Sampled Image'" }, - { "kind" : "IdRef", "name" : "'Coordinate'" }, - { "kind" : "IdRef", "name" : "'D~ref~'" }, - { "kind" : "ImageOperands" } - ], - "capabilities" : [ "Shader" ] - }, - { - "opname" : "OpImageSampleProjImplicitLod", - "opcode" : 91, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Sampled Image'" }, - { "kind" : "IdRef", "name" : "'Coordinate'" }, - { "kind" : "ImageOperands", "quantifier" : "?" } - ], - "capabilities" : [ "Shader" ] - }, - { - "opname" : "OpImageSampleProjExplicitLod", - "opcode" : 92, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Sampled Image'" }, - { "kind" : "IdRef", "name" : "'Coordinate'" }, - { "kind" : "ImageOperands" } - ], - "capabilities" : [ "Shader" ] - }, - { - "opname" : "OpImageSampleProjDrefImplicitLod", - "opcode" : 93, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Sampled Image'" }, - { "kind" : "IdRef", "name" : "'Coordinate'" }, - { "kind" : "IdRef", "name" : "'D~ref~'" }, - { "kind" : "ImageOperands", "quantifier" : "?" } - ], - "capabilities" : [ "Shader" ] - }, - { - "opname" : "OpImageSampleProjDrefExplicitLod", - "opcode" : 94, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Sampled Image'" }, - { "kind" : "IdRef", "name" : "'Coordinate'" }, - { "kind" : "IdRef", "name" : "'D~ref~'" }, - { "kind" : "ImageOperands" } - ], - "capabilities" : [ "Shader" ] - }, - { - "opname" : "OpImageFetch", - "opcode" : 95, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Image'" }, - { "kind" : "IdRef", "name" : "'Coordinate'" }, - { "kind" : "ImageOperands", "quantifier" : "?" } - ] - }, - { - "opname" : "OpImageGather", - "opcode" : 96, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Sampled Image'" }, - { "kind" : "IdRef", "name" : "'Coordinate'" }, - { "kind" : "IdRef", "name" : "'Component'" }, - { "kind" : "ImageOperands", "quantifier" : "?" } - ], - "capabilities" : [ "Shader" ] - }, - { - "opname" : "OpImageDrefGather", - "opcode" : 97, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Sampled Image'" }, - { "kind" : "IdRef", "name" : "'Coordinate'" }, - { "kind" : "IdRef", "name" : "'D~ref~'" }, - { "kind" : "ImageOperands", "quantifier" : "?" } - ], - "capabilities" : [ "Shader" ] - }, - { - "opname" : "OpImageRead", - "opcode" : 98, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Image'" }, - { "kind" : "IdRef", "name" : "'Coordinate'" }, - { "kind" : "ImageOperands", "quantifier" : "?" } - ] - }, - { - "opname" : "OpImageWrite", - "opcode" : 99, - "operands" : [ - { "kind" : "IdRef", "name" : "'Image'" }, - { "kind" : "IdRef", "name" : "'Coordinate'" }, - { "kind" : "IdRef", "name" : "'Texel'" }, - { "kind" : "ImageOperands", "quantifier" : "?" } - ] - }, - { - "opname" : "OpImage", - "opcode" : 100, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Sampled Image'" } - ] - }, - { - "opname" : "OpImageQueryFormat", - "opcode" : 101, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Image'" } - ], - "capabilities" : [ "Kernel" ] - }, - { - "opname" : "OpImageQueryOrder", - "opcode" : 102, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Image'" } - ], - "capabilities" : [ "Kernel" ] - }, - { - "opname" : "OpImageQuerySizeLod", - "opcode" : 103, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Image'" }, - { "kind" : "IdRef", "name" : "'Level of Detail'" } - ], - "capabilities" : [ "Kernel", "ImageQuery" ] - }, - { - "opname" : "OpImageQuerySize", - "opcode" : 104, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Image'" } - ], - "capabilities" : [ "Kernel", "ImageQuery" ] - }, - { - "opname" : "OpImageQueryLod", - "opcode" : 105, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Sampled Image'" }, - { "kind" : "IdRef", "name" : "'Coordinate'" } - ], - "capabilities" : [ "ImageQuery" ] - }, - { - "opname" : "OpImageQueryLevels", - "opcode" : 106, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Image'" } - ], - "capabilities" : [ "Kernel", "ImageQuery" ] - }, - { - "opname" : "OpImageQuerySamples", - "opcode" : 107, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Image'" } - ], - "capabilities" : [ "Kernel", "ImageQuery" ] - }, - { - "opname" : "OpConvertFToU", - "opcode" : 109, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Float Value'" } - ] - }, - { - "opname" : "OpConvertFToS", - "opcode" : 110, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Float Value'" } - ] - }, - { - "opname" : "OpConvertSToF", - "opcode" : 111, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Signed Value'" } - ] - }, - { - "opname" : "OpConvertUToF", - "opcode" : 112, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Unsigned Value'" } - ] - }, - { - "opname" : "OpUConvert", - "opcode" : 113, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Unsigned Value'" } - ] - }, - { - "opname" : "OpSConvert", - "opcode" : 114, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Signed Value'" } - ] - }, - { - "opname" : "OpFConvert", - "opcode" : 115, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Float Value'" } - ] - }, - { - "opname" : "OpQuantizeToF16", - "opcode" : 116, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Value'" } - ] - }, - { - "opname" : "OpConvertPtrToU", - "opcode" : 117, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Pointer'" } - ], - "capabilities" : [ "Addresses" ] - }, - { - "opname" : "OpSatConvertSToU", - "opcode" : 118, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Signed Value'" } - ], - "capabilities" : [ "Kernel" ] - }, - { - "opname" : "OpSatConvertUToS", - "opcode" : 119, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Unsigned Value'" } - ], - "capabilities" : [ "Kernel" ] - }, - { - "opname" : "OpConvertUToPtr", - "opcode" : 120, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Integer Value'" } - ], - "capabilities" : [ "Addresses" ] - }, - { - "opname" : "OpPtrCastToGeneric", - "opcode" : 121, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Pointer'" } - ], - "capabilities" : [ "Kernel" ] - }, - { - "opname" : "OpGenericCastToPtr", - "opcode" : 122, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Pointer'" } - ], - "capabilities" : [ "Kernel" ] - }, - { - "opname" : "OpGenericCastToPtrExplicit", - "opcode" : 123, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Pointer'" }, - { "kind" : "StorageClass", "name" : "'Storage'" } - ], - "capabilities" : [ "Kernel" ] - }, - { - "opname" : "OpBitcast", - "opcode" : 124, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Operand'" } - ] - }, - { - "opname" : "OpSNegate", - "opcode" : 126, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Operand'" } - ] - }, - { - "opname" : "OpFNegate", - "opcode" : 127, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Operand'" } - ] - }, - { - "opname" : "OpIAdd", - "opcode" : 128, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Operand 1'" }, - { "kind" : "IdRef", "name" : "'Operand 2'" } - ] - }, - { - "opname" : "OpFAdd", - "opcode" : 129, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Operand 1'" }, - { "kind" : "IdRef", "name" : "'Operand 2'" } - ] - }, - { - "opname" : "OpISub", - "opcode" : 130, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Operand 1'" }, - { "kind" : "IdRef", "name" : "'Operand 2'" } - ] - }, - { - "opname" : "OpFSub", - "opcode" : 131, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Operand 1'" }, - { "kind" : "IdRef", "name" : "'Operand 2'" } - ] - }, - { - "opname" : "OpIMul", - "opcode" : 132, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Operand 1'" }, - { "kind" : "IdRef", "name" : "'Operand 2'" } - ] - }, - { - "opname" : "OpFMul", - "opcode" : 133, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Operand 1'" }, - { "kind" : "IdRef", "name" : "'Operand 2'" } - ] - }, - { - "opname" : "OpUDiv", - "opcode" : 134, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Operand 1'" }, - { "kind" : "IdRef", "name" : "'Operand 2'" } - ] - }, - { - "opname" : "OpSDiv", - "opcode" : 135, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Operand 1'" }, - { "kind" : "IdRef", "name" : "'Operand 2'" } - ] - }, - { - "opname" : "OpFDiv", - "opcode" : 136, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Operand 1'" }, - { "kind" : "IdRef", "name" : "'Operand 2'" } - ] - }, - { - "opname" : "OpUMod", - "opcode" : 137, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Operand 1'" }, - { "kind" : "IdRef", "name" : "'Operand 2'" } - ] - }, - { - "opname" : "OpSRem", - "opcode" : 138, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Operand 1'" }, - { "kind" : "IdRef", "name" : "'Operand 2'" } - ] - }, - { - "opname" : "OpSMod", - "opcode" : 139, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Operand 1'" }, - { "kind" : "IdRef", "name" : "'Operand 2'" } - ] - }, - { - "opname" : "OpFRem", - "opcode" : 140, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Operand 1'" }, - { "kind" : "IdRef", "name" : "'Operand 2'" } - ] - }, - { - "opname" : "OpFMod", - "opcode" : 141, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Operand 1'" }, - { "kind" : "IdRef", "name" : "'Operand 2'" } - ] - }, - { - "opname" : "OpVectorTimesScalar", - "opcode" : 142, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Vector'" }, - { "kind" : "IdRef", "name" : "'Scalar'" } - ] - }, - { - "opname" : "OpMatrixTimesScalar", - "opcode" : 143, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Matrix'" }, - { "kind" : "IdRef", "name" : "'Scalar'" } - ], - "capabilities" : [ "Matrix" ] - }, - { - "opname" : "OpVectorTimesMatrix", - "opcode" : 144, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Vector'" }, - { "kind" : "IdRef", "name" : "'Matrix'" } - ], - "capabilities" : [ "Matrix" ] - }, - { - "opname" : "OpMatrixTimesVector", - "opcode" : 145, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Matrix'" }, - { "kind" : "IdRef", "name" : "'Vector'" } - ], - "capabilities" : [ "Matrix" ] - }, - { - "opname" : "OpMatrixTimesMatrix", - "opcode" : 146, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'LeftMatrix'" }, - { "kind" : "IdRef", "name" : "'RightMatrix'" } - ], - "capabilities" : [ "Matrix" ] - }, - { - "opname" : "OpOuterProduct", - "opcode" : 147, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Vector 1'" }, - { "kind" : "IdRef", "name" : "'Vector 2'" } - ], - "capabilities" : [ "Matrix" ] - }, - { - "opname" : "OpDot", - "opcode" : 148, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Vector 1'" }, - { "kind" : "IdRef", "name" : "'Vector 2'" } - ] - }, - { - "opname" : "OpIAddCarry", - "opcode" : 149, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Operand 1'" }, - { "kind" : "IdRef", "name" : "'Operand 2'" } - ] - }, - { - "opname" : "OpISubBorrow", - "opcode" : 150, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Operand 1'" }, - { "kind" : "IdRef", "name" : "'Operand 2'" } - ] - }, - { - "opname" : "OpUMulExtended", - "opcode" : 151, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Operand 1'" }, - { "kind" : "IdRef", "name" : "'Operand 2'" } - ] - }, - { - "opname" : "OpSMulExtended", - "opcode" : 152, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Operand 1'" }, - { "kind" : "IdRef", "name" : "'Operand 2'" } - ] - }, - { - "opname" : "OpAny", - "opcode" : 154, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Vector'" } - ] - }, - { - "opname" : "OpAll", - "opcode" : 155, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Vector'" } - ] - }, - { - "opname" : "OpIsNan", - "opcode" : 156, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'x'" } - ] - }, - { - "opname" : "OpIsInf", - "opcode" : 157, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'x'" } - ] - }, - { - "opname" : "OpIsFinite", - "opcode" : 158, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'x'" } - ], - "capabilities" : [ "Kernel" ] - }, - { - "opname" : "OpIsNormal", - "opcode" : 159, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'x'" } - ], - "capabilities" : [ "Kernel" ] - }, - { - "opname" : "OpSignBitSet", - "opcode" : 160, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'x'" } - ], - "capabilities" : [ "Kernel" ] - }, - { - "opname" : "OpLessOrGreater", - "opcode" : 161, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'x'" }, - { "kind" : "IdRef", "name" : "'y'" } - ], - "capabilities" : [ "Kernel" ] - }, - { - "opname" : "OpOrdered", - "opcode" : 162, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'x'" }, - { "kind" : "IdRef", "name" : "'y'" } - ], - "capabilities" : [ "Kernel" ] - }, - { - "opname" : "OpUnordered", - "opcode" : 163, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'x'" }, - { "kind" : "IdRef", "name" : "'y'" } - ], - "capabilities" : [ "Kernel" ] - }, - { - "opname" : "OpLogicalEqual", - "opcode" : 164, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Operand 1'" }, - { "kind" : "IdRef", "name" : "'Operand 2'" } - ] - }, - { - "opname" : "OpLogicalNotEqual", - "opcode" : 165, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Operand 1'" }, - { "kind" : "IdRef", "name" : "'Operand 2'" } - ] - }, - { - "opname" : "OpLogicalOr", - "opcode" : 166, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Operand 1'" }, - { "kind" : "IdRef", "name" : "'Operand 2'" } - ] - }, - { - "opname" : "OpLogicalAnd", - "opcode" : 167, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Operand 1'" }, - { "kind" : "IdRef", "name" : "'Operand 2'" } - ] - }, - { - "opname" : "OpLogicalNot", - "opcode" : 168, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Operand'" } - ] - }, - { - "opname" : "OpSelect", - "opcode" : 169, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Condition'" }, - { "kind" : "IdRef", "name" : "'Object 1'" }, - { "kind" : "IdRef", "name" : "'Object 2'" } - ] - }, - { - "opname" : "OpIEqual", - "opcode" : 170, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Operand 1'" }, - { "kind" : "IdRef", "name" : "'Operand 2'" } - ] - }, - { - "opname" : "OpINotEqual", - "opcode" : 171, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Operand 1'" }, - { "kind" : "IdRef", "name" : "'Operand 2'" } - ] - }, - { - "opname" : "OpUGreaterThan", - "opcode" : 172, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Operand 1'" }, - { "kind" : "IdRef", "name" : "'Operand 2'" } - ] - }, - { - "opname" : "OpSGreaterThan", - "opcode" : 173, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Operand 1'" }, - { "kind" : "IdRef", "name" : "'Operand 2'" } - ] - }, - { - "opname" : "OpUGreaterThanEqual", - "opcode" : 174, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Operand 1'" }, - { "kind" : "IdRef", "name" : "'Operand 2'" } - ] - }, - { - "opname" : "OpSGreaterThanEqual", - "opcode" : 175, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Operand 1'" }, - { "kind" : "IdRef", "name" : "'Operand 2'" } - ] - }, - { - "opname" : "OpULessThan", - "opcode" : 176, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Operand 1'" }, - { "kind" : "IdRef", "name" : "'Operand 2'" } - ] - }, - { - "opname" : "OpSLessThan", - "opcode" : 177, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Operand 1'" }, - { "kind" : "IdRef", "name" : "'Operand 2'" } - ] - }, - { - "opname" : "OpULessThanEqual", - "opcode" : 178, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Operand 1'" }, - { "kind" : "IdRef", "name" : "'Operand 2'" } - ] - }, - { - "opname" : "OpSLessThanEqual", - "opcode" : 179, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Operand 1'" }, - { "kind" : "IdRef", "name" : "'Operand 2'" } - ] - }, - { - "opname" : "OpFOrdEqual", - "opcode" : 180, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Operand 1'" }, - { "kind" : "IdRef", "name" : "'Operand 2'" } - ] - }, - { - "opname" : "OpFUnordEqual", - "opcode" : 181, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Operand 1'" }, - { "kind" : "IdRef", "name" : "'Operand 2'" } - ] - }, - { - "opname" : "OpFOrdNotEqual", - "opcode" : 182, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Operand 1'" }, - { "kind" : "IdRef", "name" : "'Operand 2'" } - ] - }, - { - "opname" : "OpFUnordNotEqual", - "opcode" : 183, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Operand 1'" }, - { "kind" : "IdRef", "name" : "'Operand 2'" } - ] - }, - { - "opname" : "OpFOrdLessThan", - "opcode" : 184, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Operand 1'" }, - { "kind" : "IdRef", "name" : "'Operand 2'" } - ] - }, - { - "opname" : "OpFUnordLessThan", - "opcode" : 185, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Operand 1'" }, - { "kind" : "IdRef", "name" : "'Operand 2'" } - ] - }, - { - "opname" : "OpFOrdGreaterThan", - "opcode" : 186, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Operand 1'" }, - { "kind" : "IdRef", "name" : "'Operand 2'" } - ] - }, - { - "opname" : "OpFUnordGreaterThan", - "opcode" : 187, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Operand 1'" }, - { "kind" : "IdRef", "name" : "'Operand 2'" } - ] - }, - { - "opname" : "OpFOrdLessThanEqual", - "opcode" : 188, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Operand 1'" }, - { "kind" : "IdRef", "name" : "'Operand 2'" } - ] - }, - { - "opname" : "OpFUnordLessThanEqual", - "opcode" : 189, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Operand 1'" }, - { "kind" : "IdRef", "name" : "'Operand 2'" } - ] - }, - { - "opname" : "OpFOrdGreaterThanEqual", - "opcode" : 190, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Operand 1'" }, - { "kind" : "IdRef", "name" : "'Operand 2'" } - ] - }, - { - "opname" : "OpFUnordGreaterThanEqual", - "opcode" : 191, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Operand 1'" }, - { "kind" : "IdRef", "name" : "'Operand 2'" } - ] - }, - { - "opname" : "OpShiftRightLogical", - "opcode" : 194, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Base'" }, - { "kind" : "IdRef", "name" : "'Shift'" } - ] - }, - { - "opname" : "OpShiftRightArithmetic", - "opcode" : 195, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Base'" }, - { "kind" : "IdRef", "name" : "'Shift'" } - ] - }, - { - "opname" : "OpShiftLeftLogical", - "opcode" : 196, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Base'" }, - { "kind" : "IdRef", "name" : "'Shift'" } - ] - }, - { - "opname" : "OpBitwiseOr", - "opcode" : 197, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Operand 1'" }, - { "kind" : "IdRef", "name" : "'Operand 2'" } - ] - }, - { - "opname" : "OpBitwiseXor", - "opcode" : 198, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Operand 1'" }, - { "kind" : "IdRef", "name" : "'Operand 2'" } - ] - }, - { - "opname" : "OpBitwiseAnd", - "opcode" : 199, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Operand 1'" }, - { "kind" : "IdRef", "name" : "'Operand 2'" } - ] - }, - { - "opname" : "OpNot", - "opcode" : 200, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Operand'" } - ] - }, - { - "opname" : "OpBitFieldInsert", - "opcode" : 201, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Base'" }, - { "kind" : "IdRef", "name" : "'Insert'" }, - { "kind" : "IdRef", "name" : "'Offset'" }, - { "kind" : "IdRef", "name" : "'Count'" } - ], - "capabilities" : [ "Shader" ] - }, - { - "opname" : "OpBitFieldSExtract", - "opcode" : 202, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Base'" }, - { "kind" : "IdRef", "name" : "'Offset'" }, - { "kind" : "IdRef", "name" : "'Count'" } - ], - "capabilities" : [ "Shader" ] - }, - { - "opname" : "OpBitFieldUExtract", - "opcode" : 203, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Base'" }, - { "kind" : "IdRef", "name" : "'Offset'" }, - { "kind" : "IdRef", "name" : "'Count'" } - ], - "capabilities" : [ "Shader" ] - }, - { - "opname" : "OpBitReverse", - "opcode" : 204, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Base'" } - ], - "capabilities" : [ "Shader" ] - }, - { - "opname" : "OpBitCount", - "opcode" : 205, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Base'" } - ] - }, - { - "opname" : "OpDPdx", - "opcode" : 207, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'P'" } - ], - "capabilities" : [ "Shader" ] - }, - { - "opname" : "OpDPdy", - "opcode" : 208, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'P'" } - ], - "capabilities" : [ "Shader" ] - }, - { - "opname" : "OpFwidth", - "opcode" : 209, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'P'" } - ], - "capabilities" : [ "Shader" ] - }, - { - "opname" : "OpDPdxFine", - "opcode" : 210, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'P'" } - ], - "capabilities" : [ "DerivativeControl" ] - }, - { - "opname" : "OpDPdyFine", - "opcode" : 211, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'P'" } - ], - "capabilities" : [ "DerivativeControl" ] - }, - { - "opname" : "OpFwidthFine", - "opcode" : 212, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'P'" } - ], - "capabilities" : [ "DerivativeControl" ] - }, - { - "opname" : "OpDPdxCoarse", - "opcode" : 213, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'P'" } - ], - "capabilities" : [ "DerivativeControl" ] - }, - { - "opname" : "OpDPdyCoarse", - "opcode" : 214, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'P'" } - ], - "capabilities" : [ "DerivativeControl" ] - }, - { - "opname" : "OpFwidthCoarse", - "opcode" : 215, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'P'" } - ], - "capabilities" : [ "DerivativeControl" ] - }, - { - "opname" : "OpEmitVertex", - "opcode" : 218, - "capabilities" : [ "Geometry" ] - }, - { - "opname" : "OpEndPrimitive", - "opcode" : 219, - "capabilities" : [ "Geometry" ] - }, - { - "opname" : "OpEmitStreamVertex", - "opcode" : 220, - "operands" : [ - { "kind" : "IdRef", "name" : "'Stream'" } - ], - "capabilities" : [ "GeometryStreams" ] - }, - { - "opname" : "OpEndStreamPrimitive", - "opcode" : 221, - "operands" : [ - { "kind" : "IdRef", "name" : "'Stream'" } - ], - "capabilities" : [ "GeometryStreams" ] - }, - { - "opname" : "OpControlBarrier", - "opcode" : 224, - "operands" : [ - { "kind" : "IdScope", "name" : "'Execution'" }, - { "kind" : "IdScope", "name" : "'Memory'" }, - { "kind" : "IdMemorySemantics", "name" : "'Semantics'" } - ] - }, - { - "opname" : "OpMemoryBarrier", - "opcode" : 225, - "operands" : [ - { "kind" : "IdScope", "name" : "'Memory'" }, - { "kind" : "IdMemorySemantics", "name" : "'Semantics'" } - ] - }, - { - "opname" : "OpAtomicLoad", - "opcode" : 227, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Pointer'" }, - { "kind" : "IdScope", "name" : "'Scope'" }, - { "kind" : "IdMemorySemantics", "name" : "'Semantics'" } - ] - }, - { - "opname" : "OpAtomicStore", - "opcode" : 228, - "operands" : [ - { "kind" : "IdRef", "name" : "'Pointer'" }, - { "kind" : "IdScope", "name" : "'Scope'" }, - { "kind" : "IdMemorySemantics", "name" : "'Semantics'" }, - { "kind" : "IdRef", "name" : "'Value'" } - ] - }, - { - "opname" : "OpAtomicExchange", - "opcode" : 229, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Pointer'" }, - { "kind" : "IdScope", "name" : "'Scope'" }, - { "kind" : "IdMemorySemantics", "name" : "'Semantics'" }, - { "kind" : "IdRef", "name" : "'Value'" } - ] - }, - { - "opname" : "OpAtomicCompareExchange", - "opcode" : 230, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Pointer'" }, - { "kind" : "IdScope", "name" : "'Scope'" }, - { "kind" : "IdMemorySemantics", "name" : "'Equal'" }, - { "kind" : "IdMemorySemantics", "name" : "'Unequal'" }, - { "kind" : "IdRef", "name" : "'Value'" }, - { "kind" : "IdRef", "name" : "'Comparator'" } - ] - }, - { - "opname" : "OpAtomicCompareExchangeWeak", - "opcode" : 231, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Pointer'" }, - { "kind" : "IdScope", "name" : "'Scope'" }, - { "kind" : "IdMemorySemantics", "name" : "'Equal'" }, - { "kind" : "IdMemorySemantics", "name" : "'Unequal'" }, - { "kind" : "IdRef", "name" : "'Value'" }, - { "kind" : "IdRef", "name" : "'Comparator'" } - ], - "capabilities" : [ "Kernel" ] - }, - { - "opname" : "OpAtomicIIncrement", - "opcode" : 232, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Pointer'" }, - { "kind" : "IdScope", "name" : "'Scope'" }, - { "kind" : "IdMemorySemantics", "name" : "'Semantics'" } - ] - }, - { - "opname" : "OpAtomicIDecrement", - "opcode" : 233, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Pointer'" }, - { "kind" : "IdScope", "name" : "'Scope'" }, - { "kind" : "IdMemorySemantics", "name" : "'Semantics'" } - ] - }, - { - "opname" : "OpAtomicIAdd", - "opcode" : 234, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Pointer'" }, - { "kind" : "IdScope", "name" : "'Scope'" }, - { "kind" : "IdMemorySemantics", "name" : "'Semantics'" }, - { "kind" : "IdRef", "name" : "'Value'" } - ] - }, - { - "opname" : "OpAtomicISub", - "opcode" : 235, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Pointer'" }, - { "kind" : "IdScope", "name" : "'Scope'" }, - { "kind" : "IdMemorySemantics", "name" : "'Semantics'" }, - { "kind" : "IdRef", "name" : "'Value'" } - ] - }, - { - "opname" : "OpAtomicSMin", - "opcode" : 236, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Pointer'" }, - { "kind" : "IdScope", "name" : "'Scope'" }, - { "kind" : "IdMemorySemantics", "name" : "'Semantics'" }, - { "kind" : "IdRef", "name" : "'Value'" } - ] - }, - { - "opname" : "OpAtomicUMin", - "opcode" : 237, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Pointer'" }, - { "kind" : "IdScope", "name" : "'Scope'" }, - { "kind" : "IdMemorySemantics", "name" : "'Semantics'" }, - { "kind" : "IdRef", "name" : "'Value'" } - ] - }, - { - "opname" : "OpAtomicSMax", - "opcode" : 238, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Pointer'" }, - { "kind" : "IdScope", "name" : "'Scope'" }, - { "kind" : "IdMemorySemantics", "name" : "'Semantics'" }, - { "kind" : "IdRef", "name" : "'Value'" } - ] - }, - { - "opname" : "OpAtomicUMax", - "opcode" : 239, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Pointer'" }, - { "kind" : "IdScope", "name" : "'Scope'" }, - { "kind" : "IdMemorySemantics", "name" : "'Semantics'" }, - { "kind" : "IdRef", "name" : "'Value'" } - ] - }, - { - "opname" : "OpAtomicAnd", - "opcode" : 240, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Pointer'" }, - { "kind" : "IdScope", "name" : "'Scope'" }, - { "kind" : "IdMemorySemantics", "name" : "'Semantics'" }, - { "kind" : "IdRef", "name" : "'Value'" } - ] - }, - { - "opname" : "OpAtomicOr", - "opcode" : 241, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Pointer'" }, - { "kind" : "IdScope", "name" : "'Scope'" }, - { "kind" : "IdMemorySemantics", "name" : "'Semantics'" }, - { "kind" : "IdRef", "name" : "'Value'" } - ] - }, - { - "opname" : "OpAtomicXor", - "opcode" : 242, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Pointer'" }, - { "kind" : "IdScope", "name" : "'Scope'" }, - { "kind" : "IdMemorySemantics", "name" : "'Semantics'" }, - { "kind" : "IdRef", "name" : "'Value'" } - ] - }, - { - "opname" : "OpPhi", - "opcode" : 245, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "PairIdRefIdRef", "quantifier" : "*", "name" : "'Variable, Parent, ...'" } - ] - }, - { - "opname" : "OpLoopMerge", - "opcode" : 246, - "operands" : [ - { "kind" : "IdRef", "name" : "'Merge Block'" }, - { "kind" : "IdRef", "name" : "'Continue Target'" }, - { "kind" : "LoopControl" } - ] - }, - { - "opname" : "OpSelectionMerge", - "opcode" : 247, - "operands" : [ - { "kind" : "IdRef", "name" : "'Merge Block'" }, - { "kind" : "SelectionControl" } - ] - }, - { - "opname" : "OpLabel", - "opcode" : 248, - "operands" : [ - { "kind" : "IdResult" } - ] - }, - { - "opname" : "OpBranch", - "opcode" : 249, - "operands" : [ - { "kind" : "IdRef", "name" : "'Target Label'" } - ] - }, - { - "opname" : "OpBranchConditional", - "opcode" : 250, - "operands" : [ - { "kind" : "IdRef", "name" : "'Condition'" }, - { "kind" : "IdRef", "name" : "'True Label'" }, - { "kind" : "IdRef", "name" : "'False Label'" }, - { "kind" : "LiteralInteger", "quantifier" : "*", "name" : "'Branch weights'" } - ] - }, - { - "opname" : "OpSwitch", - "opcode" : 251, - "operands" : [ - { "kind" : "IdRef", "name" : "'Selector'" }, - { "kind" : "IdRef", "name" : "'Default'" }, - { "kind" : "PairLiteralIntegerIdRef", "quantifier" : "*", "name" : "'Target'" } - ] - }, - { - "opname" : "OpKill", - "opcode" : 252, - "capabilities" : [ "Shader" ] - }, - { - "opname" : "OpReturn", - "opcode" : 253 - }, - { - "opname" : "OpReturnValue", - "opcode" : 254, - "operands" : [ - { "kind" : "IdRef", "name" : "'Value'" } - ] - }, - { - "opname" : "OpUnreachable", - "opcode" : 255 - }, - { - "opname" : "OpLifetimeStart", - "opcode" : 256, - "operands" : [ - { "kind" : "IdRef", "name" : "'Pointer'" }, - { "kind" : "LiteralInteger", "name" : "'Size'" } - ], - "capabilities" : [ "Kernel" ] - }, - { - "opname" : "OpLifetimeStop", - "opcode" : 257, - "operands" : [ - { "kind" : "IdRef", "name" : "'Pointer'" }, - { "kind" : "LiteralInteger", "name" : "'Size'" } - ], - "capabilities" : [ "Kernel" ] - }, - { - "opname" : "OpGroupAsyncCopy", - "opcode" : 259, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdScope", "name" : "'Execution'" }, - { "kind" : "IdRef", "name" : "'Destination'" }, - { "kind" : "IdRef", "name" : "'Source'" }, - { "kind" : "IdRef", "name" : "'Num Elements'" }, - { "kind" : "IdRef", "name" : "'Stride'" }, - { "kind" : "IdRef", "name" : "'Event'" } - ], - "capabilities" : [ "Kernel" ] - }, - { - "opname" : "OpGroupWaitEvents", - "opcode" : 260, - "operands" : [ - { "kind" : "IdScope", "name" : "'Execution'" }, - { "kind" : "IdRef", "name" : "'Num Events'" }, - { "kind" : "IdRef", "name" : "'Events List'" } - ], - "capabilities" : [ "Kernel" ] - }, - { - "opname" : "OpGroupAll", - "opcode" : 261, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdScope", "name" : "'Execution'" }, - { "kind" : "IdRef", "name" : "'Predicate'" } - ], - "capabilities" : [ "Groups" ] - }, - { - "opname" : "OpGroupAny", - "opcode" : 262, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdScope", "name" : "'Execution'" }, - { "kind" : "IdRef", "name" : "'Predicate'" } - ], - "capabilities" : [ "Groups" ] - }, - { - "opname" : "OpGroupBroadcast", - "opcode" : 263, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdScope", "name" : "'Execution'" }, - { "kind" : "IdRef", "name" : "'Value'" }, - { "kind" : "IdRef", "name" : "'LocalId'" } - ], - "capabilities" : [ "Groups" ] - }, - { - "opname" : "OpGroupIAdd", - "opcode" : 264, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdScope", "name" : "'Execution'" }, - { "kind" : "GroupOperation", "name" : "'Operation'" }, - { "kind" : "IdRef", "name" : "'X'" } - ], - "capabilities" : [ "Groups" ] - }, - { - "opname" : "OpGroupFAdd", - "opcode" : 265, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdScope", "name" : "'Execution'" }, - { "kind" : "GroupOperation", "name" : "'Operation'" }, - { "kind" : "IdRef", "name" : "'X'" } - ], - "capabilities" : [ "Groups" ] - }, - { - "opname" : "OpGroupFMin", - "opcode" : 266, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdScope", "name" : "'Execution'" }, - { "kind" : "GroupOperation", "name" : "'Operation'" }, - { "kind" : "IdRef", "name" : "'X'" } - ], - "capabilities" : [ "Groups" ] - }, - { - "opname" : "OpGroupUMin", - "opcode" : 267, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdScope", "name" : "'Execution'" }, - { "kind" : "GroupOperation", "name" : "'Operation'" }, - { "kind" : "IdRef", "name" : "'X'" } - ], - "capabilities" : [ "Groups" ] - }, - { - "opname" : "OpGroupSMin", - "opcode" : 268, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdScope", "name" : "'Execution'" }, - { "kind" : "GroupOperation", "name" : "'Operation'" }, - { "kind" : "IdRef", "name" : "'X'" } - ], - "capabilities" : [ "Groups" ] - }, - { - "opname" : "OpGroupFMax", - "opcode" : 269, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdScope", "name" : "'Execution'" }, - { "kind" : "GroupOperation", "name" : "'Operation'" }, - { "kind" : "IdRef", "name" : "'X'" } - ], - "capabilities" : [ "Groups" ] - }, - { - "opname" : "OpGroupUMax", - "opcode" : 270, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdScope", "name" : "'Execution'" }, - { "kind" : "GroupOperation", "name" : "'Operation'" }, - { "kind" : "IdRef", "name" : "'X'" } - ], - "capabilities" : [ "Groups" ] - }, - { - "opname" : "OpGroupSMax", - "opcode" : 271, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdScope", "name" : "'Execution'" }, - { "kind" : "GroupOperation", "name" : "'Operation'" }, - { "kind" : "IdRef", "name" : "'X'" } - ], - "capabilities" : [ "Groups" ] - }, - { - "opname" : "OpReadPipe", - "opcode" : 274, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Pipe'" }, - { "kind" : "IdRef", "name" : "'Pointer'" }, - { "kind" : "IdRef", "name" : "'Packet Size'" }, - { "kind" : "IdRef", "name" : "'Packet Alignment'" } - ], - "capabilities" : [ "Pipes" ] - }, - { - "opname" : "OpWritePipe", - "opcode" : 275, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Pipe'" }, - { "kind" : "IdRef", "name" : "'Pointer'" }, - { "kind" : "IdRef", "name" : "'Packet Size'" }, - { "kind" : "IdRef", "name" : "'Packet Alignment'" } - ], - "capabilities" : [ "Pipes" ] - }, - { - "opname" : "OpReservedReadPipe", - "opcode" : 276, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Pipe'" }, - { "kind" : "IdRef", "name" : "'Reserve Id'" }, - { "kind" : "IdRef", "name" : "'Index'" }, - { "kind" : "IdRef", "name" : "'Pointer'" }, - { "kind" : "IdRef", "name" : "'Packet Size'" }, - { "kind" : "IdRef", "name" : "'Packet Alignment'" } - ], - "capabilities" : [ "Pipes" ] - }, - { - "opname" : "OpReservedWritePipe", - "opcode" : 277, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Pipe'" }, - { "kind" : "IdRef", "name" : "'Reserve Id'" }, - { "kind" : "IdRef", "name" : "'Index'" }, - { "kind" : "IdRef", "name" : "'Pointer'" }, - { "kind" : "IdRef", "name" : "'Packet Size'" }, - { "kind" : "IdRef", "name" : "'Packet Alignment'" } - ], - "capabilities" : [ "Pipes" ] - }, - { - "opname" : "OpReserveReadPipePackets", - "opcode" : 278, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Pipe'" }, - { "kind" : "IdRef", "name" : "'Num Packets'" }, - { "kind" : "IdRef", "name" : "'Packet Size'" }, - { "kind" : "IdRef", "name" : "'Packet Alignment'" } - ], - "capabilities" : [ "Pipes" ] - }, - { - "opname" : "OpReserveWritePipePackets", - "opcode" : 279, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Pipe'" }, - { "kind" : "IdRef", "name" : "'Num Packets'" }, - { "kind" : "IdRef", "name" : "'Packet Size'" }, - { "kind" : "IdRef", "name" : "'Packet Alignment'" } - ], - "capabilities" : [ "Pipes" ] - }, - { - "opname" : "OpCommitReadPipe", - "opcode" : 280, - "operands" : [ - { "kind" : "IdRef", "name" : "'Pipe'" }, - { "kind" : "IdRef", "name" : "'Reserve Id'" }, - { "kind" : "IdRef", "name" : "'Packet Size'" }, - { "kind" : "IdRef", "name" : "'Packet Alignment'" } - ], - "capabilities" : [ "Pipes" ] - }, - { - "opname" : "OpCommitWritePipe", - "opcode" : 281, - "operands" : [ - { "kind" : "IdRef", "name" : "'Pipe'" }, - { "kind" : "IdRef", "name" : "'Reserve Id'" }, - { "kind" : "IdRef", "name" : "'Packet Size'" }, - { "kind" : "IdRef", "name" : "'Packet Alignment'" } - ], - "capabilities" : [ "Pipes" ] - }, - { - "opname" : "OpIsValidReserveId", - "opcode" : 282, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Reserve Id'" } - ], - "capabilities" : [ "Pipes" ] - }, - { - "opname" : "OpGetNumPipePackets", - "opcode" : 283, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Pipe'" }, - { "kind" : "IdRef", "name" : "'Packet Size'" }, - { "kind" : "IdRef", "name" : "'Packet Alignment'" } - ], - "capabilities" : [ "Pipes" ] - }, - { - "opname" : "OpGetMaxPipePackets", - "opcode" : 284, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Pipe'" }, - { "kind" : "IdRef", "name" : "'Packet Size'" }, - { "kind" : "IdRef", "name" : "'Packet Alignment'" } - ], - "capabilities" : [ "Pipes" ] - }, - { - "opname" : "OpGroupReserveReadPipePackets", - "opcode" : 285, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdScope", "name" : "'Execution'" }, - { "kind" : "IdRef", "name" : "'Pipe'" }, - { "kind" : "IdRef", "name" : "'Num Packets'" }, - { "kind" : "IdRef", "name" : "'Packet Size'" }, - { "kind" : "IdRef", "name" : "'Packet Alignment'" } - ], - "capabilities" : [ "Pipes" ] - }, - { - "opname" : "OpGroupReserveWritePipePackets", - "opcode" : 286, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdScope", "name" : "'Execution'" }, - { "kind" : "IdRef", "name" : "'Pipe'" }, - { "kind" : "IdRef", "name" : "'Num Packets'" }, - { "kind" : "IdRef", "name" : "'Packet Size'" }, - { "kind" : "IdRef", "name" : "'Packet Alignment'" } - ], - "capabilities" : [ "Pipes" ] - }, - { - "opname" : "OpGroupCommitReadPipe", - "opcode" : 287, - "operands" : [ - { "kind" : "IdScope", "name" : "'Execution'" }, - { "kind" : "IdRef", "name" : "'Pipe'" }, - { "kind" : "IdRef", "name" : "'Reserve Id'" }, - { "kind" : "IdRef", "name" : "'Packet Size'" }, - { "kind" : "IdRef", "name" : "'Packet Alignment'" } - ], - "capabilities" : [ "Pipes" ] - }, - { - "opname" : "OpGroupCommitWritePipe", - "opcode" : 288, - "operands" : [ - { "kind" : "IdScope", "name" : "'Execution'" }, - { "kind" : "IdRef", "name" : "'Pipe'" }, - { "kind" : "IdRef", "name" : "'Reserve Id'" }, - { "kind" : "IdRef", "name" : "'Packet Size'" }, - { "kind" : "IdRef", "name" : "'Packet Alignment'" } - ], - "capabilities" : [ "Pipes" ] - }, - { - "opname" : "OpEnqueueMarker", - "opcode" : 291, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Queue'" }, - { "kind" : "IdRef", "name" : "'Num Events'" }, - { "kind" : "IdRef", "name" : "'Wait Events'" }, - { "kind" : "IdRef", "name" : "'Ret Event'" } - ], - "capabilities" : [ "DeviceEnqueue" ] - }, - { - "opname" : "OpEnqueueKernel", - "opcode" : 292, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Queue'" }, - { "kind" : "IdRef", "name" : "'Flags'" }, - { "kind" : "IdRef", "name" : "'ND Range'" }, - { "kind" : "IdRef", "name" : "'Num Events'" }, - { "kind" : "IdRef", "name" : "'Wait Events'" }, - { "kind" : "IdRef", "name" : "'Ret Event'" }, - { "kind" : "IdRef", "name" : "'Invoke'" }, - { "kind" : "IdRef", "name" : "'Param'" }, - { "kind" : "IdRef", "name" : "'Param Size'" }, - { "kind" : "IdRef", "name" : "'Param Align'" }, - { "kind" : "IdRef", "quantifier" : "*", "name" : "'Local Size'" } - ], - "capabilities" : [ "DeviceEnqueue" ] - }, - { - "opname" : "OpGetKernelNDrangeSubGroupCount", - "opcode" : 293, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'ND Range'" }, - { "kind" : "IdRef", "name" : "'Invoke'" }, - { "kind" : "IdRef", "name" : "'Param'" }, - { "kind" : "IdRef", "name" : "'Param Size'" }, - { "kind" : "IdRef", "name" : "'Param Align'" } - ], - "capabilities" : [ "DeviceEnqueue" ] - }, - { - "opname" : "OpGetKernelNDrangeMaxSubGroupSize", - "opcode" : 294, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'ND Range'" }, - { "kind" : "IdRef", "name" : "'Invoke'" }, - { "kind" : "IdRef", "name" : "'Param'" }, - { "kind" : "IdRef", "name" : "'Param Size'" }, - { "kind" : "IdRef", "name" : "'Param Align'" } - ], - "capabilities" : [ "DeviceEnqueue" ] - }, - { - "opname" : "OpGetKernelWorkGroupSize", - "opcode" : 295, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Invoke'" }, - { "kind" : "IdRef", "name" : "'Param'" }, - { "kind" : "IdRef", "name" : "'Param Size'" }, - { "kind" : "IdRef", "name" : "'Param Align'" } - ], - "capabilities" : [ "DeviceEnqueue" ] - }, - { - "opname" : "OpGetKernelPreferredWorkGroupSizeMultiple", - "opcode" : 296, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Invoke'" }, - { "kind" : "IdRef", "name" : "'Param'" }, - { "kind" : "IdRef", "name" : "'Param Size'" }, - { "kind" : "IdRef", "name" : "'Param Align'" } - ], - "capabilities" : [ "DeviceEnqueue" ] - }, - { - "opname" : "OpRetainEvent", - "opcode" : 297, - "operands" : [ - { "kind" : "IdRef", "name" : "'Event'" } - ], - "capabilities" : [ "DeviceEnqueue" ] - }, - { - "opname" : "OpReleaseEvent", - "opcode" : 298, - "operands" : [ - { "kind" : "IdRef", "name" : "'Event'" } - ], - "capabilities" : [ "DeviceEnqueue" ] - }, - { - "opname" : "OpCreateUserEvent", - "opcode" : 299, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" } - ], - "capabilities" : [ "DeviceEnqueue" ] - }, - { - "opname" : "OpIsValidEvent", - "opcode" : 300, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Event'" } - ], - "capabilities" : [ "DeviceEnqueue" ] - }, - { - "opname" : "OpSetUserEventStatus", - "opcode" : 301, - "operands" : [ - { "kind" : "IdRef", "name" : "'Event'" }, - { "kind" : "IdRef", "name" : "'Status'" } - ], - "capabilities" : [ "DeviceEnqueue" ] - }, - { - "opname" : "OpCaptureEventProfilingInfo", - "opcode" : 302, - "operands" : [ - { "kind" : "IdRef", "name" : "'Event'" }, - { "kind" : "IdRef", "name" : "'Profiling Info'" }, - { "kind" : "IdRef", "name" : "'Value'" } - ], - "capabilities" : [ "DeviceEnqueue" ] - }, - { - "opname" : "OpGetDefaultQueue", - "opcode" : 303, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" } - ], - "capabilities" : [ "DeviceEnqueue" ] - }, - { - "opname" : "OpBuildNDRange", - "opcode" : 304, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'GlobalWorkSize'" }, - { "kind" : "IdRef", "name" : "'LocalWorkSize'" }, - { "kind" : "IdRef", "name" : "'GlobalWorkOffset'" } - ], - "capabilities" : [ "DeviceEnqueue" ] - }, - { - "opname" : "OpImageSparseSampleImplicitLod", - "opcode" : 305, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Sampled Image'" }, - { "kind" : "IdRef", "name" : "'Coordinate'" }, - { "kind" : "ImageOperands", "quantifier" : "?" } - ], - "capabilities" : [ "SparseResidency" ] - }, - { - "opname" : "OpImageSparseSampleExplicitLod", - "opcode" : 306, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Sampled Image'" }, - { "kind" : "IdRef", "name" : "'Coordinate'" }, - { "kind" : "ImageOperands" } - ], - "capabilities" : [ "SparseResidency" ] - }, - { - "opname" : "OpImageSparseSampleDrefImplicitLod", - "opcode" : 307, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Sampled Image'" }, - { "kind" : "IdRef", "name" : "'Coordinate'" }, - { "kind" : "IdRef", "name" : "'D~ref~'" }, - { "kind" : "ImageOperands", "quantifier" : "?" } - ], - "capabilities" : [ "SparseResidency" ] - }, - { - "opname" : "OpImageSparseSampleDrefExplicitLod", - "opcode" : 308, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Sampled Image'" }, - { "kind" : "IdRef", "name" : "'Coordinate'" }, - { "kind" : "IdRef", "name" : "'D~ref~'" }, - { "kind" : "ImageOperands" } - ], - "capabilities" : [ "SparseResidency" ] - }, - { - "opname" : "OpImageSparseSampleProjImplicitLod", - "opcode" : 309, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Sampled Image'" }, - { "kind" : "IdRef", "name" : "'Coordinate'" }, - { "kind" : "ImageOperands", "quantifier" : "?" } - ], - "capabilities" : [ "SparseResidency" ] - }, - { - "opname" : "OpImageSparseSampleProjExplicitLod", - "opcode" : 310, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Sampled Image'" }, - { "kind" : "IdRef", "name" : "'Coordinate'" }, - { "kind" : "ImageOperands" } - ], - "capabilities" : [ "SparseResidency" ] - }, - { - "opname" : "OpImageSparseSampleProjDrefImplicitLod", - "opcode" : 311, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Sampled Image'" }, - { "kind" : "IdRef", "name" : "'Coordinate'" }, - { "kind" : "IdRef", "name" : "'D~ref~'" }, - { "kind" : "ImageOperands", "quantifier" : "?" } - ], - "capabilities" : [ "SparseResidency" ] - }, - { - "opname" : "OpImageSparseSampleProjDrefExplicitLod", - "opcode" : 312, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Sampled Image'" }, - { "kind" : "IdRef", "name" : "'Coordinate'" }, - { "kind" : "IdRef", "name" : "'D~ref~'" }, - { "kind" : "ImageOperands" } - ], - "capabilities" : [ "SparseResidency" ] - }, - { - "opname" : "OpImageSparseFetch", - "opcode" : 313, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Image'" }, - { "kind" : "IdRef", "name" : "'Coordinate'" }, - { "kind" : "ImageOperands", "quantifier" : "?" } - ], - "capabilities" : [ "SparseResidency" ] - }, - { - "opname" : "OpImageSparseGather", - "opcode" : 314, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Sampled Image'" }, - { "kind" : "IdRef", "name" : "'Coordinate'" }, - { "kind" : "IdRef", "name" : "'Component'" }, - { "kind" : "ImageOperands", "quantifier" : "?" } - ], - "capabilities" : [ "SparseResidency" ] - }, - { - "opname" : "OpImageSparseDrefGather", - "opcode" : 315, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Sampled Image'" }, - { "kind" : "IdRef", "name" : "'Coordinate'" }, - { "kind" : "IdRef", "name" : "'D~ref~'" }, - { "kind" : "ImageOperands", "quantifier" : "?" } - ], - "capabilities" : [ "SparseResidency" ] - }, - { - "opname" : "OpImageSparseTexelsResident", - "opcode" : 316, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Resident Code'" } - ], - "capabilities" : [ "SparseResidency" ] - }, - { - "opname" : "OpNoLine", - "opcode" : 317 - }, - { - "opname" : "OpAtomicFlagTestAndSet", - "opcode" : 318, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Pointer'" }, - { "kind" : "IdScope", "name" : "'Scope'" }, - { "kind" : "IdMemorySemantics", "name" : "'Semantics'" } - ], - "capabilities" : [ "Kernel" ] - }, - { - "opname" : "OpAtomicFlagClear", - "opcode" : 319, - "operands" : [ - { "kind" : "IdRef", "name" : "'Pointer'" }, - { "kind" : "IdScope", "name" : "'Scope'" }, - { "kind" : "IdMemorySemantics", "name" : "'Semantics'" } - ], - "capabilities" : [ "Kernel" ] - }, - { - "opname" : "OpImageSparseRead", - "opcode" : 320, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Image'" }, - { "kind" : "IdRef", "name" : "'Coordinate'" }, - { "kind" : "ImageOperands", "quantifier" : "?" } - ], - "capabilities" : [ "SparseResidency" ] - }, - { - "opname" : "OpSizeOf", - "opcode" : 321, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Pointer'" } - ], - "capabilities" : [ "Addresses" ] - }, - { - "opname" : "OpTypePipeStorage", - "opcode" : 322, - "operands" : [ - { "kind" : "IdResult" } - ], - "capabilities" : [ "PipeStorage" ] - }, - { - "opname" : "OpConstantPipeStorage", - "opcode" : 323, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "LiteralInteger", "name" : "'Packet Size'" }, - { "kind" : "LiteralInteger", "name" : "'Packet Alignment'" }, - { "kind" : "LiteralInteger", "name" : "'Capacity'" } - ], - "capabilities" : [ "PipeStorage" ] - }, - { - "opname" : "OpCreatePipeFromPipeStorage", - "opcode" : 324, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Pipe Storage'" } - ], - "capabilities" : [ "PipeStorage" ] - }, - { - "opname" : "OpGetKernelLocalSizeForSubgroupCount", - "opcode" : 325, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Subgroup Count'" }, - { "kind" : "IdRef", "name" : "'Invoke'" }, - { "kind" : "IdRef", "name" : "'Param'" }, - { "kind" : "IdRef", "name" : "'Param Size'" }, - { "kind" : "IdRef", "name" : "'Param Align'" } - ], - "capabilities" : [ "SubgroupDispatch" ] - }, - { - "opname" : "OpGetKernelMaxNumSubgroups", - "opcode" : 326, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Invoke'" }, - { "kind" : "IdRef", "name" : "'Param'" }, - { "kind" : "IdRef", "name" : "'Param Size'" }, - { "kind" : "IdRef", "name" : "'Param Align'" } - ], - "capabilities" : [ "SubgroupDispatch" ] - }, - { - "opname" : "OpTypeNamedBarrier", - "opcode" : 327, - "operands" : [ - { "kind" : "IdResult" } - ], - "capabilities" : [ "NamedBarrier" ] - }, - { - "opname" : "OpNamedBarrierInitialize", - "opcode" : 328, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Subgroup Count'" } - ], - "capabilities" : [ "NamedBarrier" ] - }, - { - "opname" : "OpMemoryNamedBarrier", - "opcode" : 329, - "operands" : [ - { "kind" : "IdRef", "name" : "'Named Barrier'" }, - { "kind" : "IdScope", "name" : "'Memory'" }, - { "kind" : "IdMemorySemantics", "name" : "'Semantics'" } - ], - "capabilities" : [ "NamedBarrier" ] - }, - { - "opname" : "OpModuleProcessed", - "opcode" : 330, - "operands" : [ - { "kind" : "LiteralString", "name" : "'Process'" } - ] - }, - { - "opname" : "OpExecutionModeId", - "opcode" : 331, - "operands" : [ - { "kind" : "IdRef", "name" : "'Entry Point'" }, - { "kind" : "ExecutionMode", "name" : "'Mode'" } - ] - }, - { - "opname" : "OpDecorateId", - "opcode" : 332, - "operands" : [ - { "kind" : "IdRef", "name" : "'Target'" }, - { "kind" : "Decoration" } - ] - }, - { - "opname" : "OpSubgroupBallotKHR", - "opcode" : 4421, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Predicate'" } - ], - "capabilities" : [ "SubgroupBallotKHR" ] - }, - { - "opname" : "OpSubgroupFirstInvocationKHR", - "opcode" : 4422, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Value'" } - ], - "capabilities" : [ "SubgroupBallotKHR" ] - }, - { - "opname" : "OpSubgroupAllKHR", - "opcode" : 4428, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Predicate'" } - ], - "capabilities" : [ "SubgroupVoteKHR" ] - }, - { - "opname" : "OpSubgroupAnyKHR", - "opcode" : 4429, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Predicate'" } - ], - "capabilities" : [ "SubgroupVoteKHR" ] - }, - { - "opname" : "OpSubgroupAllEqualKHR", - "opcode" : 4430, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Predicate'" } - ], - "capabilities" : [ "SubgroupVoteKHR" ] - }, - { - "opname" : "OpSubgroupReadInvocationKHR", - "opcode" : 4432, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Value'" }, - { "kind" : "IdRef", "name" : "'Index'" } - ], - "capabilities" : [ "SubgroupBallotKHR" ] - }, - { - "opname" : "OpGroupIAddNonUniformAMD", - "opcode" : 5000, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdScope", "name" : "'Execution'" }, - { "kind" : "GroupOperation", "name" : "'Operation'" }, - { "kind" : "IdRef", "name" : "'X'" } - ], - "capabilities" : [ "Groups" ] - }, - { - "opname" : "OpGroupFAddNonUniformAMD", - "opcode" : 5001, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdScope", "name" : "'Execution'" }, - { "kind" : "GroupOperation", "name" : "'Operation'" }, - { "kind" : "IdRef", "name" : "'X'" } - ], - "capabilities" : [ "Groups" ] - }, - { - "opname" : "OpGroupFMinNonUniformAMD", - "opcode" : 5002, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdScope", "name" : "'Execution'" }, - { "kind" : "GroupOperation", "name" : "'Operation'" }, - { "kind" : "IdRef", "name" : "'X'" } - ], - "capabilities" : [ "Groups" ] - }, - { - "opname" : "OpGroupUMinNonUniformAMD", - "opcode" : 5003, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdScope", "name" : "'Execution'" }, - { "kind" : "GroupOperation", "name" : "'Operation'" }, - { "kind" : "IdRef", "name" : "'X'" } - ], - "capabilities" : [ "Groups" ] - }, - { - "opname" : "OpGroupSMinNonUniformAMD", - "opcode" : 5004, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdScope", "name" : "'Execution'" }, - { "kind" : "GroupOperation", "name" : "'Operation'" }, - { "kind" : "IdRef", "name" : "'X'" } - ], - "capabilities" : [ "Groups" ] - }, - { - "opname" : "OpGroupFMaxNonUniformAMD", - "opcode" : 5005, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdScope", "name" : "'Execution'" }, - { "kind" : "GroupOperation", "name" : "'Operation'" }, - { "kind" : "IdRef", "name" : "'X'" } - ], - "capabilities" : [ "Groups" ] - }, - { - "opname" : "OpGroupUMaxNonUniformAMD", - "opcode" : 5006, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdScope", "name" : "'Execution'" }, - { "kind" : "GroupOperation", "name" : "'Operation'" }, - { "kind" : "IdRef", "name" : "'X'" } - ], - "capabilities" : [ "Groups" ] - }, - { - "opname" : "OpGroupSMaxNonUniformAMD", - "opcode" : 5007, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdScope", "name" : "'Execution'" }, - { "kind" : "GroupOperation", "name" : "'Operation'" }, - { "kind" : "IdRef", "name" : "'X'" } - ], - "capabilities" : [ "Groups" ] - }, - { - "opname" : "OpFragmentMaskFetchAMD", - "opcode" : 5011, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Image'" }, - { "kind" : "IdRef", "name" : "'Coordinate'" } - ], - "capabilities" : [ "FragmentMaskAMD" ] - }, - { - "opname" : "OpFragmentFetchAMD", - "opcode" : 5012, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Image'" }, - { "kind" : "IdRef", "name" : "'Coordinate'" }, - { "kind" : "IdRef", "name" : "'Fragment Index'" } - ], - "capabilities" : [ "FragmentMaskAMD" ] - }, - { - "opname" : "OpSubgroupShuffleINTEL", - "opcode" : 5571, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Data'" }, - { "kind" : "IdRef", "name" : "'InvocationId'" } - ], - "capabilities" : [ "SubgroupShuffleINTEL" ] - }, - { - "opname" : "OpSubgroupShuffleDownINTEL", - "opcode" : 5572, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Current'" }, - { "kind" : "IdRef", "name" : "'Next'" }, - { "kind" : "IdRef", "name" : "'Delta'" } - ], - "capabilities" : [ "SubgroupShuffleINTEL" ] - }, - { - "opname" : "OpSubgroupShuffleUpINTEL", - "opcode" : 5573, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Previous'" }, - { "kind" : "IdRef", "name" : "'Current'" }, - { "kind" : "IdRef", "name" : "'Delta'" } - ], - "capabilities" : [ "SubgroupShuffleINTEL" ] - }, - { - "opname" : "OpSubgroupShuffleXorINTEL", - "opcode" : 5574, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Data'" }, - { "kind" : "IdRef", "name" : "'Value'" } - ], - "capabilities" : [ "SubgroupShuffleINTEL" ] - }, - { - "opname" : "OpSubgroupBlockReadINTEL", - "opcode" : 5575, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Ptr'" } - ], - "capabilities" : [ "SubgroupBufferBlockIOINTEL" ] - }, - { - "opname" : "OpSubgroupBlockWriteINTEL", - "opcode" : 5576, - "operands" : [ - { "kind" : "IdRef", "name" : "'Ptr'" }, - { "kind" : "IdRef", "name" : "'Data'" } - ], - "capabilities" : [ "SubgroupBufferBlockIOINTEL" ] - }, - { - "opname" : "OpSubgroupImageBlockReadINTEL", - "opcode" : 5577, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Image'" }, - { "kind" : "IdRef", "name" : "'Coordinate'" } - ], - "capabilities" : [ "SubgroupImageBlockIOINTEL" ] - }, - { - "opname" : "OpSubgroupImageBlockWriteINTEL", - "opcode" : 5578, - "operands" : [ - { "kind" : "IdRef", "name" : "'Image'" }, - { "kind" : "IdRef", "name" : "'Coordinate'" }, - { "kind" : "IdRef", "name" : "'Data'" } - ], - "capabilities" : [ "SubgroupImageBlockIOINTEL" ] - }, - { - "opname" : "OpDecorateStringGOOGLE", - "opcode" : 5632, - "operands" : [ - { "kind" : "IdRef", "name" : "'Target'" }, - { "kind" : "Decoration" } - ], - "extensions" : [ "SPV_GOOGLE_decorate_string" ] - }, - { - "opname" : "OpMemberDecorateStringGOOGLE", - "opcode" : 5633, - "operands" : [ - { "kind" : "IdRef", "name" : "'Struct Type'" }, - { "kind" : "LiteralInteger", "name" : "'Member'" }, - { "kind" : "Decoration" } - ], - "extensions" : [ "SPV_GOOGLE_decorate_string" ] - } - ], - "operand_kinds" : [ - { - "category" : "BitEnum", - "kind" : "ImageOperands", - "enumerants" : [ - { - "enumerant" : "None", - "value" : "0x0000" - }, - { - "enumerant" : "Bias", - "value" : "0x0001", - "capabilities" : [ "Shader" ], - "parameters" : [ - { "kind" : "IdRef" } - ] - }, - { - "enumerant" : "Lod", - "value" : "0x0002", - "parameters" : [ - { "kind" : "IdRef" } - ] - }, - { - "enumerant" : "Grad", - "value" : "0x0004", - "parameters" : [ - { "kind" : "IdRef" }, - { "kind" : "IdRef" } - ] - }, - { - "enumerant" : "ConstOffset", - "value" : "0x0008", - "parameters" : [ - { "kind" : "IdRef" } - ] - }, - { - "enumerant" : "Offset", - "value" : "0x0010", - "capabilities" : [ "ImageGatherExtended" ], - "parameters" : [ - { "kind" : "IdRef" } - ] - }, - { - "enumerant" : "ConstOffsets", - "value" : "0x0020", - "parameters" : [ - { "kind" : "IdRef" } - ] - }, - { - "enumerant" : "Sample", - "value" : "0x0040", - "parameters" : [ - { "kind" : "IdRef" } - ] - }, - { - "enumerant" : "MinLod", - "value" : "0x0080", - "capabilities" : [ "MinLod" ], - "parameters" : [ - { "kind" : "IdRef" } - ] - } - ] - }, - { - "category" : "BitEnum", - "kind" : "FPFastMathMode", - "enumerants" : [ - { - "enumerant" : "None", - "value" : "0x0000" - }, - { - "enumerant" : "NotNaN", - "value" : "0x0001", - "capabilities" : [ "Kernel" ] - }, - { - "enumerant" : "NotInf", - "value" : "0x0002", - "capabilities" : [ "Kernel" ] - }, - { - "enumerant" : "NSZ", - "value" : "0x0004", - "capabilities" : [ "Kernel" ] - }, - { - "enumerant" : "AllowRecip", - "value" : "0x0008", - "capabilities" : [ "Kernel" ] - }, - { - "enumerant" : "Fast", - "value" : "0x0010", - "capabilities" : [ "Kernel" ] - } - ] - }, - { - "category" : "BitEnum", - "kind" : "SelectionControl", - "enumerants" : [ - { - "enumerant" : "None", - "value" : "0x0000" - }, - { - "enumerant" : "Flatten", - "value" : "0x0001" - }, - { - "enumerant" : "DontFlatten", - "value" : "0x0002" - } - ] - }, - { - "category" : "BitEnum", - "kind" : "LoopControl", - "enumerants" : [ - { - "enumerant" : "None", - "value" : "0x0000" - }, - { - "enumerant" : "Unroll", - "value" : "0x0001" - }, - { - "enumerant" : "DontUnroll", - "value" : "0x0002" - }, - { - "enumerant" : "DependencyInfinite", - "value" : "0x0004" - }, - { - "enumerant" : "DependencyLength", - "value" : "0x0008", - "parameters" : [ - { "kind" : "LiteralInteger" } - ] - - } - ] - }, - { - "category" : "BitEnum", - "kind" : "FunctionControl", - "enumerants" : [ - { - "enumerant" : "None", - "value" : "0x0000" - }, - { - "enumerant" : "Inline", - "value" : "0x0001" - }, - { - "enumerant" : "DontInline", - "value" : "0x0002" - }, - { - "enumerant" : "Pure", - "value" : "0x0004" - }, - { - "enumerant" : "Const", - "value" : "0x0008" - } - ] - }, - { - "category" : "BitEnum", - "kind" : "MemorySemantics", - "enumerants" : [ - { - "enumerant" : "Relaxed", - "value" : "0x0000" - }, - { - "enumerant" : "None", - "value" : "0x0000" - }, - { - "enumerant" : "Acquire", - "value" : "0x0002" - }, - { - "enumerant" : "Release", - "value" : "0x0004" - }, - { - "enumerant" : "AcquireRelease", - "value" : "0x0008" - }, - { - "enumerant" : "SequentiallyConsistent", - "value" : "0x0010" - }, - { - "enumerant" : "UniformMemory", - "value" : "0x0040", - "capabilities" : [ "Shader" ] - }, - { - "enumerant" : "SubgroupMemory", - "value" : "0x0080" - }, - { - "enumerant" : "WorkgroupMemory", - "value" : "0x0100" - }, - { - "enumerant" : "CrossWorkgroupMemory", - "value" : "0x0200" - }, - { - "enumerant" : "AtomicCounterMemory", - "value" : "0x0400", - "capabilities" : [ "AtomicStorage" ] - }, - { - "enumerant" : "ImageMemory", - "value" : "0x0800" - } - ] - }, - { - "category" : "BitEnum", - "kind" : "MemoryAccess", - "enumerants" : [ - { - "enumerant" : "None", - "value" : "0x0000" - }, - { - "enumerant" : "Volatile", - "value" : "0x0001" - }, - { - "enumerant" : "Aligned", - "value" : "0x0002", - "parameters" : [ - { "kind" : "LiteralInteger" } - ] - }, - { - "enumerant" : "Nontemporal", - "value" : "0x0004" - } - ] - }, - { - "category" : "BitEnum", - "kind" : "KernelProfilingInfo", - "enumerants" : [ - { - "enumerant" : "None", - "value" : "0x0000" - }, - { - "enumerant" : "CmdExecTime", - "value" : "0x0001", - "capabilities" : [ "Kernel" ] - } - ] - }, - { - "category" : "ValueEnum", - "kind" : "SourceLanguage", - "enumerants" : [ - { - "enumerant" : "Unknown", - "value" : 0 - }, - { - "enumerant" : "ESSL", - "value" : 1 - }, - { - "enumerant" : "GLSL", - "value" : 2 - }, - { - "enumerant" : "OpenCL_C", - "value" : 3 - }, - { - "enumerant" : "OpenCL_CPP", - "value" : 4 - }, - { - "enumerant" : "HLSL", - "value" : 5 - } - ] - }, - { - "category" : "ValueEnum", - "kind" : "ExecutionModel", - "enumerants" : [ - { - "enumerant" : "Vertex", - "value" : 0, - "capabilities" : [ "Shader" ] - }, - { - "enumerant" : "TessellationControl", - "value" : 1, - "capabilities" : [ "Tessellation" ] - }, - { - "enumerant" : "TessellationEvaluation", - "value" : 2, - "capabilities" : [ "Tessellation" ] - }, - { - "enumerant" : "Geometry", - "value" : 3, - "capabilities" : [ "Geometry" ] - }, - { - "enumerant" : "Fragment", - "value" : 4, - "capabilities" : [ "Shader" ] - }, - { - "enumerant" : "GLCompute", - "value" : 5, - "capabilities" : [ "Shader" ] - }, - { - "enumerant" : "Kernel", - "value" : 6, - "capabilities" : [ "Kernel" ] - } - ] - }, - { - "category" : "ValueEnum", - "kind" : "AddressingModel", - "enumerants" : [ - { - "enumerant" : "Logical", - "value" : 0 - }, - { - "enumerant" : "Physical32", - "value" : 1, - "capabilities" : [ "Addresses" ] - }, - { - "enumerant" : "Physical64", - "value" : 2, - "capabilities" : [ "Addresses" ] - } - ] - }, - { - "category" : "ValueEnum", - "kind" : "MemoryModel", - "enumerants" : [ - { - "enumerant" : "Simple", - "value" : 0, - "capabilities" : [ "Shader" ] - }, - { - "enumerant" : "GLSL450", - "value" : 1, - "capabilities" : [ "Shader" ] - }, - { - "enumerant" : "OpenCL", - "value" : 2, - "capabilities" : [ "Kernel" ] - } - ] - }, - { - "category" : "ValueEnum", - "kind" : "ExecutionMode", - "enumerants" : [ - { - "enumerant" : "Invocations", - "value" : 0, - "capabilities" : [ "Geometry" ], - "parameters" : [ - { "kind" : "LiteralInteger", "name" : "'Number of <>'" } - ] - }, - { - "enumerant" : "SpacingEqual", - "value" : 1, - "capabilities" : [ "Tessellation" ] - }, - { - "enumerant" : "SpacingFractionalEven", - "value" : 2, - "capabilities" : [ "Tessellation" ] - }, - { - "enumerant" : "SpacingFractionalOdd", - "value" : 3, - "capabilities" : [ "Tessellation" ] - }, - { - "enumerant" : "VertexOrderCw", - "value" : 4, - "capabilities" : [ "Tessellation" ] - }, - { - "enumerant" : "VertexOrderCcw", - "value" : 5, - "capabilities" : [ "Tessellation" ] - }, - { - "enumerant" : "PixelCenterInteger", - "value" : 6, - "capabilities" : [ "Shader" ] - }, - { - "enumerant" : "OriginUpperLeft", - "value" : 7, - "capabilities" : [ "Shader" ] - }, - { - "enumerant" : "OriginLowerLeft", - "value" : 8, - "capabilities" : [ "Shader" ] - }, - { - "enumerant" : "EarlyFragmentTests", - "value" : 9, - "capabilities" : [ "Shader" ] - }, - { - "enumerant" : "PointMode", - "value" : 10, - "capabilities" : [ "Tessellation" ] - }, - { - "enumerant" : "Xfb", - "value" : 11, - "capabilities" : [ "TransformFeedback" ] - }, - { - "enumerant" : "DepthReplacing", - "value" : 12, - "capabilities" : [ "Shader" ] - }, - { - "enumerant" : "DepthGreater", - "value" : 14, - "capabilities" : [ "Shader" ] - }, - { - "enumerant" : "DepthLess", - "value" : 15, - "capabilities" : [ "Shader" ] - }, - { - "enumerant" : "DepthUnchanged", - "value" : 16, - "capabilities" : [ "Shader" ] - }, - { - "enumerant" : "LocalSize", - "value" : 17, - "parameters" : [ - { "kind" : "LiteralInteger", "name" : "'x size'" }, - { "kind" : "LiteralInteger", "name" : "'y size'" }, - { "kind" : "LiteralInteger", "name" : "'z size'" } - ] - }, - { - "enumerant" : "LocalSizeHint", - "value" : 18, - "capabilities" : [ "Kernel" ], - "parameters" : [ - { "kind" : "LiteralInteger", "name" : "'x size'" }, - { "kind" : "LiteralInteger", "name" : "'y size'" }, - { "kind" : "LiteralInteger", "name" : "'z size'" } - ] - }, - { - "enumerant" : "InputPoints", - "value" : 19, - "capabilities" : [ "Geometry" ] - }, - { - "enumerant" : "InputLines", - "value" : 20, - "capabilities" : [ "Geometry" ] - }, - { - "enumerant" : "InputLinesAdjacency", - "value" : 21, - "capabilities" : [ "Geometry" ] - }, - { - "enumerant" : "Triangles", - "value" : 22, - "capabilities" : [ "Geometry", "Tessellation" ] - }, - { - "enumerant" : "InputTrianglesAdjacency", - "value" : 23, - "capabilities" : [ "Geometry" ] - }, - { - "enumerant" : "Quads", - "value" : 24, - "capabilities" : [ "Tessellation" ] - }, - { - "enumerant" : "Isolines", - "value" : 25, - "capabilities" : [ "Tessellation" ] - }, - { - "enumerant" : "OutputVertices", - "value" : 26, - "capabilities" : [ "Geometry", "Tessellation" ], - "parameters" : [ - { "kind" : "LiteralInteger", "name" : "'Vertex count'" } - ] - }, - { - "enumerant" : "OutputPoints", - "value" : 27, - "capabilities" : [ "Geometry" ] - }, - { - "enumerant" : "OutputLineStrip", - "value" : 28, - "capabilities" : [ "Geometry" ] - }, - { - "enumerant" : "OutputTriangleStrip", - "value" : 29, - "capabilities" : [ "Geometry" ] - }, - { - "enumerant" : "VecTypeHint", - "value" : 30, - "capabilities" : [ "Kernel" ], - "parameters" : [ - { "kind" : "LiteralInteger", "name" : "'Vector type'" } - ] - }, - { - "enumerant" : "ContractionOff", - "value" : 31, - "capabilities" : [ "Kernel" ] - }, - { - "enumerant" : "Initializer", - "value" : 33, - "capabilities" : [ "Kernel" ] - }, - { - "enumerant" : "Finalizer", - "value" : 34, - "capabilities" : [ "Kernel" ] - }, - { - "enumerant" : "SubgroupSize", - "value" : 35, - "capabilities" : [ "SubgroupDispatch" ], - "parameters" : [ - { "kind" : "LiteralInteger", "name" : "'Subgroup Size'" } - ] - }, - { - "enumerant" : "SubgroupsPerWorkgroup", - "value" : 36, - "capabilities" : [ "SubgroupDispatch" ], - "parameters" : [ - { "kind" : "LiteralInteger", "name" : "'Subgroups Per Workgroup'" } - ] - }, - { - "enumerant" : "SubgroupsPerWorkgroupId", - "value" : 37, - "capabilities" : [ "SubgroupDispatch" ], - "parameters" : [ - { "kind" : "IdRef", "name" : "'Subgroups Per Workgroup'" } - ] - }, - { - "enumerant" : "LocalSizeId", - "value" : 38, - "parameters" : [ - { "kind" : "IdRef", "name" : "'x size'" }, - { "kind" : "IdRef", "name" : "'y size'" }, - { "kind" : "IdRef", "name" : "'z size'" } - ] - }, - { - "enumerant" : "LocalSizeHintId", - "value" : 39, - "capabilities" : [ "Kernel" ], - "parameters" : [ - { "kind" : "IdRef", "name" : "'Local Size Hint'" } - ] - }, - { - "enumerant" : "PostDepthCoverage", - "value" : 4446, - "capabilities" : [ "SampleMaskPostDepthCoverage" ] - }, - { - "enumerant" : "StencilRefReplacingEXT", - "value" : 5027, - "capabilities" : [ "StencilExportEXT" ] - } - ] - }, - { - "category" : "ValueEnum", - "kind" : "StorageClass", - "enumerants" : [ - { - "enumerant" : "UniformConstant", - "value" : 0 - }, - { - "enumerant" : "Input", - "value" : 1 - }, - { - "enumerant" : "Uniform", - "value" : 2, - "capabilities" : [ "Shader" ] - }, - { - "enumerant" : "Output", - "value" : 3, - "capabilities" : [ "Shader" ] - }, - { - "enumerant" : "Workgroup", - "value" : 4 - }, - { - "enumerant" : "CrossWorkgroup", - "value" : 5 - }, - { - "enumerant" : "Private", - "value" : 6, - "capabilities" : [ "Shader" ] - }, - { - "enumerant" : "Function", - "value" : 7 - }, - { - "enumerant" : "Generic", - "value" : 8, - "capabilities" : [ "GenericPointer" ] - }, - { - "enumerant" : "PushConstant", - "value" : 9, - "capabilities" : [ "Shader" ] - }, - { - "enumerant" : "AtomicCounter", - "value" : 10, - "capabilities" : [ "AtomicStorage" ] - }, - { - "enumerant" : "Image", - "value" : 11 - }, - { - "enumerant" : "StorageBuffer", - "value" : 12, - "extensions" : [ - "SPV_KHR_storage_buffer_storage_class", - "SPV_KHR_variable_pointers" - ], - "capabilities" : [ "Shader" ] - } - ] - }, - { - "category" : "ValueEnum", - "kind" : "Dim", - "enumerants" : [ - { - "enumerant" : "1D", - "value" : 0, - "capabilities" : [ "Sampled1D" ] - }, - { - "enumerant" : "2D", - "value" : 1 - }, - { - "enumerant" : "3D", - "value" : 2 - }, - { - "enumerant" : "Cube", - "value" : 3, - "capabilities" : [ "Shader" ] - }, - { - "enumerant" : "Rect", - "value" : 4, - "capabilities" : [ "SampledRect" ] - }, - { - "enumerant" : "Buffer", - "value" : 5, - "capabilities" : [ "SampledBuffer" ] - }, - { - "enumerant" : "SubpassData", - "value" : 6, - "capabilities" : [ "InputAttachment" ] - } - ] - }, - { - "category" : "ValueEnum", - "kind" : "SamplerAddressingMode", - "enumerants" : [ - { - "enumerant" : "None", - "value" : 0, - "capabilities" : [ "Kernel" ] - }, - { - "enumerant" : "ClampToEdge", - "value" : 1, - "capabilities" : [ "Kernel" ] - }, - { - "enumerant" : "Clamp", - "value" : 2, - "capabilities" : [ "Kernel" ] - }, - { - "enumerant" : "Repeat", - "value" : 3, - "capabilities" : [ "Kernel" ] - }, - { - "enumerant" : "RepeatMirrored", - "value" : 4, - "capabilities" : [ "Kernel" ] - } - ] - }, - { - "category" : "ValueEnum", - "kind" : "SamplerFilterMode", - "enumerants" : [ - { - "enumerant" : "Nearest", - "value" : 0, - "capabilities" : [ "Kernel" ] - }, - { - "enumerant" : "Linear", - "value" : 1, - "capabilities" : [ "Kernel" ] - } - ] - }, - { - "category" : "ValueEnum", - "kind" : "ImageFormat", - "enumerants" : [ - { - "enumerant" : "Unknown", - "value" : 0 - }, - { - "enumerant" : "Rgba32f", - "value" : 1, - "capabilities" : [ "Shader" ] - }, - { - "enumerant" : "Rgba16f", - "value" : 2, - "capabilities" : [ "Shader" ] - }, - { - "enumerant" : "R32f", - "value" : 3, - "capabilities" : [ "Shader" ] - }, - { - "enumerant" : "Rgba8", - "value" : 4, - "capabilities" : [ "Shader" ] - }, - { - "enumerant" : "Rgba8Snorm", - "value" : 5, - "capabilities" : [ "Shader" ] - }, - { - "enumerant" : "Rg32f", - "value" : 6, - "capabilities" : [ "StorageImageExtendedFormats" ] - }, - { - "enumerant" : "Rg16f", - "value" : 7, - "capabilities" : [ "StorageImageExtendedFormats" ] - }, - { - "enumerant" : "R11fG11fB10f", - "value" : 8, - "capabilities" : [ "StorageImageExtendedFormats" ] - }, - { - "enumerant" : "R16f", - "value" : 9, - "capabilities" : [ "StorageImageExtendedFormats" ] - }, - { - "enumerant" : "Rgba16", - "value" : 10, - "capabilities" : [ "StorageImageExtendedFormats" ] - }, - { - "enumerant" : "Rgb10A2", - "value" : 11, - "capabilities" : [ "StorageImageExtendedFormats" ] - }, - { - "enumerant" : "Rg16", - "value" : 12, - "capabilities" : [ "StorageImageExtendedFormats" ] - }, - { - "enumerant" : "Rg8", - "value" : 13, - "capabilities" : [ "StorageImageExtendedFormats" ] - }, - { - "enumerant" : "R16", - "value" : 14, - "capabilities" : [ "StorageImageExtendedFormats" ] - }, - { - "enumerant" : "R8", - "value" : 15, - "capabilities" : [ "StorageImageExtendedFormats" ] - }, - { - "enumerant" : "Rgba16Snorm", - "value" : 16, - "capabilities" : [ "StorageImageExtendedFormats" ] - }, - { - "enumerant" : "Rg16Snorm", - "value" : 17, - "capabilities" : [ "StorageImageExtendedFormats" ] - }, - { - "enumerant" : "Rg8Snorm", - "value" : 18, - "capabilities" : [ "StorageImageExtendedFormats" ] - }, - { - "enumerant" : "R16Snorm", - "value" : 19, - "capabilities" : [ "StorageImageExtendedFormats" ] - }, - { - "enumerant" : "R8Snorm", - "value" : 20, - "capabilities" : [ "StorageImageExtendedFormats" ] - }, - { - "enumerant" : "Rgba32i", - "value" : 21, - "capabilities" : [ "Shader" ] - }, - { - "enumerant" : "Rgba16i", - "value" : 22, - "capabilities" : [ "Shader" ] - }, - { - "enumerant" : "Rgba8i", - "value" : 23, - "capabilities" : [ "Shader" ] - }, - { - "enumerant" : "R32i", - "value" : 24, - "capabilities" : [ "Shader" ] - }, - { - "enumerant" : "Rg32i", - "value" : 25, - "capabilities" : [ "StorageImageExtendedFormats" ] - }, - { - "enumerant" : "Rg16i", - "value" : 26, - "capabilities" : [ "StorageImageExtendedFormats" ] - }, - { - "enumerant" : "Rg8i", - "value" : 27, - "capabilities" : [ "StorageImageExtendedFormats" ] - }, - { - "enumerant" : "R16i", - "value" : 28, - "capabilities" : [ "StorageImageExtendedFormats" ] - }, - { - "enumerant" : "R8i", - "value" : 29, - "capabilities" : [ "StorageImageExtendedFormats" ] - }, - { - "enumerant" : "Rgba32ui", - "value" : 30, - "capabilities" : [ "Shader" ] - }, - { - "enumerant" : "Rgba16ui", - "value" : 31, - "capabilities" : [ "Shader" ] - }, - { - "enumerant" : "Rgba8ui", - "value" : 32, - "capabilities" : [ "Shader" ] - }, - { - "enumerant" : "R32ui", - "value" : 33, - "capabilities" : [ "Shader" ] - }, - { - "enumerant" : "Rgb10a2ui", - "value" : 34, - "capabilities" : [ "StorageImageExtendedFormats" ] - }, - { - "enumerant" : "Rg32ui", - "value" : 35, - "capabilities" : [ "StorageImageExtendedFormats" ] - }, - { - "enumerant" : "Rg16ui", - "value" : 36, - "capabilities" : [ "StorageImageExtendedFormats" ] - }, - { - "enumerant" : "Rg8ui", - "value" : 37, - "capabilities" : [ "StorageImageExtendedFormats" ] - }, - { - "enumerant" : "R16ui", - "value" : 38, - "capabilities" : [ "StorageImageExtendedFormats" ] - }, - { - "enumerant" : "R8ui", - "value" : 39, - "capabilities" : [ "StorageImageExtendedFormats" ] - } - ] - }, - { - "category" : "ValueEnum", - "kind" : "ImageChannelOrder", - "enumerants" : [ - { - "enumerant" : "R", - "value" : 0, - "capabilities" : [ "Kernel" ] - }, - { - "enumerant" : "A", - "value" : 1, - "capabilities" : [ "Kernel" ] - }, - { - "enumerant" : "RG", - "value" : 2, - "capabilities" : [ "Kernel" ] - }, - { - "enumerant" : "RA", - "value" : 3, - "capabilities" : [ "Kernel" ] - }, - { - "enumerant" : "RGB", - "value" : 4, - "capabilities" : [ "Kernel" ] - }, - { - "enumerant" : "RGBA", - "value" : 5, - "capabilities" : [ "Kernel" ] - }, - { - "enumerant" : "BGRA", - "value" : 6, - "capabilities" : [ "Kernel" ] - }, - { - "enumerant" : "ARGB", - "value" : 7, - "capabilities" : [ "Kernel" ] - }, - { - "enumerant" : "Intensity", - "value" : 8, - "capabilities" : [ "Kernel" ] - }, - { - "enumerant" : "Luminance", - "value" : 9, - "capabilities" : [ "Kernel" ] - }, - { - "enumerant" : "Rx", - "value" : 10, - "capabilities" : [ "Kernel" ] - }, - { - "enumerant" : "RGx", - "value" : 11, - "capabilities" : [ "Kernel" ] - }, - { - "enumerant" : "RGBx", - "value" : 12, - "capabilities" : [ "Kernel" ] - }, - { - "enumerant" : "Depth", - "value" : 13, - "capabilities" : [ "Kernel" ] - }, - { - "enumerant" : "DepthStencil", - "value" : 14, - "capabilities" : [ "Kernel" ] - }, - { - "enumerant" : "sRGB", - "value" : 15, - "capabilities" : [ "Kernel" ] - }, - { - "enumerant" : "sRGBx", - "value" : 16, - "capabilities" : [ "Kernel" ] - }, - { - "enumerant" : "sRGBA", - "value" : 17, - "capabilities" : [ "Kernel" ] - }, - { - "enumerant" : "sBGRA", - "value" : 18, - "capabilities" : [ "Kernel" ] - }, - { - "enumerant" : "ABGR", - "value" : 19, - "capabilities" : [ "Kernel" ] - } - ] - }, - { - "category" : "ValueEnum", - "kind" : "ImageChannelDataType", - "enumerants" : [ - { - "enumerant" : "SnormInt8", - "value" : 0, - "capabilities" : [ "Kernel" ] - }, - { - "enumerant" : "SnormInt16", - "value" : 1, - "capabilities" : [ "Kernel" ] - }, - { - "enumerant" : "UnormInt8", - "value" : 2, - "capabilities" : [ "Kernel" ] - }, - { - "enumerant" : "UnormInt16", - "value" : 3, - "capabilities" : [ "Kernel" ] - }, - { - "enumerant" : "UnormShort565", - "value" : 4, - "capabilities" : [ "Kernel" ] - }, - { - "enumerant" : "UnormShort555", - "value" : 5, - "capabilities" : [ "Kernel" ] - }, - { - "enumerant" : "UnormInt101010", - "value" : 6, - "capabilities" : [ "Kernel" ] - }, - { - "enumerant" : "SignedInt8", - "value" : 7, - "capabilities" : [ "Kernel" ] - }, - { - "enumerant" : "SignedInt16", - "value" : 8, - "capabilities" : [ "Kernel" ] - }, - { - "enumerant" : "SignedInt32", - "value" : 9, - "capabilities" : [ "Kernel" ] - }, - { - "enumerant" : "UnsignedInt8", - "value" : 10, - "capabilities" : [ "Kernel" ] - }, - { - "enumerant" : "UnsignedInt16", - "value" : 11, - "capabilities" : [ "Kernel" ] - }, - { - "enumerant" : "UnsignedInt32", - "value" : 12, - "capabilities" : [ "Kernel" ] - }, - { - "enumerant" : "HalfFloat", - "value" : 13, - "capabilities" : [ "Kernel" ] - }, - { - "enumerant" : "Float", - "value" : 14, - "capabilities" : [ "Kernel" ] - }, - { - "enumerant" : "UnormInt24", - "value" : 15, - "capabilities" : [ "Kernel" ] - }, - { - "enumerant" : "UnormInt101010_2", - "value" : 16, - "capabilities" : [ "Kernel" ] - } - ] - }, - { - "category" : "ValueEnum", - "kind" : "FPRoundingMode", - "enumerants" : [ - { - "enumerant" : "RTE", - "value" : 0, - "capabilities" : [ - "Kernel", - "StorageUniformBufferBlock16", - "StorageUniform16", - "StoragePushConstant16", - "StorageInputOutput16" - ] - }, - { - "enumerant" : "RTZ", - "value" : 1, - "capabilities" : [ - "Kernel", - "StorageUniformBufferBlock16", - "StorageUniform16", - "StoragePushConstant16", - "StorageInputOutput16" - ] - }, - { - "enumerant" : "RTP", - "value" : 2, - "capabilities" : [ - "Kernel", - "StorageUniformBufferBlock16", - "StorageUniform16", - "StoragePushConstant16", - "StorageInputOutput16" - ] - }, - { - "enumerant" : "RTN", - "value" : 3, - "capabilities" : [ - "Kernel", - "StorageUniformBufferBlock16", - "StorageUniform16", - "StoragePushConstant16", - "StorageInputOutput16" - ] - } - ] - }, - { - "category" : "ValueEnum", - "kind" : "LinkageType", - "enumerants" : [ - { - "enumerant" : "Export", - "value" : 0, - "capabilities" : [ "Linkage" ] - }, - { - "enumerant" : "Import", - "value" : 1, - "capabilities" : [ "Linkage" ] - } - ] - }, - { - "category" : "ValueEnum", - "kind" : "AccessQualifier", - "enumerants" : [ - { - "enumerant" : "ReadOnly", - "value" : 0, - "capabilities" : [ "Kernel" ] - }, - { - "enumerant" : "WriteOnly", - "value" : 1, - "capabilities" : [ "Kernel" ] - }, - { - "enumerant" : "ReadWrite", - "value" : 2, - "capabilities" : [ "Kernel" ] - } - ] - }, - { - "category" : "ValueEnum", - "kind" : "FunctionParameterAttribute", - "enumerants" : [ - { - "enumerant" : "Zext", - "value" : 0, - "capabilities" : [ "Kernel" ] - }, - { - "enumerant" : "Sext", - "value" : 1, - "capabilities" : [ "Kernel" ] - }, - { - "enumerant" : "ByVal", - "value" : 2, - "capabilities" : [ "Kernel" ] - }, - { - "enumerant" : "Sret", - "value" : 3, - "capabilities" : [ "Kernel" ] - }, - { - "enumerant" : "NoAlias", - "value" : 4, - "capabilities" : [ "Kernel" ] - }, - { - "enumerant" : "NoCapture", - "value" : 5, - "capabilities" : [ "Kernel" ] - }, - { - "enumerant" : "NoWrite", - "value" : 6, - "capabilities" : [ "Kernel" ] - }, - { - "enumerant" : "NoReadWrite", - "value" : 7, - "capabilities" : [ "Kernel" ] - } - ] - }, - { - "category" : "ValueEnum", - "kind" : "Decoration", - "enumerants" : [ - { - "enumerant" : "RelaxedPrecision", - "value" : 0, - "capabilities" : [ "Shader" ] - }, - { - "enumerant" : "SpecId", - "value" : 1, - "capabilities" : [ "Shader", "Kernel" ], - "parameters" : [ - { "kind" : "LiteralInteger", "name" : "'Specialization Constant ID'" } - ] - }, - { - "enumerant" : "Block", - "value" : 2, - "capabilities" : [ "Shader" ] - }, - { - "enumerant" : "BufferBlock", - "value" : 3, - "capabilities" : [ "Shader" ] - }, - { - "enumerant" : "RowMajor", - "value" : 4, - "capabilities" : [ "Matrix" ] - }, - { - "enumerant" : "ColMajor", - "value" : 5, - "capabilities" : [ "Matrix" ] - }, - { - "enumerant" : "ArrayStride", - "value" : 6, - "capabilities" : [ "Shader" ], - "parameters" : [ - { "kind" : "LiteralInteger", "name" : "'Array Stride'" } - ] - }, - { - "enumerant" : "MatrixStride", - "value" : 7, - "capabilities" : [ "Matrix" ], - "parameters" : [ - { "kind" : "LiteralInteger", "name" : "'Matrix Stride'" } - ] - }, - { - "enumerant" : "GLSLShared", - "value" : 8, - "capabilities" : [ "Shader" ] - }, - { - "enumerant" : "GLSLPacked", - "value" : 9, - "capabilities" : [ "Shader" ] - }, - { - "enumerant" : "CPacked", - "value" : 10, - "capabilities" : [ "Kernel" ] - }, - { - "enumerant" : "BuiltIn", - "value" : 11, - "parameters" : [ - { "kind" : "BuiltIn" } - ] - }, - { - "enumerant" : "NoPerspective", - "value" : 13, - "capabilities" : [ "Shader" ] - }, - { - "enumerant" : "Flat", - "value" : 14, - "capabilities" : [ "Shader" ] - }, - { - "enumerant" : "Patch", - "value" : 15, - "capabilities" : [ "Tessellation" ] - }, - { - "enumerant" : "Centroid", - "value" : 16, - "capabilities" : [ "Shader" ] - }, - { - "enumerant" : "Sample", - "value" : 17, - "capabilities" : [ "SampleRateShading" ] - }, - { - "enumerant" : "Invariant", - "value" : 18, - "capabilities" : [ "Shader" ] - }, - { - "enumerant" : "Restrict", - "value" : 19 - }, - { - "enumerant" : "Aliased", - "value" : 20 - }, - { - "enumerant" : "Volatile", - "value" : 21 - }, - { - "enumerant" : "Constant", - "value" : 22, - "capabilities" : [ "Kernel" ] - }, - { - "enumerant" : "Coherent", - "value" : 23 - }, - { - "enumerant" : "NonWritable", - "value" : 24 - }, - { - "enumerant" : "NonReadable", - "value" : 25 - }, - { - "enumerant" : "Uniform", - "value" : 26, - "capabilities" : [ "Shader" ] - }, - { - "enumerant" : "SaturatedConversion", - "value" : 28, - "capabilities" : [ "Kernel" ] - }, - { - "enumerant" : "Stream", - "value" : 29, - "capabilities" : [ "GeometryStreams" ], - "parameters" : [ - { "kind" : "LiteralInteger", "name" : "'Stream Number'" } - ] - }, - { - "enumerant" : "Location", - "value" : 30, - "capabilities" : [ "Shader" ], - "parameters" : [ - { "kind" : "LiteralInteger", "name" : "'Location'" } - ] - }, - { - "enumerant" : "Component", - "value" : 31, - "capabilities" : [ "Shader" ], - "parameters" : [ - { "kind" : "LiteralInteger", "name" : "'Component'" } - ] - }, - { - "enumerant" : "Index", - "value" : 32, - "capabilities" : [ "Shader" ], - "parameters" : [ - { "kind" : "LiteralInteger", "name" : "'Index'" } - ] - }, - { - "enumerant" : "Binding", - "value" : 33, - "capabilities" : [ "Shader" ], - "parameters" : [ - { "kind" : "LiteralInteger", "name" : "'Binding Point'" } - ] - }, - { - "enumerant" : "DescriptorSet", - "value" : 34, - "capabilities" : [ "Shader" ], - "parameters" : [ - { "kind" : "LiteralInteger", "name" : "'Descriptor Set'" } - ] - }, - { - "enumerant" : "Offset", - "value" : 35, - "capabilities" : [ "Shader" ], - "parameters" : [ - { "kind" : "LiteralInteger", "name" : "'Byte Offset'" } - ] - }, - { - "enumerant" : "XfbBuffer", - "value" : 36, - "capabilities" : [ "TransformFeedback" ], - "parameters" : [ - { "kind" : "LiteralInteger", "name" : "'XFB Buffer Number'" } - ] - }, - { - "enumerant" : "XfbStride", - "value" : 37, - "capabilities" : [ "TransformFeedback" ], - "parameters" : [ - { "kind" : "LiteralInteger", "name" : "'XFB Stride'" } - ] - }, - { - "enumerant" : "FuncParamAttr", - "value" : 38, - "capabilities" : [ "Kernel" ], - "parameters" : [ - { "kind" : "FunctionParameterAttribute", "name" : "'Function Parameter Attribute'" } - ] - }, - { - "enumerant" : "FPRoundingMode", - "value" : 39, - "capabilities" : [ - "Kernel", - "StorageUniformBufferBlock16", - "StorageUniform16", - "StoragePushConstant16", - "StorageInputOutput16" - ], - "parameters" : [ - { "kind" : "FPRoundingMode", "name" : "'Floating-Point Rounding Mode'" } - ] - }, - { - "enumerant" : "FPFastMathMode", - "value" : 40, - "capabilities" : [ "Kernel" ], - "parameters" : [ - { "kind" : "FPFastMathMode", "name" : "'Fast-Math Mode'" } - ] - }, - { - "enumerant" : "LinkageAttributes", - "value" : 41, - "capabilities" : [ "Linkage" ], - "parameters" : [ - { "kind" : "LiteralString", "name" : "'Name'" }, - { "kind" : "LinkageType", "name" : "'Linkage Type'" } - ] - }, - { - "enumerant" : "NoContraction", - "value" : 42, - "capabilities" : [ "Shader" ] - }, - { - "enumerant" : "InputAttachmentIndex", - "value" : 43, - "capabilities" : [ "InputAttachment" ], - "parameters" : [ - { "kind" : "LiteralInteger", "name" : "'Attachment Index'" } - ] - }, - { - "enumerant" : "Alignment", - "value" : 44, - "capabilities" : [ "Kernel" ], - "parameters" : [ - { "kind" : "LiteralInteger", "name" : "'Alignment'" } - ] - }, - { - "enumerant" : "MaxByteOffset", - "value" : 45, - "capabilities" : [ "Addresses" ], - "parameters" : [ - { "kind" : "LiteralInteger", "name" : "'Max Byte Offset'" } - ] - }, - { - "enumerant" : "AlignmentId", - "value" : 46, - "capabilities" : [ "Kernel" ], - "parameters" : [ - { "kind" : "IdRef", "name" : "'Alignment'" } - ] - }, - { - "enumerant" : "MaxByteOffsetId", - "value" : 47, - "capabilities" : [ "Addresses" ], - "parameters" : [ - { "kind" : "IdRef", "name" : "'Max Byte Offset'" } - ] - }, - { - "enumerant" : "ExplicitInterpAMD", - "value" : 4999 - }, - { - "enumerant" : "OverrideCoverageNV", - "value" : 5248, - "capabilities" : [ "SampleMaskOverrideCoverageNV" ] - }, - { - "enumerant" : "PassthroughNV", - "value" : 5250, - "capabilities" : [ "GeometryShaderPassthroughNV" ] - }, - { - "enumerant" : "ViewportRelativeNV", - "value" : 5252, - "capabilities" : [ "ShaderViewportMaskNV" ] - }, - { - "enumerant" : "SecondaryViewportRelativeNV", - "value" : 5256, - "capabilities" : [ "ShaderStereoViewNV" ], - "parameters" : [ - { "kind" : "LiteralInteger", "name" : "'Offset'" } - ] - }, - { - "enumerant" : "HlslCounterBufferGOOGLE", - "value" : 5634, - "parameters" : [ - { "kind" : "IdRef", "name" : "'Counter Buffer'" } - ], - "extensions" : [ "SPV_GOOGLE_hlsl_functionality1" ] - }, - { - "enumerant" : "HlslSemanticGOOGLE", - "value" : 5635, - "parameters" : [ - { "kind" : "LiteralString", "name" : "'Semantic'" } - ], - "extensions" : [ "SPV_GOOGLE_hlsl_functionality1" ] - } - ] - }, - { - "category" : "ValueEnum", - "kind" : "BuiltIn", - "enumerants" : [ - { - "enumerant" : "Position", - "value" : 0, - "capabilities" : [ "Shader" ] - }, - { - "enumerant" : "PointSize", - "value" : 1, - "capabilities" : [ "Shader" ] - }, - { - "enumerant" : "ClipDistance", - "value" : 3, - "capabilities" : [ "ClipDistance" ] - }, - { - "enumerant" : "CullDistance", - "value" : 4, - "capabilities" : [ "CullDistance" ] - }, - { - "enumerant" : "VertexId", - "value" : 5, - "capabilities" : [ "Shader" ] - }, - { - "enumerant" : "InstanceId", - "value" : 6, - "capabilities" : [ "Shader" ] - }, - { - "enumerant" : "PrimitiveId", - "value" : 7, - "capabilities" : [ "Geometry", "Tessellation" ] - }, - { - "enumerant" : "InvocationId", - "value" : 8, - "capabilities" : [ "Geometry", "Tessellation" ] - }, - { - "enumerant" : "Layer", - "value" : 9, - "capabilities" : [ "Geometry" ] - }, - { - "enumerant" : "ViewportIndex", - "value" : 10, - "capabilities" : [ "MultiViewport" ] - }, - { - "enumerant" : "TessLevelOuter", - "value" : 11, - "capabilities" : [ "Tessellation" ] - }, - { - "enumerant" : "TessLevelInner", - "value" : 12, - "capabilities" : [ "Tessellation" ] - }, - { - "enumerant" : "TessCoord", - "value" : 13, - "capabilities" : [ "Tessellation" ] - }, - { - "enumerant" : "PatchVertices", - "value" : 14, - "capabilities" : [ "Tessellation" ] - }, - { - "enumerant" : "FragCoord", - "value" : 15, - "capabilities" : [ "Shader" ] - }, - { - "enumerant" : "PointCoord", - "value" : 16, - "capabilities" : [ "Shader" ] - }, - { - "enumerant" : "FrontFacing", - "value" : 17, - "capabilities" : [ "Shader" ] - }, - { - "enumerant" : "SampleId", - "value" : 18, - "capabilities" : [ "SampleRateShading" ] - }, - { - "enumerant" : "SamplePosition", - "value" : 19, - "capabilities" : [ "SampleRateShading" ] - }, - { - "enumerant" : "SampleMask", - "value" : 20, - "capabilities" : [ "Shader" ] - }, - { - "enumerant" : "FragDepth", - "value" : 22, - "capabilities" : [ "Shader" ] - }, - { - "enumerant" : "HelperInvocation", - "value" : 23, - "capabilities" : [ "Shader" ] - }, - { - "enumerant" : "NumWorkgroups", - "value" : 24 - }, - { - "enumerant" : "WorkgroupSize", - "value" : 25 - }, - { - "enumerant" : "WorkgroupId", - "value" : 26 - }, - { - "enumerant" : "LocalInvocationId", - "value" : 27 - }, - { - "enumerant" : "GlobalInvocationId", - "value" : 28 - }, - { - "enumerant" : "LocalInvocationIndex", - "value" : 29 - }, - { - "enumerant" : "WorkDim", - "value" : 30, - "capabilities" : [ "Kernel" ] - }, - { - "enumerant" : "GlobalSize", - "value" : 31, - "capabilities" : [ "Kernel" ] - }, - { - "enumerant" : "EnqueuedWorkgroupSize", - "value" : 32, - "capabilities" : [ "Kernel" ] - }, - { - "enumerant" : "GlobalOffset", - "value" : 33, - "capabilities" : [ "Kernel" ] - }, - { - "enumerant" : "GlobalLinearId", - "value" : 34, - "capabilities" : [ "Kernel" ] - }, - { - "enumerant" : "SubgroupSize", - "value" : 36, - "capabilities" : [ "Kernel", "SubgroupBallotKHR" ] - }, - { - "enumerant" : "SubgroupMaxSize", - "value" : 37, - "capabilities" : [ "Kernel" ] - }, - { - "enumerant" : "NumSubgroups", - "value" : 38, - "capabilities" : [ "Kernel" ] - }, - { - "enumerant" : "NumEnqueuedSubgroups", - "value" : 39, - "capabilities" : [ "Kernel" ] - }, - { - "enumerant" : "SubgroupId", - "value" : 40, - "capabilities" : [ "Kernel" ] - }, - { - "enumerant" : "SubgroupLocalInvocationId", - "value" : 41, - "capabilities" : [ "Kernel", "SubgroupBallotKHR" ] - }, - { - "enumerant" : "VertexIndex", - "value" : 42, - "capabilities" : [ "Shader" ] - }, - { - "enumerant" : "InstanceIndex", - "value" : 43, - "capabilities" : [ "Shader" ] - }, - { - "enumerant" : "SubgroupEqMaskKHR", - "value" : 4416, - "capabilities" : [ "SubgroupBallotKHR" ] - }, - { - "enumerant" : "SubgroupGeMaskKHR", - "value" : 4417, - "capabilities" : [ "SubgroupBallotKHR" ] - }, - { - "enumerant" : "SubgroupGtMaskKHR", - "value" : 4418, - "capabilities" : [ "SubgroupBallotKHR" ] - }, - { - "enumerant" : "SubgroupLeMaskKHR", - "value" : 4419, - "capabilities" : [ "SubgroupBallotKHR" ] - }, - { - "enumerant" : "SubgroupLtMaskKHR", - "value" : 4420, - "capabilities" : [ "SubgroupBallotKHR" ] - }, - { - "enumerant" : "BaseVertex", - "value" : 4424, - "capabilities" : [ "DrawParameters" ] - }, - { - "enumerant" : "BaseInstance", - "value" : 4425, - "capabilities" : [ "DrawParameters" ] - }, - { - "enumerant" : "DrawIndex", - "value" : 4426, - "capabilities" : [ "DrawParameters" ] - }, - { - "enumerant" : "DeviceIndex", - "value" : 4438, - "capabilities" : [ "DeviceGroup" ] - }, - { - "enumerant" : "ViewIndex", - "value" : 4440, - "capabilities" : [ "MultiView" ] - }, - { - "enumerant" : "BaryCoordNoPerspAMD", - "value" : 4992 - }, - { - "enumerant" : "BaryCoordNoPerspCentroidAMD", - "value" : 4993 - }, - { - "enumerant" : "BaryCoordNoPerspSampleAMD", - "value" : 4994 - }, - { - "enumerant" : "BaryCoordSmoothAMD", - "value" : 4995 - }, - { - "enumerant" : "BaryCoordSmoothCentroidAMD", - "value" : 4996 - }, - { - "enumerant" : "BaryCoordSmoothSampleAMD", - "value" : 4997 - }, - { - "enumerant" : "BaryCoordPullModelAMD", - "value" : 4998 - }, - { - "enumerant" : "FragStencilRefEXT", - "value" : 5014, - "capabilities" : [ "StencilExportEXT" ] - }, - { - "enumerant" : "ViewportMaskNV", - "value" : 5253, - "capabilities" : [ "ShaderViewportMaskNV" ] - }, - { - "enumerant" : "SecondaryPositionNV", - "value" : 5257, - "capabilities" : [ "ShaderStereoViewNV" ] - }, - { - "enumerant" : "SecondaryViewportMaskNV", - "value" : 5258, - "capabilities" : [ "ShaderStereoViewNV" ] - }, - { - "enumerant" : "PositionPerViewNV", - "value" : 5261, - "capabilities" : [ "PerViewAttributesNV" ] - }, - { - "enumerant" : "ViewportMaskPerViewNV", - "value" : 5262, - "capabilities" : [ "PerViewAttributesNV" ] - } - ] - }, - { - "category" : "ValueEnum", - "kind" : "Scope", - "enumerants" : [ - { - "enumerant" : "CrossDevice", - "value" : 0 - }, - { - "enumerant" : "Device", - "value" : 1 - }, - { - "enumerant" : "Workgroup", - "value" : 2 - }, - { - "enumerant" : "Subgroup", - "value" : 3 - }, - { - "enumerant" : "Invocation", - "value" : 4 - } - ] - }, - { - "category" : "ValueEnum", - "kind" : "GroupOperation", - "enumerants" : [ - { - "enumerant" : "Reduce", - "value" : 0, - "capabilities" : [ "Kernel" ] - }, - { - "enumerant" : "InclusiveScan", - "value" : 1, - "capabilities" : [ "Kernel" ] - }, - { - "enumerant" : "ExclusiveScan", - "value" : 2, - "capabilities" : [ "Kernel" ] - } - ] - }, - { - "category" : "ValueEnum", - "kind" : "KernelEnqueueFlags", - "enumerants" : [ - { - "enumerant" : "NoWait", - "value" : 0, - "capabilities" : [ "Kernel" ] - }, - { - "enumerant" : "WaitKernel", - "value" : 1, - "capabilities" : [ "Kernel" ] - }, - { - "enumerant" : "WaitWorkGroup", - "value" : 2, - "capabilities" : [ "Kernel" ] - } - ] - }, - { - "category" : "ValueEnum", - "kind" : "Capability", - "enumerants" : [ - { - "enumerant" : "Matrix", - "value" : 0 - }, - { - "enumerant" : "Shader", - "value" : 1, - "capabilities" : [ "Matrix" ] - }, - { - "enumerant" : "Geometry", - "value" : 2, - "capabilities" : [ "Shader" ] - }, - { - "enumerant" : "Tessellation", - "value" : 3, - "capabilities" : [ "Shader" ] - }, - { - "enumerant" : "Addresses", - "value" : 4 - }, - { - "enumerant" : "Linkage", - "value" : 5 - }, - { - "enumerant" : "Kernel", - "value" : 6 - }, - { - "enumerant" : "Vector16", - "value" : 7, - "capabilities" : [ "Kernel" ] - }, - { - "enumerant" : "Float16Buffer", - "value" : 8, - "capabilities" : [ "Kernel" ] - }, - { - "enumerant" : "Float16", - "value" : 9 - }, - { - "enumerant" : "Float64", - "value" : 10 - }, - { - "enumerant" : "Int64", - "value" : 11 - }, - { - "enumerant" : "Int64Atomics", - "value" : 12, - "capabilities" : [ "Int64" ] - }, - { - "enumerant" : "ImageBasic", - "value" : 13, - "capabilities" : [ "Kernel" ] - }, - { - "enumerant" : "ImageReadWrite", - "value" : 14, - "capabilities" : [ "ImageBasic" ] - }, - { - "enumerant" : "ImageMipmap", - "value" : 15, - "capabilities" : [ "ImageBasic" ] - }, - { - "enumerant" : "Pipes", - "value" : 17, - "capabilities" : [ "Kernel" ] - }, - { - "enumerant" : "Groups", - "value" : 18 - }, - { - "enumerant" : "DeviceEnqueue", - "value" : 19, - "capabilities" : [ "Kernel" ] - }, - { - "enumerant" : "LiteralSampler", - "value" : 20, - "capabilities" : [ "Kernel" ] - }, - { - "enumerant" : "AtomicStorage", - "value" : 21, - "capabilities" : [ "Shader" ] - }, - { - "enumerant" : "Int16", - "value" : 22 - }, - { - "enumerant" : "TessellationPointSize", - "value" : 23, - "capabilities" : [ "Tessellation" ] - }, - { - "enumerant" : "GeometryPointSize", - "value" : 24, - "capabilities" : [ "Geometry" ] - }, - { - "enumerant" : "ImageGatherExtended", - "value" : 25, - "capabilities" : [ "Shader" ] - }, - { - "enumerant" : "StorageImageMultisample", - "value" : 27, - "capabilities" : [ "Shader" ] - }, - { - "enumerant" : "UniformBufferArrayDynamicIndexing", - "value" : 28, - "capabilities" : [ "Shader" ] - }, - { - "enumerant" : "SampledImageArrayDynamicIndexing", - "value" : 29, - "capabilities" : [ "Shader" ] - }, - { - "enumerant" : "StorageBufferArrayDynamicIndexing", - "value" : 30, - "capabilities" : [ "Shader" ] - }, - { - "enumerant" : "StorageImageArrayDynamicIndexing", - "value" : 31, - "capabilities" : [ "Shader" ] - }, - { - "enumerant" : "ClipDistance", - "value" : 32, - "capabilities" : [ "Shader" ] - }, - { - "enumerant" : "CullDistance", - "value" : 33, - "capabilities" : [ "Shader" ] - }, - { - "enumerant" : "ImageCubeArray", - "value" : 34, - "capabilities" : [ "SampledCubeArray" ] - }, - { - "enumerant" : "SampleRateShading", - "value" : 35, - "capabilities" : [ "Shader" ] - }, - { - "enumerant" : "ImageRect", - "value" : 36, - "capabilities" : [ "SampledRect" ] - }, - { - "enumerant" : "SampledRect", - "value" : 37, - "capabilities" : [ "Shader" ] - }, - { - "enumerant" : "GenericPointer", - "value" : 38, - "capabilities" : [ "Addresses" ] - }, - { - "enumerant" : "Int8", - "value" : 39, - "capabilities" : [ "Kernel" ] - }, - { - "enumerant" : "InputAttachment", - "value" : 40, - "capabilities" : [ "Shader" ] - }, - { - "enumerant" : "SparseResidency", - "value" : 41, - "capabilities" : [ "Shader" ] - }, - { - "enumerant" : "MinLod", - "value" : 42, - "capabilities" : [ "Shader" ] - }, - { - "enumerant" : "Sampled1D", - "value" : 43 - }, - { - "enumerant" : "Image1D", - "value" : 44, - "capabilities" : [ "Sampled1D" ] - }, - { - "enumerant" : "SampledCubeArray", - "value" : 45, - "capabilities" : [ "Shader" ] - }, - { - "enumerant" : "SampledBuffer", - "value" : 46 - }, - { - "enumerant" : "ImageBuffer", - "value" : 47, - "capabilities" : [ "SampledBuffer" ] - }, - { - "enumerant" : "ImageMSArray", - "value" : 48, - "capabilities" : [ "Shader" ] - }, - { - "enumerant" : "StorageImageExtendedFormats", - "value" : 49, - "capabilities" : [ "Shader" ] - }, - { - "enumerant" : "ImageQuery", - "value" : 50, - "capabilities" : [ "Shader" ] - }, - { - "enumerant" : "DerivativeControl", - "value" : 51, - "capabilities" : [ "Shader" ] - }, - { - "enumerant" : "InterpolationFunction", - "value" : 52, - "capabilities" : [ "Shader" ] - }, - { - "enumerant" : "TransformFeedback", - "value" : 53, - "capabilities" : [ "Shader" ] - }, - { - "enumerant" : "GeometryStreams", - "value" : 54, - "capabilities" : [ "Geometry" ] - }, - { - "enumerant" : "StorageImageReadWithoutFormat", - "value" : 55, - "capabilities" : [ "Shader" ] - }, - { - "enumerant" : "StorageImageWriteWithoutFormat", - "value" : 56, - "capabilities" : [ "Shader" ] - }, - { - "enumerant" : "MultiViewport", - "value" : 57, - "capabilities" : [ "Geometry" ] - }, - { - "enumerant" : "SubgroupDispatch", - "value" : 58, - "capabilities" : [ "DeviceEnqueue" ] - }, - { - "enumerant" : "NamedBarrier", - "value" : 59, - "capabilities" : [ "Kernel" ] - }, - { - "enumerant" : "PipeStorage", - "value" : 60, - "capabilities" : [ "Pipes" ] - }, - { - "enumerant" : "SubgroupBallotKHR", - "value" : 4423, - "extensions" : [ "SPV_KHR_shader_ballot" ] - }, - { - "enumerant" : "DrawParameters", - "value" : 4427, - "extensions" : [ "SPV_KHR_shader_draw_parameters" ] - }, - { - "enumerant" : "SubgroupVoteKHR", - "value" : 4431, - "extensions" : [ "SPV_KHR_subgroup_vote" ] - }, - { - "enumerant" : "StorageBuffer16BitAccess", - "value" : 4433, - "extensions" : [ "SPV_KHR_16bit_storage" ] - }, - { - "enumerant" : "StorageUniformBufferBlock16", - "value" : 4433, - "extensions" : [ "SPV_KHR_16bit_storage" ] - }, - { - "enumerant" : "UniformAndStorageBuffer16BitAccess", - "value" : 4434, - "capabilities" : [ - "StorageBuffer16BitAccess", - "StorageUniformBufferBlock16" - ], - "extensions" : [ "SPV_KHR_16bit_storage" ] - }, - { - "enumerant" : "StorageUniform16", - "value" : 4434, - "capabilities" : [ - "StorageBuffer16BitAccess", - "StorageUniformBufferBlock16" - ], - "extensions" : [ "SPV_KHR_16bit_storage" ] - }, - { - "enumerant" : "StoragePushConstant16", - "value" : 4435, - "extensions" : [ "SPV_KHR_16bit_storage" ] - }, - { - "enumerant" : "StorageInputOutput16", - "value" : 4436, - "extensions" : [ "SPV_KHR_16bit_storage" ] - }, - { - "enumerant" : "DeviceGroup", - "value" : 4437, - "extensions" : [ "SPV_KHR_device_group" ] - }, - { - "enumerant" : "MultiView", - "value" : 4439, - "capabilities" : [ "Shader" ], - "extensions" : [ "SPV_KHR_multiview" ] - }, - { - "enumerant" : "VariablePointersStorageBuffer", - "value" : 4441, - "capabilities" : [ "Shader" ], - "extensions" : [ "SPV_KHR_variable_pointers" ] - }, - { - "enumerant" : "VariablePointers", - "value" : 4442, - "capabilities" : [ "VariablePointersStorageBuffer" ], - "extensions" : [ "SPV_KHR_variable_pointers" ] - }, - { - "enumerant": "AtomicStorageOps", - "value": 4445, - "extensions": [ "SPV_KHR_shader_atomic_counter_ops" ] - }, - { - "enumerant" : "SampleMaskPostDepthCoverage", - "value" : 4447, - "extensions" : [ "SPV_KHR_post_depth_coverage" ] - }, - { - "enumerant" : "ImageGatherBiasLodAMD", - "value" : 5009, - "capabilities" : [ "Shader" ], - "extensions" : [ "SPV_AMD_texture_gather_bias_lod" ] - }, - { - "enumerant" : "FragmentMaskAMD", - "value" : 5010, - "capabilities" : [ "Shader" ], - "extensions" : [ "SPV_AMD_shader_fragment_mask" ] - }, - { - "enumerant" : "StencilExportEXT", - "value" : 5013, - "capabilities" : [ "Shader" ], - "extensions" : [ "SPV_EXT_shader_stencil_export" ] - }, - { - "enumerant" : "ImageReadWriteLodAMD", - "value" : 5015, - "capabilities" : [ "Shader" ], - "extensions" : [ "SPV_AMD_shader_image_load_store_lod" ] - }, - { - "enumerant" : "SampleMaskOverrideCoverageNV", - "value" : 5249, - "capabilities" : [ "SampleRateShading" ], - "extensions" : [ "SPV_NV_sample_mask_override_coverage" ] - }, - { - "enumerant" : "GeometryShaderPassthroughNV", - "value" : 5251, - "capabilities" : [ "Geometry" ], - "extensions" : [ "SPV_NV_geometry_shader_passthrough" ] - }, - { - "enumerant" : "ShaderViewportIndexLayerEXT", - "value" : 5254, - "capabilities" : [ "MultiViewport" ], - "extensions" : [ "SPV_EXT_shader_viewport_index_layer" ] - }, - { - "enumerant" : "ShaderViewportIndexLayerNV", - "value" : 5254, - "capabilities" : [ "MultiViewport" ], - "extensions" : [ "SPV_NV_viewport_array2" ] - }, - { - "enumerant" : "ShaderViewportMaskNV", - "value" : 5255, - "capabilities" : [ "ShaderViewportIndexLayerNV" ], - "extensions" : [ "SPV_NV_viewport_array2" ] - }, - { - "enumerant" : "ShaderStereoViewNV", - "value" : 5259, - "capabilities" : [ "ShaderViewportMaskNV" ], - "extensions" : [ "SPV_NV_stereo_view_rendering" ] - }, - { - "enumerant" : "PerViewAttributesNV", - "value" : 5260, - "capabilities" : [ "MultiView" ], - "extensions" : [ "SPV_NVX_multiview_per_view_attributes" ] - }, - { - "enumerant" : "SubgroupShuffleINTEL", - "value" : 5568, - "extensions" : [ "SPV_INTEL_subgroups" ] - }, - { - "enumerant" : "SubgroupBufferBlockIOINTEL", - "value" : 5569, - "extensions" : [ "SPV_INTEL_subgroups" ] - }, - { - "enumerant" : "SubgroupImageBlockIOINTEL", - "value" : 5570, - "extensions" : [ "SPV_INTEL_subgroups" ] - } - ] - }, - { - "category" : "Id", - "kind" : "IdResultType", - "doc" : "Reference to an representing the result's type of the enclosing instruction" - }, - { - "category" : "Id", - "kind" : "IdResult", - "doc" : "Definition of an representing the result of the enclosing instruction" - }, - { - "category" : "Id", - "kind" : "IdMemorySemantics", - "doc" : "Reference to an representing a 32-bit integer that is a mask from the MemorySemantics operand kind" - }, - { - "category" : "Id", - "kind" : "IdScope", - "doc" : "Reference to an representing a 32-bit integer that is a mask from the Scope operand kind" - }, - { - "category" : "Id", - "kind" : "IdRef", - "doc" : "Reference to an " - }, - { - "category" : "Literal", - "kind" : "LiteralInteger", - "doc" : "An integer consuming one or more words" - }, - { - "category" : "Literal", - "kind" : "LiteralString", - "doc" : "A null-terminated stream of characters consuming an integral number of words" - }, - { - "category" : "Literal", - "kind" : "LiteralContextDependentNumber", - "doc" : "A literal number whose size and format are determined by a previous operand in the enclosing instruction" - }, - { - "category" : "Literal", - "kind" : "LiteralExtInstInteger", - "doc" : "A 32-bit unsigned integer indicating which instruction to use and determining the layout of following operands (for OpExtInst)" - }, - { - "category" : "Literal", - "kind" : "LiteralSpecConstantOpInteger", - "doc" : "An opcode indicating the operation to be performed and determining the layout of following operands (for OpSpecConstantOp)" - }, - { - "category" : "Composite", - "kind" : "PairLiteralIntegerIdRef", - "bases" : [ "LiteralInteger", "IdRef" ] - }, - { - "category" : "Composite", - "kind" : "PairIdRefLiteralInteger", - "bases" : [ "IdRef", "LiteralInteger" ] - }, - { - "category" : "Composite", - "kind" : "PairIdRefIdRef", - "bases" : [ "IdRef", "IdRef" ] - } - ] -} diff --git a/Extern/3rdParty/shaderc/shaderc/include/spirv/1.2/spirv.cs b/Extern/3rdParty/shaderc/shaderc/include/spirv/1.2/spirv.cs deleted file mode 100644 index 493303d..0000000 --- a/Extern/3rdParty/shaderc/shaderc/include/spirv/1.2/spirv.cs +++ /dev/null @@ -1,1021 +0,0 @@ -// Copyright (c) 2014-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. - -// This header is automatically generated by the same tool that creates -// the Binary Section of the SPIR-V specification. - -// Enumeration tokens for SPIR-V, in various styles: -// C, C++, C++11, JSON, Lua, Python, C# -// -// - C will have tokens with a "Spv" prefix, e.g.: SpvSourceLanguageGLSL -// - C++ will have tokens in the "spv" name space, e.g.: spv::SourceLanguageGLSL -// - C++11 will use enum classes in the spv namespace, e.g.: spv::SourceLanguage::GLSL -// - Lua will use tables, e.g.: spv.SourceLanguage.GLSL -// - Python will use dictionaries, e.g.: spv['SourceLanguage']['GLSL'] -// - C# will use enum classes in the Specification class located in the "Spv" namespace, e.g.: Spv.Specification.SourceLanguage.GLSL -// -// Some tokens act like mask values, which can be OR'd together, -// while others are mutually exclusive. The mask-like ones have -// "Mask" in their name, and a parallel enum that has the shift -// amount (1 << x) for each corresponding enumerant. - -namespace Spv -{ - - public static class Specification - { - public const uint MagicNumber = 0x07230203; - public const uint Version = 0x00010200; - public const uint Revision = 2; - public const uint OpCodeMask = 0xffff; - public const uint WordCountShift = 16; - - public enum SourceLanguage - { - Unknown = 0, - ESSL = 1, - GLSL = 2, - OpenCL_C = 3, - OpenCL_CPP = 4, - HLSL = 5, - } - - public enum ExecutionModel - { - Vertex = 0, - TessellationControl = 1, - TessellationEvaluation = 2, - Geometry = 3, - Fragment = 4, - GLCompute = 5, - Kernel = 6, - } - - public enum AddressingModel - { - Logical = 0, - Physical32 = 1, - Physical64 = 2, - } - - public enum MemoryModel - { - Simple = 0, - GLSL450 = 1, - OpenCL = 2, - } - - public enum ExecutionMode - { - Invocations = 0, - SpacingEqual = 1, - SpacingFractionalEven = 2, - SpacingFractionalOdd = 3, - VertexOrderCw = 4, - VertexOrderCcw = 5, - PixelCenterInteger = 6, - OriginUpperLeft = 7, - OriginLowerLeft = 8, - EarlyFragmentTests = 9, - PointMode = 10, - Xfb = 11, - DepthReplacing = 12, - DepthGreater = 14, - DepthLess = 15, - DepthUnchanged = 16, - LocalSize = 17, - LocalSizeHint = 18, - InputPoints = 19, - InputLines = 20, - InputLinesAdjacency = 21, - Triangles = 22, - InputTrianglesAdjacency = 23, - Quads = 24, - Isolines = 25, - OutputVertices = 26, - OutputPoints = 27, - OutputLineStrip = 28, - OutputTriangleStrip = 29, - VecTypeHint = 30, - ContractionOff = 31, - Initializer = 33, - Finalizer = 34, - SubgroupSize = 35, - SubgroupsPerWorkgroup = 36, - SubgroupsPerWorkgroupId = 37, - LocalSizeId = 38, - LocalSizeHintId = 39, - PostDepthCoverage = 4446, - StencilRefReplacingEXT = 5027, - } - - public enum StorageClass - { - UniformConstant = 0, - Input = 1, - Uniform = 2, - Output = 3, - Workgroup = 4, - CrossWorkgroup = 5, - Private = 6, - Function = 7, - Generic = 8, - PushConstant = 9, - AtomicCounter = 10, - Image = 11, - StorageBuffer = 12, - } - - public enum Dim - { - Dim1D = 0, - Dim2D = 1, - Dim3D = 2, - Cube = 3, - Rect = 4, - Buffer = 5, - SubpassData = 6, - } - - public enum SamplerAddressingMode - { - None = 0, - ClampToEdge = 1, - Clamp = 2, - Repeat = 3, - RepeatMirrored = 4, - } - - public enum SamplerFilterMode - { - Nearest = 0, - Linear = 1, - } - - public enum ImageFormat - { - Unknown = 0, - Rgba32f = 1, - Rgba16f = 2, - R32f = 3, - Rgba8 = 4, - Rgba8Snorm = 5, - Rg32f = 6, - Rg16f = 7, - R11fG11fB10f = 8, - R16f = 9, - Rgba16 = 10, - Rgb10A2 = 11, - Rg16 = 12, - Rg8 = 13, - R16 = 14, - R8 = 15, - Rgba16Snorm = 16, - Rg16Snorm = 17, - Rg8Snorm = 18, - R16Snorm = 19, - R8Snorm = 20, - Rgba32i = 21, - Rgba16i = 22, - Rgba8i = 23, - R32i = 24, - Rg32i = 25, - Rg16i = 26, - Rg8i = 27, - R16i = 28, - R8i = 29, - Rgba32ui = 30, - Rgba16ui = 31, - Rgba8ui = 32, - R32ui = 33, - Rgb10a2ui = 34, - Rg32ui = 35, - Rg16ui = 36, - Rg8ui = 37, - R16ui = 38, - R8ui = 39, - } - - public enum ImageChannelOrder - { - R = 0, - A = 1, - RG = 2, - RA = 3, - RGB = 4, - RGBA = 5, - BGRA = 6, - ARGB = 7, - Intensity = 8, - Luminance = 9, - Rx = 10, - RGx = 11, - RGBx = 12, - Depth = 13, - DepthStencil = 14, - sRGB = 15, - sRGBx = 16, - sRGBA = 17, - sBGRA = 18, - ABGR = 19, - } - - public enum ImageChannelDataType - { - SnormInt8 = 0, - SnormInt16 = 1, - UnormInt8 = 2, - UnormInt16 = 3, - UnormShort565 = 4, - UnormShort555 = 5, - UnormInt101010 = 6, - SignedInt8 = 7, - SignedInt16 = 8, - SignedInt32 = 9, - UnsignedInt8 = 10, - UnsignedInt16 = 11, - UnsignedInt32 = 12, - HalfFloat = 13, - Float = 14, - UnormInt24 = 15, - UnormInt101010_2 = 16, - } - - public enum ImageOperandsShift - { - Bias = 0, - Lod = 1, - Grad = 2, - ConstOffset = 3, - Offset = 4, - ConstOffsets = 5, - Sample = 6, - MinLod = 7, - } - - public enum ImageOperandsMask - { - MaskNone = 0, - Bias = 0x00000001, - Lod = 0x00000002, - Grad = 0x00000004, - ConstOffset = 0x00000008, - Offset = 0x00000010, - ConstOffsets = 0x00000020, - Sample = 0x00000040, - MinLod = 0x00000080, - } - - public enum FPFastMathModeShift - { - NotNaN = 0, - NotInf = 1, - NSZ = 2, - AllowRecip = 3, - Fast = 4, - } - - public enum FPFastMathModeMask - { - MaskNone = 0, - NotNaN = 0x00000001, - NotInf = 0x00000002, - NSZ = 0x00000004, - AllowRecip = 0x00000008, - Fast = 0x00000010, - } - - public enum FPRoundingMode - { - RTE = 0, - RTZ = 1, - RTP = 2, - RTN = 3, - } - - public enum LinkageType - { - Export = 0, - Import = 1, - } - - public enum AccessQualifier - { - ReadOnly = 0, - WriteOnly = 1, - ReadWrite = 2, - } - - public enum FunctionParameterAttribute - { - Zext = 0, - Sext = 1, - ByVal = 2, - Sret = 3, - NoAlias = 4, - NoCapture = 5, - NoWrite = 6, - NoReadWrite = 7, - } - - public enum Decoration - { - RelaxedPrecision = 0, - SpecId = 1, - Block = 2, - BufferBlock = 3, - RowMajor = 4, - ColMajor = 5, - ArrayStride = 6, - MatrixStride = 7, - GLSLShared = 8, - GLSLPacked = 9, - CPacked = 10, - BuiltIn = 11, - NoPerspective = 13, - Flat = 14, - Patch = 15, - Centroid = 16, - Sample = 17, - Invariant = 18, - Restrict = 19, - Aliased = 20, - Volatile = 21, - Constant = 22, - Coherent = 23, - NonWritable = 24, - NonReadable = 25, - Uniform = 26, - SaturatedConversion = 28, - Stream = 29, - Location = 30, - Component = 31, - Index = 32, - Binding = 33, - DescriptorSet = 34, - Offset = 35, - XfbBuffer = 36, - XfbStride = 37, - FuncParamAttr = 38, - FPRoundingMode = 39, - FPFastMathMode = 40, - LinkageAttributes = 41, - NoContraction = 42, - InputAttachmentIndex = 43, - Alignment = 44, - MaxByteOffset = 45, - AlignmentId = 46, - MaxByteOffsetId = 47, - ExplicitInterpAMD = 4999, - OverrideCoverageNV = 5248, - PassthroughNV = 5250, - ViewportRelativeNV = 5252, - SecondaryViewportRelativeNV = 5256, - HlslCounterBufferGOOGLE = 5634, - HlslSemanticGOOGLE = 5635, - } - - public enum BuiltIn - { - Position = 0, - PointSize = 1, - ClipDistance = 3, - CullDistance = 4, - VertexId = 5, - InstanceId = 6, - PrimitiveId = 7, - InvocationId = 8, - Layer = 9, - ViewportIndex = 10, - TessLevelOuter = 11, - TessLevelInner = 12, - TessCoord = 13, - PatchVertices = 14, - FragCoord = 15, - PointCoord = 16, - FrontFacing = 17, - SampleId = 18, - SamplePosition = 19, - SampleMask = 20, - FragDepth = 22, - HelperInvocation = 23, - NumWorkgroups = 24, - WorkgroupSize = 25, - WorkgroupId = 26, - LocalInvocationId = 27, - GlobalInvocationId = 28, - LocalInvocationIndex = 29, - WorkDim = 30, - GlobalSize = 31, - EnqueuedWorkgroupSize = 32, - GlobalOffset = 33, - GlobalLinearId = 34, - SubgroupSize = 36, - SubgroupMaxSize = 37, - NumSubgroups = 38, - NumEnqueuedSubgroups = 39, - SubgroupId = 40, - SubgroupLocalInvocationId = 41, - VertexIndex = 42, - InstanceIndex = 43, - SubgroupEqMaskKHR = 4416, - SubgroupGeMaskKHR = 4417, - SubgroupGtMaskKHR = 4418, - SubgroupLeMaskKHR = 4419, - SubgroupLtMaskKHR = 4420, - BaseVertex = 4424, - BaseInstance = 4425, - DrawIndex = 4426, - DeviceIndex = 4438, - ViewIndex = 4440, - BaryCoordNoPerspAMD = 4992, - BaryCoordNoPerspCentroidAMD = 4993, - BaryCoordNoPerspSampleAMD = 4994, - BaryCoordSmoothAMD = 4995, - BaryCoordSmoothCentroidAMD = 4996, - BaryCoordSmoothSampleAMD = 4997, - BaryCoordPullModelAMD = 4998, - FragStencilRefEXT = 5014, - ViewportMaskNV = 5253, - SecondaryPositionNV = 5257, - SecondaryViewportMaskNV = 5258, - PositionPerViewNV = 5261, - ViewportMaskPerViewNV = 5262, - } - - public enum SelectionControlShift - { - Flatten = 0, - DontFlatten = 1, - } - - public enum SelectionControlMask - { - MaskNone = 0, - Flatten = 0x00000001, - DontFlatten = 0x00000002, - } - - public enum LoopControlShift - { - Unroll = 0, - DontUnroll = 1, - DependencyInfinite = 2, - DependencyLength = 3, - } - - public enum LoopControlMask - { - MaskNone = 0, - Unroll = 0x00000001, - DontUnroll = 0x00000002, - DependencyInfinite = 0x00000004, - DependencyLength = 0x00000008, - } - - public enum FunctionControlShift - { - Inline = 0, - DontInline = 1, - Pure = 2, - Const = 3, - } - - public enum FunctionControlMask - { - MaskNone = 0, - Inline = 0x00000001, - DontInline = 0x00000002, - Pure = 0x00000004, - Const = 0x00000008, - } - - public enum MemorySemanticsShift - { - Acquire = 1, - Release = 2, - AcquireRelease = 3, - SequentiallyConsistent = 4, - UniformMemory = 6, - SubgroupMemory = 7, - WorkgroupMemory = 8, - CrossWorkgroupMemory = 9, - AtomicCounterMemory = 10, - ImageMemory = 11, - } - - public enum MemorySemanticsMask - { - MaskNone = 0, - Acquire = 0x00000002, - Release = 0x00000004, - AcquireRelease = 0x00000008, - SequentiallyConsistent = 0x00000010, - UniformMemory = 0x00000040, - SubgroupMemory = 0x00000080, - WorkgroupMemory = 0x00000100, - CrossWorkgroupMemory = 0x00000200, - AtomicCounterMemory = 0x00000400, - ImageMemory = 0x00000800, - } - - public enum MemoryAccessShift - { - Volatile = 0, - Aligned = 1, - Nontemporal = 2, - } - - public enum MemoryAccessMask - { - MaskNone = 0, - Volatile = 0x00000001, - Aligned = 0x00000002, - Nontemporal = 0x00000004, - } - - public enum Scope - { - CrossDevice = 0, - Device = 1, - Workgroup = 2, - Subgroup = 3, - Invocation = 4, - } - - public enum GroupOperation - { - Reduce = 0, - InclusiveScan = 1, - ExclusiveScan = 2, - } - - public enum KernelEnqueueFlags - { - NoWait = 0, - WaitKernel = 1, - WaitWorkGroup = 2, - } - - public enum KernelProfilingInfoShift - { - CmdExecTime = 0, - } - - public enum KernelProfilingInfoMask - { - MaskNone = 0, - CmdExecTime = 0x00000001, - } - - public enum Capability - { - Matrix = 0, - Shader = 1, - Geometry = 2, - Tessellation = 3, - Addresses = 4, - Linkage = 5, - Kernel = 6, - Vector16 = 7, - Float16Buffer = 8, - Float16 = 9, - Float64 = 10, - Int64 = 11, - Int64Atomics = 12, - ImageBasic = 13, - ImageReadWrite = 14, - ImageMipmap = 15, - Pipes = 17, - Groups = 18, - DeviceEnqueue = 19, - LiteralSampler = 20, - AtomicStorage = 21, - Int16 = 22, - TessellationPointSize = 23, - GeometryPointSize = 24, - ImageGatherExtended = 25, - StorageImageMultisample = 27, - UniformBufferArrayDynamicIndexing = 28, - SampledImageArrayDynamicIndexing = 29, - StorageBufferArrayDynamicIndexing = 30, - StorageImageArrayDynamicIndexing = 31, - ClipDistance = 32, - CullDistance = 33, - ImageCubeArray = 34, - SampleRateShading = 35, - ImageRect = 36, - SampledRect = 37, - GenericPointer = 38, - Int8 = 39, - InputAttachment = 40, - SparseResidency = 41, - MinLod = 42, - Sampled1D = 43, - Image1D = 44, - SampledCubeArray = 45, - SampledBuffer = 46, - ImageBuffer = 47, - ImageMSArray = 48, - StorageImageExtendedFormats = 49, - ImageQuery = 50, - DerivativeControl = 51, - InterpolationFunction = 52, - TransformFeedback = 53, - GeometryStreams = 54, - StorageImageReadWithoutFormat = 55, - StorageImageWriteWithoutFormat = 56, - MultiViewport = 57, - SubgroupDispatch = 58, - NamedBarrier = 59, - PipeStorage = 60, - SubgroupBallotKHR = 4423, - DrawParameters = 4427, - SubgroupVoteKHR = 4431, - StorageBuffer16BitAccess = 4433, - StorageUniformBufferBlock16 = 4433, - StorageUniform16 = 4434, - UniformAndStorageBuffer16BitAccess = 4434, - StoragePushConstant16 = 4435, - StorageInputOutput16 = 4436, - DeviceGroup = 4437, - MultiView = 4439, - VariablePointersStorageBuffer = 4441, - VariablePointers = 4442, - AtomicStorageOps = 4445, - SampleMaskPostDepthCoverage = 4447, - ImageGatherBiasLodAMD = 5009, - FragmentMaskAMD = 5010, - StencilExportEXT = 5013, - ImageReadWriteLodAMD = 5015, - SampleMaskOverrideCoverageNV = 5249, - GeometryShaderPassthroughNV = 5251, - ShaderViewportIndexLayerEXT = 5254, - ShaderViewportIndexLayerNV = 5254, - ShaderViewportMaskNV = 5255, - ShaderStereoViewNV = 5259, - PerViewAttributesNV = 5260, - SubgroupShuffleINTEL = 5568, - SubgroupBufferBlockIOINTEL = 5569, - SubgroupImageBlockIOINTEL = 5570, - } - - public enum Op - { - OpNop = 0, - OpUndef = 1, - OpSourceContinued = 2, - OpSource = 3, - OpSourceExtension = 4, - OpName = 5, - OpMemberName = 6, - OpString = 7, - OpLine = 8, - OpExtension = 10, - OpExtInstImport = 11, - OpExtInst = 12, - OpMemoryModel = 14, - OpEntryPoint = 15, - OpExecutionMode = 16, - OpCapability = 17, - OpTypeVoid = 19, - OpTypeBool = 20, - OpTypeInt = 21, - OpTypeFloat = 22, - OpTypeVector = 23, - OpTypeMatrix = 24, - OpTypeImage = 25, - OpTypeSampler = 26, - OpTypeSampledImage = 27, - OpTypeArray = 28, - OpTypeRuntimeArray = 29, - OpTypeStruct = 30, - OpTypeOpaque = 31, - OpTypePointer = 32, - OpTypeFunction = 33, - OpTypeEvent = 34, - OpTypeDeviceEvent = 35, - OpTypeReserveId = 36, - OpTypeQueue = 37, - OpTypePipe = 38, - OpTypeForwardPointer = 39, - OpConstantTrue = 41, - OpConstantFalse = 42, - OpConstant = 43, - OpConstantComposite = 44, - OpConstantSampler = 45, - OpConstantNull = 46, - OpSpecConstantTrue = 48, - OpSpecConstantFalse = 49, - OpSpecConstant = 50, - OpSpecConstantComposite = 51, - OpSpecConstantOp = 52, - OpFunction = 54, - OpFunctionParameter = 55, - OpFunctionEnd = 56, - OpFunctionCall = 57, - OpVariable = 59, - OpImageTexelPointer = 60, - OpLoad = 61, - OpStore = 62, - OpCopyMemory = 63, - OpCopyMemorySized = 64, - OpAccessChain = 65, - OpInBoundsAccessChain = 66, - OpPtrAccessChain = 67, - OpArrayLength = 68, - OpGenericPtrMemSemantics = 69, - OpInBoundsPtrAccessChain = 70, - OpDecorate = 71, - OpMemberDecorate = 72, - OpDecorationGroup = 73, - OpGroupDecorate = 74, - OpGroupMemberDecorate = 75, - OpVectorExtractDynamic = 77, - OpVectorInsertDynamic = 78, - OpVectorShuffle = 79, - OpCompositeConstruct = 80, - OpCompositeExtract = 81, - OpCompositeInsert = 82, - OpCopyObject = 83, - OpTranspose = 84, - OpSampledImage = 86, - OpImageSampleImplicitLod = 87, - OpImageSampleExplicitLod = 88, - OpImageSampleDrefImplicitLod = 89, - OpImageSampleDrefExplicitLod = 90, - OpImageSampleProjImplicitLod = 91, - OpImageSampleProjExplicitLod = 92, - OpImageSampleProjDrefImplicitLod = 93, - OpImageSampleProjDrefExplicitLod = 94, - OpImageFetch = 95, - OpImageGather = 96, - OpImageDrefGather = 97, - OpImageRead = 98, - OpImageWrite = 99, - OpImage = 100, - OpImageQueryFormat = 101, - OpImageQueryOrder = 102, - OpImageQuerySizeLod = 103, - OpImageQuerySize = 104, - OpImageQueryLod = 105, - OpImageQueryLevels = 106, - OpImageQuerySamples = 107, - OpConvertFToU = 109, - OpConvertFToS = 110, - OpConvertSToF = 111, - OpConvertUToF = 112, - OpUConvert = 113, - OpSConvert = 114, - OpFConvert = 115, - OpQuantizeToF16 = 116, - OpConvertPtrToU = 117, - OpSatConvertSToU = 118, - OpSatConvertUToS = 119, - OpConvertUToPtr = 120, - OpPtrCastToGeneric = 121, - OpGenericCastToPtr = 122, - OpGenericCastToPtrExplicit = 123, - OpBitcast = 124, - OpSNegate = 126, - OpFNegate = 127, - OpIAdd = 128, - OpFAdd = 129, - OpISub = 130, - OpFSub = 131, - OpIMul = 132, - OpFMul = 133, - OpUDiv = 134, - OpSDiv = 135, - OpFDiv = 136, - OpUMod = 137, - OpSRem = 138, - OpSMod = 139, - OpFRem = 140, - OpFMod = 141, - OpVectorTimesScalar = 142, - OpMatrixTimesScalar = 143, - OpVectorTimesMatrix = 144, - OpMatrixTimesVector = 145, - OpMatrixTimesMatrix = 146, - OpOuterProduct = 147, - OpDot = 148, - OpIAddCarry = 149, - OpISubBorrow = 150, - OpUMulExtended = 151, - OpSMulExtended = 152, - OpAny = 154, - OpAll = 155, - OpIsNan = 156, - OpIsInf = 157, - OpIsFinite = 158, - OpIsNormal = 159, - OpSignBitSet = 160, - OpLessOrGreater = 161, - OpOrdered = 162, - OpUnordered = 163, - OpLogicalEqual = 164, - OpLogicalNotEqual = 165, - OpLogicalOr = 166, - OpLogicalAnd = 167, - OpLogicalNot = 168, - OpSelect = 169, - OpIEqual = 170, - OpINotEqual = 171, - OpUGreaterThan = 172, - OpSGreaterThan = 173, - OpUGreaterThanEqual = 174, - OpSGreaterThanEqual = 175, - OpULessThan = 176, - OpSLessThan = 177, - OpULessThanEqual = 178, - OpSLessThanEqual = 179, - OpFOrdEqual = 180, - OpFUnordEqual = 181, - OpFOrdNotEqual = 182, - OpFUnordNotEqual = 183, - OpFOrdLessThan = 184, - OpFUnordLessThan = 185, - OpFOrdGreaterThan = 186, - OpFUnordGreaterThan = 187, - OpFOrdLessThanEqual = 188, - OpFUnordLessThanEqual = 189, - OpFOrdGreaterThanEqual = 190, - OpFUnordGreaterThanEqual = 191, - OpShiftRightLogical = 194, - OpShiftRightArithmetic = 195, - OpShiftLeftLogical = 196, - OpBitwiseOr = 197, - OpBitwiseXor = 198, - OpBitwiseAnd = 199, - OpNot = 200, - OpBitFieldInsert = 201, - OpBitFieldSExtract = 202, - OpBitFieldUExtract = 203, - OpBitReverse = 204, - OpBitCount = 205, - OpDPdx = 207, - OpDPdy = 208, - OpFwidth = 209, - OpDPdxFine = 210, - OpDPdyFine = 211, - OpFwidthFine = 212, - OpDPdxCoarse = 213, - OpDPdyCoarse = 214, - OpFwidthCoarse = 215, - OpEmitVertex = 218, - OpEndPrimitive = 219, - OpEmitStreamVertex = 220, - OpEndStreamPrimitive = 221, - OpControlBarrier = 224, - OpMemoryBarrier = 225, - OpAtomicLoad = 227, - OpAtomicStore = 228, - OpAtomicExchange = 229, - OpAtomicCompareExchange = 230, - OpAtomicCompareExchangeWeak = 231, - OpAtomicIIncrement = 232, - OpAtomicIDecrement = 233, - OpAtomicIAdd = 234, - OpAtomicISub = 235, - OpAtomicSMin = 236, - OpAtomicUMin = 237, - OpAtomicSMax = 238, - OpAtomicUMax = 239, - OpAtomicAnd = 240, - OpAtomicOr = 241, - OpAtomicXor = 242, - OpPhi = 245, - OpLoopMerge = 246, - OpSelectionMerge = 247, - OpLabel = 248, - OpBranch = 249, - OpBranchConditional = 250, - OpSwitch = 251, - OpKill = 252, - OpReturn = 253, - OpReturnValue = 254, - OpUnreachable = 255, - OpLifetimeStart = 256, - OpLifetimeStop = 257, - OpGroupAsyncCopy = 259, - OpGroupWaitEvents = 260, - OpGroupAll = 261, - OpGroupAny = 262, - OpGroupBroadcast = 263, - OpGroupIAdd = 264, - OpGroupFAdd = 265, - OpGroupFMin = 266, - OpGroupUMin = 267, - OpGroupSMin = 268, - OpGroupFMax = 269, - OpGroupUMax = 270, - OpGroupSMax = 271, - OpReadPipe = 274, - OpWritePipe = 275, - OpReservedReadPipe = 276, - OpReservedWritePipe = 277, - OpReserveReadPipePackets = 278, - OpReserveWritePipePackets = 279, - OpCommitReadPipe = 280, - OpCommitWritePipe = 281, - OpIsValidReserveId = 282, - OpGetNumPipePackets = 283, - OpGetMaxPipePackets = 284, - OpGroupReserveReadPipePackets = 285, - OpGroupReserveWritePipePackets = 286, - OpGroupCommitReadPipe = 287, - OpGroupCommitWritePipe = 288, - OpEnqueueMarker = 291, - OpEnqueueKernel = 292, - OpGetKernelNDrangeSubGroupCount = 293, - OpGetKernelNDrangeMaxSubGroupSize = 294, - OpGetKernelWorkGroupSize = 295, - OpGetKernelPreferredWorkGroupSizeMultiple = 296, - OpRetainEvent = 297, - OpReleaseEvent = 298, - OpCreateUserEvent = 299, - OpIsValidEvent = 300, - OpSetUserEventStatus = 301, - OpCaptureEventProfilingInfo = 302, - OpGetDefaultQueue = 303, - OpBuildNDRange = 304, - OpImageSparseSampleImplicitLod = 305, - OpImageSparseSampleExplicitLod = 306, - OpImageSparseSampleDrefImplicitLod = 307, - OpImageSparseSampleDrefExplicitLod = 308, - OpImageSparseSampleProjImplicitLod = 309, - OpImageSparseSampleProjExplicitLod = 310, - OpImageSparseSampleProjDrefImplicitLod = 311, - OpImageSparseSampleProjDrefExplicitLod = 312, - OpImageSparseFetch = 313, - OpImageSparseGather = 314, - OpImageSparseDrefGather = 315, - OpImageSparseTexelsResident = 316, - OpNoLine = 317, - OpAtomicFlagTestAndSet = 318, - OpAtomicFlagClear = 319, - OpImageSparseRead = 320, - OpSizeOf = 321, - OpTypePipeStorage = 322, - OpConstantPipeStorage = 323, - OpCreatePipeFromPipeStorage = 324, - OpGetKernelLocalSizeForSubgroupCount = 325, - OpGetKernelMaxNumSubgroups = 326, - OpTypeNamedBarrier = 327, - OpNamedBarrierInitialize = 328, - OpMemoryNamedBarrier = 329, - OpModuleProcessed = 330, - OpExecutionModeId = 331, - OpDecorateId = 332, - OpSubgroupBallotKHR = 4421, - OpSubgroupFirstInvocationKHR = 4422, - OpSubgroupAllKHR = 4428, - OpSubgroupAnyKHR = 4429, - OpSubgroupAllEqualKHR = 4430, - OpSubgroupReadInvocationKHR = 4432, - OpGroupIAddNonUniformAMD = 5000, - OpGroupFAddNonUniformAMD = 5001, - OpGroupFMinNonUniformAMD = 5002, - OpGroupUMinNonUniformAMD = 5003, - OpGroupSMinNonUniformAMD = 5004, - OpGroupFMaxNonUniformAMD = 5005, - OpGroupUMaxNonUniformAMD = 5006, - OpGroupSMaxNonUniformAMD = 5007, - OpFragmentMaskFetchAMD = 5011, - OpFragmentFetchAMD = 5012, - OpSubgroupShuffleINTEL = 5571, - OpSubgroupShuffleDownINTEL = 5572, - OpSubgroupShuffleUpINTEL = 5573, - OpSubgroupShuffleXorINTEL = 5574, - OpSubgroupBlockReadINTEL = 5575, - OpSubgroupBlockWriteINTEL = 5576, - OpSubgroupImageBlockReadINTEL = 5577, - OpSubgroupImageBlockWriteINTEL = 5578, - OpDecorateStringGOOGLE = 5632, - OpMemberDecorateStringGOOGLE = 5633, - } - } -} - diff --git a/Extern/3rdParty/shaderc/shaderc/include/spirv/1.2/spirv.h b/Extern/3rdParty/shaderc/shaderc/include/spirv/1.2/spirv.h deleted file mode 100644 index 7c6d884..0000000 --- a/Extern/3rdParty/shaderc/shaderc/include/spirv/1.2/spirv.h +++ /dev/null @@ -1,1021 +0,0 @@ -/* -** Copyright (c) 2014-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. -*/ - -/* -** This header is automatically generated by the same tool that creates -** the Binary Section of the SPIR-V specification. -*/ - -/* -** Enumeration tokens for SPIR-V, in various styles: -** C, C++, C++11, JSON, Lua, Python -** -** - C will have tokens with a "Spv" prefix, e.g.: SpvSourceLanguageGLSL -** - C++ will have tokens in the "spv" name space, e.g.: spv::SourceLanguageGLSL -** - C++11 will use enum classes in the spv namespace, e.g.: spv::SourceLanguage::GLSL -** - Lua will use tables, e.g.: spv.SourceLanguage.GLSL -** - Python will use dictionaries, e.g.: spv['SourceLanguage']['GLSL'] -** -** Some tokens act like mask values, which can be OR'd together, -** while others are mutually exclusive. The mask-like ones have -** "Mask" in their name, and a parallel enum that has the shift -** amount (1 << x) for each corresponding enumerant. -*/ - -#ifndef spirv_H -#define spirv_H - -typedef unsigned int SpvId; - -#define SPV_VERSION 0x10200 -#define SPV_REVISION 2 - -static const unsigned int SpvMagicNumber = 0x07230203; -static const unsigned int SpvVersion = 0x00010200; -static const unsigned int SpvRevision = 2; -static const unsigned int SpvOpCodeMask = 0xffff; -static const unsigned int SpvWordCountShift = 16; - -typedef enum SpvSourceLanguage_ { - SpvSourceLanguageUnknown = 0, - SpvSourceLanguageESSL = 1, - SpvSourceLanguageGLSL = 2, - SpvSourceLanguageOpenCL_C = 3, - SpvSourceLanguageOpenCL_CPP = 4, - SpvSourceLanguageHLSL = 5, - SpvSourceLanguageMax = 0x7fffffff, -} SpvSourceLanguage; - -typedef enum SpvExecutionModel_ { - SpvExecutionModelVertex = 0, - SpvExecutionModelTessellationControl = 1, - SpvExecutionModelTessellationEvaluation = 2, - SpvExecutionModelGeometry = 3, - SpvExecutionModelFragment = 4, - SpvExecutionModelGLCompute = 5, - SpvExecutionModelKernel = 6, - SpvExecutionModelMax = 0x7fffffff, -} SpvExecutionModel; - -typedef enum SpvAddressingModel_ { - SpvAddressingModelLogical = 0, - SpvAddressingModelPhysical32 = 1, - SpvAddressingModelPhysical64 = 2, - SpvAddressingModelMax = 0x7fffffff, -} SpvAddressingModel; - -typedef enum SpvMemoryModel_ { - SpvMemoryModelSimple = 0, - SpvMemoryModelGLSL450 = 1, - SpvMemoryModelOpenCL = 2, - SpvMemoryModelMax = 0x7fffffff, -} SpvMemoryModel; - -typedef enum SpvExecutionMode_ { - SpvExecutionModeInvocations = 0, - SpvExecutionModeSpacingEqual = 1, - SpvExecutionModeSpacingFractionalEven = 2, - SpvExecutionModeSpacingFractionalOdd = 3, - SpvExecutionModeVertexOrderCw = 4, - SpvExecutionModeVertexOrderCcw = 5, - SpvExecutionModePixelCenterInteger = 6, - SpvExecutionModeOriginUpperLeft = 7, - SpvExecutionModeOriginLowerLeft = 8, - SpvExecutionModeEarlyFragmentTests = 9, - SpvExecutionModePointMode = 10, - SpvExecutionModeXfb = 11, - SpvExecutionModeDepthReplacing = 12, - SpvExecutionModeDepthGreater = 14, - SpvExecutionModeDepthLess = 15, - SpvExecutionModeDepthUnchanged = 16, - SpvExecutionModeLocalSize = 17, - SpvExecutionModeLocalSizeHint = 18, - SpvExecutionModeInputPoints = 19, - SpvExecutionModeInputLines = 20, - SpvExecutionModeInputLinesAdjacency = 21, - SpvExecutionModeTriangles = 22, - SpvExecutionModeInputTrianglesAdjacency = 23, - SpvExecutionModeQuads = 24, - SpvExecutionModeIsolines = 25, - SpvExecutionModeOutputVertices = 26, - SpvExecutionModeOutputPoints = 27, - SpvExecutionModeOutputLineStrip = 28, - SpvExecutionModeOutputTriangleStrip = 29, - SpvExecutionModeVecTypeHint = 30, - SpvExecutionModeContractionOff = 31, - SpvExecutionModeInitializer = 33, - SpvExecutionModeFinalizer = 34, - SpvExecutionModeSubgroupSize = 35, - SpvExecutionModeSubgroupsPerWorkgroup = 36, - SpvExecutionModeSubgroupsPerWorkgroupId = 37, - SpvExecutionModeLocalSizeId = 38, - SpvExecutionModeLocalSizeHintId = 39, - SpvExecutionModePostDepthCoverage = 4446, - SpvExecutionModeStencilRefReplacingEXT = 5027, - SpvExecutionModeMax = 0x7fffffff, -} SpvExecutionMode; - -typedef enum SpvStorageClass_ { - SpvStorageClassUniformConstant = 0, - SpvStorageClassInput = 1, - SpvStorageClassUniform = 2, - SpvStorageClassOutput = 3, - SpvStorageClassWorkgroup = 4, - SpvStorageClassCrossWorkgroup = 5, - SpvStorageClassPrivate = 6, - SpvStorageClassFunction = 7, - SpvStorageClassGeneric = 8, - SpvStorageClassPushConstant = 9, - SpvStorageClassAtomicCounter = 10, - SpvStorageClassImage = 11, - SpvStorageClassStorageBuffer = 12, - SpvStorageClassMax = 0x7fffffff, -} SpvStorageClass; - -typedef enum SpvDim_ { - SpvDim1D = 0, - SpvDim2D = 1, - SpvDim3D = 2, - SpvDimCube = 3, - SpvDimRect = 4, - SpvDimBuffer = 5, - SpvDimSubpassData = 6, - SpvDimMax = 0x7fffffff, -} SpvDim; - -typedef enum SpvSamplerAddressingMode_ { - SpvSamplerAddressingModeNone = 0, - SpvSamplerAddressingModeClampToEdge = 1, - SpvSamplerAddressingModeClamp = 2, - SpvSamplerAddressingModeRepeat = 3, - SpvSamplerAddressingModeRepeatMirrored = 4, - SpvSamplerAddressingModeMax = 0x7fffffff, -} SpvSamplerAddressingMode; - -typedef enum SpvSamplerFilterMode_ { - SpvSamplerFilterModeNearest = 0, - SpvSamplerFilterModeLinear = 1, - SpvSamplerFilterModeMax = 0x7fffffff, -} SpvSamplerFilterMode; - -typedef enum SpvImageFormat_ { - SpvImageFormatUnknown = 0, - SpvImageFormatRgba32f = 1, - SpvImageFormatRgba16f = 2, - SpvImageFormatR32f = 3, - SpvImageFormatRgba8 = 4, - SpvImageFormatRgba8Snorm = 5, - SpvImageFormatRg32f = 6, - SpvImageFormatRg16f = 7, - SpvImageFormatR11fG11fB10f = 8, - SpvImageFormatR16f = 9, - SpvImageFormatRgba16 = 10, - SpvImageFormatRgb10A2 = 11, - SpvImageFormatRg16 = 12, - SpvImageFormatRg8 = 13, - SpvImageFormatR16 = 14, - SpvImageFormatR8 = 15, - SpvImageFormatRgba16Snorm = 16, - SpvImageFormatRg16Snorm = 17, - SpvImageFormatRg8Snorm = 18, - SpvImageFormatR16Snorm = 19, - SpvImageFormatR8Snorm = 20, - SpvImageFormatRgba32i = 21, - SpvImageFormatRgba16i = 22, - SpvImageFormatRgba8i = 23, - SpvImageFormatR32i = 24, - SpvImageFormatRg32i = 25, - SpvImageFormatRg16i = 26, - SpvImageFormatRg8i = 27, - SpvImageFormatR16i = 28, - SpvImageFormatR8i = 29, - SpvImageFormatRgba32ui = 30, - SpvImageFormatRgba16ui = 31, - SpvImageFormatRgba8ui = 32, - SpvImageFormatR32ui = 33, - SpvImageFormatRgb10a2ui = 34, - SpvImageFormatRg32ui = 35, - SpvImageFormatRg16ui = 36, - SpvImageFormatRg8ui = 37, - SpvImageFormatR16ui = 38, - SpvImageFormatR8ui = 39, - SpvImageFormatMax = 0x7fffffff, -} SpvImageFormat; - -typedef enum SpvImageChannelOrder_ { - SpvImageChannelOrderR = 0, - SpvImageChannelOrderA = 1, - SpvImageChannelOrderRG = 2, - SpvImageChannelOrderRA = 3, - SpvImageChannelOrderRGB = 4, - SpvImageChannelOrderRGBA = 5, - SpvImageChannelOrderBGRA = 6, - SpvImageChannelOrderARGB = 7, - SpvImageChannelOrderIntensity = 8, - SpvImageChannelOrderLuminance = 9, - SpvImageChannelOrderRx = 10, - SpvImageChannelOrderRGx = 11, - SpvImageChannelOrderRGBx = 12, - SpvImageChannelOrderDepth = 13, - SpvImageChannelOrderDepthStencil = 14, - SpvImageChannelOrdersRGB = 15, - SpvImageChannelOrdersRGBx = 16, - SpvImageChannelOrdersRGBA = 17, - SpvImageChannelOrdersBGRA = 18, - SpvImageChannelOrderABGR = 19, - SpvImageChannelOrderMax = 0x7fffffff, -} SpvImageChannelOrder; - -typedef enum SpvImageChannelDataType_ { - SpvImageChannelDataTypeSnormInt8 = 0, - SpvImageChannelDataTypeSnormInt16 = 1, - SpvImageChannelDataTypeUnormInt8 = 2, - SpvImageChannelDataTypeUnormInt16 = 3, - SpvImageChannelDataTypeUnormShort565 = 4, - SpvImageChannelDataTypeUnormShort555 = 5, - SpvImageChannelDataTypeUnormInt101010 = 6, - SpvImageChannelDataTypeSignedInt8 = 7, - SpvImageChannelDataTypeSignedInt16 = 8, - SpvImageChannelDataTypeSignedInt32 = 9, - SpvImageChannelDataTypeUnsignedInt8 = 10, - SpvImageChannelDataTypeUnsignedInt16 = 11, - SpvImageChannelDataTypeUnsignedInt32 = 12, - SpvImageChannelDataTypeHalfFloat = 13, - SpvImageChannelDataTypeFloat = 14, - SpvImageChannelDataTypeUnormInt24 = 15, - SpvImageChannelDataTypeUnormInt101010_2 = 16, - SpvImageChannelDataTypeMax = 0x7fffffff, -} SpvImageChannelDataType; - -typedef enum SpvImageOperandsShift_ { - SpvImageOperandsBiasShift = 0, - SpvImageOperandsLodShift = 1, - SpvImageOperandsGradShift = 2, - SpvImageOperandsConstOffsetShift = 3, - SpvImageOperandsOffsetShift = 4, - SpvImageOperandsConstOffsetsShift = 5, - SpvImageOperandsSampleShift = 6, - SpvImageOperandsMinLodShift = 7, - SpvImageOperandsMax = 0x7fffffff, -} SpvImageOperandsShift; - -typedef enum SpvImageOperandsMask_ { - SpvImageOperandsMaskNone = 0, - SpvImageOperandsBiasMask = 0x00000001, - SpvImageOperandsLodMask = 0x00000002, - SpvImageOperandsGradMask = 0x00000004, - SpvImageOperandsConstOffsetMask = 0x00000008, - SpvImageOperandsOffsetMask = 0x00000010, - SpvImageOperandsConstOffsetsMask = 0x00000020, - SpvImageOperandsSampleMask = 0x00000040, - SpvImageOperandsMinLodMask = 0x00000080, -} SpvImageOperandsMask; - -typedef enum SpvFPFastMathModeShift_ { - SpvFPFastMathModeNotNaNShift = 0, - SpvFPFastMathModeNotInfShift = 1, - SpvFPFastMathModeNSZShift = 2, - SpvFPFastMathModeAllowRecipShift = 3, - SpvFPFastMathModeFastShift = 4, - SpvFPFastMathModeMax = 0x7fffffff, -} SpvFPFastMathModeShift; - -typedef enum SpvFPFastMathModeMask_ { - SpvFPFastMathModeMaskNone = 0, - SpvFPFastMathModeNotNaNMask = 0x00000001, - SpvFPFastMathModeNotInfMask = 0x00000002, - SpvFPFastMathModeNSZMask = 0x00000004, - SpvFPFastMathModeAllowRecipMask = 0x00000008, - SpvFPFastMathModeFastMask = 0x00000010, -} SpvFPFastMathModeMask; - -typedef enum SpvFPRoundingMode_ { - SpvFPRoundingModeRTE = 0, - SpvFPRoundingModeRTZ = 1, - SpvFPRoundingModeRTP = 2, - SpvFPRoundingModeRTN = 3, - SpvFPRoundingModeMax = 0x7fffffff, -} SpvFPRoundingMode; - -typedef enum SpvLinkageType_ { - SpvLinkageTypeExport = 0, - SpvLinkageTypeImport = 1, - SpvLinkageTypeMax = 0x7fffffff, -} SpvLinkageType; - -typedef enum SpvAccessQualifier_ { - SpvAccessQualifierReadOnly = 0, - SpvAccessQualifierWriteOnly = 1, - SpvAccessQualifierReadWrite = 2, - SpvAccessQualifierMax = 0x7fffffff, -} SpvAccessQualifier; - -typedef enum SpvFunctionParameterAttribute_ { - SpvFunctionParameterAttributeZext = 0, - SpvFunctionParameterAttributeSext = 1, - SpvFunctionParameterAttributeByVal = 2, - SpvFunctionParameterAttributeSret = 3, - SpvFunctionParameterAttributeNoAlias = 4, - SpvFunctionParameterAttributeNoCapture = 5, - SpvFunctionParameterAttributeNoWrite = 6, - SpvFunctionParameterAttributeNoReadWrite = 7, - SpvFunctionParameterAttributeMax = 0x7fffffff, -} SpvFunctionParameterAttribute; - -typedef enum SpvDecoration_ { - SpvDecorationRelaxedPrecision = 0, - SpvDecorationSpecId = 1, - SpvDecorationBlock = 2, - SpvDecorationBufferBlock = 3, - SpvDecorationRowMajor = 4, - SpvDecorationColMajor = 5, - SpvDecorationArrayStride = 6, - SpvDecorationMatrixStride = 7, - SpvDecorationGLSLShared = 8, - SpvDecorationGLSLPacked = 9, - SpvDecorationCPacked = 10, - SpvDecorationBuiltIn = 11, - SpvDecorationNoPerspective = 13, - SpvDecorationFlat = 14, - SpvDecorationPatch = 15, - SpvDecorationCentroid = 16, - SpvDecorationSample = 17, - SpvDecorationInvariant = 18, - SpvDecorationRestrict = 19, - SpvDecorationAliased = 20, - SpvDecorationVolatile = 21, - SpvDecorationConstant = 22, - SpvDecorationCoherent = 23, - SpvDecorationNonWritable = 24, - SpvDecorationNonReadable = 25, - SpvDecorationUniform = 26, - SpvDecorationSaturatedConversion = 28, - SpvDecorationStream = 29, - SpvDecorationLocation = 30, - SpvDecorationComponent = 31, - SpvDecorationIndex = 32, - SpvDecorationBinding = 33, - SpvDecorationDescriptorSet = 34, - SpvDecorationOffset = 35, - SpvDecorationXfbBuffer = 36, - SpvDecorationXfbStride = 37, - SpvDecorationFuncParamAttr = 38, - SpvDecorationFPRoundingMode = 39, - SpvDecorationFPFastMathMode = 40, - SpvDecorationLinkageAttributes = 41, - SpvDecorationNoContraction = 42, - SpvDecorationInputAttachmentIndex = 43, - SpvDecorationAlignment = 44, - SpvDecorationMaxByteOffset = 45, - SpvDecorationAlignmentId = 46, - SpvDecorationMaxByteOffsetId = 47, - SpvDecorationExplicitInterpAMD = 4999, - SpvDecorationOverrideCoverageNV = 5248, - SpvDecorationPassthroughNV = 5250, - SpvDecorationViewportRelativeNV = 5252, - SpvDecorationSecondaryViewportRelativeNV = 5256, - SpvDecorationHlslCounterBufferGOOGLE = 5634, - SpvDecorationHlslSemanticGOOGLE = 5635, - SpvDecorationMax = 0x7fffffff, -} SpvDecoration; - -typedef enum SpvBuiltIn_ { - SpvBuiltInPosition = 0, - SpvBuiltInPointSize = 1, - SpvBuiltInClipDistance = 3, - SpvBuiltInCullDistance = 4, - SpvBuiltInVertexId = 5, - SpvBuiltInInstanceId = 6, - SpvBuiltInPrimitiveId = 7, - SpvBuiltInInvocationId = 8, - SpvBuiltInLayer = 9, - SpvBuiltInViewportIndex = 10, - SpvBuiltInTessLevelOuter = 11, - SpvBuiltInTessLevelInner = 12, - SpvBuiltInTessCoord = 13, - SpvBuiltInPatchVertices = 14, - SpvBuiltInFragCoord = 15, - SpvBuiltInPointCoord = 16, - SpvBuiltInFrontFacing = 17, - SpvBuiltInSampleId = 18, - SpvBuiltInSamplePosition = 19, - SpvBuiltInSampleMask = 20, - SpvBuiltInFragDepth = 22, - SpvBuiltInHelperInvocation = 23, - SpvBuiltInNumWorkgroups = 24, - SpvBuiltInWorkgroupSize = 25, - SpvBuiltInWorkgroupId = 26, - SpvBuiltInLocalInvocationId = 27, - SpvBuiltInGlobalInvocationId = 28, - SpvBuiltInLocalInvocationIndex = 29, - SpvBuiltInWorkDim = 30, - SpvBuiltInGlobalSize = 31, - SpvBuiltInEnqueuedWorkgroupSize = 32, - SpvBuiltInGlobalOffset = 33, - SpvBuiltInGlobalLinearId = 34, - SpvBuiltInSubgroupSize = 36, - SpvBuiltInSubgroupMaxSize = 37, - SpvBuiltInNumSubgroups = 38, - SpvBuiltInNumEnqueuedSubgroups = 39, - SpvBuiltInSubgroupId = 40, - SpvBuiltInSubgroupLocalInvocationId = 41, - SpvBuiltInVertexIndex = 42, - SpvBuiltInInstanceIndex = 43, - SpvBuiltInSubgroupEqMaskKHR = 4416, - SpvBuiltInSubgroupGeMaskKHR = 4417, - SpvBuiltInSubgroupGtMaskKHR = 4418, - SpvBuiltInSubgroupLeMaskKHR = 4419, - SpvBuiltInSubgroupLtMaskKHR = 4420, - SpvBuiltInBaseVertex = 4424, - SpvBuiltInBaseInstance = 4425, - SpvBuiltInDrawIndex = 4426, - SpvBuiltInDeviceIndex = 4438, - SpvBuiltInViewIndex = 4440, - SpvBuiltInBaryCoordNoPerspAMD = 4992, - SpvBuiltInBaryCoordNoPerspCentroidAMD = 4993, - SpvBuiltInBaryCoordNoPerspSampleAMD = 4994, - SpvBuiltInBaryCoordSmoothAMD = 4995, - SpvBuiltInBaryCoordSmoothCentroidAMD = 4996, - SpvBuiltInBaryCoordSmoothSampleAMD = 4997, - SpvBuiltInBaryCoordPullModelAMD = 4998, - SpvBuiltInFragStencilRefEXT = 5014, - SpvBuiltInViewportMaskNV = 5253, - SpvBuiltInSecondaryPositionNV = 5257, - SpvBuiltInSecondaryViewportMaskNV = 5258, - SpvBuiltInPositionPerViewNV = 5261, - SpvBuiltInViewportMaskPerViewNV = 5262, - SpvBuiltInMax = 0x7fffffff, -} SpvBuiltIn; - -typedef enum SpvSelectionControlShift_ { - SpvSelectionControlFlattenShift = 0, - SpvSelectionControlDontFlattenShift = 1, - SpvSelectionControlMax = 0x7fffffff, -} SpvSelectionControlShift; - -typedef enum SpvSelectionControlMask_ { - SpvSelectionControlMaskNone = 0, - SpvSelectionControlFlattenMask = 0x00000001, - SpvSelectionControlDontFlattenMask = 0x00000002, -} SpvSelectionControlMask; - -typedef enum SpvLoopControlShift_ { - SpvLoopControlUnrollShift = 0, - SpvLoopControlDontUnrollShift = 1, - SpvLoopControlDependencyInfiniteShift = 2, - SpvLoopControlDependencyLengthShift = 3, - SpvLoopControlMax = 0x7fffffff, -} SpvLoopControlShift; - -typedef enum SpvLoopControlMask_ { - SpvLoopControlMaskNone = 0, - SpvLoopControlUnrollMask = 0x00000001, - SpvLoopControlDontUnrollMask = 0x00000002, - SpvLoopControlDependencyInfiniteMask = 0x00000004, - SpvLoopControlDependencyLengthMask = 0x00000008, -} SpvLoopControlMask; - -typedef enum SpvFunctionControlShift_ { - SpvFunctionControlInlineShift = 0, - SpvFunctionControlDontInlineShift = 1, - SpvFunctionControlPureShift = 2, - SpvFunctionControlConstShift = 3, - SpvFunctionControlMax = 0x7fffffff, -} SpvFunctionControlShift; - -typedef enum SpvFunctionControlMask_ { - SpvFunctionControlMaskNone = 0, - SpvFunctionControlInlineMask = 0x00000001, - SpvFunctionControlDontInlineMask = 0x00000002, - SpvFunctionControlPureMask = 0x00000004, - SpvFunctionControlConstMask = 0x00000008, -} SpvFunctionControlMask; - -typedef enum SpvMemorySemanticsShift_ { - SpvMemorySemanticsAcquireShift = 1, - SpvMemorySemanticsReleaseShift = 2, - SpvMemorySemanticsAcquireReleaseShift = 3, - SpvMemorySemanticsSequentiallyConsistentShift = 4, - SpvMemorySemanticsUniformMemoryShift = 6, - SpvMemorySemanticsSubgroupMemoryShift = 7, - SpvMemorySemanticsWorkgroupMemoryShift = 8, - SpvMemorySemanticsCrossWorkgroupMemoryShift = 9, - SpvMemorySemanticsAtomicCounterMemoryShift = 10, - SpvMemorySemanticsImageMemoryShift = 11, - SpvMemorySemanticsMax = 0x7fffffff, -} SpvMemorySemanticsShift; - -typedef enum SpvMemorySemanticsMask_ { - SpvMemorySemanticsMaskNone = 0, - SpvMemorySemanticsAcquireMask = 0x00000002, - SpvMemorySemanticsReleaseMask = 0x00000004, - SpvMemorySemanticsAcquireReleaseMask = 0x00000008, - SpvMemorySemanticsSequentiallyConsistentMask = 0x00000010, - SpvMemorySemanticsUniformMemoryMask = 0x00000040, - SpvMemorySemanticsSubgroupMemoryMask = 0x00000080, - SpvMemorySemanticsWorkgroupMemoryMask = 0x00000100, - SpvMemorySemanticsCrossWorkgroupMemoryMask = 0x00000200, - SpvMemorySemanticsAtomicCounterMemoryMask = 0x00000400, - SpvMemorySemanticsImageMemoryMask = 0x00000800, -} SpvMemorySemanticsMask; - -typedef enum SpvMemoryAccessShift_ { - SpvMemoryAccessVolatileShift = 0, - SpvMemoryAccessAlignedShift = 1, - SpvMemoryAccessNontemporalShift = 2, - SpvMemoryAccessMax = 0x7fffffff, -} SpvMemoryAccessShift; - -typedef enum SpvMemoryAccessMask_ { - SpvMemoryAccessMaskNone = 0, - SpvMemoryAccessVolatileMask = 0x00000001, - SpvMemoryAccessAlignedMask = 0x00000002, - SpvMemoryAccessNontemporalMask = 0x00000004, -} SpvMemoryAccessMask; - -typedef enum SpvScope_ { - SpvScopeCrossDevice = 0, - SpvScopeDevice = 1, - SpvScopeWorkgroup = 2, - SpvScopeSubgroup = 3, - SpvScopeInvocation = 4, - SpvScopeMax = 0x7fffffff, -} SpvScope; - -typedef enum SpvGroupOperation_ { - SpvGroupOperationReduce = 0, - SpvGroupOperationInclusiveScan = 1, - SpvGroupOperationExclusiveScan = 2, - SpvGroupOperationMax = 0x7fffffff, -} SpvGroupOperation; - -typedef enum SpvKernelEnqueueFlags_ { - SpvKernelEnqueueFlagsNoWait = 0, - SpvKernelEnqueueFlagsWaitKernel = 1, - SpvKernelEnqueueFlagsWaitWorkGroup = 2, - SpvKernelEnqueueFlagsMax = 0x7fffffff, -} SpvKernelEnqueueFlags; - -typedef enum SpvKernelProfilingInfoShift_ { - SpvKernelProfilingInfoCmdExecTimeShift = 0, - SpvKernelProfilingInfoMax = 0x7fffffff, -} SpvKernelProfilingInfoShift; - -typedef enum SpvKernelProfilingInfoMask_ { - SpvKernelProfilingInfoMaskNone = 0, - SpvKernelProfilingInfoCmdExecTimeMask = 0x00000001, -} SpvKernelProfilingInfoMask; - -typedef enum SpvCapability_ { - SpvCapabilityMatrix = 0, - SpvCapabilityShader = 1, - SpvCapabilityGeometry = 2, - SpvCapabilityTessellation = 3, - SpvCapabilityAddresses = 4, - SpvCapabilityLinkage = 5, - SpvCapabilityKernel = 6, - SpvCapabilityVector16 = 7, - SpvCapabilityFloat16Buffer = 8, - SpvCapabilityFloat16 = 9, - SpvCapabilityFloat64 = 10, - SpvCapabilityInt64 = 11, - SpvCapabilityInt64Atomics = 12, - SpvCapabilityImageBasic = 13, - SpvCapabilityImageReadWrite = 14, - SpvCapabilityImageMipmap = 15, - SpvCapabilityPipes = 17, - SpvCapabilityGroups = 18, - SpvCapabilityDeviceEnqueue = 19, - SpvCapabilityLiteralSampler = 20, - SpvCapabilityAtomicStorage = 21, - SpvCapabilityInt16 = 22, - SpvCapabilityTessellationPointSize = 23, - SpvCapabilityGeometryPointSize = 24, - SpvCapabilityImageGatherExtended = 25, - SpvCapabilityStorageImageMultisample = 27, - SpvCapabilityUniformBufferArrayDynamicIndexing = 28, - SpvCapabilitySampledImageArrayDynamicIndexing = 29, - SpvCapabilityStorageBufferArrayDynamicIndexing = 30, - SpvCapabilityStorageImageArrayDynamicIndexing = 31, - SpvCapabilityClipDistance = 32, - SpvCapabilityCullDistance = 33, - SpvCapabilityImageCubeArray = 34, - SpvCapabilitySampleRateShading = 35, - SpvCapabilityImageRect = 36, - SpvCapabilitySampledRect = 37, - SpvCapabilityGenericPointer = 38, - SpvCapabilityInt8 = 39, - SpvCapabilityInputAttachment = 40, - SpvCapabilitySparseResidency = 41, - SpvCapabilityMinLod = 42, - SpvCapabilitySampled1D = 43, - SpvCapabilityImage1D = 44, - SpvCapabilitySampledCubeArray = 45, - SpvCapabilitySampledBuffer = 46, - SpvCapabilityImageBuffer = 47, - SpvCapabilityImageMSArray = 48, - SpvCapabilityStorageImageExtendedFormats = 49, - SpvCapabilityImageQuery = 50, - SpvCapabilityDerivativeControl = 51, - SpvCapabilityInterpolationFunction = 52, - SpvCapabilityTransformFeedback = 53, - SpvCapabilityGeometryStreams = 54, - SpvCapabilityStorageImageReadWithoutFormat = 55, - SpvCapabilityStorageImageWriteWithoutFormat = 56, - SpvCapabilityMultiViewport = 57, - SpvCapabilitySubgroupDispatch = 58, - SpvCapabilityNamedBarrier = 59, - SpvCapabilityPipeStorage = 60, - SpvCapabilitySubgroupBallotKHR = 4423, - SpvCapabilityDrawParameters = 4427, - SpvCapabilitySubgroupVoteKHR = 4431, - SpvCapabilityStorageBuffer16BitAccess = 4433, - SpvCapabilityStorageUniformBufferBlock16 = 4433, - SpvCapabilityStorageUniform16 = 4434, - SpvCapabilityUniformAndStorageBuffer16BitAccess = 4434, - SpvCapabilityStoragePushConstant16 = 4435, - SpvCapabilityStorageInputOutput16 = 4436, - SpvCapabilityDeviceGroup = 4437, - SpvCapabilityMultiView = 4439, - SpvCapabilityVariablePointersStorageBuffer = 4441, - SpvCapabilityVariablePointers = 4442, - SpvCapabilityAtomicStorageOps = 4445, - SpvCapabilitySampleMaskPostDepthCoverage = 4447, - SpvCapabilityImageGatherBiasLodAMD = 5009, - SpvCapabilityFragmentMaskAMD = 5010, - SpvCapabilityStencilExportEXT = 5013, - SpvCapabilityImageReadWriteLodAMD = 5015, - SpvCapabilitySampleMaskOverrideCoverageNV = 5249, - SpvCapabilityGeometryShaderPassthroughNV = 5251, - SpvCapabilityShaderViewportIndexLayerEXT = 5254, - SpvCapabilityShaderViewportIndexLayerNV = 5254, - SpvCapabilityShaderViewportMaskNV = 5255, - SpvCapabilityShaderStereoViewNV = 5259, - SpvCapabilityPerViewAttributesNV = 5260, - SpvCapabilitySubgroupShuffleINTEL = 5568, - SpvCapabilitySubgroupBufferBlockIOINTEL = 5569, - SpvCapabilitySubgroupImageBlockIOINTEL = 5570, - SpvCapabilityMax = 0x7fffffff, -} SpvCapability; - -typedef enum SpvOp_ { - SpvOpNop = 0, - SpvOpUndef = 1, - SpvOpSourceContinued = 2, - SpvOpSource = 3, - SpvOpSourceExtension = 4, - SpvOpName = 5, - SpvOpMemberName = 6, - SpvOpString = 7, - SpvOpLine = 8, - SpvOpExtension = 10, - SpvOpExtInstImport = 11, - SpvOpExtInst = 12, - SpvOpMemoryModel = 14, - SpvOpEntryPoint = 15, - SpvOpExecutionMode = 16, - SpvOpCapability = 17, - SpvOpTypeVoid = 19, - SpvOpTypeBool = 20, - SpvOpTypeInt = 21, - SpvOpTypeFloat = 22, - SpvOpTypeVector = 23, - SpvOpTypeMatrix = 24, - SpvOpTypeImage = 25, - SpvOpTypeSampler = 26, - SpvOpTypeSampledImage = 27, - SpvOpTypeArray = 28, - SpvOpTypeRuntimeArray = 29, - SpvOpTypeStruct = 30, - SpvOpTypeOpaque = 31, - SpvOpTypePointer = 32, - SpvOpTypeFunction = 33, - SpvOpTypeEvent = 34, - SpvOpTypeDeviceEvent = 35, - SpvOpTypeReserveId = 36, - SpvOpTypeQueue = 37, - SpvOpTypePipe = 38, - SpvOpTypeForwardPointer = 39, - SpvOpConstantTrue = 41, - SpvOpConstantFalse = 42, - SpvOpConstant = 43, - SpvOpConstantComposite = 44, - SpvOpConstantSampler = 45, - SpvOpConstantNull = 46, - SpvOpSpecConstantTrue = 48, - SpvOpSpecConstantFalse = 49, - SpvOpSpecConstant = 50, - SpvOpSpecConstantComposite = 51, - SpvOpSpecConstantOp = 52, - SpvOpFunction = 54, - SpvOpFunctionParameter = 55, - SpvOpFunctionEnd = 56, - SpvOpFunctionCall = 57, - SpvOpVariable = 59, - SpvOpImageTexelPointer = 60, - SpvOpLoad = 61, - SpvOpStore = 62, - SpvOpCopyMemory = 63, - SpvOpCopyMemorySized = 64, - SpvOpAccessChain = 65, - SpvOpInBoundsAccessChain = 66, - SpvOpPtrAccessChain = 67, - SpvOpArrayLength = 68, - SpvOpGenericPtrMemSemantics = 69, - SpvOpInBoundsPtrAccessChain = 70, - SpvOpDecorate = 71, - SpvOpMemberDecorate = 72, - SpvOpDecorationGroup = 73, - SpvOpGroupDecorate = 74, - SpvOpGroupMemberDecorate = 75, - SpvOpVectorExtractDynamic = 77, - SpvOpVectorInsertDynamic = 78, - SpvOpVectorShuffle = 79, - SpvOpCompositeConstruct = 80, - SpvOpCompositeExtract = 81, - SpvOpCompositeInsert = 82, - SpvOpCopyObject = 83, - SpvOpTranspose = 84, - SpvOpSampledImage = 86, - SpvOpImageSampleImplicitLod = 87, - SpvOpImageSampleExplicitLod = 88, - SpvOpImageSampleDrefImplicitLod = 89, - SpvOpImageSampleDrefExplicitLod = 90, - SpvOpImageSampleProjImplicitLod = 91, - SpvOpImageSampleProjExplicitLod = 92, - SpvOpImageSampleProjDrefImplicitLod = 93, - SpvOpImageSampleProjDrefExplicitLod = 94, - SpvOpImageFetch = 95, - SpvOpImageGather = 96, - SpvOpImageDrefGather = 97, - SpvOpImageRead = 98, - SpvOpImageWrite = 99, - SpvOpImage = 100, - SpvOpImageQueryFormat = 101, - SpvOpImageQueryOrder = 102, - SpvOpImageQuerySizeLod = 103, - SpvOpImageQuerySize = 104, - SpvOpImageQueryLod = 105, - SpvOpImageQueryLevels = 106, - SpvOpImageQuerySamples = 107, - SpvOpConvertFToU = 109, - SpvOpConvertFToS = 110, - SpvOpConvertSToF = 111, - SpvOpConvertUToF = 112, - SpvOpUConvert = 113, - SpvOpSConvert = 114, - SpvOpFConvert = 115, - SpvOpQuantizeToF16 = 116, - SpvOpConvertPtrToU = 117, - SpvOpSatConvertSToU = 118, - SpvOpSatConvertUToS = 119, - SpvOpConvertUToPtr = 120, - SpvOpPtrCastToGeneric = 121, - SpvOpGenericCastToPtr = 122, - SpvOpGenericCastToPtrExplicit = 123, - SpvOpBitcast = 124, - SpvOpSNegate = 126, - SpvOpFNegate = 127, - SpvOpIAdd = 128, - SpvOpFAdd = 129, - SpvOpISub = 130, - SpvOpFSub = 131, - SpvOpIMul = 132, - SpvOpFMul = 133, - SpvOpUDiv = 134, - SpvOpSDiv = 135, - SpvOpFDiv = 136, - SpvOpUMod = 137, - SpvOpSRem = 138, - SpvOpSMod = 139, - SpvOpFRem = 140, - SpvOpFMod = 141, - SpvOpVectorTimesScalar = 142, - SpvOpMatrixTimesScalar = 143, - SpvOpVectorTimesMatrix = 144, - SpvOpMatrixTimesVector = 145, - SpvOpMatrixTimesMatrix = 146, - SpvOpOuterProduct = 147, - SpvOpDot = 148, - SpvOpIAddCarry = 149, - SpvOpISubBorrow = 150, - SpvOpUMulExtended = 151, - SpvOpSMulExtended = 152, - SpvOpAny = 154, - SpvOpAll = 155, - SpvOpIsNan = 156, - SpvOpIsInf = 157, - SpvOpIsFinite = 158, - SpvOpIsNormal = 159, - SpvOpSignBitSet = 160, - SpvOpLessOrGreater = 161, - SpvOpOrdered = 162, - SpvOpUnordered = 163, - SpvOpLogicalEqual = 164, - SpvOpLogicalNotEqual = 165, - SpvOpLogicalOr = 166, - SpvOpLogicalAnd = 167, - SpvOpLogicalNot = 168, - SpvOpSelect = 169, - SpvOpIEqual = 170, - SpvOpINotEqual = 171, - SpvOpUGreaterThan = 172, - SpvOpSGreaterThan = 173, - SpvOpUGreaterThanEqual = 174, - SpvOpSGreaterThanEqual = 175, - SpvOpULessThan = 176, - SpvOpSLessThan = 177, - SpvOpULessThanEqual = 178, - SpvOpSLessThanEqual = 179, - SpvOpFOrdEqual = 180, - SpvOpFUnordEqual = 181, - SpvOpFOrdNotEqual = 182, - SpvOpFUnordNotEqual = 183, - SpvOpFOrdLessThan = 184, - SpvOpFUnordLessThan = 185, - SpvOpFOrdGreaterThan = 186, - SpvOpFUnordGreaterThan = 187, - SpvOpFOrdLessThanEqual = 188, - SpvOpFUnordLessThanEqual = 189, - SpvOpFOrdGreaterThanEqual = 190, - SpvOpFUnordGreaterThanEqual = 191, - SpvOpShiftRightLogical = 194, - SpvOpShiftRightArithmetic = 195, - SpvOpShiftLeftLogical = 196, - SpvOpBitwiseOr = 197, - SpvOpBitwiseXor = 198, - SpvOpBitwiseAnd = 199, - SpvOpNot = 200, - SpvOpBitFieldInsert = 201, - SpvOpBitFieldSExtract = 202, - SpvOpBitFieldUExtract = 203, - SpvOpBitReverse = 204, - SpvOpBitCount = 205, - SpvOpDPdx = 207, - SpvOpDPdy = 208, - SpvOpFwidth = 209, - SpvOpDPdxFine = 210, - SpvOpDPdyFine = 211, - SpvOpFwidthFine = 212, - SpvOpDPdxCoarse = 213, - SpvOpDPdyCoarse = 214, - SpvOpFwidthCoarse = 215, - SpvOpEmitVertex = 218, - SpvOpEndPrimitive = 219, - SpvOpEmitStreamVertex = 220, - SpvOpEndStreamPrimitive = 221, - SpvOpControlBarrier = 224, - SpvOpMemoryBarrier = 225, - SpvOpAtomicLoad = 227, - SpvOpAtomicStore = 228, - SpvOpAtomicExchange = 229, - SpvOpAtomicCompareExchange = 230, - SpvOpAtomicCompareExchangeWeak = 231, - SpvOpAtomicIIncrement = 232, - SpvOpAtomicIDecrement = 233, - SpvOpAtomicIAdd = 234, - SpvOpAtomicISub = 235, - SpvOpAtomicSMin = 236, - SpvOpAtomicUMin = 237, - SpvOpAtomicSMax = 238, - SpvOpAtomicUMax = 239, - SpvOpAtomicAnd = 240, - SpvOpAtomicOr = 241, - SpvOpAtomicXor = 242, - SpvOpPhi = 245, - SpvOpLoopMerge = 246, - SpvOpSelectionMerge = 247, - SpvOpLabel = 248, - SpvOpBranch = 249, - SpvOpBranchConditional = 250, - SpvOpSwitch = 251, - SpvOpKill = 252, - SpvOpReturn = 253, - SpvOpReturnValue = 254, - SpvOpUnreachable = 255, - SpvOpLifetimeStart = 256, - SpvOpLifetimeStop = 257, - SpvOpGroupAsyncCopy = 259, - SpvOpGroupWaitEvents = 260, - SpvOpGroupAll = 261, - SpvOpGroupAny = 262, - SpvOpGroupBroadcast = 263, - SpvOpGroupIAdd = 264, - SpvOpGroupFAdd = 265, - SpvOpGroupFMin = 266, - SpvOpGroupUMin = 267, - SpvOpGroupSMin = 268, - SpvOpGroupFMax = 269, - SpvOpGroupUMax = 270, - SpvOpGroupSMax = 271, - SpvOpReadPipe = 274, - SpvOpWritePipe = 275, - SpvOpReservedReadPipe = 276, - SpvOpReservedWritePipe = 277, - SpvOpReserveReadPipePackets = 278, - SpvOpReserveWritePipePackets = 279, - SpvOpCommitReadPipe = 280, - SpvOpCommitWritePipe = 281, - SpvOpIsValidReserveId = 282, - SpvOpGetNumPipePackets = 283, - SpvOpGetMaxPipePackets = 284, - SpvOpGroupReserveReadPipePackets = 285, - SpvOpGroupReserveWritePipePackets = 286, - SpvOpGroupCommitReadPipe = 287, - SpvOpGroupCommitWritePipe = 288, - SpvOpEnqueueMarker = 291, - SpvOpEnqueueKernel = 292, - SpvOpGetKernelNDrangeSubGroupCount = 293, - SpvOpGetKernelNDrangeMaxSubGroupSize = 294, - SpvOpGetKernelWorkGroupSize = 295, - SpvOpGetKernelPreferredWorkGroupSizeMultiple = 296, - SpvOpRetainEvent = 297, - SpvOpReleaseEvent = 298, - SpvOpCreateUserEvent = 299, - SpvOpIsValidEvent = 300, - SpvOpSetUserEventStatus = 301, - SpvOpCaptureEventProfilingInfo = 302, - SpvOpGetDefaultQueue = 303, - SpvOpBuildNDRange = 304, - SpvOpImageSparseSampleImplicitLod = 305, - SpvOpImageSparseSampleExplicitLod = 306, - SpvOpImageSparseSampleDrefImplicitLod = 307, - SpvOpImageSparseSampleDrefExplicitLod = 308, - SpvOpImageSparseSampleProjImplicitLod = 309, - SpvOpImageSparseSampleProjExplicitLod = 310, - SpvOpImageSparseSampleProjDrefImplicitLod = 311, - SpvOpImageSparseSampleProjDrefExplicitLod = 312, - SpvOpImageSparseFetch = 313, - SpvOpImageSparseGather = 314, - SpvOpImageSparseDrefGather = 315, - SpvOpImageSparseTexelsResident = 316, - SpvOpNoLine = 317, - SpvOpAtomicFlagTestAndSet = 318, - SpvOpAtomicFlagClear = 319, - SpvOpImageSparseRead = 320, - SpvOpSizeOf = 321, - SpvOpTypePipeStorage = 322, - SpvOpConstantPipeStorage = 323, - SpvOpCreatePipeFromPipeStorage = 324, - SpvOpGetKernelLocalSizeForSubgroupCount = 325, - SpvOpGetKernelMaxNumSubgroups = 326, - SpvOpTypeNamedBarrier = 327, - SpvOpNamedBarrierInitialize = 328, - SpvOpMemoryNamedBarrier = 329, - SpvOpModuleProcessed = 330, - SpvOpExecutionModeId = 331, - SpvOpDecorateId = 332, - SpvOpSubgroupBallotKHR = 4421, - SpvOpSubgroupFirstInvocationKHR = 4422, - SpvOpSubgroupAllKHR = 4428, - SpvOpSubgroupAnyKHR = 4429, - SpvOpSubgroupAllEqualKHR = 4430, - SpvOpSubgroupReadInvocationKHR = 4432, - SpvOpGroupIAddNonUniformAMD = 5000, - SpvOpGroupFAddNonUniformAMD = 5001, - SpvOpGroupFMinNonUniformAMD = 5002, - SpvOpGroupUMinNonUniformAMD = 5003, - SpvOpGroupSMinNonUniformAMD = 5004, - SpvOpGroupFMaxNonUniformAMD = 5005, - SpvOpGroupUMaxNonUniformAMD = 5006, - SpvOpGroupSMaxNonUniformAMD = 5007, - SpvOpFragmentMaskFetchAMD = 5011, - SpvOpFragmentFetchAMD = 5012, - SpvOpSubgroupShuffleINTEL = 5571, - SpvOpSubgroupShuffleDownINTEL = 5572, - SpvOpSubgroupShuffleUpINTEL = 5573, - SpvOpSubgroupShuffleXorINTEL = 5574, - SpvOpSubgroupBlockReadINTEL = 5575, - SpvOpSubgroupBlockWriteINTEL = 5576, - SpvOpSubgroupImageBlockReadINTEL = 5577, - SpvOpSubgroupImageBlockWriteINTEL = 5578, - SpvOpDecorateStringGOOGLE = 5632, - SpvOpMemberDecorateStringGOOGLE = 5633, - SpvOpMax = 0x7fffffff, -} SpvOp; - -#endif // #ifndef spirv_H - diff --git a/Extern/3rdParty/shaderc/shaderc/include/spirv/1.2/spirv.hpp b/Extern/3rdParty/shaderc/shaderc/include/spirv/1.2/spirv.hpp deleted file mode 100644 index 57bd97a..0000000 --- a/Extern/3rdParty/shaderc/shaderc/include/spirv/1.2/spirv.hpp +++ /dev/null @@ -1,1030 +0,0 @@ -// Copyright (c) 2014-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. - -// This header is automatically generated by the same tool that creates -// the Binary Section of the SPIR-V specification. - -// Enumeration tokens for SPIR-V, in various styles: -// C, C++, C++11, JSON, Lua, Python -// -// - C will have tokens with a "Spv" prefix, e.g.: SpvSourceLanguageGLSL -// - C++ will have tokens in the "spv" name space, e.g.: spv::SourceLanguageGLSL -// - C++11 will use enum classes in the spv namespace, e.g.: spv::SourceLanguage::GLSL -// - Lua will use tables, e.g.: spv.SourceLanguage.GLSL -// - Python will use dictionaries, e.g.: spv['SourceLanguage']['GLSL'] -// -// Some tokens act like mask values, which can be OR'd together, -// while others are mutually exclusive. The mask-like ones have -// "Mask" in their name, and a parallel enum that has the shift -// amount (1 << x) for each corresponding enumerant. - -#ifndef spirv_HPP -#define spirv_HPP - -namespace spv { - -typedef unsigned int Id; - -#define SPV_VERSION 0x10200 -#define SPV_REVISION 2 - -static const unsigned int MagicNumber = 0x07230203; -static const unsigned int Version = 0x00010200; -static const unsigned int Revision = 2; -static const unsigned int OpCodeMask = 0xffff; -static const unsigned int WordCountShift = 16; - -enum SourceLanguage { - SourceLanguageUnknown = 0, - SourceLanguageESSL = 1, - SourceLanguageGLSL = 2, - SourceLanguageOpenCL_C = 3, - SourceLanguageOpenCL_CPP = 4, - SourceLanguageHLSL = 5, - SourceLanguageMax = 0x7fffffff, -}; - -enum ExecutionModel { - ExecutionModelVertex = 0, - ExecutionModelTessellationControl = 1, - ExecutionModelTessellationEvaluation = 2, - ExecutionModelGeometry = 3, - ExecutionModelFragment = 4, - ExecutionModelGLCompute = 5, - ExecutionModelKernel = 6, - ExecutionModelMax = 0x7fffffff, -}; - -enum AddressingModel { - AddressingModelLogical = 0, - AddressingModelPhysical32 = 1, - AddressingModelPhysical64 = 2, - AddressingModelMax = 0x7fffffff, -}; - -enum MemoryModel { - MemoryModelSimple = 0, - MemoryModelGLSL450 = 1, - MemoryModelOpenCL = 2, - MemoryModelMax = 0x7fffffff, -}; - -enum ExecutionMode { - ExecutionModeInvocations = 0, - ExecutionModeSpacingEqual = 1, - ExecutionModeSpacingFractionalEven = 2, - ExecutionModeSpacingFractionalOdd = 3, - ExecutionModeVertexOrderCw = 4, - ExecutionModeVertexOrderCcw = 5, - ExecutionModePixelCenterInteger = 6, - ExecutionModeOriginUpperLeft = 7, - ExecutionModeOriginLowerLeft = 8, - ExecutionModeEarlyFragmentTests = 9, - ExecutionModePointMode = 10, - ExecutionModeXfb = 11, - ExecutionModeDepthReplacing = 12, - ExecutionModeDepthGreater = 14, - ExecutionModeDepthLess = 15, - ExecutionModeDepthUnchanged = 16, - ExecutionModeLocalSize = 17, - ExecutionModeLocalSizeHint = 18, - ExecutionModeInputPoints = 19, - ExecutionModeInputLines = 20, - ExecutionModeInputLinesAdjacency = 21, - ExecutionModeTriangles = 22, - ExecutionModeInputTrianglesAdjacency = 23, - ExecutionModeQuads = 24, - ExecutionModeIsolines = 25, - ExecutionModeOutputVertices = 26, - ExecutionModeOutputPoints = 27, - ExecutionModeOutputLineStrip = 28, - ExecutionModeOutputTriangleStrip = 29, - ExecutionModeVecTypeHint = 30, - ExecutionModeContractionOff = 31, - ExecutionModeInitializer = 33, - ExecutionModeFinalizer = 34, - ExecutionModeSubgroupSize = 35, - ExecutionModeSubgroupsPerWorkgroup = 36, - ExecutionModeSubgroupsPerWorkgroupId = 37, - ExecutionModeLocalSizeId = 38, - ExecutionModeLocalSizeHintId = 39, - ExecutionModePostDepthCoverage = 4446, - ExecutionModeStencilRefReplacingEXT = 5027, - ExecutionModeMax = 0x7fffffff, -}; - -enum StorageClass { - StorageClassUniformConstant = 0, - StorageClassInput = 1, - StorageClassUniform = 2, - StorageClassOutput = 3, - StorageClassWorkgroup = 4, - StorageClassCrossWorkgroup = 5, - StorageClassPrivate = 6, - StorageClassFunction = 7, - StorageClassGeneric = 8, - StorageClassPushConstant = 9, - StorageClassAtomicCounter = 10, - StorageClassImage = 11, - StorageClassStorageBuffer = 12, - StorageClassMax = 0x7fffffff, -}; - -enum Dim { - Dim1D = 0, - Dim2D = 1, - Dim3D = 2, - DimCube = 3, - DimRect = 4, - DimBuffer = 5, - DimSubpassData = 6, - DimMax = 0x7fffffff, -}; - -enum SamplerAddressingMode { - SamplerAddressingModeNone = 0, - SamplerAddressingModeClampToEdge = 1, - SamplerAddressingModeClamp = 2, - SamplerAddressingModeRepeat = 3, - SamplerAddressingModeRepeatMirrored = 4, - SamplerAddressingModeMax = 0x7fffffff, -}; - -enum SamplerFilterMode { - SamplerFilterModeNearest = 0, - SamplerFilterModeLinear = 1, - SamplerFilterModeMax = 0x7fffffff, -}; - -enum ImageFormat { - ImageFormatUnknown = 0, - ImageFormatRgba32f = 1, - ImageFormatRgba16f = 2, - ImageFormatR32f = 3, - ImageFormatRgba8 = 4, - ImageFormatRgba8Snorm = 5, - ImageFormatRg32f = 6, - ImageFormatRg16f = 7, - ImageFormatR11fG11fB10f = 8, - ImageFormatR16f = 9, - ImageFormatRgba16 = 10, - ImageFormatRgb10A2 = 11, - ImageFormatRg16 = 12, - ImageFormatRg8 = 13, - ImageFormatR16 = 14, - ImageFormatR8 = 15, - ImageFormatRgba16Snorm = 16, - ImageFormatRg16Snorm = 17, - ImageFormatRg8Snorm = 18, - ImageFormatR16Snorm = 19, - ImageFormatR8Snorm = 20, - ImageFormatRgba32i = 21, - ImageFormatRgba16i = 22, - ImageFormatRgba8i = 23, - ImageFormatR32i = 24, - ImageFormatRg32i = 25, - ImageFormatRg16i = 26, - ImageFormatRg8i = 27, - ImageFormatR16i = 28, - ImageFormatR8i = 29, - ImageFormatRgba32ui = 30, - ImageFormatRgba16ui = 31, - ImageFormatRgba8ui = 32, - ImageFormatR32ui = 33, - ImageFormatRgb10a2ui = 34, - ImageFormatRg32ui = 35, - ImageFormatRg16ui = 36, - ImageFormatRg8ui = 37, - ImageFormatR16ui = 38, - ImageFormatR8ui = 39, - ImageFormatMax = 0x7fffffff, -}; - -enum ImageChannelOrder { - ImageChannelOrderR = 0, - ImageChannelOrderA = 1, - ImageChannelOrderRG = 2, - ImageChannelOrderRA = 3, - ImageChannelOrderRGB = 4, - ImageChannelOrderRGBA = 5, - ImageChannelOrderBGRA = 6, - ImageChannelOrderARGB = 7, - ImageChannelOrderIntensity = 8, - ImageChannelOrderLuminance = 9, - ImageChannelOrderRx = 10, - ImageChannelOrderRGx = 11, - ImageChannelOrderRGBx = 12, - ImageChannelOrderDepth = 13, - ImageChannelOrderDepthStencil = 14, - ImageChannelOrdersRGB = 15, - ImageChannelOrdersRGBx = 16, - ImageChannelOrdersRGBA = 17, - ImageChannelOrdersBGRA = 18, - ImageChannelOrderABGR = 19, - ImageChannelOrderMax = 0x7fffffff, -}; - -enum ImageChannelDataType { - ImageChannelDataTypeSnormInt8 = 0, - ImageChannelDataTypeSnormInt16 = 1, - ImageChannelDataTypeUnormInt8 = 2, - ImageChannelDataTypeUnormInt16 = 3, - ImageChannelDataTypeUnormShort565 = 4, - ImageChannelDataTypeUnormShort555 = 5, - ImageChannelDataTypeUnormInt101010 = 6, - ImageChannelDataTypeSignedInt8 = 7, - ImageChannelDataTypeSignedInt16 = 8, - ImageChannelDataTypeSignedInt32 = 9, - ImageChannelDataTypeUnsignedInt8 = 10, - ImageChannelDataTypeUnsignedInt16 = 11, - ImageChannelDataTypeUnsignedInt32 = 12, - ImageChannelDataTypeHalfFloat = 13, - ImageChannelDataTypeFloat = 14, - ImageChannelDataTypeUnormInt24 = 15, - ImageChannelDataTypeUnormInt101010_2 = 16, - ImageChannelDataTypeMax = 0x7fffffff, -}; - -enum ImageOperandsShift { - ImageOperandsBiasShift = 0, - ImageOperandsLodShift = 1, - ImageOperandsGradShift = 2, - ImageOperandsConstOffsetShift = 3, - ImageOperandsOffsetShift = 4, - ImageOperandsConstOffsetsShift = 5, - ImageOperandsSampleShift = 6, - ImageOperandsMinLodShift = 7, - ImageOperandsMax = 0x7fffffff, -}; - -enum ImageOperandsMask { - ImageOperandsMaskNone = 0, - ImageOperandsBiasMask = 0x00000001, - ImageOperandsLodMask = 0x00000002, - ImageOperandsGradMask = 0x00000004, - ImageOperandsConstOffsetMask = 0x00000008, - ImageOperandsOffsetMask = 0x00000010, - ImageOperandsConstOffsetsMask = 0x00000020, - ImageOperandsSampleMask = 0x00000040, - ImageOperandsMinLodMask = 0x00000080, -}; - -enum FPFastMathModeShift { - FPFastMathModeNotNaNShift = 0, - FPFastMathModeNotInfShift = 1, - FPFastMathModeNSZShift = 2, - FPFastMathModeAllowRecipShift = 3, - FPFastMathModeFastShift = 4, - FPFastMathModeMax = 0x7fffffff, -}; - -enum FPFastMathModeMask { - FPFastMathModeMaskNone = 0, - FPFastMathModeNotNaNMask = 0x00000001, - FPFastMathModeNotInfMask = 0x00000002, - FPFastMathModeNSZMask = 0x00000004, - FPFastMathModeAllowRecipMask = 0x00000008, - FPFastMathModeFastMask = 0x00000010, -}; - -enum FPRoundingMode { - FPRoundingModeRTE = 0, - FPRoundingModeRTZ = 1, - FPRoundingModeRTP = 2, - FPRoundingModeRTN = 3, - FPRoundingModeMax = 0x7fffffff, -}; - -enum LinkageType { - LinkageTypeExport = 0, - LinkageTypeImport = 1, - LinkageTypeMax = 0x7fffffff, -}; - -enum AccessQualifier { - AccessQualifierReadOnly = 0, - AccessQualifierWriteOnly = 1, - AccessQualifierReadWrite = 2, - AccessQualifierMax = 0x7fffffff, -}; - -enum FunctionParameterAttribute { - FunctionParameterAttributeZext = 0, - FunctionParameterAttributeSext = 1, - FunctionParameterAttributeByVal = 2, - FunctionParameterAttributeSret = 3, - FunctionParameterAttributeNoAlias = 4, - FunctionParameterAttributeNoCapture = 5, - FunctionParameterAttributeNoWrite = 6, - FunctionParameterAttributeNoReadWrite = 7, - FunctionParameterAttributeMax = 0x7fffffff, -}; - -enum Decoration { - DecorationRelaxedPrecision = 0, - DecorationSpecId = 1, - DecorationBlock = 2, - DecorationBufferBlock = 3, - DecorationRowMajor = 4, - DecorationColMajor = 5, - DecorationArrayStride = 6, - DecorationMatrixStride = 7, - DecorationGLSLShared = 8, - DecorationGLSLPacked = 9, - DecorationCPacked = 10, - DecorationBuiltIn = 11, - DecorationNoPerspective = 13, - DecorationFlat = 14, - DecorationPatch = 15, - DecorationCentroid = 16, - DecorationSample = 17, - DecorationInvariant = 18, - DecorationRestrict = 19, - DecorationAliased = 20, - DecorationVolatile = 21, - DecorationConstant = 22, - DecorationCoherent = 23, - DecorationNonWritable = 24, - DecorationNonReadable = 25, - DecorationUniform = 26, - DecorationSaturatedConversion = 28, - DecorationStream = 29, - DecorationLocation = 30, - DecorationComponent = 31, - DecorationIndex = 32, - DecorationBinding = 33, - DecorationDescriptorSet = 34, - DecorationOffset = 35, - DecorationXfbBuffer = 36, - DecorationXfbStride = 37, - DecorationFuncParamAttr = 38, - DecorationFPRoundingMode = 39, - DecorationFPFastMathMode = 40, - DecorationLinkageAttributes = 41, - DecorationNoContraction = 42, - DecorationInputAttachmentIndex = 43, - DecorationAlignment = 44, - DecorationMaxByteOffset = 45, - DecorationAlignmentId = 46, - DecorationMaxByteOffsetId = 47, - DecorationExplicitInterpAMD = 4999, - DecorationOverrideCoverageNV = 5248, - DecorationPassthroughNV = 5250, - DecorationViewportRelativeNV = 5252, - DecorationSecondaryViewportRelativeNV = 5256, - DecorationHlslCounterBufferGOOGLE = 5634, - DecorationHlslSemanticGOOGLE = 5635, - DecorationMax = 0x7fffffff, -}; - -enum BuiltIn { - BuiltInPosition = 0, - BuiltInPointSize = 1, - BuiltInClipDistance = 3, - BuiltInCullDistance = 4, - BuiltInVertexId = 5, - BuiltInInstanceId = 6, - BuiltInPrimitiveId = 7, - BuiltInInvocationId = 8, - BuiltInLayer = 9, - BuiltInViewportIndex = 10, - BuiltInTessLevelOuter = 11, - BuiltInTessLevelInner = 12, - BuiltInTessCoord = 13, - BuiltInPatchVertices = 14, - BuiltInFragCoord = 15, - BuiltInPointCoord = 16, - BuiltInFrontFacing = 17, - BuiltInSampleId = 18, - BuiltInSamplePosition = 19, - BuiltInSampleMask = 20, - BuiltInFragDepth = 22, - BuiltInHelperInvocation = 23, - BuiltInNumWorkgroups = 24, - BuiltInWorkgroupSize = 25, - BuiltInWorkgroupId = 26, - BuiltInLocalInvocationId = 27, - BuiltInGlobalInvocationId = 28, - BuiltInLocalInvocationIndex = 29, - BuiltInWorkDim = 30, - BuiltInGlobalSize = 31, - BuiltInEnqueuedWorkgroupSize = 32, - BuiltInGlobalOffset = 33, - BuiltInGlobalLinearId = 34, - BuiltInSubgroupSize = 36, - BuiltInSubgroupMaxSize = 37, - BuiltInNumSubgroups = 38, - BuiltInNumEnqueuedSubgroups = 39, - BuiltInSubgroupId = 40, - BuiltInSubgroupLocalInvocationId = 41, - BuiltInVertexIndex = 42, - BuiltInInstanceIndex = 43, - BuiltInSubgroupEqMaskKHR = 4416, - BuiltInSubgroupGeMaskKHR = 4417, - BuiltInSubgroupGtMaskKHR = 4418, - BuiltInSubgroupLeMaskKHR = 4419, - BuiltInSubgroupLtMaskKHR = 4420, - BuiltInBaseVertex = 4424, - BuiltInBaseInstance = 4425, - BuiltInDrawIndex = 4426, - BuiltInDeviceIndex = 4438, - BuiltInViewIndex = 4440, - BuiltInBaryCoordNoPerspAMD = 4992, - BuiltInBaryCoordNoPerspCentroidAMD = 4993, - BuiltInBaryCoordNoPerspSampleAMD = 4994, - BuiltInBaryCoordSmoothAMD = 4995, - BuiltInBaryCoordSmoothCentroidAMD = 4996, - BuiltInBaryCoordSmoothSampleAMD = 4997, - BuiltInBaryCoordPullModelAMD = 4998, - BuiltInFragStencilRefEXT = 5014, - BuiltInViewportMaskNV = 5253, - BuiltInSecondaryPositionNV = 5257, - BuiltInSecondaryViewportMaskNV = 5258, - BuiltInPositionPerViewNV = 5261, - BuiltInViewportMaskPerViewNV = 5262, - BuiltInMax = 0x7fffffff, -}; - -enum SelectionControlShift { - SelectionControlFlattenShift = 0, - SelectionControlDontFlattenShift = 1, - SelectionControlMax = 0x7fffffff, -}; - -enum SelectionControlMask { - SelectionControlMaskNone = 0, - SelectionControlFlattenMask = 0x00000001, - SelectionControlDontFlattenMask = 0x00000002, -}; - -enum LoopControlShift { - LoopControlUnrollShift = 0, - LoopControlDontUnrollShift = 1, - LoopControlDependencyInfiniteShift = 2, - LoopControlDependencyLengthShift = 3, - LoopControlMax = 0x7fffffff, -}; - -enum LoopControlMask { - LoopControlMaskNone = 0, - LoopControlUnrollMask = 0x00000001, - LoopControlDontUnrollMask = 0x00000002, - LoopControlDependencyInfiniteMask = 0x00000004, - LoopControlDependencyLengthMask = 0x00000008, -}; - -enum FunctionControlShift { - FunctionControlInlineShift = 0, - FunctionControlDontInlineShift = 1, - FunctionControlPureShift = 2, - FunctionControlConstShift = 3, - FunctionControlMax = 0x7fffffff, -}; - -enum FunctionControlMask { - FunctionControlMaskNone = 0, - FunctionControlInlineMask = 0x00000001, - FunctionControlDontInlineMask = 0x00000002, - FunctionControlPureMask = 0x00000004, - FunctionControlConstMask = 0x00000008, -}; - -enum MemorySemanticsShift { - MemorySemanticsAcquireShift = 1, - MemorySemanticsReleaseShift = 2, - MemorySemanticsAcquireReleaseShift = 3, - MemorySemanticsSequentiallyConsistentShift = 4, - MemorySemanticsUniformMemoryShift = 6, - MemorySemanticsSubgroupMemoryShift = 7, - MemorySemanticsWorkgroupMemoryShift = 8, - MemorySemanticsCrossWorkgroupMemoryShift = 9, - MemorySemanticsAtomicCounterMemoryShift = 10, - MemorySemanticsImageMemoryShift = 11, - MemorySemanticsMax = 0x7fffffff, -}; - -enum MemorySemanticsMask { - MemorySemanticsMaskNone = 0, - MemorySemanticsAcquireMask = 0x00000002, - MemorySemanticsReleaseMask = 0x00000004, - MemorySemanticsAcquireReleaseMask = 0x00000008, - MemorySemanticsSequentiallyConsistentMask = 0x00000010, - MemorySemanticsUniformMemoryMask = 0x00000040, - MemorySemanticsSubgroupMemoryMask = 0x00000080, - MemorySemanticsWorkgroupMemoryMask = 0x00000100, - MemorySemanticsCrossWorkgroupMemoryMask = 0x00000200, - MemorySemanticsAtomicCounterMemoryMask = 0x00000400, - MemorySemanticsImageMemoryMask = 0x00000800, -}; - -enum MemoryAccessShift { - MemoryAccessVolatileShift = 0, - MemoryAccessAlignedShift = 1, - MemoryAccessNontemporalShift = 2, - MemoryAccessMax = 0x7fffffff, -}; - -enum MemoryAccessMask { - MemoryAccessMaskNone = 0, - MemoryAccessVolatileMask = 0x00000001, - MemoryAccessAlignedMask = 0x00000002, - MemoryAccessNontemporalMask = 0x00000004, -}; - -enum Scope { - ScopeCrossDevice = 0, - ScopeDevice = 1, - ScopeWorkgroup = 2, - ScopeSubgroup = 3, - ScopeInvocation = 4, - ScopeMax = 0x7fffffff, -}; - -enum GroupOperation { - GroupOperationReduce = 0, - GroupOperationInclusiveScan = 1, - GroupOperationExclusiveScan = 2, - GroupOperationMax = 0x7fffffff, -}; - -enum KernelEnqueueFlags { - KernelEnqueueFlagsNoWait = 0, - KernelEnqueueFlagsWaitKernel = 1, - KernelEnqueueFlagsWaitWorkGroup = 2, - KernelEnqueueFlagsMax = 0x7fffffff, -}; - -enum KernelProfilingInfoShift { - KernelProfilingInfoCmdExecTimeShift = 0, - KernelProfilingInfoMax = 0x7fffffff, -}; - -enum KernelProfilingInfoMask { - KernelProfilingInfoMaskNone = 0, - KernelProfilingInfoCmdExecTimeMask = 0x00000001, -}; - -enum Capability { - CapabilityMatrix = 0, - CapabilityShader = 1, - CapabilityGeometry = 2, - CapabilityTessellation = 3, - CapabilityAddresses = 4, - CapabilityLinkage = 5, - CapabilityKernel = 6, - CapabilityVector16 = 7, - CapabilityFloat16Buffer = 8, - CapabilityFloat16 = 9, - CapabilityFloat64 = 10, - CapabilityInt64 = 11, - CapabilityInt64Atomics = 12, - CapabilityImageBasic = 13, - CapabilityImageReadWrite = 14, - CapabilityImageMipmap = 15, - CapabilityPipes = 17, - CapabilityGroups = 18, - CapabilityDeviceEnqueue = 19, - CapabilityLiteralSampler = 20, - CapabilityAtomicStorage = 21, - CapabilityInt16 = 22, - CapabilityTessellationPointSize = 23, - CapabilityGeometryPointSize = 24, - CapabilityImageGatherExtended = 25, - CapabilityStorageImageMultisample = 27, - CapabilityUniformBufferArrayDynamicIndexing = 28, - CapabilitySampledImageArrayDynamicIndexing = 29, - CapabilityStorageBufferArrayDynamicIndexing = 30, - CapabilityStorageImageArrayDynamicIndexing = 31, - CapabilityClipDistance = 32, - CapabilityCullDistance = 33, - CapabilityImageCubeArray = 34, - CapabilitySampleRateShading = 35, - CapabilityImageRect = 36, - CapabilitySampledRect = 37, - CapabilityGenericPointer = 38, - CapabilityInt8 = 39, - CapabilityInputAttachment = 40, - CapabilitySparseResidency = 41, - CapabilityMinLod = 42, - CapabilitySampled1D = 43, - CapabilityImage1D = 44, - CapabilitySampledCubeArray = 45, - CapabilitySampledBuffer = 46, - CapabilityImageBuffer = 47, - CapabilityImageMSArray = 48, - CapabilityStorageImageExtendedFormats = 49, - CapabilityImageQuery = 50, - CapabilityDerivativeControl = 51, - CapabilityInterpolationFunction = 52, - CapabilityTransformFeedback = 53, - CapabilityGeometryStreams = 54, - CapabilityStorageImageReadWithoutFormat = 55, - CapabilityStorageImageWriteWithoutFormat = 56, - CapabilityMultiViewport = 57, - CapabilitySubgroupDispatch = 58, - CapabilityNamedBarrier = 59, - CapabilityPipeStorage = 60, - CapabilitySubgroupBallotKHR = 4423, - CapabilityDrawParameters = 4427, - CapabilitySubgroupVoteKHR = 4431, - CapabilityStorageBuffer16BitAccess = 4433, - CapabilityStorageUniformBufferBlock16 = 4433, - CapabilityStorageUniform16 = 4434, - CapabilityUniformAndStorageBuffer16BitAccess = 4434, - CapabilityStoragePushConstant16 = 4435, - CapabilityStorageInputOutput16 = 4436, - CapabilityDeviceGroup = 4437, - CapabilityMultiView = 4439, - CapabilityVariablePointersStorageBuffer = 4441, - CapabilityVariablePointers = 4442, - CapabilityAtomicStorageOps = 4445, - CapabilitySampleMaskPostDepthCoverage = 4447, - CapabilityImageGatherBiasLodAMD = 5009, - CapabilityFragmentMaskAMD = 5010, - CapabilityStencilExportEXT = 5013, - CapabilityImageReadWriteLodAMD = 5015, - CapabilitySampleMaskOverrideCoverageNV = 5249, - CapabilityGeometryShaderPassthroughNV = 5251, - CapabilityShaderViewportIndexLayerEXT = 5254, - CapabilityShaderViewportIndexLayerNV = 5254, - CapabilityShaderViewportMaskNV = 5255, - CapabilityShaderStereoViewNV = 5259, - CapabilityPerViewAttributesNV = 5260, - CapabilitySubgroupShuffleINTEL = 5568, - CapabilitySubgroupBufferBlockIOINTEL = 5569, - CapabilitySubgroupImageBlockIOINTEL = 5570, - CapabilityMax = 0x7fffffff, -}; - -enum Op { - OpNop = 0, - OpUndef = 1, - OpSourceContinued = 2, - OpSource = 3, - OpSourceExtension = 4, - OpName = 5, - OpMemberName = 6, - OpString = 7, - OpLine = 8, - OpExtension = 10, - OpExtInstImport = 11, - OpExtInst = 12, - OpMemoryModel = 14, - OpEntryPoint = 15, - OpExecutionMode = 16, - OpCapability = 17, - OpTypeVoid = 19, - OpTypeBool = 20, - OpTypeInt = 21, - OpTypeFloat = 22, - OpTypeVector = 23, - OpTypeMatrix = 24, - OpTypeImage = 25, - OpTypeSampler = 26, - OpTypeSampledImage = 27, - OpTypeArray = 28, - OpTypeRuntimeArray = 29, - OpTypeStruct = 30, - OpTypeOpaque = 31, - OpTypePointer = 32, - OpTypeFunction = 33, - OpTypeEvent = 34, - OpTypeDeviceEvent = 35, - OpTypeReserveId = 36, - OpTypeQueue = 37, - OpTypePipe = 38, - OpTypeForwardPointer = 39, - OpConstantTrue = 41, - OpConstantFalse = 42, - OpConstant = 43, - OpConstantComposite = 44, - OpConstantSampler = 45, - OpConstantNull = 46, - OpSpecConstantTrue = 48, - OpSpecConstantFalse = 49, - OpSpecConstant = 50, - OpSpecConstantComposite = 51, - OpSpecConstantOp = 52, - OpFunction = 54, - OpFunctionParameter = 55, - OpFunctionEnd = 56, - OpFunctionCall = 57, - OpVariable = 59, - OpImageTexelPointer = 60, - OpLoad = 61, - OpStore = 62, - OpCopyMemory = 63, - OpCopyMemorySized = 64, - OpAccessChain = 65, - OpInBoundsAccessChain = 66, - OpPtrAccessChain = 67, - OpArrayLength = 68, - OpGenericPtrMemSemantics = 69, - OpInBoundsPtrAccessChain = 70, - OpDecorate = 71, - OpMemberDecorate = 72, - OpDecorationGroup = 73, - OpGroupDecorate = 74, - OpGroupMemberDecorate = 75, - OpVectorExtractDynamic = 77, - OpVectorInsertDynamic = 78, - OpVectorShuffle = 79, - OpCompositeConstruct = 80, - OpCompositeExtract = 81, - OpCompositeInsert = 82, - OpCopyObject = 83, - OpTranspose = 84, - OpSampledImage = 86, - OpImageSampleImplicitLod = 87, - OpImageSampleExplicitLod = 88, - OpImageSampleDrefImplicitLod = 89, - OpImageSampleDrefExplicitLod = 90, - OpImageSampleProjImplicitLod = 91, - OpImageSampleProjExplicitLod = 92, - OpImageSampleProjDrefImplicitLod = 93, - OpImageSampleProjDrefExplicitLod = 94, - OpImageFetch = 95, - OpImageGather = 96, - OpImageDrefGather = 97, - OpImageRead = 98, - OpImageWrite = 99, - OpImage = 100, - OpImageQueryFormat = 101, - OpImageQueryOrder = 102, - OpImageQuerySizeLod = 103, - OpImageQuerySize = 104, - OpImageQueryLod = 105, - OpImageQueryLevels = 106, - OpImageQuerySamples = 107, - OpConvertFToU = 109, - OpConvertFToS = 110, - OpConvertSToF = 111, - OpConvertUToF = 112, - OpUConvert = 113, - OpSConvert = 114, - OpFConvert = 115, - OpQuantizeToF16 = 116, - OpConvertPtrToU = 117, - OpSatConvertSToU = 118, - OpSatConvertUToS = 119, - OpConvertUToPtr = 120, - OpPtrCastToGeneric = 121, - OpGenericCastToPtr = 122, - OpGenericCastToPtrExplicit = 123, - OpBitcast = 124, - OpSNegate = 126, - OpFNegate = 127, - OpIAdd = 128, - OpFAdd = 129, - OpISub = 130, - OpFSub = 131, - OpIMul = 132, - OpFMul = 133, - OpUDiv = 134, - OpSDiv = 135, - OpFDiv = 136, - OpUMod = 137, - OpSRem = 138, - OpSMod = 139, - OpFRem = 140, - OpFMod = 141, - OpVectorTimesScalar = 142, - OpMatrixTimesScalar = 143, - OpVectorTimesMatrix = 144, - OpMatrixTimesVector = 145, - OpMatrixTimesMatrix = 146, - OpOuterProduct = 147, - OpDot = 148, - OpIAddCarry = 149, - OpISubBorrow = 150, - OpUMulExtended = 151, - OpSMulExtended = 152, - OpAny = 154, - OpAll = 155, - OpIsNan = 156, - OpIsInf = 157, - OpIsFinite = 158, - OpIsNormal = 159, - OpSignBitSet = 160, - OpLessOrGreater = 161, - OpOrdered = 162, - OpUnordered = 163, - OpLogicalEqual = 164, - OpLogicalNotEqual = 165, - OpLogicalOr = 166, - OpLogicalAnd = 167, - OpLogicalNot = 168, - OpSelect = 169, - OpIEqual = 170, - OpINotEqual = 171, - OpUGreaterThan = 172, - OpSGreaterThan = 173, - OpUGreaterThanEqual = 174, - OpSGreaterThanEqual = 175, - OpULessThan = 176, - OpSLessThan = 177, - OpULessThanEqual = 178, - OpSLessThanEqual = 179, - OpFOrdEqual = 180, - OpFUnordEqual = 181, - OpFOrdNotEqual = 182, - OpFUnordNotEqual = 183, - OpFOrdLessThan = 184, - OpFUnordLessThan = 185, - OpFOrdGreaterThan = 186, - OpFUnordGreaterThan = 187, - OpFOrdLessThanEqual = 188, - OpFUnordLessThanEqual = 189, - OpFOrdGreaterThanEqual = 190, - OpFUnordGreaterThanEqual = 191, - OpShiftRightLogical = 194, - OpShiftRightArithmetic = 195, - OpShiftLeftLogical = 196, - OpBitwiseOr = 197, - OpBitwiseXor = 198, - OpBitwiseAnd = 199, - OpNot = 200, - OpBitFieldInsert = 201, - OpBitFieldSExtract = 202, - OpBitFieldUExtract = 203, - OpBitReverse = 204, - OpBitCount = 205, - OpDPdx = 207, - OpDPdy = 208, - OpFwidth = 209, - OpDPdxFine = 210, - OpDPdyFine = 211, - OpFwidthFine = 212, - OpDPdxCoarse = 213, - OpDPdyCoarse = 214, - OpFwidthCoarse = 215, - OpEmitVertex = 218, - OpEndPrimitive = 219, - OpEmitStreamVertex = 220, - OpEndStreamPrimitive = 221, - OpControlBarrier = 224, - OpMemoryBarrier = 225, - OpAtomicLoad = 227, - OpAtomicStore = 228, - OpAtomicExchange = 229, - OpAtomicCompareExchange = 230, - OpAtomicCompareExchangeWeak = 231, - OpAtomicIIncrement = 232, - OpAtomicIDecrement = 233, - OpAtomicIAdd = 234, - OpAtomicISub = 235, - OpAtomicSMin = 236, - OpAtomicUMin = 237, - OpAtomicSMax = 238, - OpAtomicUMax = 239, - OpAtomicAnd = 240, - OpAtomicOr = 241, - OpAtomicXor = 242, - OpPhi = 245, - OpLoopMerge = 246, - OpSelectionMerge = 247, - OpLabel = 248, - OpBranch = 249, - OpBranchConditional = 250, - OpSwitch = 251, - OpKill = 252, - OpReturn = 253, - OpReturnValue = 254, - OpUnreachable = 255, - OpLifetimeStart = 256, - OpLifetimeStop = 257, - OpGroupAsyncCopy = 259, - OpGroupWaitEvents = 260, - OpGroupAll = 261, - OpGroupAny = 262, - OpGroupBroadcast = 263, - OpGroupIAdd = 264, - OpGroupFAdd = 265, - OpGroupFMin = 266, - OpGroupUMin = 267, - OpGroupSMin = 268, - OpGroupFMax = 269, - OpGroupUMax = 270, - OpGroupSMax = 271, - OpReadPipe = 274, - OpWritePipe = 275, - OpReservedReadPipe = 276, - OpReservedWritePipe = 277, - OpReserveReadPipePackets = 278, - OpReserveWritePipePackets = 279, - OpCommitReadPipe = 280, - OpCommitWritePipe = 281, - OpIsValidReserveId = 282, - OpGetNumPipePackets = 283, - OpGetMaxPipePackets = 284, - OpGroupReserveReadPipePackets = 285, - OpGroupReserveWritePipePackets = 286, - OpGroupCommitReadPipe = 287, - OpGroupCommitWritePipe = 288, - OpEnqueueMarker = 291, - OpEnqueueKernel = 292, - OpGetKernelNDrangeSubGroupCount = 293, - OpGetKernelNDrangeMaxSubGroupSize = 294, - OpGetKernelWorkGroupSize = 295, - OpGetKernelPreferredWorkGroupSizeMultiple = 296, - OpRetainEvent = 297, - OpReleaseEvent = 298, - OpCreateUserEvent = 299, - OpIsValidEvent = 300, - OpSetUserEventStatus = 301, - OpCaptureEventProfilingInfo = 302, - OpGetDefaultQueue = 303, - OpBuildNDRange = 304, - OpImageSparseSampleImplicitLod = 305, - OpImageSparseSampleExplicitLod = 306, - OpImageSparseSampleDrefImplicitLod = 307, - OpImageSparseSampleDrefExplicitLod = 308, - OpImageSparseSampleProjImplicitLod = 309, - OpImageSparseSampleProjExplicitLod = 310, - OpImageSparseSampleProjDrefImplicitLod = 311, - OpImageSparseSampleProjDrefExplicitLod = 312, - OpImageSparseFetch = 313, - OpImageSparseGather = 314, - OpImageSparseDrefGather = 315, - OpImageSparseTexelsResident = 316, - OpNoLine = 317, - OpAtomicFlagTestAndSet = 318, - OpAtomicFlagClear = 319, - OpImageSparseRead = 320, - OpSizeOf = 321, - OpTypePipeStorage = 322, - OpConstantPipeStorage = 323, - OpCreatePipeFromPipeStorage = 324, - OpGetKernelLocalSizeForSubgroupCount = 325, - OpGetKernelMaxNumSubgroups = 326, - OpTypeNamedBarrier = 327, - OpNamedBarrierInitialize = 328, - OpMemoryNamedBarrier = 329, - OpModuleProcessed = 330, - OpExecutionModeId = 331, - OpDecorateId = 332, - OpSubgroupBallotKHR = 4421, - OpSubgroupFirstInvocationKHR = 4422, - OpSubgroupAllKHR = 4428, - OpSubgroupAnyKHR = 4429, - OpSubgroupAllEqualKHR = 4430, - OpSubgroupReadInvocationKHR = 4432, - OpGroupIAddNonUniformAMD = 5000, - OpGroupFAddNonUniformAMD = 5001, - OpGroupFMinNonUniformAMD = 5002, - OpGroupUMinNonUniformAMD = 5003, - OpGroupSMinNonUniformAMD = 5004, - OpGroupFMaxNonUniformAMD = 5005, - OpGroupUMaxNonUniformAMD = 5006, - OpGroupSMaxNonUniformAMD = 5007, - OpFragmentMaskFetchAMD = 5011, - OpFragmentFetchAMD = 5012, - OpSubgroupShuffleINTEL = 5571, - OpSubgroupShuffleDownINTEL = 5572, - OpSubgroupShuffleUpINTEL = 5573, - OpSubgroupShuffleXorINTEL = 5574, - OpSubgroupBlockReadINTEL = 5575, - OpSubgroupBlockWriteINTEL = 5576, - OpSubgroupImageBlockReadINTEL = 5577, - OpSubgroupImageBlockWriteINTEL = 5578, - OpDecorateStringGOOGLE = 5632, - OpMemberDecorateStringGOOGLE = 5633, - OpMax = 0x7fffffff, -}; - -// Overload operator| for mask bit combining - -inline ImageOperandsMask operator|(ImageOperandsMask a, ImageOperandsMask b) { return ImageOperandsMask(unsigned(a) | unsigned(b)); } -inline FPFastMathModeMask operator|(FPFastMathModeMask a, FPFastMathModeMask b) { return FPFastMathModeMask(unsigned(a) | unsigned(b)); } -inline SelectionControlMask operator|(SelectionControlMask a, SelectionControlMask b) { return SelectionControlMask(unsigned(a) | unsigned(b)); } -inline LoopControlMask operator|(LoopControlMask a, LoopControlMask b) { return LoopControlMask(unsigned(a) | unsigned(b)); } -inline FunctionControlMask operator|(FunctionControlMask a, FunctionControlMask b) { return FunctionControlMask(unsigned(a) | unsigned(b)); } -inline MemorySemanticsMask operator|(MemorySemanticsMask a, MemorySemanticsMask b) { return MemorySemanticsMask(unsigned(a) | unsigned(b)); } -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)); } - -} // end namespace spv - -#endif // #ifndef spirv_HPP - diff --git a/Extern/3rdParty/shaderc/shaderc/include/spirv/1.2/spirv.hpp11 b/Extern/3rdParty/shaderc/shaderc/include/spirv/1.2/spirv.hpp11 deleted file mode 100644 index 7a875fd..0000000 --- a/Extern/3rdParty/shaderc/shaderc/include/spirv/1.2/spirv.hpp11 +++ /dev/null @@ -1,1030 +0,0 @@ -// Copyright (c) 2014-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. - -// This header is automatically generated by the same tool that creates -// the Binary Section of the SPIR-V specification. - -// Enumeration tokens for SPIR-V, in various styles: -// C, C++, C++11, JSON, Lua, Python -// -// - C will have tokens with a "Spv" prefix, e.g.: SpvSourceLanguageGLSL -// - C++ will have tokens in the "spv" name space, e.g.: spv::SourceLanguageGLSL -// - C++11 will use enum classes in the spv namespace, e.g.: spv::SourceLanguage::GLSL -// - Lua will use tables, e.g.: spv.SourceLanguage.GLSL -// - Python will use dictionaries, e.g.: spv['SourceLanguage']['GLSL'] -// -// Some tokens act like mask values, which can be OR'd together, -// while others are mutually exclusive. The mask-like ones have -// "Mask" in their name, and a parallel enum that has the shift -// amount (1 << x) for each corresponding enumerant. - -#ifndef spirv_HPP -#define spirv_HPP - -namespace spv { - -typedef unsigned int Id; - -#define SPV_VERSION 0x10200 -#define SPV_REVISION 2 - -static const unsigned int MagicNumber = 0x07230203; -static const unsigned int Version = 0x00010200; -static const unsigned int Revision = 2; -static const unsigned int OpCodeMask = 0xffff; -static const unsigned int WordCountShift = 16; - -enum class SourceLanguage : unsigned { - Unknown = 0, - ESSL = 1, - GLSL = 2, - OpenCL_C = 3, - OpenCL_CPP = 4, - HLSL = 5, - Max = 0x7fffffff, -}; - -enum class ExecutionModel : unsigned { - Vertex = 0, - TessellationControl = 1, - TessellationEvaluation = 2, - Geometry = 3, - Fragment = 4, - GLCompute = 5, - Kernel = 6, - Max = 0x7fffffff, -}; - -enum class AddressingModel : unsigned { - Logical = 0, - Physical32 = 1, - Physical64 = 2, - Max = 0x7fffffff, -}; - -enum class MemoryModel : unsigned { - Simple = 0, - GLSL450 = 1, - OpenCL = 2, - Max = 0x7fffffff, -}; - -enum class ExecutionMode : unsigned { - Invocations = 0, - SpacingEqual = 1, - SpacingFractionalEven = 2, - SpacingFractionalOdd = 3, - VertexOrderCw = 4, - VertexOrderCcw = 5, - PixelCenterInteger = 6, - OriginUpperLeft = 7, - OriginLowerLeft = 8, - EarlyFragmentTests = 9, - PointMode = 10, - Xfb = 11, - DepthReplacing = 12, - DepthGreater = 14, - DepthLess = 15, - DepthUnchanged = 16, - LocalSize = 17, - LocalSizeHint = 18, - InputPoints = 19, - InputLines = 20, - InputLinesAdjacency = 21, - Triangles = 22, - InputTrianglesAdjacency = 23, - Quads = 24, - Isolines = 25, - OutputVertices = 26, - OutputPoints = 27, - OutputLineStrip = 28, - OutputTriangleStrip = 29, - VecTypeHint = 30, - ContractionOff = 31, - Initializer = 33, - Finalizer = 34, - SubgroupSize = 35, - SubgroupsPerWorkgroup = 36, - SubgroupsPerWorkgroupId = 37, - LocalSizeId = 38, - LocalSizeHintId = 39, - PostDepthCoverage = 4446, - StencilRefReplacingEXT = 5027, - Max = 0x7fffffff, -}; - -enum class StorageClass : unsigned { - UniformConstant = 0, - Input = 1, - Uniform = 2, - Output = 3, - Workgroup = 4, - CrossWorkgroup = 5, - Private = 6, - Function = 7, - Generic = 8, - PushConstant = 9, - AtomicCounter = 10, - Image = 11, - StorageBuffer = 12, - Max = 0x7fffffff, -}; - -enum class Dim : unsigned { - Dim1D = 0, - Dim2D = 1, - Dim3D = 2, - Cube = 3, - Rect = 4, - Buffer = 5, - SubpassData = 6, - Max = 0x7fffffff, -}; - -enum class SamplerAddressingMode : unsigned { - None = 0, - ClampToEdge = 1, - Clamp = 2, - Repeat = 3, - RepeatMirrored = 4, - Max = 0x7fffffff, -}; - -enum class SamplerFilterMode : unsigned { - Nearest = 0, - Linear = 1, - Max = 0x7fffffff, -}; - -enum class ImageFormat : unsigned { - Unknown = 0, - Rgba32f = 1, - Rgba16f = 2, - R32f = 3, - Rgba8 = 4, - Rgba8Snorm = 5, - Rg32f = 6, - Rg16f = 7, - R11fG11fB10f = 8, - R16f = 9, - Rgba16 = 10, - Rgb10A2 = 11, - Rg16 = 12, - Rg8 = 13, - R16 = 14, - R8 = 15, - Rgba16Snorm = 16, - Rg16Snorm = 17, - Rg8Snorm = 18, - R16Snorm = 19, - R8Snorm = 20, - Rgba32i = 21, - Rgba16i = 22, - Rgba8i = 23, - R32i = 24, - Rg32i = 25, - Rg16i = 26, - Rg8i = 27, - R16i = 28, - R8i = 29, - Rgba32ui = 30, - Rgba16ui = 31, - Rgba8ui = 32, - R32ui = 33, - Rgb10a2ui = 34, - Rg32ui = 35, - Rg16ui = 36, - Rg8ui = 37, - R16ui = 38, - R8ui = 39, - Max = 0x7fffffff, -}; - -enum class ImageChannelOrder : unsigned { - R = 0, - A = 1, - RG = 2, - RA = 3, - RGB = 4, - RGBA = 5, - BGRA = 6, - ARGB = 7, - Intensity = 8, - Luminance = 9, - Rx = 10, - RGx = 11, - RGBx = 12, - Depth = 13, - DepthStencil = 14, - sRGB = 15, - sRGBx = 16, - sRGBA = 17, - sBGRA = 18, - ABGR = 19, - Max = 0x7fffffff, -}; - -enum class ImageChannelDataType : unsigned { - SnormInt8 = 0, - SnormInt16 = 1, - UnormInt8 = 2, - UnormInt16 = 3, - UnormShort565 = 4, - UnormShort555 = 5, - UnormInt101010 = 6, - SignedInt8 = 7, - SignedInt16 = 8, - SignedInt32 = 9, - UnsignedInt8 = 10, - UnsignedInt16 = 11, - UnsignedInt32 = 12, - HalfFloat = 13, - Float = 14, - UnormInt24 = 15, - UnormInt101010_2 = 16, - Max = 0x7fffffff, -}; - -enum class ImageOperandsShift : unsigned { - Bias = 0, - Lod = 1, - Grad = 2, - ConstOffset = 3, - Offset = 4, - ConstOffsets = 5, - Sample = 6, - MinLod = 7, - Max = 0x7fffffff, -}; - -enum class ImageOperandsMask : unsigned { - MaskNone = 0, - Bias = 0x00000001, - Lod = 0x00000002, - Grad = 0x00000004, - ConstOffset = 0x00000008, - Offset = 0x00000010, - ConstOffsets = 0x00000020, - Sample = 0x00000040, - MinLod = 0x00000080, -}; - -enum class FPFastMathModeShift : unsigned { - NotNaN = 0, - NotInf = 1, - NSZ = 2, - AllowRecip = 3, - Fast = 4, - Max = 0x7fffffff, -}; - -enum class FPFastMathModeMask : unsigned { - MaskNone = 0, - NotNaN = 0x00000001, - NotInf = 0x00000002, - NSZ = 0x00000004, - AllowRecip = 0x00000008, - Fast = 0x00000010, -}; - -enum class FPRoundingMode : unsigned { - RTE = 0, - RTZ = 1, - RTP = 2, - RTN = 3, - Max = 0x7fffffff, -}; - -enum class LinkageType : unsigned { - Export = 0, - Import = 1, - Max = 0x7fffffff, -}; - -enum class AccessQualifier : unsigned { - ReadOnly = 0, - WriteOnly = 1, - ReadWrite = 2, - Max = 0x7fffffff, -}; - -enum class FunctionParameterAttribute : unsigned { - Zext = 0, - Sext = 1, - ByVal = 2, - Sret = 3, - NoAlias = 4, - NoCapture = 5, - NoWrite = 6, - NoReadWrite = 7, - Max = 0x7fffffff, -}; - -enum class Decoration : unsigned { - RelaxedPrecision = 0, - SpecId = 1, - Block = 2, - BufferBlock = 3, - RowMajor = 4, - ColMajor = 5, - ArrayStride = 6, - MatrixStride = 7, - GLSLShared = 8, - GLSLPacked = 9, - CPacked = 10, - BuiltIn = 11, - NoPerspective = 13, - Flat = 14, - Patch = 15, - Centroid = 16, - Sample = 17, - Invariant = 18, - Restrict = 19, - Aliased = 20, - Volatile = 21, - Constant = 22, - Coherent = 23, - NonWritable = 24, - NonReadable = 25, - Uniform = 26, - SaturatedConversion = 28, - Stream = 29, - Location = 30, - Component = 31, - Index = 32, - Binding = 33, - DescriptorSet = 34, - Offset = 35, - XfbBuffer = 36, - XfbStride = 37, - FuncParamAttr = 38, - FPRoundingMode = 39, - FPFastMathMode = 40, - LinkageAttributes = 41, - NoContraction = 42, - InputAttachmentIndex = 43, - Alignment = 44, - MaxByteOffset = 45, - AlignmentId = 46, - MaxByteOffsetId = 47, - ExplicitInterpAMD = 4999, - OverrideCoverageNV = 5248, - PassthroughNV = 5250, - ViewportRelativeNV = 5252, - SecondaryViewportRelativeNV = 5256, - HlslCounterBufferGOOGLE = 5634, - HlslSemanticGOOGLE = 5635, - Max = 0x7fffffff, -}; - -enum class BuiltIn : unsigned { - Position = 0, - PointSize = 1, - ClipDistance = 3, - CullDistance = 4, - VertexId = 5, - InstanceId = 6, - PrimitiveId = 7, - InvocationId = 8, - Layer = 9, - ViewportIndex = 10, - TessLevelOuter = 11, - TessLevelInner = 12, - TessCoord = 13, - PatchVertices = 14, - FragCoord = 15, - PointCoord = 16, - FrontFacing = 17, - SampleId = 18, - SamplePosition = 19, - SampleMask = 20, - FragDepth = 22, - HelperInvocation = 23, - NumWorkgroups = 24, - WorkgroupSize = 25, - WorkgroupId = 26, - LocalInvocationId = 27, - GlobalInvocationId = 28, - LocalInvocationIndex = 29, - WorkDim = 30, - GlobalSize = 31, - EnqueuedWorkgroupSize = 32, - GlobalOffset = 33, - GlobalLinearId = 34, - SubgroupSize = 36, - SubgroupMaxSize = 37, - NumSubgroups = 38, - NumEnqueuedSubgroups = 39, - SubgroupId = 40, - SubgroupLocalInvocationId = 41, - VertexIndex = 42, - InstanceIndex = 43, - SubgroupEqMaskKHR = 4416, - SubgroupGeMaskKHR = 4417, - SubgroupGtMaskKHR = 4418, - SubgroupLeMaskKHR = 4419, - SubgroupLtMaskKHR = 4420, - BaseVertex = 4424, - BaseInstance = 4425, - DrawIndex = 4426, - DeviceIndex = 4438, - ViewIndex = 4440, - BaryCoordNoPerspAMD = 4992, - BaryCoordNoPerspCentroidAMD = 4993, - BaryCoordNoPerspSampleAMD = 4994, - BaryCoordSmoothAMD = 4995, - BaryCoordSmoothCentroidAMD = 4996, - BaryCoordSmoothSampleAMD = 4997, - BaryCoordPullModelAMD = 4998, - FragStencilRefEXT = 5014, - ViewportMaskNV = 5253, - SecondaryPositionNV = 5257, - SecondaryViewportMaskNV = 5258, - PositionPerViewNV = 5261, - ViewportMaskPerViewNV = 5262, - Max = 0x7fffffff, -}; - -enum class SelectionControlShift : unsigned { - Flatten = 0, - DontFlatten = 1, - Max = 0x7fffffff, -}; - -enum class SelectionControlMask : unsigned { - MaskNone = 0, - Flatten = 0x00000001, - DontFlatten = 0x00000002, -}; - -enum class LoopControlShift : unsigned { - Unroll = 0, - DontUnroll = 1, - DependencyInfinite = 2, - DependencyLength = 3, - Max = 0x7fffffff, -}; - -enum class LoopControlMask : unsigned { - MaskNone = 0, - Unroll = 0x00000001, - DontUnroll = 0x00000002, - DependencyInfinite = 0x00000004, - DependencyLength = 0x00000008, -}; - -enum class FunctionControlShift : unsigned { - Inline = 0, - DontInline = 1, - Pure = 2, - Const = 3, - Max = 0x7fffffff, -}; - -enum class FunctionControlMask : unsigned { - MaskNone = 0, - Inline = 0x00000001, - DontInline = 0x00000002, - Pure = 0x00000004, - Const = 0x00000008, -}; - -enum class MemorySemanticsShift : unsigned { - Acquire = 1, - Release = 2, - AcquireRelease = 3, - SequentiallyConsistent = 4, - UniformMemory = 6, - SubgroupMemory = 7, - WorkgroupMemory = 8, - CrossWorkgroupMemory = 9, - AtomicCounterMemory = 10, - ImageMemory = 11, - Max = 0x7fffffff, -}; - -enum class MemorySemanticsMask : unsigned { - MaskNone = 0, - Acquire = 0x00000002, - Release = 0x00000004, - AcquireRelease = 0x00000008, - SequentiallyConsistent = 0x00000010, - UniformMemory = 0x00000040, - SubgroupMemory = 0x00000080, - WorkgroupMemory = 0x00000100, - CrossWorkgroupMemory = 0x00000200, - AtomicCounterMemory = 0x00000400, - ImageMemory = 0x00000800, -}; - -enum class MemoryAccessShift : unsigned { - Volatile = 0, - Aligned = 1, - Nontemporal = 2, - Max = 0x7fffffff, -}; - -enum class MemoryAccessMask : unsigned { - MaskNone = 0, - Volatile = 0x00000001, - Aligned = 0x00000002, - Nontemporal = 0x00000004, -}; - -enum class Scope : unsigned { - CrossDevice = 0, - Device = 1, - Workgroup = 2, - Subgroup = 3, - Invocation = 4, - Max = 0x7fffffff, -}; - -enum class GroupOperation : unsigned { - Reduce = 0, - InclusiveScan = 1, - ExclusiveScan = 2, - Max = 0x7fffffff, -}; - -enum class KernelEnqueueFlags : unsigned { - NoWait = 0, - WaitKernel = 1, - WaitWorkGroup = 2, - Max = 0x7fffffff, -}; - -enum class KernelProfilingInfoShift : unsigned { - CmdExecTime = 0, - Max = 0x7fffffff, -}; - -enum class KernelProfilingInfoMask : unsigned { - MaskNone = 0, - CmdExecTime = 0x00000001, -}; - -enum class Capability : unsigned { - Matrix = 0, - Shader = 1, - Geometry = 2, - Tessellation = 3, - Addresses = 4, - Linkage = 5, - Kernel = 6, - Vector16 = 7, - Float16Buffer = 8, - Float16 = 9, - Float64 = 10, - Int64 = 11, - Int64Atomics = 12, - ImageBasic = 13, - ImageReadWrite = 14, - ImageMipmap = 15, - Pipes = 17, - Groups = 18, - DeviceEnqueue = 19, - LiteralSampler = 20, - AtomicStorage = 21, - Int16 = 22, - TessellationPointSize = 23, - GeometryPointSize = 24, - ImageGatherExtended = 25, - StorageImageMultisample = 27, - UniformBufferArrayDynamicIndexing = 28, - SampledImageArrayDynamicIndexing = 29, - StorageBufferArrayDynamicIndexing = 30, - StorageImageArrayDynamicIndexing = 31, - ClipDistance = 32, - CullDistance = 33, - ImageCubeArray = 34, - SampleRateShading = 35, - ImageRect = 36, - SampledRect = 37, - GenericPointer = 38, - Int8 = 39, - InputAttachment = 40, - SparseResidency = 41, - MinLod = 42, - Sampled1D = 43, - Image1D = 44, - SampledCubeArray = 45, - SampledBuffer = 46, - ImageBuffer = 47, - ImageMSArray = 48, - StorageImageExtendedFormats = 49, - ImageQuery = 50, - DerivativeControl = 51, - InterpolationFunction = 52, - TransformFeedback = 53, - GeometryStreams = 54, - StorageImageReadWithoutFormat = 55, - StorageImageWriteWithoutFormat = 56, - MultiViewport = 57, - SubgroupDispatch = 58, - NamedBarrier = 59, - PipeStorage = 60, - SubgroupBallotKHR = 4423, - DrawParameters = 4427, - SubgroupVoteKHR = 4431, - StorageBuffer16BitAccess = 4433, - StorageUniformBufferBlock16 = 4433, - StorageUniform16 = 4434, - UniformAndStorageBuffer16BitAccess = 4434, - StoragePushConstant16 = 4435, - StorageInputOutput16 = 4436, - DeviceGroup = 4437, - MultiView = 4439, - VariablePointersStorageBuffer = 4441, - VariablePointers = 4442, - AtomicStorageOps = 4445, - SampleMaskPostDepthCoverage = 4447, - ImageGatherBiasLodAMD = 5009, - FragmentMaskAMD = 5010, - StencilExportEXT = 5013, - ImageReadWriteLodAMD = 5015, - SampleMaskOverrideCoverageNV = 5249, - GeometryShaderPassthroughNV = 5251, - ShaderViewportIndexLayerEXT = 5254, - ShaderViewportIndexLayerNV = 5254, - ShaderViewportMaskNV = 5255, - ShaderStereoViewNV = 5259, - PerViewAttributesNV = 5260, - SubgroupShuffleINTEL = 5568, - SubgroupBufferBlockIOINTEL = 5569, - SubgroupImageBlockIOINTEL = 5570, - Max = 0x7fffffff, -}; - -enum class Op : unsigned { - OpNop = 0, - OpUndef = 1, - OpSourceContinued = 2, - OpSource = 3, - OpSourceExtension = 4, - OpName = 5, - OpMemberName = 6, - OpString = 7, - OpLine = 8, - OpExtension = 10, - OpExtInstImport = 11, - OpExtInst = 12, - OpMemoryModel = 14, - OpEntryPoint = 15, - OpExecutionMode = 16, - OpCapability = 17, - OpTypeVoid = 19, - OpTypeBool = 20, - OpTypeInt = 21, - OpTypeFloat = 22, - OpTypeVector = 23, - OpTypeMatrix = 24, - OpTypeImage = 25, - OpTypeSampler = 26, - OpTypeSampledImage = 27, - OpTypeArray = 28, - OpTypeRuntimeArray = 29, - OpTypeStruct = 30, - OpTypeOpaque = 31, - OpTypePointer = 32, - OpTypeFunction = 33, - OpTypeEvent = 34, - OpTypeDeviceEvent = 35, - OpTypeReserveId = 36, - OpTypeQueue = 37, - OpTypePipe = 38, - OpTypeForwardPointer = 39, - OpConstantTrue = 41, - OpConstantFalse = 42, - OpConstant = 43, - OpConstantComposite = 44, - OpConstantSampler = 45, - OpConstantNull = 46, - OpSpecConstantTrue = 48, - OpSpecConstantFalse = 49, - OpSpecConstant = 50, - OpSpecConstantComposite = 51, - OpSpecConstantOp = 52, - OpFunction = 54, - OpFunctionParameter = 55, - OpFunctionEnd = 56, - OpFunctionCall = 57, - OpVariable = 59, - OpImageTexelPointer = 60, - OpLoad = 61, - OpStore = 62, - OpCopyMemory = 63, - OpCopyMemorySized = 64, - OpAccessChain = 65, - OpInBoundsAccessChain = 66, - OpPtrAccessChain = 67, - OpArrayLength = 68, - OpGenericPtrMemSemantics = 69, - OpInBoundsPtrAccessChain = 70, - OpDecorate = 71, - OpMemberDecorate = 72, - OpDecorationGroup = 73, - OpGroupDecorate = 74, - OpGroupMemberDecorate = 75, - OpVectorExtractDynamic = 77, - OpVectorInsertDynamic = 78, - OpVectorShuffle = 79, - OpCompositeConstruct = 80, - OpCompositeExtract = 81, - OpCompositeInsert = 82, - OpCopyObject = 83, - OpTranspose = 84, - OpSampledImage = 86, - OpImageSampleImplicitLod = 87, - OpImageSampleExplicitLod = 88, - OpImageSampleDrefImplicitLod = 89, - OpImageSampleDrefExplicitLod = 90, - OpImageSampleProjImplicitLod = 91, - OpImageSampleProjExplicitLod = 92, - OpImageSampleProjDrefImplicitLod = 93, - OpImageSampleProjDrefExplicitLod = 94, - OpImageFetch = 95, - OpImageGather = 96, - OpImageDrefGather = 97, - OpImageRead = 98, - OpImageWrite = 99, - OpImage = 100, - OpImageQueryFormat = 101, - OpImageQueryOrder = 102, - OpImageQuerySizeLod = 103, - OpImageQuerySize = 104, - OpImageQueryLod = 105, - OpImageQueryLevels = 106, - OpImageQuerySamples = 107, - OpConvertFToU = 109, - OpConvertFToS = 110, - OpConvertSToF = 111, - OpConvertUToF = 112, - OpUConvert = 113, - OpSConvert = 114, - OpFConvert = 115, - OpQuantizeToF16 = 116, - OpConvertPtrToU = 117, - OpSatConvertSToU = 118, - OpSatConvertUToS = 119, - OpConvertUToPtr = 120, - OpPtrCastToGeneric = 121, - OpGenericCastToPtr = 122, - OpGenericCastToPtrExplicit = 123, - OpBitcast = 124, - OpSNegate = 126, - OpFNegate = 127, - OpIAdd = 128, - OpFAdd = 129, - OpISub = 130, - OpFSub = 131, - OpIMul = 132, - OpFMul = 133, - OpUDiv = 134, - OpSDiv = 135, - OpFDiv = 136, - OpUMod = 137, - OpSRem = 138, - OpSMod = 139, - OpFRem = 140, - OpFMod = 141, - OpVectorTimesScalar = 142, - OpMatrixTimesScalar = 143, - OpVectorTimesMatrix = 144, - OpMatrixTimesVector = 145, - OpMatrixTimesMatrix = 146, - OpOuterProduct = 147, - OpDot = 148, - OpIAddCarry = 149, - OpISubBorrow = 150, - OpUMulExtended = 151, - OpSMulExtended = 152, - OpAny = 154, - OpAll = 155, - OpIsNan = 156, - OpIsInf = 157, - OpIsFinite = 158, - OpIsNormal = 159, - OpSignBitSet = 160, - OpLessOrGreater = 161, - OpOrdered = 162, - OpUnordered = 163, - OpLogicalEqual = 164, - OpLogicalNotEqual = 165, - OpLogicalOr = 166, - OpLogicalAnd = 167, - OpLogicalNot = 168, - OpSelect = 169, - OpIEqual = 170, - OpINotEqual = 171, - OpUGreaterThan = 172, - OpSGreaterThan = 173, - OpUGreaterThanEqual = 174, - OpSGreaterThanEqual = 175, - OpULessThan = 176, - OpSLessThan = 177, - OpULessThanEqual = 178, - OpSLessThanEqual = 179, - OpFOrdEqual = 180, - OpFUnordEqual = 181, - OpFOrdNotEqual = 182, - OpFUnordNotEqual = 183, - OpFOrdLessThan = 184, - OpFUnordLessThan = 185, - OpFOrdGreaterThan = 186, - OpFUnordGreaterThan = 187, - OpFOrdLessThanEqual = 188, - OpFUnordLessThanEqual = 189, - OpFOrdGreaterThanEqual = 190, - OpFUnordGreaterThanEqual = 191, - OpShiftRightLogical = 194, - OpShiftRightArithmetic = 195, - OpShiftLeftLogical = 196, - OpBitwiseOr = 197, - OpBitwiseXor = 198, - OpBitwiseAnd = 199, - OpNot = 200, - OpBitFieldInsert = 201, - OpBitFieldSExtract = 202, - OpBitFieldUExtract = 203, - OpBitReverse = 204, - OpBitCount = 205, - OpDPdx = 207, - OpDPdy = 208, - OpFwidth = 209, - OpDPdxFine = 210, - OpDPdyFine = 211, - OpFwidthFine = 212, - OpDPdxCoarse = 213, - OpDPdyCoarse = 214, - OpFwidthCoarse = 215, - OpEmitVertex = 218, - OpEndPrimitive = 219, - OpEmitStreamVertex = 220, - OpEndStreamPrimitive = 221, - OpControlBarrier = 224, - OpMemoryBarrier = 225, - OpAtomicLoad = 227, - OpAtomicStore = 228, - OpAtomicExchange = 229, - OpAtomicCompareExchange = 230, - OpAtomicCompareExchangeWeak = 231, - OpAtomicIIncrement = 232, - OpAtomicIDecrement = 233, - OpAtomicIAdd = 234, - OpAtomicISub = 235, - OpAtomicSMin = 236, - OpAtomicUMin = 237, - OpAtomicSMax = 238, - OpAtomicUMax = 239, - OpAtomicAnd = 240, - OpAtomicOr = 241, - OpAtomicXor = 242, - OpPhi = 245, - OpLoopMerge = 246, - OpSelectionMerge = 247, - OpLabel = 248, - OpBranch = 249, - OpBranchConditional = 250, - OpSwitch = 251, - OpKill = 252, - OpReturn = 253, - OpReturnValue = 254, - OpUnreachable = 255, - OpLifetimeStart = 256, - OpLifetimeStop = 257, - OpGroupAsyncCopy = 259, - OpGroupWaitEvents = 260, - OpGroupAll = 261, - OpGroupAny = 262, - OpGroupBroadcast = 263, - OpGroupIAdd = 264, - OpGroupFAdd = 265, - OpGroupFMin = 266, - OpGroupUMin = 267, - OpGroupSMin = 268, - OpGroupFMax = 269, - OpGroupUMax = 270, - OpGroupSMax = 271, - OpReadPipe = 274, - OpWritePipe = 275, - OpReservedReadPipe = 276, - OpReservedWritePipe = 277, - OpReserveReadPipePackets = 278, - OpReserveWritePipePackets = 279, - OpCommitReadPipe = 280, - OpCommitWritePipe = 281, - OpIsValidReserveId = 282, - OpGetNumPipePackets = 283, - OpGetMaxPipePackets = 284, - OpGroupReserveReadPipePackets = 285, - OpGroupReserveWritePipePackets = 286, - OpGroupCommitReadPipe = 287, - OpGroupCommitWritePipe = 288, - OpEnqueueMarker = 291, - OpEnqueueKernel = 292, - OpGetKernelNDrangeSubGroupCount = 293, - OpGetKernelNDrangeMaxSubGroupSize = 294, - OpGetKernelWorkGroupSize = 295, - OpGetKernelPreferredWorkGroupSizeMultiple = 296, - OpRetainEvent = 297, - OpReleaseEvent = 298, - OpCreateUserEvent = 299, - OpIsValidEvent = 300, - OpSetUserEventStatus = 301, - OpCaptureEventProfilingInfo = 302, - OpGetDefaultQueue = 303, - OpBuildNDRange = 304, - OpImageSparseSampleImplicitLod = 305, - OpImageSparseSampleExplicitLod = 306, - OpImageSparseSampleDrefImplicitLod = 307, - OpImageSparseSampleDrefExplicitLod = 308, - OpImageSparseSampleProjImplicitLod = 309, - OpImageSparseSampleProjExplicitLod = 310, - OpImageSparseSampleProjDrefImplicitLod = 311, - OpImageSparseSampleProjDrefExplicitLod = 312, - OpImageSparseFetch = 313, - OpImageSparseGather = 314, - OpImageSparseDrefGather = 315, - OpImageSparseTexelsResident = 316, - OpNoLine = 317, - OpAtomicFlagTestAndSet = 318, - OpAtomicFlagClear = 319, - OpImageSparseRead = 320, - OpSizeOf = 321, - OpTypePipeStorage = 322, - OpConstantPipeStorage = 323, - OpCreatePipeFromPipeStorage = 324, - OpGetKernelLocalSizeForSubgroupCount = 325, - OpGetKernelMaxNumSubgroups = 326, - OpTypeNamedBarrier = 327, - OpNamedBarrierInitialize = 328, - OpMemoryNamedBarrier = 329, - OpModuleProcessed = 330, - OpExecutionModeId = 331, - OpDecorateId = 332, - OpSubgroupBallotKHR = 4421, - OpSubgroupFirstInvocationKHR = 4422, - OpSubgroupAllKHR = 4428, - OpSubgroupAnyKHR = 4429, - OpSubgroupAllEqualKHR = 4430, - OpSubgroupReadInvocationKHR = 4432, - OpGroupIAddNonUniformAMD = 5000, - OpGroupFAddNonUniformAMD = 5001, - OpGroupFMinNonUniformAMD = 5002, - OpGroupUMinNonUniformAMD = 5003, - OpGroupSMinNonUniformAMD = 5004, - OpGroupFMaxNonUniformAMD = 5005, - OpGroupUMaxNonUniformAMD = 5006, - OpGroupSMaxNonUniformAMD = 5007, - OpFragmentMaskFetchAMD = 5011, - OpFragmentFetchAMD = 5012, - OpSubgroupShuffleINTEL = 5571, - OpSubgroupShuffleDownINTEL = 5572, - OpSubgroupShuffleUpINTEL = 5573, - OpSubgroupShuffleXorINTEL = 5574, - OpSubgroupBlockReadINTEL = 5575, - OpSubgroupBlockWriteINTEL = 5576, - OpSubgroupImageBlockReadINTEL = 5577, - OpSubgroupImageBlockWriteINTEL = 5578, - OpDecorateStringGOOGLE = 5632, - OpMemberDecorateStringGOOGLE = 5633, - Max = 0x7fffffff, -}; - -// Overload operator| for mask bit combining - -inline ImageOperandsMask operator|(ImageOperandsMask a, ImageOperandsMask b) { return ImageOperandsMask(unsigned(a) | unsigned(b)); } -inline FPFastMathModeMask operator|(FPFastMathModeMask a, FPFastMathModeMask b) { return FPFastMathModeMask(unsigned(a) | unsigned(b)); } -inline SelectionControlMask operator|(SelectionControlMask a, SelectionControlMask b) { return SelectionControlMask(unsigned(a) | unsigned(b)); } -inline LoopControlMask operator|(LoopControlMask a, LoopControlMask b) { return LoopControlMask(unsigned(a) | unsigned(b)); } -inline FunctionControlMask operator|(FunctionControlMask a, FunctionControlMask b) { return FunctionControlMask(unsigned(a) | unsigned(b)); } -inline MemorySemanticsMask operator|(MemorySemanticsMask a, MemorySemanticsMask b) { return MemorySemanticsMask(unsigned(a) | unsigned(b)); } -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)); } - -} // end namespace spv - -#endif // #ifndef spirv_HPP - diff --git a/Extern/3rdParty/shaderc/shaderc/include/spirv/1.2/spirv.json b/Extern/3rdParty/shaderc/shaderc/include/spirv/1.2/spirv.json deleted file mode 100644 index 9c0ff0a..0000000 --- a/Extern/3rdParty/shaderc/shaderc/include/spirv/1.2/spirv.json +++ /dev/null @@ -1,1046 +0,0 @@ -{ - "spv": - { - "meta": - { - "Comment": - [ - [ - "Copyright (c) 2014-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." - ], - [ - "This header is automatically generated by the same tool that creates", - "the Binary Section of the SPIR-V specification." - ], - [ - "Enumeration tokens for SPIR-V, in various styles:", - " C, C++, C++11, JSON, Lua, Python", - "", - "- C will have tokens with a \"Spv\" prefix, e.g.: SpvSourceLanguageGLSL", - "- C++ will have tokens in the \"spv\" name space, e.g.: spv::SourceLanguageGLSL", - "- C++11 will use enum classes in the spv namespace, e.g.: spv::SourceLanguage::GLSL", - "- Lua will use tables, e.g.: spv.SourceLanguage.GLSL", - "- Python will use dictionaries, e.g.: spv['SourceLanguage']['GLSL']", - "", - "Some tokens act like mask values, which can be OR'd together,", - "while others are mutually exclusive. The mask-like ones have", - "\"Mask\" in their name, and a parallel enum that has the shift", - "amount (1 << x) for each corresponding enumerant." - ] - ], - "MagicNumber": 119734787, - "Version": 66048, - "Revision": 2, - "OpCodeMask": 65535, - "WordCountShift": 16 - }, - "enum": - [ - { - "Name": "SourceLanguage", - "Type": "Value", - "Values": - { - "Unknown": 0, - "ESSL": 1, - "GLSL": 2, - "OpenCL_C": 3, - "OpenCL_CPP": 4, - "HLSL": 5 - } - }, - { - "Name": "ExecutionModel", - "Type": "Value", - "Values": - { - "Vertex": 0, - "TessellationControl": 1, - "TessellationEvaluation": 2, - "Geometry": 3, - "Fragment": 4, - "GLCompute": 5, - "Kernel": 6 - } - }, - { - "Name": "AddressingModel", - "Type": "Value", - "Values": - { - "Logical": 0, - "Physical32": 1, - "Physical64": 2 - } - }, - { - "Name": "MemoryModel", - "Type": "Value", - "Values": - { - "Simple": 0, - "GLSL450": 1, - "OpenCL": 2 - } - }, - { - "Name": "ExecutionMode", - "Type": "Value", - "Values": - { - "Invocations": 0, - "SpacingEqual": 1, - "SpacingFractionalEven": 2, - "SpacingFractionalOdd": 3, - "VertexOrderCw": 4, - "VertexOrderCcw": 5, - "PixelCenterInteger": 6, - "OriginUpperLeft": 7, - "OriginLowerLeft": 8, - "EarlyFragmentTests": 9, - "PointMode": 10, - "Xfb": 11, - "DepthReplacing": 12, - "DepthGreater": 14, - "DepthLess": 15, - "DepthUnchanged": 16, - "LocalSize": 17, - "LocalSizeHint": 18, - "InputPoints": 19, - "InputLines": 20, - "InputLinesAdjacency": 21, - "Triangles": 22, - "InputTrianglesAdjacency": 23, - "Quads": 24, - "Isolines": 25, - "OutputVertices": 26, - "OutputPoints": 27, - "OutputLineStrip": 28, - "OutputTriangleStrip": 29, - "VecTypeHint": 30, - "ContractionOff": 31, - "Initializer": 33, - "Finalizer": 34, - "SubgroupSize": 35, - "SubgroupsPerWorkgroup": 36, - "SubgroupsPerWorkgroupId": 37, - "LocalSizeId": 38, - "LocalSizeHintId": 39, - "PostDepthCoverage": 4446, - "StencilRefReplacingEXT": 5027 - } - }, - { - "Name": "StorageClass", - "Type": "Value", - "Values": - { - "UniformConstant": 0, - "Input": 1, - "Uniform": 2, - "Output": 3, - "Workgroup": 4, - "CrossWorkgroup": 5, - "Private": 6, - "Function": 7, - "Generic": 8, - "PushConstant": 9, - "AtomicCounter": 10, - "Image": 11, - "StorageBuffer": 12 - } - }, - { - "Name": "Dim", - "Type": "Value", - "Values": - { - "Dim1D": 0, - "Dim2D": 1, - "Dim3D": 2, - "Cube": 3, - "Rect": 4, - "Buffer": 5, - "SubpassData": 6 - } - }, - { - "Name": "SamplerAddressingMode", - "Type": "Value", - "Values": - { - "None": 0, - "ClampToEdge": 1, - "Clamp": 2, - "Repeat": 3, - "RepeatMirrored": 4 - } - }, - { - "Name": "SamplerFilterMode", - "Type": "Value", - "Values": - { - "Nearest": 0, - "Linear": 1 - } - }, - { - "Name": "ImageFormat", - "Type": "Value", - "Values": - { - "Unknown": 0, - "Rgba32f": 1, - "Rgba16f": 2, - "R32f": 3, - "Rgba8": 4, - "Rgba8Snorm": 5, - "Rg32f": 6, - "Rg16f": 7, - "R11fG11fB10f": 8, - "R16f": 9, - "Rgba16": 10, - "Rgb10A2": 11, - "Rg16": 12, - "Rg8": 13, - "R16": 14, - "R8": 15, - "Rgba16Snorm": 16, - "Rg16Snorm": 17, - "Rg8Snorm": 18, - "R16Snorm": 19, - "R8Snorm": 20, - "Rgba32i": 21, - "Rgba16i": 22, - "Rgba8i": 23, - "R32i": 24, - "Rg32i": 25, - "Rg16i": 26, - "Rg8i": 27, - "R16i": 28, - "R8i": 29, - "Rgba32ui": 30, - "Rgba16ui": 31, - "Rgba8ui": 32, - "R32ui": 33, - "Rgb10a2ui": 34, - "Rg32ui": 35, - "Rg16ui": 36, - "Rg8ui": 37, - "R16ui": 38, - "R8ui": 39 - } - }, - { - "Name": "ImageChannelOrder", - "Type": "Value", - "Values": - { - "R": 0, - "A": 1, - "RG": 2, - "RA": 3, - "RGB": 4, - "RGBA": 5, - "BGRA": 6, - "ARGB": 7, - "Intensity": 8, - "Luminance": 9, - "Rx": 10, - "RGx": 11, - "RGBx": 12, - "Depth": 13, - "DepthStencil": 14, - "sRGB": 15, - "sRGBx": 16, - "sRGBA": 17, - "sBGRA": 18, - "ABGR": 19 - } - }, - { - "Name": "ImageChannelDataType", - "Type": "Value", - "Values": - { - "SnormInt8": 0, - "SnormInt16": 1, - "UnormInt8": 2, - "UnormInt16": 3, - "UnormShort565": 4, - "UnormShort555": 5, - "UnormInt101010": 6, - "SignedInt8": 7, - "SignedInt16": 8, - "SignedInt32": 9, - "UnsignedInt8": 10, - "UnsignedInt16": 11, - "UnsignedInt32": 12, - "HalfFloat": 13, - "Float": 14, - "UnormInt24": 15, - "UnormInt101010_2": 16 - } - }, - { - "Name": "ImageOperands", - "Type": "Bit", - "Values": - { - "Bias": 0, - "Lod": 1, - "Grad": 2, - "ConstOffset": 3, - "Offset": 4, - "ConstOffsets": 5, - "Sample": 6, - "MinLod": 7 - } - }, - { - "Name": "FPFastMathMode", - "Type": "Bit", - "Values": - { - "NotNaN": 0, - "NotInf": 1, - "NSZ": 2, - "AllowRecip": 3, - "Fast": 4 - } - }, - { - "Name": "FPRoundingMode", - "Type": "Value", - "Values": - { - "RTE": 0, - "RTZ": 1, - "RTP": 2, - "RTN": 3 - } - }, - { - "Name": "LinkageType", - "Type": "Value", - "Values": - { - "Export": 0, - "Import": 1 - } - }, - { - "Name": "AccessQualifier", - "Type": "Value", - "Values": - { - "ReadOnly": 0, - "WriteOnly": 1, - "ReadWrite": 2 - } - }, - { - "Name": "FunctionParameterAttribute", - "Type": "Value", - "Values": - { - "Zext": 0, - "Sext": 1, - "ByVal": 2, - "Sret": 3, - "NoAlias": 4, - "NoCapture": 5, - "NoWrite": 6, - "NoReadWrite": 7 - } - }, - { - "Name": "Decoration", - "Type": "Value", - "Values": - { - "RelaxedPrecision": 0, - "SpecId": 1, - "Block": 2, - "BufferBlock": 3, - "RowMajor": 4, - "ColMajor": 5, - "ArrayStride": 6, - "MatrixStride": 7, - "GLSLShared": 8, - "GLSLPacked": 9, - "CPacked": 10, - "BuiltIn": 11, - "NoPerspective": 13, - "Flat": 14, - "Patch": 15, - "Centroid": 16, - "Sample": 17, - "Invariant": 18, - "Restrict": 19, - "Aliased": 20, - "Volatile": 21, - "Constant": 22, - "Coherent": 23, - "NonWritable": 24, - "NonReadable": 25, - "Uniform": 26, - "SaturatedConversion": 28, - "Stream": 29, - "Location": 30, - "Component": 31, - "Index": 32, - "Binding": 33, - "DescriptorSet": 34, - "Offset": 35, - "XfbBuffer": 36, - "XfbStride": 37, - "FuncParamAttr": 38, - "FPRoundingMode": 39, - "FPFastMathMode": 40, - "LinkageAttributes": 41, - "NoContraction": 42, - "InputAttachmentIndex": 43, - "Alignment": 44, - "MaxByteOffset": 45, - "AlignmentId": 46, - "MaxByteOffsetId": 47, - "ExplicitInterpAMD": 4999, - "OverrideCoverageNV": 5248, - "PassthroughNV": 5250, - "ViewportRelativeNV": 5252, - "SecondaryViewportRelativeNV": 5256, - "HlslCounterBufferGOOGLE": 5634, - "HlslSemanticGOOGLE": 5635 - } - }, - { - "Name": "BuiltIn", - "Type": "Value", - "Values": - { - "Position": 0, - "PointSize": 1, - "ClipDistance": 3, - "CullDistance": 4, - "VertexId": 5, - "InstanceId": 6, - "PrimitiveId": 7, - "InvocationId": 8, - "Layer": 9, - "ViewportIndex": 10, - "TessLevelOuter": 11, - "TessLevelInner": 12, - "TessCoord": 13, - "PatchVertices": 14, - "FragCoord": 15, - "PointCoord": 16, - "FrontFacing": 17, - "SampleId": 18, - "SamplePosition": 19, - "SampleMask": 20, - "FragDepth": 22, - "HelperInvocation": 23, - "NumWorkgroups": 24, - "WorkgroupSize": 25, - "WorkgroupId": 26, - "LocalInvocationId": 27, - "GlobalInvocationId": 28, - "LocalInvocationIndex": 29, - "WorkDim": 30, - "GlobalSize": 31, - "EnqueuedWorkgroupSize": 32, - "GlobalOffset": 33, - "GlobalLinearId": 34, - "SubgroupSize": 36, - "SubgroupMaxSize": 37, - "NumSubgroups": 38, - "NumEnqueuedSubgroups": 39, - "SubgroupId": 40, - "SubgroupLocalInvocationId": 41, - "VertexIndex": 42, - "InstanceIndex": 43, - "SubgroupEqMaskKHR": 4416, - "SubgroupGeMaskKHR": 4417, - "SubgroupGtMaskKHR": 4418, - "SubgroupLeMaskKHR": 4419, - "SubgroupLtMaskKHR": 4420, - "BaseVertex": 4424, - "BaseInstance": 4425, - "DrawIndex": 4426, - "DeviceIndex": 4438, - "ViewIndex": 4440, - "BaryCoordNoPerspAMD": 4992, - "BaryCoordNoPerspCentroidAMD": 4993, - "BaryCoordNoPerspSampleAMD": 4994, - "BaryCoordSmoothAMD": 4995, - "BaryCoordSmoothCentroidAMD": 4996, - "BaryCoordSmoothSampleAMD": 4997, - "BaryCoordPullModelAMD": 4998, - "FragStencilRefEXT": 5014, - "ViewportMaskNV": 5253, - "SecondaryPositionNV": 5257, - "SecondaryViewportMaskNV": 5258, - "PositionPerViewNV": 5261, - "ViewportMaskPerViewNV": 5262 - } - }, - { - "Name": "SelectionControl", - "Type": "Bit", - "Values": - { - "Flatten": 0, - "DontFlatten": 1 - } - }, - { - "Name": "LoopControl", - "Type": "Bit", - "Values": - { - "Unroll": 0, - "DontUnroll": 1, - "DependencyInfinite": 2, - "DependencyLength": 3 - } - }, - { - "Name": "FunctionControl", - "Type": "Bit", - "Values": - { - "Inline": 0, - "DontInline": 1, - "Pure": 2, - "Const": 3 - } - }, - { - "Name": "MemorySemantics", - "Type": "Bit", - "Values": - { - "Acquire": 1, - "Release": 2, - "AcquireRelease": 3, - "SequentiallyConsistent": 4, - "UniformMemory": 6, - "SubgroupMemory": 7, - "WorkgroupMemory": 8, - "CrossWorkgroupMemory": 9, - "AtomicCounterMemory": 10, - "ImageMemory": 11 - } - }, - { - "Name": "MemoryAccess", - "Type": "Bit", - "Values": - { - "Volatile": 0, - "Aligned": 1, - "Nontemporal": 2 - } - }, - { - "Name": "Scope", - "Type": "Value", - "Values": - { - "CrossDevice": 0, - "Device": 1, - "Workgroup": 2, - "Subgroup": 3, - "Invocation": 4 - } - }, - { - "Name": "GroupOperation", - "Type": "Value", - "Values": - { - "Reduce": 0, - "InclusiveScan": 1, - "ExclusiveScan": 2 - } - }, - { - "Name": "KernelEnqueueFlags", - "Type": "Value", - "Values": - { - "NoWait": 0, - "WaitKernel": 1, - "WaitWorkGroup": 2 - } - }, - { - "Name": "KernelProfilingInfo", - "Type": "Bit", - "Values": - { - "CmdExecTime": 0 - } - }, - { - "Name": "Capability", - "Type": "Value", - "Values": - { - "Matrix": 0, - "Shader": 1, - "Geometry": 2, - "Tessellation": 3, - "Addresses": 4, - "Linkage": 5, - "Kernel": 6, - "Vector16": 7, - "Float16Buffer": 8, - "Float16": 9, - "Float64": 10, - "Int64": 11, - "Int64Atomics": 12, - "ImageBasic": 13, - "ImageReadWrite": 14, - "ImageMipmap": 15, - "Pipes": 17, - "Groups": 18, - "DeviceEnqueue": 19, - "LiteralSampler": 20, - "AtomicStorage": 21, - "Int16": 22, - "TessellationPointSize": 23, - "GeometryPointSize": 24, - "ImageGatherExtended": 25, - "StorageImageMultisample": 27, - "UniformBufferArrayDynamicIndexing": 28, - "SampledImageArrayDynamicIndexing": 29, - "StorageBufferArrayDynamicIndexing": 30, - "StorageImageArrayDynamicIndexing": 31, - "ClipDistance": 32, - "CullDistance": 33, - "ImageCubeArray": 34, - "SampleRateShading": 35, - "ImageRect": 36, - "SampledRect": 37, - "GenericPointer": 38, - "Int8": 39, - "InputAttachment": 40, - "SparseResidency": 41, - "MinLod": 42, - "Sampled1D": 43, - "Image1D": 44, - "SampledCubeArray": 45, - "SampledBuffer": 46, - "ImageBuffer": 47, - "ImageMSArray": 48, - "StorageImageExtendedFormats": 49, - "ImageQuery": 50, - "DerivativeControl": 51, - "InterpolationFunction": 52, - "TransformFeedback": 53, - "GeometryStreams": 54, - "StorageImageReadWithoutFormat": 55, - "StorageImageWriteWithoutFormat": 56, - "MultiViewport": 57, - "SubgroupDispatch": 58, - "NamedBarrier": 59, - "PipeStorage": 60, - "SubgroupBallotKHR": 4423, - "DrawParameters": 4427, - "SubgroupVoteKHR": 4431, - "StorageBuffer16BitAccess": 4433, - "StorageUniformBufferBlock16": 4433, - "StorageUniform16": 4434, - "UniformAndStorageBuffer16BitAccess": 4434, - "StoragePushConstant16": 4435, - "StorageInputOutput16": 4436, - "DeviceGroup": 4437, - "MultiView": 4439, - "VariablePointersStorageBuffer": 4441, - "VariablePointers": 4442, - "AtomicStorageOps": 4445, - "SampleMaskPostDepthCoverage": 4447, - "ImageGatherBiasLodAMD": 5009, - "FragmentMaskAMD": 5010, - "StencilExportEXT": 5013, - "ImageReadWriteLodAMD": 5015, - "SampleMaskOverrideCoverageNV": 5249, - "GeometryShaderPassthroughNV": 5251, - "ShaderViewportIndexLayerEXT": 5254, - "ShaderViewportIndexLayerNV": 5254, - "ShaderViewportMaskNV": 5255, - "ShaderStereoViewNV": 5259, - "PerViewAttributesNV": 5260, - "SubgroupShuffleINTEL": 5568, - "SubgroupBufferBlockIOINTEL": 5569, - "SubgroupImageBlockIOINTEL": 5570 - } - }, - { - "Name": "Op", - "Type": "Value", - "Values": - { - "OpNop": 0, - "OpUndef": 1, - "OpSourceContinued": 2, - "OpSource": 3, - "OpSourceExtension": 4, - "OpName": 5, - "OpMemberName": 6, - "OpString": 7, - "OpLine": 8, - "OpExtension": 10, - "OpExtInstImport": 11, - "OpExtInst": 12, - "OpMemoryModel": 14, - "OpEntryPoint": 15, - "OpExecutionMode": 16, - "OpCapability": 17, - "OpTypeVoid": 19, - "OpTypeBool": 20, - "OpTypeInt": 21, - "OpTypeFloat": 22, - "OpTypeVector": 23, - "OpTypeMatrix": 24, - "OpTypeImage": 25, - "OpTypeSampler": 26, - "OpTypeSampledImage": 27, - "OpTypeArray": 28, - "OpTypeRuntimeArray": 29, - "OpTypeStruct": 30, - "OpTypeOpaque": 31, - "OpTypePointer": 32, - "OpTypeFunction": 33, - "OpTypeEvent": 34, - "OpTypeDeviceEvent": 35, - "OpTypeReserveId": 36, - "OpTypeQueue": 37, - "OpTypePipe": 38, - "OpTypeForwardPointer": 39, - "OpConstantTrue": 41, - "OpConstantFalse": 42, - "OpConstant": 43, - "OpConstantComposite": 44, - "OpConstantSampler": 45, - "OpConstantNull": 46, - "OpSpecConstantTrue": 48, - "OpSpecConstantFalse": 49, - "OpSpecConstant": 50, - "OpSpecConstantComposite": 51, - "OpSpecConstantOp": 52, - "OpFunction": 54, - "OpFunctionParameter": 55, - "OpFunctionEnd": 56, - "OpFunctionCall": 57, - "OpVariable": 59, - "OpImageTexelPointer": 60, - "OpLoad": 61, - "OpStore": 62, - "OpCopyMemory": 63, - "OpCopyMemorySized": 64, - "OpAccessChain": 65, - "OpInBoundsAccessChain": 66, - "OpPtrAccessChain": 67, - "OpArrayLength": 68, - "OpGenericPtrMemSemantics": 69, - "OpInBoundsPtrAccessChain": 70, - "OpDecorate": 71, - "OpMemberDecorate": 72, - "OpDecorationGroup": 73, - "OpGroupDecorate": 74, - "OpGroupMemberDecorate": 75, - "OpVectorExtractDynamic": 77, - "OpVectorInsertDynamic": 78, - "OpVectorShuffle": 79, - "OpCompositeConstruct": 80, - "OpCompositeExtract": 81, - "OpCompositeInsert": 82, - "OpCopyObject": 83, - "OpTranspose": 84, - "OpSampledImage": 86, - "OpImageSampleImplicitLod": 87, - "OpImageSampleExplicitLod": 88, - "OpImageSampleDrefImplicitLod": 89, - "OpImageSampleDrefExplicitLod": 90, - "OpImageSampleProjImplicitLod": 91, - "OpImageSampleProjExplicitLod": 92, - "OpImageSampleProjDrefImplicitLod": 93, - "OpImageSampleProjDrefExplicitLod": 94, - "OpImageFetch": 95, - "OpImageGather": 96, - "OpImageDrefGather": 97, - "OpImageRead": 98, - "OpImageWrite": 99, - "OpImage": 100, - "OpImageQueryFormat": 101, - "OpImageQueryOrder": 102, - "OpImageQuerySizeLod": 103, - "OpImageQuerySize": 104, - "OpImageQueryLod": 105, - "OpImageQueryLevels": 106, - "OpImageQuerySamples": 107, - "OpConvertFToU": 109, - "OpConvertFToS": 110, - "OpConvertSToF": 111, - "OpConvertUToF": 112, - "OpUConvert": 113, - "OpSConvert": 114, - "OpFConvert": 115, - "OpQuantizeToF16": 116, - "OpConvertPtrToU": 117, - "OpSatConvertSToU": 118, - "OpSatConvertUToS": 119, - "OpConvertUToPtr": 120, - "OpPtrCastToGeneric": 121, - "OpGenericCastToPtr": 122, - "OpGenericCastToPtrExplicit": 123, - "OpBitcast": 124, - "OpSNegate": 126, - "OpFNegate": 127, - "OpIAdd": 128, - "OpFAdd": 129, - "OpISub": 130, - "OpFSub": 131, - "OpIMul": 132, - "OpFMul": 133, - "OpUDiv": 134, - "OpSDiv": 135, - "OpFDiv": 136, - "OpUMod": 137, - "OpSRem": 138, - "OpSMod": 139, - "OpFRem": 140, - "OpFMod": 141, - "OpVectorTimesScalar": 142, - "OpMatrixTimesScalar": 143, - "OpVectorTimesMatrix": 144, - "OpMatrixTimesVector": 145, - "OpMatrixTimesMatrix": 146, - "OpOuterProduct": 147, - "OpDot": 148, - "OpIAddCarry": 149, - "OpISubBorrow": 150, - "OpUMulExtended": 151, - "OpSMulExtended": 152, - "OpAny": 154, - "OpAll": 155, - "OpIsNan": 156, - "OpIsInf": 157, - "OpIsFinite": 158, - "OpIsNormal": 159, - "OpSignBitSet": 160, - "OpLessOrGreater": 161, - "OpOrdered": 162, - "OpUnordered": 163, - "OpLogicalEqual": 164, - "OpLogicalNotEqual": 165, - "OpLogicalOr": 166, - "OpLogicalAnd": 167, - "OpLogicalNot": 168, - "OpSelect": 169, - "OpIEqual": 170, - "OpINotEqual": 171, - "OpUGreaterThan": 172, - "OpSGreaterThan": 173, - "OpUGreaterThanEqual": 174, - "OpSGreaterThanEqual": 175, - "OpULessThan": 176, - "OpSLessThan": 177, - "OpULessThanEqual": 178, - "OpSLessThanEqual": 179, - "OpFOrdEqual": 180, - "OpFUnordEqual": 181, - "OpFOrdNotEqual": 182, - "OpFUnordNotEqual": 183, - "OpFOrdLessThan": 184, - "OpFUnordLessThan": 185, - "OpFOrdGreaterThan": 186, - "OpFUnordGreaterThan": 187, - "OpFOrdLessThanEqual": 188, - "OpFUnordLessThanEqual": 189, - "OpFOrdGreaterThanEqual": 190, - "OpFUnordGreaterThanEqual": 191, - "OpShiftRightLogical": 194, - "OpShiftRightArithmetic": 195, - "OpShiftLeftLogical": 196, - "OpBitwiseOr": 197, - "OpBitwiseXor": 198, - "OpBitwiseAnd": 199, - "OpNot": 200, - "OpBitFieldInsert": 201, - "OpBitFieldSExtract": 202, - "OpBitFieldUExtract": 203, - "OpBitReverse": 204, - "OpBitCount": 205, - "OpDPdx": 207, - "OpDPdy": 208, - "OpFwidth": 209, - "OpDPdxFine": 210, - "OpDPdyFine": 211, - "OpFwidthFine": 212, - "OpDPdxCoarse": 213, - "OpDPdyCoarse": 214, - "OpFwidthCoarse": 215, - "OpEmitVertex": 218, - "OpEndPrimitive": 219, - "OpEmitStreamVertex": 220, - "OpEndStreamPrimitive": 221, - "OpControlBarrier": 224, - "OpMemoryBarrier": 225, - "OpAtomicLoad": 227, - "OpAtomicStore": 228, - "OpAtomicExchange": 229, - "OpAtomicCompareExchange": 230, - "OpAtomicCompareExchangeWeak": 231, - "OpAtomicIIncrement": 232, - "OpAtomicIDecrement": 233, - "OpAtomicIAdd": 234, - "OpAtomicISub": 235, - "OpAtomicSMin": 236, - "OpAtomicUMin": 237, - "OpAtomicSMax": 238, - "OpAtomicUMax": 239, - "OpAtomicAnd": 240, - "OpAtomicOr": 241, - "OpAtomicXor": 242, - "OpPhi": 245, - "OpLoopMerge": 246, - "OpSelectionMerge": 247, - "OpLabel": 248, - "OpBranch": 249, - "OpBranchConditional": 250, - "OpSwitch": 251, - "OpKill": 252, - "OpReturn": 253, - "OpReturnValue": 254, - "OpUnreachable": 255, - "OpLifetimeStart": 256, - "OpLifetimeStop": 257, - "OpGroupAsyncCopy": 259, - "OpGroupWaitEvents": 260, - "OpGroupAll": 261, - "OpGroupAny": 262, - "OpGroupBroadcast": 263, - "OpGroupIAdd": 264, - "OpGroupFAdd": 265, - "OpGroupFMin": 266, - "OpGroupUMin": 267, - "OpGroupSMin": 268, - "OpGroupFMax": 269, - "OpGroupUMax": 270, - "OpGroupSMax": 271, - "OpReadPipe": 274, - "OpWritePipe": 275, - "OpReservedReadPipe": 276, - "OpReservedWritePipe": 277, - "OpReserveReadPipePackets": 278, - "OpReserveWritePipePackets": 279, - "OpCommitReadPipe": 280, - "OpCommitWritePipe": 281, - "OpIsValidReserveId": 282, - "OpGetNumPipePackets": 283, - "OpGetMaxPipePackets": 284, - "OpGroupReserveReadPipePackets": 285, - "OpGroupReserveWritePipePackets": 286, - "OpGroupCommitReadPipe": 287, - "OpGroupCommitWritePipe": 288, - "OpEnqueueMarker": 291, - "OpEnqueueKernel": 292, - "OpGetKernelNDrangeSubGroupCount": 293, - "OpGetKernelNDrangeMaxSubGroupSize": 294, - "OpGetKernelWorkGroupSize": 295, - "OpGetKernelPreferredWorkGroupSizeMultiple": 296, - "OpRetainEvent": 297, - "OpReleaseEvent": 298, - "OpCreateUserEvent": 299, - "OpIsValidEvent": 300, - "OpSetUserEventStatus": 301, - "OpCaptureEventProfilingInfo": 302, - "OpGetDefaultQueue": 303, - "OpBuildNDRange": 304, - "OpImageSparseSampleImplicitLod": 305, - "OpImageSparseSampleExplicitLod": 306, - "OpImageSparseSampleDrefImplicitLod": 307, - "OpImageSparseSampleDrefExplicitLod": 308, - "OpImageSparseSampleProjImplicitLod": 309, - "OpImageSparseSampleProjExplicitLod": 310, - "OpImageSparseSampleProjDrefImplicitLod": 311, - "OpImageSparseSampleProjDrefExplicitLod": 312, - "OpImageSparseFetch": 313, - "OpImageSparseGather": 314, - "OpImageSparseDrefGather": 315, - "OpImageSparseTexelsResident": 316, - "OpNoLine": 317, - "OpAtomicFlagTestAndSet": 318, - "OpAtomicFlagClear": 319, - "OpImageSparseRead": 320, - "OpSizeOf": 321, - "OpTypePipeStorage": 322, - "OpConstantPipeStorage": 323, - "OpCreatePipeFromPipeStorage": 324, - "OpGetKernelLocalSizeForSubgroupCount": 325, - "OpGetKernelMaxNumSubgroups": 326, - "OpTypeNamedBarrier": 327, - "OpNamedBarrierInitialize": 328, - "OpMemoryNamedBarrier": 329, - "OpModuleProcessed": 330, - "OpExecutionModeId": 331, - "OpDecorateId": 332, - "OpSubgroupBallotKHR": 4421, - "OpSubgroupFirstInvocationKHR": 4422, - "OpSubgroupAllKHR": 4428, - "OpSubgroupAnyKHR": 4429, - "OpSubgroupAllEqualKHR": 4430, - "OpSubgroupReadInvocationKHR": 4432, - "OpGroupIAddNonUniformAMD": 5000, - "OpGroupFAddNonUniformAMD": 5001, - "OpGroupFMinNonUniformAMD": 5002, - "OpGroupUMinNonUniformAMD": 5003, - "OpGroupSMinNonUniformAMD": 5004, - "OpGroupFMaxNonUniformAMD": 5005, - "OpGroupUMaxNonUniformAMD": 5006, - "OpGroupSMaxNonUniformAMD": 5007, - "OpFragmentMaskFetchAMD": 5011, - "OpFragmentFetchAMD": 5012, - "OpSubgroupShuffleINTEL": 5571, - "OpSubgroupShuffleDownINTEL": 5572, - "OpSubgroupShuffleUpINTEL": 5573, - "OpSubgroupShuffleXorINTEL": 5574, - "OpSubgroupBlockReadINTEL": 5575, - "OpSubgroupBlockWriteINTEL": 5576, - "OpSubgroupImageBlockReadINTEL": 5577, - "OpSubgroupImageBlockWriteINTEL": 5578, - "OpDecorateStringGOOGLE": 5632, - "OpMemberDecorateStringGOOGLE": 5633 - } - } - ] - } -} - diff --git a/Extern/3rdParty/shaderc/shaderc/include/spirv/1.2/spirv.lua b/Extern/3rdParty/shaderc/shaderc/include/spirv/1.2/spirv.lua deleted file mode 100644 index 0de507d..0000000 --- a/Extern/3rdParty/shaderc/shaderc/include/spirv/1.2/spirv.lua +++ /dev/null @@ -1,977 +0,0 @@ --- Copyright (c) 2014-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. - --- This header is automatically generated by the same tool that creates --- the Binary Section of the SPIR-V specification. - --- Enumeration tokens for SPIR-V, in various styles: --- C, C++, C++11, JSON, Lua, Python --- --- - C will have tokens with a "Spv" prefix, e.g.: SpvSourceLanguageGLSL --- - C++ will have tokens in the "spv" name space, e.g.: spv::SourceLanguageGLSL --- - C++11 will use enum classes in the spv namespace, e.g.: spv::SourceLanguage::GLSL --- - Lua will use tables, e.g.: spv.SourceLanguage.GLSL --- - Python will use dictionaries, e.g.: spv['SourceLanguage']['GLSL'] --- --- Some tokens act like mask values, which can be OR'd together, --- while others are mutually exclusive. The mask-like ones have --- "Mask" in their name, and a parallel enum that has the shift --- amount (1 << x) for each corresponding enumerant. - -spv = { - MagicNumber = 0x07230203, - Version = 0x00010200, - Revision = 2, - OpCodeMask = 0xffff, - WordCountShift = 16, - - SourceLanguage = { - Unknown = 0, - ESSL = 1, - GLSL = 2, - OpenCL_C = 3, - OpenCL_CPP = 4, - HLSL = 5, - }, - - ExecutionModel = { - Vertex = 0, - TessellationControl = 1, - TessellationEvaluation = 2, - Geometry = 3, - Fragment = 4, - GLCompute = 5, - Kernel = 6, - }, - - AddressingModel = { - Logical = 0, - Physical32 = 1, - Physical64 = 2, - }, - - MemoryModel = { - Simple = 0, - GLSL450 = 1, - OpenCL = 2, - }, - - ExecutionMode = { - Invocations = 0, - SpacingEqual = 1, - SpacingFractionalEven = 2, - SpacingFractionalOdd = 3, - VertexOrderCw = 4, - VertexOrderCcw = 5, - PixelCenterInteger = 6, - OriginUpperLeft = 7, - OriginLowerLeft = 8, - EarlyFragmentTests = 9, - PointMode = 10, - Xfb = 11, - DepthReplacing = 12, - DepthGreater = 14, - DepthLess = 15, - DepthUnchanged = 16, - LocalSize = 17, - LocalSizeHint = 18, - InputPoints = 19, - InputLines = 20, - InputLinesAdjacency = 21, - Triangles = 22, - InputTrianglesAdjacency = 23, - Quads = 24, - Isolines = 25, - OutputVertices = 26, - OutputPoints = 27, - OutputLineStrip = 28, - OutputTriangleStrip = 29, - VecTypeHint = 30, - ContractionOff = 31, - Initializer = 33, - Finalizer = 34, - SubgroupSize = 35, - SubgroupsPerWorkgroup = 36, - SubgroupsPerWorkgroupId = 37, - LocalSizeId = 38, - LocalSizeHintId = 39, - PostDepthCoverage = 4446, - StencilRefReplacingEXT = 5027, - }, - - StorageClass = { - UniformConstant = 0, - Input = 1, - Uniform = 2, - Output = 3, - Workgroup = 4, - CrossWorkgroup = 5, - Private = 6, - Function = 7, - Generic = 8, - PushConstant = 9, - AtomicCounter = 10, - Image = 11, - StorageBuffer = 12, - }, - - Dim = { - Dim1D = 0, - Dim2D = 1, - Dim3D = 2, - Cube = 3, - Rect = 4, - Buffer = 5, - SubpassData = 6, - }, - - SamplerAddressingMode = { - None = 0, - ClampToEdge = 1, - Clamp = 2, - Repeat = 3, - RepeatMirrored = 4, - }, - - SamplerFilterMode = { - Nearest = 0, - Linear = 1, - }, - - ImageFormat = { - Unknown = 0, - Rgba32f = 1, - Rgba16f = 2, - R32f = 3, - Rgba8 = 4, - Rgba8Snorm = 5, - Rg32f = 6, - Rg16f = 7, - R11fG11fB10f = 8, - R16f = 9, - Rgba16 = 10, - Rgb10A2 = 11, - Rg16 = 12, - Rg8 = 13, - R16 = 14, - R8 = 15, - Rgba16Snorm = 16, - Rg16Snorm = 17, - Rg8Snorm = 18, - R16Snorm = 19, - R8Snorm = 20, - Rgba32i = 21, - Rgba16i = 22, - Rgba8i = 23, - R32i = 24, - Rg32i = 25, - Rg16i = 26, - Rg8i = 27, - R16i = 28, - R8i = 29, - Rgba32ui = 30, - Rgba16ui = 31, - Rgba8ui = 32, - R32ui = 33, - Rgb10a2ui = 34, - Rg32ui = 35, - Rg16ui = 36, - Rg8ui = 37, - R16ui = 38, - R8ui = 39, - }, - - ImageChannelOrder = { - R = 0, - A = 1, - RG = 2, - RA = 3, - RGB = 4, - RGBA = 5, - BGRA = 6, - ARGB = 7, - Intensity = 8, - Luminance = 9, - Rx = 10, - RGx = 11, - RGBx = 12, - Depth = 13, - DepthStencil = 14, - sRGB = 15, - sRGBx = 16, - sRGBA = 17, - sBGRA = 18, - ABGR = 19, - }, - - ImageChannelDataType = { - SnormInt8 = 0, - SnormInt16 = 1, - UnormInt8 = 2, - UnormInt16 = 3, - UnormShort565 = 4, - UnormShort555 = 5, - UnormInt101010 = 6, - SignedInt8 = 7, - SignedInt16 = 8, - SignedInt32 = 9, - UnsignedInt8 = 10, - UnsignedInt16 = 11, - UnsignedInt32 = 12, - HalfFloat = 13, - Float = 14, - UnormInt24 = 15, - UnormInt101010_2 = 16, - }, - - ImageOperandsShift = { - Bias = 0, - Lod = 1, - Grad = 2, - ConstOffset = 3, - Offset = 4, - ConstOffsets = 5, - Sample = 6, - MinLod = 7, - }, - - ImageOperandsMask = { - MaskNone = 0, - Bias = 0x00000001, - Lod = 0x00000002, - Grad = 0x00000004, - ConstOffset = 0x00000008, - Offset = 0x00000010, - ConstOffsets = 0x00000020, - Sample = 0x00000040, - MinLod = 0x00000080, - }, - - FPFastMathModeShift = { - NotNaN = 0, - NotInf = 1, - NSZ = 2, - AllowRecip = 3, - Fast = 4, - }, - - FPFastMathModeMask = { - MaskNone = 0, - NotNaN = 0x00000001, - NotInf = 0x00000002, - NSZ = 0x00000004, - AllowRecip = 0x00000008, - Fast = 0x00000010, - }, - - FPRoundingMode = { - RTE = 0, - RTZ = 1, - RTP = 2, - RTN = 3, - }, - - LinkageType = { - Export = 0, - Import = 1, - }, - - AccessQualifier = { - ReadOnly = 0, - WriteOnly = 1, - ReadWrite = 2, - }, - - FunctionParameterAttribute = { - Zext = 0, - Sext = 1, - ByVal = 2, - Sret = 3, - NoAlias = 4, - NoCapture = 5, - NoWrite = 6, - NoReadWrite = 7, - }, - - Decoration = { - RelaxedPrecision = 0, - SpecId = 1, - Block = 2, - BufferBlock = 3, - RowMajor = 4, - ColMajor = 5, - ArrayStride = 6, - MatrixStride = 7, - GLSLShared = 8, - GLSLPacked = 9, - CPacked = 10, - BuiltIn = 11, - NoPerspective = 13, - Flat = 14, - Patch = 15, - Centroid = 16, - Sample = 17, - Invariant = 18, - Restrict = 19, - Aliased = 20, - Volatile = 21, - Constant = 22, - Coherent = 23, - NonWritable = 24, - NonReadable = 25, - Uniform = 26, - SaturatedConversion = 28, - Stream = 29, - Location = 30, - Component = 31, - Index = 32, - Binding = 33, - DescriptorSet = 34, - Offset = 35, - XfbBuffer = 36, - XfbStride = 37, - FuncParamAttr = 38, - FPRoundingMode = 39, - FPFastMathMode = 40, - LinkageAttributes = 41, - NoContraction = 42, - InputAttachmentIndex = 43, - Alignment = 44, - MaxByteOffset = 45, - AlignmentId = 46, - MaxByteOffsetId = 47, - ExplicitInterpAMD = 4999, - OverrideCoverageNV = 5248, - PassthroughNV = 5250, - ViewportRelativeNV = 5252, - SecondaryViewportRelativeNV = 5256, - HlslCounterBufferGOOGLE = 5634, - HlslSemanticGOOGLE = 5635, - }, - - BuiltIn = { - Position = 0, - PointSize = 1, - ClipDistance = 3, - CullDistance = 4, - VertexId = 5, - InstanceId = 6, - PrimitiveId = 7, - InvocationId = 8, - Layer = 9, - ViewportIndex = 10, - TessLevelOuter = 11, - TessLevelInner = 12, - TessCoord = 13, - PatchVertices = 14, - FragCoord = 15, - PointCoord = 16, - FrontFacing = 17, - SampleId = 18, - SamplePosition = 19, - SampleMask = 20, - FragDepth = 22, - HelperInvocation = 23, - NumWorkgroups = 24, - WorkgroupSize = 25, - WorkgroupId = 26, - LocalInvocationId = 27, - GlobalInvocationId = 28, - LocalInvocationIndex = 29, - WorkDim = 30, - GlobalSize = 31, - EnqueuedWorkgroupSize = 32, - GlobalOffset = 33, - GlobalLinearId = 34, - SubgroupSize = 36, - SubgroupMaxSize = 37, - NumSubgroups = 38, - NumEnqueuedSubgroups = 39, - SubgroupId = 40, - SubgroupLocalInvocationId = 41, - VertexIndex = 42, - InstanceIndex = 43, - SubgroupEqMaskKHR = 4416, - SubgroupGeMaskKHR = 4417, - SubgroupGtMaskKHR = 4418, - SubgroupLeMaskKHR = 4419, - SubgroupLtMaskKHR = 4420, - BaseVertex = 4424, - BaseInstance = 4425, - DrawIndex = 4426, - DeviceIndex = 4438, - ViewIndex = 4440, - BaryCoordNoPerspAMD = 4992, - BaryCoordNoPerspCentroidAMD = 4993, - BaryCoordNoPerspSampleAMD = 4994, - BaryCoordSmoothAMD = 4995, - BaryCoordSmoothCentroidAMD = 4996, - BaryCoordSmoothSampleAMD = 4997, - BaryCoordPullModelAMD = 4998, - FragStencilRefEXT = 5014, - ViewportMaskNV = 5253, - SecondaryPositionNV = 5257, - SecondaryViewportMaskNV = 5258, - PositionPerViewNV = 5261, - ViewportMaskPerViewNV = 5262, - }, - - SelectionControlShift = { - Flatten = 0, - DontFlatten = 1, - }, - - SelectionControlMask = { - MaskNone = 0, - Flatten = 0x00000001, - DontFlatten = 0x00000002, - }, - - LoopControlShift = { - Unroll = 0, - DontUnroll = 1, - DependencyInfinite = 2, - DependencyLength = 3, - }, - - LoopControlMask = { - MaskNone = 0, - Unroll = 0x00000001, - DontUnroll = 0x00000002, - DependencyInfinite = 0x00000004, - DependencyLength = 0x00000008, - }, - - FunctionControlShift = { - Inline = 0, - DontInline = 1, - Pure = 2, - Const = 3, - }, - - FunctionControlMask = { - MaskNone = 0, - Inline = 0x00000001, - DontInline = 0x00000002, - Pure = 0x00000004, - Const = 0x00000008, - }, - - MemorySemanticsShift = { - Acquire = 1, - Release = 2, - AcquireRelease = 3, - SequentiallyConsistent = 4, - UniformMemory = 6, - SubgroupMemory = 7, - WorkgroupMemory = 8, - CrossWorkgroupMemory = 9, - AtomicCounterMemory = 10, - ImageMemory = 11, - }, - - MemorySemanticsMask = { - MaskNone = 0, - Acquire = 0x00000002, - Release = 0x00000004, - AcquireRelease = 0x00000008, - SequentiallyConsistent = 0x00000010, - UniformMemory = 0x00000040, - SubgroupMemory = 0x00000080, - WorkgroupMemory = 0x00000100, - CrossWorkgroupMemory = 0x00000200, - AtomicCounterMemory = 0x00000400, - ImageMemory = 0x00000800, - }, - - MemoryAccessShift = { - Volatile = 0, - Aligned = 1, - Nontemporal = 2, - }, - - MemoryAccessMask = { - MaskNone = 0, - Volatile = 0x00000001, - Aligned = 0x00000002, - Nontemporal = 0x00000004, - }, - - Scope = { - CrossDevice = 0, - Device = 1, - Workgroup = 2, - Subgroup = 3, - Invocation = 4, - }, - - GroupOperation = { - Reduce = 0, - InclusiveScan = 1, - ExclusiveScan = 2, - }, - - KernelEnqueueFlags = { - NoWait = 0, - WaitKernel = 1, - WaitWorkGroup = 2, - }, - - KernelProfilingInfoShift = { - CmdExecTime = 0, - }, - - KernelProfilingInfoMask = { - MaskNone = 0, - CmdExecTime = 0x00000001, - }, - - Capability = { - Matrix = 0, - Shader = 1, - Geometry = 2, - Tessellation = 3, - Addresses = 4, - Linkage = 5, - Kernel = 6, - Vector16 = 7, - Float16Buffer = 8, - Float16 = 9, - Float64 = 10, - Int64 = 11, - Int64Atomics = 12, - ImageBasic = 13, - ImageReadWrite = 14, - ImageMipmap = 15, - Pipes = 17, - Groups = 18, - DeviceEnqueue = 19, - LiteralSampler = 20, - AtomicStorage = 21, - Int16 = 22, - TessellationPointSize = 23, - GeometryPointSize = 24, - ImageGatherExtended = 25, - StorageImageMultisample = 27, - UniformBufferArrayDynamicIndexing = 28, - SampledImageArrayDynamicIndexing = 29, - StorageBufferArrayDynamicIndexing = 30, - StorageImageArrayDynamicIndexing = 31, - ClipDistance = 32, - CullDistance = 33, - ImageCubeArray = 34, - SampleRateShading = 35, - ImageRect = 36, - SampledRect = 37, - GenericPointer = 38, - Int8 = 39, - InputAttachment = 40, - SparseResidency = 41, - MinLod = 42, - Sampled1D = 43, - Image1D = 44, - SampledCubeArray = 45, - SampledBuffer = 46, - ImageBuffer = 47, - ImageMSArray = 48, - StorageImageExtendedFormats = 49, - ImageQuery = 50, - DerivativeControl = 51, - InterpolationFunction = 52, - TransformFeedback = 53, - GeometryStreams = 54, - StorageImageReadWithoutFormat = 55, - StorageImageWriteWithoutFormat = 56, - MultiViewport = 57, - SubgroupDispatch = 58, - NamedBarrier = 59, - PipeStorage = 60, - SubgroupBallotKHR = 4423, - DrawParameters = 4427, - SubgroupVoteKHR = 4431, - StorageBuffer16BitAccess = 4433, - StorageUniformBufferBlock16 = 4433, - StorageUniform16 = 4434, - UniformAndStorageBuffer16BitAccess = 4434, - StoragePushConstant16 = 4435, - StorageInputOutput16 = 4436, - DeviceGroup = 4437, - MultiView = 4439, - VariablePointersStorageBuffer = 4441, - VariablePointers = 4442, - AtomicStorageOps = 4445, - SampleMaskPostDepthCoverage = 4447, - ImageGatherBiasLodAMD = 5009, - FragmentMaskAMD = 5010, - StencilExportEXT = 5013, - ImageReadWriteLodAMD = 5015, - SampleMaskOverrideCoverageNV = 5249, - GeometryShaderPassthroughNV = 5251, - ShaderViewportIndexLayerEXT = 5254, - ShaderViewportIndexLayerNV = 5254, - ShaderViewportMaskNV = 5255, - ShaderStereoViewNV = 5259, - PerViewAttributesNV = 5260, - SubgroupShuffleINTEL = 5568, - SubgroupBufferBlockIOINTEL = 5569, - SubgroupImageBlockIOINTEL = 5570, - }, - - Op = { - OpNop = 0, - OpUndef = 1, - OpSourceContinued = 2, - OpSource = 3, - OpSourceExtension = 4, - OpName = 5, - OpMemberName = 6, - OpString = 7, - OpLine = 8, - OpExtension = 10, - OpExtInstImport = 11, - OpExtInst = 12, - OpMemoryModel = 14, - OpEntryPoint = 15, - OpExecutionMode = 16, - OpCapability = 17, - OpTypeVoid = 19, - OpTypeBool = 20, - OpTypeInt = 21, - OpTypeFloat = 22, - OpTypeVector = 23, - OpTypeMatrix = 24, - OpTypeImage = 25, - OpTypeSampler = 26, - OpTypeSampledImage = 27, - OpTypeArray = 28, - OpTypeRuntimeArray = 29, - OpTypeStruct = 30, - OpTypeOpaque = 31, - OpTypePointer = 32, - OpTypeFunction = 33, - OpTypeEvent = 34, - OpTypeDeviceEvent = 35, - OpTypeReserveId = 36, - OpTypeQueue = 37, - OpTypePipe = 38, - OpTypeForwardPointer = 39, - OpConstantTrue = 41, - OpConstantFalse = 42, - OpConstant = 43, - OpConstantComposite = 44, - OpConstantSampler = 45, - OpConstantNull = 46, - OpSpecConstantTrue = 48, - OpSpecConstantFalse = 49, - OpSpecConstant = 50, - OpSpecConstantComposite = 51, - OpSpecConstantOp = 52, - OpFunction = 54, - OpFunctionParameter = 55, - OpFunctionEnd = 56, - OpFunctionCall = 57, - OpVariable = 59, - OpImageTexelPointer = 60, - OpLoad = 61, - OpStore = 62, - OpCopyMemory = 63, - OpCopyMemorySized = 64, - OpAccessChain = 65, - OpInBoundsAccessChain = 66, - OpPtrAccessChain = 67, - OpArrayLength = 68, - OpGenericPtrMemSemantics = 69, - OpInBoundsPtrAccessChain = 70, - OpDecorate = 71, - OpMemberDecorate = 72, - OpDecorationGroup = 73, - OpGroupDecorate = 74, - OpGroupMemberDecorate = 75, - OpVectorExtractDynamic = 77, - OpVectorInsertDynamic = 78, - OpVectorShuffle = 79, - OpCompositeConstruct = 80, - OpCompositeExtract = 81, - OpCompositeInsert = 82, - OpCopyObject = 83, - OpTranspose = 84, - OpSampledImage = 86, - OpImageSampleImplicitLod = 87, - OpImageSampleExplicitLod = 88, - OpImageSampleDrefImplicitLod = 89, - OpImageSampleDrefExplicitLod = 90, - OpImageSampleProjImplicitLod = 91, - OpImageSampleProjExplicitLod = 92, - OpImageSampleProjDrefImplicitLod = 93, - OpImageSampleProjDrefExplicitLod = 94, - OpImageFetch = 95, - OpImageGather = 96, - OpImageDrefGather = 97, - OpImageRead = 98, - OpImageWrite = 99, - OpImage = 100, - OpImageQueryFormat = 101, - OpImageQueryOrder = 102, - OpImageQuerySizeLod = 103, - OpImageQuerySize = 104, - OpImageQueryLod = 105, - OpImageQueryLevels = 106, - OpImageQuerySamples = 107, - OpConvertFToU = 109, - OpConvertFToS = 110, - OpConvertSToF = 111, - OpConvertUToF = 112, - OpUConvert = 113, - OpSConvert = 114, - OpFConvert = 115, - OpQuantizeToF16 = 116, - OpConvertPtrToU = 117, - OpSatConvertSToU = 118, - OpSatConvertUToS = 119, - OpConvertUToPtr = 120, - OpPtrCastToGeneric = 121, - OpGenericCastToPtr = 122, - OpGenericCastToPtrExplicit = 123, - OpBitcast = 124, - OpSNegate = 126, - OpFNegate = 127, - OpIAdd = 128, - OpFAdd = 129, - OpISub = 130, - OpFSub = 131, - OpIMul = 132, - OpFMul = 133, - OpUDiv = 134, - OpSDiv = 135, - OpFDiv = 136, - OpUMod = 137, - OpSRem = 138, - OpSMod = 139, - OpFRem = 140, - OpFMod = 141, - OpVectorTimesScalar = 142, - OpMatrixTimesScalar = 143, - OpVectorTimesMatrix = 144, - OpMatrixTimesVector = 145, - OpMatrixTimesMatrix = 146, - OpOuterProduct = 147, - OpDot = 148, - OpIAddCarry = 149, - OpISubBorrow = 150, - OpUMulExtended = 151, - OpSMulExtended = 152, - OpAny = 154, - OpAll = 155, - OpIsNan = 156, - OpIsInf = 157, - OpIsFinite = 158, - OpIsNormal = 159, - OpSignBitSet = 160, - OpLessOrGreater = 161, - OpOrdered = 162, - OpUnordered = 163, - OpLogicalEqual = 164, - OpLogicalNotEqual = 165, - OpLogicalOr = 166, - OpLogicalAnd = 167, - OpLogicalNot = 168, - OpSelect = 169, - OpIEqual = 170, - OpINotEqual = 171, - OpUGreaterThan = 172, - OpSGreaterThan = 173, - OpUGreaterThanEqual = 174, - OpSGreaterThanEqual = 175, - OpULessThan = 176, - OpSLessThan = 177, - OpULessThanEqual = 178, - OpSLessThanEqual = 179, - OpFOrdEqual = 180, - OpFUnordEqual = 181, - OpFOrdNotEqual = 182, - OpFUnordNotEqual = 183, - OpFOrdLessThan = 184, - OpFUnordLessThan = 185, - OpFOrdGreaterThan = 186, - OpFUnordGreaterThan = 187, - OpFOrdLessThanEqual = 188, - OpFUnordLessThanEqual = 189, - OpFOrdGreaterThanEqual = 190, - OpFUnordGreaterThanEqual = 191, - OpShiftRightLogical = 194, - OpShiftRightArithmetic = 195, - OpShiftLeftLogical = 196, - OpBitwiseOr = 197, - OpBitwiseXor = 198, - OpBitwiseAnd = 199, - OpNot = 200, - OpBitFieldInsert = 201, - OpBitFieldSExtract = 202, - OpBitFieldUExtract = 203, - OpBitReverse = 204, - OpBitCount = 205, - OpDPdx = 207, - OpDPdy = 208, - OpFwidth = 209, - OpDPdxFine = 210, - OpDPdyFine = 211, - OpFwidthFine = 212, - OpDPdxCoarse = 213, - OpDPdyCoarse = 214, - OpFwidthCoarse = 215, - OpEmitVertex = 218, - OpEndPrimitive = 219, - OpEmitStreamVertex = 220, - OpEndStreamPrimitive = 221, - OpControlBarrier = 224, - OpMemoryBarrier = 225, - OpAtomicLoad = 227, - OpAtomicStore = 228, - OpAtomicExchange = 229, - OpAtomicCompareExchange = 230, - OpAtomicCompareExchangeWeak = 231, - OpAtomicIIncrement = 232, - OpAtomicIDecrement = 233, - OpAtomicIAdd = 234, - OpAtomicISub = 235, - OpAtomicSMin = 236, - OpAtomicUMin = 237, - OpAtomicSMax = 238, - OpAtomicUMax = 239, - OpAtomicAnd = 240, - OpAtomicOr = 241, - OpAtomicXor = 242, - OpPhi = 245, - OpLoopMerge = 246, - OpSelectionMerge = 247, - OpLabel = 248, - OpBranch = 249, - OpBranchConditional = 250, - OpSwitch = 251, - OpKill = 252, - OpReturn = 253, - OpReturnValue = 254, - OpUnreachable = 255, - OpLifetimeStart = 256, - OpLifetimeStop = 257, - OpGroupAsyncCopy = 259, - OpGroupWaitEvents = 260, - OpGroupAll = 261, - OpGroupAny = 262, - OpGroupBroadcast = 263, - OpGroupIAdd = 264, - OpGroupFAdd = 265, - OpGroupFMin = 266, - OpGroupUMin = 267, - OpGroupSMin = 268, - OpGroupFMax = 269, - OpGroupUMax = 270, - OpGroupSMax = 271, - OpReadPipe = 274, - OpWritePipe = 275, - OpReservedReadPipe = 276, - OpReservedWritePipe = 277, - OpReserveReadPipePackets = 278, - OpReserveWritePipePackets = 279, - OpCommitReadPipe = 280, - OpCommitWritePipe = 281, - OpIsValidReserveId = 282, - OpGetNumPipePackets = 283, - OpGetMaxPipePackets = 284, - OpGroupReserveReadPipePackets = 285, - OpGroupReserveWritePipePackets = 286, - OpGroupCommitReadPipe = 287, - OpGroupCommitWritePipe = 288, - OpEnqueueMarker = 291, - OpEnqueueKernel = 292, - OpGetKernelNDrangeSubGroupCount = 293, - OpGetKernelNDrangeMaxSubGroupSize = 294, - OpGetKernelWorkGroupSize = 295, - OpGetKernelPreferredWorkGroupSizeMultiple = 296, - OpRetainEvent = 297, - OpReleaseEvent = 298, - OpCreateUserEvent = 299, - OpIsValidEvent = 300, - OpSetUserEventStatus = 301, - OpCaptureEventProfilingInfo = 302, - OpGetDefaultQueue = 303, - OpBuildNDRange = 304, - OpImageSparseSampleImplicitLod = 305, - OpImageSparseSampleExplicitLod = 306, - OpImageSparseSampleDrefImplicitLod = 307, - OpImageSparseSampleDrefExplicitLod = 308, - OpImageSparseSampleProjImplicitLod = 309, - OpImageSparseSampleProjExplicitLod = 310, - OpImageSparseSampleProjDrefImplicitLod = 311, - OpImageSparseSampleProjDrefExplicitLod = 312, - OpImageSparseFetch = 313, - OpImageSparseGather = 314, - OpImageSparseDrefGather = 315, - OpImageSparseTexelsResident = 316, - OpNoLine = 317, - OpAtomicFlagTestAndSet = 318, - OpAtomicFlagClear = 319, - OpImageSparseRead = 320, - OpSizeOf = 321, - OpTypePipeStorage = 322, - OpConstantPipeStorage = 323, - OpCreatePipeFromPipeStorage = 324, - OpGetKernelLocalSizeForSubgroupCount = 325, - OpGetKernelMaxNumSubgroups = 326, - OpTypeNamedBarrier = 327, - OpNamedBarrierInitialize = 328, - OpMemoryNamedBarrier = 329, - OpModuleProcessed = 330, - OpExecutionModeId = 331, - OpDecorateId = 332, - OpSubgroupBallotKHR = 4421, - OpSubgroupFirstInvocationKHR = 4422, - OpSubgroupAllKHR = 4428, - OpSubgroupAnyKHR = 4429, - OpSubgroupAllEqualKHR = 4430, - OpSubgroupReadInvocationKHR = 4432, - OpGroupIAddNonUniformAMD = 5000, - OpGroupFAddNonUniformAMD = 5001, - OpGroupFMinNonUniformAMD = 5002, - OpGroupUMinNonUniformAMD = 5003, - OpGroupSMinNonUniformAMD = 5004, - OpGroupFMaxNonUniformAMD = 5005, - OpGroupUMaxNonUniformAMD = 5006, - OpGroupSMaxNonUniformAMD = 5007, - OpFragmentMaskFetchAMD = 5011, - OpFragmentFetchAMD = 5012, - OpSubgroupShuffleINTEL = 5571, - OpSubgroupShuffleDownINTEL = 5572, - OpSubgroupShuffleUpINTEL = 5573, - OpSubgroupShuffleXorINTEL = 5574, - OpSubgroupBlockReadINTEL = 5575, - OpSubgroupBlockWriteINTEL = 5576, - OpSubgroupImageBlockReadINTEL = 5577, - OpSubgroupImageBlockWriteINTEL = 5578, - OpDecorateStringGOOGLE = 5632, - OpMemberDecorateStringGOOGLE = 5633, - }, - -} - diff --git a/Extern/3rdParty/shaderc/shaderc/include/spirv/1.2/spirv.py b/Extern/3rdParty/shaderc/shaderc/include/spirv/1.2/spirv.py deleted file mode 100644 index cefee4d..0000000 --- a/Extern/3rdParty/shaderc/shaderc/include/spirv/1.2/spirv.py +++ /dev/null @@ -1,977 +0,0 @@ -# Copyright (c) 2014-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. - -# This header is automatically generated by the same tool that creates -# the Binary Section of the SPIR-V specification. - -# Enumeration tokens for SPIR-V, in various styles: -# C, C++, C++11, JSON, Lua, Python -# -# - C will have tokens with a "Spv" prefix, e.g.: SpvSourceLanguageGLSL -# - C++ will have tokens in the "spv" name space, e.g.: spv::SourceLanguageGLSL -# - C++11 will use enum classes in the spv namespace, e.g.: spv::SourceLanguage::GLSL -# - Lua will use tables, e.g.: spv.SourceLanguage.GLSL -# - Python will use dictionaries, e.g.: spv['SourceLanguage']['GLSL'] -# -# Some tokens act like mask values, which can be OR'd together, -# while others are mutually exclusive. The mask-like ones have -# "Mask" in their name, and a parallel enum that has the shift -# amount (1 << x) for each corresponding enumerant. - -spv = { - 'MagicNumber' : 0x07230203, - 'Version' : 0x00010200, - 'Revision' : 2, - 'OpCodeMask' : 0xffff, - 'WordCountShift' : 16, - - 'SourceLanguage' : { - 'Unknown' : 0, - 'ESSL' : 1, - 'GLSL' : 2, - 'OpenCL_C' : 3, - 'OpenCL_CPP' : 4, - 'HLSL' : 5, - }, - - 'ExecutionModel' : { - 'Vertex' : 0, - 'TessellationControl' : 1, - 'TessellationEvaluation' : 2, - 'Geometry' : 3, - 'Fragment' : 4, - 'GLCompute' : 5, - 'Kernel' : 6, - }, - - 'AddressingModel' : { - 'Logical' : 0, - 'Physical32' : 1, - 'Physical64' : 2, - }, - - 'MemoryModel' : { - 'Simple' : 0, - 'GLSL450' : 1, - 'OpenCL' : 2, - }, - - 'ExecutionMode' : { - 'Invocations' : 0, - 'SpacingEqual' : 1, - 'SpacingFractionalEven' : 2, - 'SpacingFractionalOdd' : 3, - 'VertexOrderCw' : 4, - 'VertexOrderCcw' : 5, - 'PixelCenterInteger' : 6, - 'OriginUpperLeft' : 7, - 'OriginLowerLeft' : 8, - 'EarlyFragmentTests' : 9, - 'PointMode' : 10, - 'Xfb' : 11, - 'DepthReplacing' : 12, - 'DepthGreater' : 14, - 'DepthLess' : 15, - 'DepthUnchanged' : 16, - 'LocalSize' : 17, - 'LocalSizeHint' : 18, - 'InputPoints' : 19, - 'InputLines' : 20, - 'InputLinesAdjacency' : 21, - 'Triangles' : 22, - 'InputTrianglesAdjacency' : 23, - 'Quads' : 24, - 'Isolines' : 25, - 'OutputVertices' : 26, - 'OutputPoints' : 27, - 'OutputLineStrip' : 28, - 'OutputTriangleStrip' : 29, - 'VecTypeHint' : 30, - 'ContractionOff' : 31, - 'Initializer' : 33, - 'Finalizer' : 34, - 'SubgroupSize' : 35, - 'SubgroupsPerWorkgroup' : 36, - 'SubgroupsPerWorkgroupId' : 37, - 'LocalSizeId' : 38, - 'LocalSizeHintId' : 39, - 'PostDepthCoverage' : 4446, - 'StencilRefReplacingEXT' : 5027, - }, - - 'StorageClass' : { - 'UniformConstant' : 0, - 'Input' : 1, - 'Uniform' : 2, - 'Output' : 3, - 'Workgroup' : 4, - 'CrossWorkgroup' : 5, - 'Private' : 6, - 'Function' : 7, - 'Generic' : 8, - 'PushConstant' : 9, - 'AtomicCounter' : 10, - 'Image' : 11, - 'StorageBuffer' : 12, - }, - - 'Dim' : { - 'Dim1D' : 0, - 'Dim2D' : 1, - 'Dim3D' : 2, - 'Cube' : 3, - 'Rect' : 4, - 'Buffer' : 5, - 'SubpassData' : 6, - }, - - 'SamplerAddressingMode' : { - 'None' : 0, - 'ClampToEdge' : 1, - 'Clamp' : 2, - 'Repeat' : 3, - 'RepeatMirrored' : 4, - }, - - 'SamplerFilterMode' : { - 'Nearest' : 0, - 'Linear' : 1, - }, - - 'ImageFormat' : { - 'Unknown' : 0, - 'Rgba32f' : 1, - 'Rgba16f' : 2, - 'R32f' : 3, - 'Rgba8' : 4, - 'Rgba8Snorm' : 5, - 'Rg32f' : 6, - 'Rg16f' : 7, - 'R11fG11fB10f' : 8, - 'R16f' : 9, - 'Rgba16' : 10, - 'Rgb10A2' : 11, - 'Rg16' : 12, - 'Rg8' : 13, - 'R16' : 14, - 'R8' : 15, - 'Rgba16Snorm' : 16, - 'Rg16Snorm' : 17, - 'Rg8Snorm' : 18, - 'R16Snorm' : 19, - 'R8Snorm' : 20, - 'Rgba32i' : 21, - 'Rgba16i' : 22, - 'Rgba8i' : 23, - 'R32i' : 24, - 'Rg32i' : 25, - 'Rg16i' : 26, - 'Rg8i' : 27, - 'R16i' : 28, - 'R8i' : 29, - 'Rgba32ui' : 30, - 'Rgba16ui' : 31, - 'Rgba8ui' : 32, - 'R32ui' : 33, - 'Rgb10a2ui' : 34, - 'Rg32ui' : 35, - 'Rg16ui' : 36, - 'Rg8ui' : 37, - 'R16ui' : 38, - 'R8ui' : 39, - }, - - 'ImageChannelOrder' : { - 'R' : 0, - 'A' : 1, - 'RG' : 2, - 'RA' : 3, - 'RGB' : 4, - 'RGBA' : 5, - 'BGRA' : 6, - 'ARGB' : 7, - 'Intensity' : 8, - 'Luminance' : 9, - 'Rx' : 10, - 'RGx' : 11, - 'RGBx' : 12, - 'Depth' : 13, - 'DepthStencil' : 14, - 'sRGB' : 15, - 'sRGBx' : 16, - 'sRGBA' : 17, - 'sBGRA' : 18, - 'ABGR' : 19, - }, - - 'ImageChannelDataType' : { - 'SnormInt8' : 0, - 'SnormInt16' : 1, - 'UnormInt8' : 2, - 'UnormInt16' : 3, - 'UnormShort565' : 4, - 'UnormShort555' : 5, - 'UnormInt101010' : 6, - 'SignedInt8' : 7, - 'SignedInt16' : 8, - 'SignedInt32' : 9, - 'UnsignedInt8' : 10, - 'UnsignedInt16' : 11, - 'UnsignedInt32' : 12, - 'HalfFloat' : 13, - 'Float' : 14, - 'UnormInt24' : 15, - 'UnormInt101010_2' : 16, - }, - - 'ImageOperandsShift' : { - 'Bias' : 0, - 'Lod' : 1, - 'Grad' : 2, - 'ConstOffset' : 3, - 'Offset' : 4, - 'ConstOffsets' : 5, - 'Sample' : 6, - 'MinLod' : 7, - }, - - 'ImageOperandsMask' : { - 'MaskNone' : 0, - 'Bias' : 0x00000001, - 'Lod' : 0x00000002, - 'Grad' : 0x00000004, - 'ConstOffset' : 0x00000008, - 'Offset' : 0x00000010, - 'ConstOffsets' : 0x00000020, - 'Sample' : 0x00000040, - 'MinLod' : 0x00000080, - }, - - 'FPFastMathModeShift' : { - 'NotNaN' : 0, - 'NotInf' : 1, - 'NSZ' : 2, - 'AllowRecip' : 3, - 'Fast' : 4, - }, - - 'FPFastMathModeMask' : { - 'MaskNone' : 0, - 'NotNaN' : 0x00000001, - 'NotInf' : 0x00000002, - 'NSZ' : 0x00000004, - 'AllowRecip' : 0x00000008, - 'Fast' : 0x00000010, - }, - - 'FPRoundingMode' : { - 'RTE' : 0, - 'RTZ' : 1, - 'RTP' : 2, - 'RTN' : 3, - }, - - 'LinkageType' : { - 'Export' : 0, - 'Import' : 1, - }, - - 'AccessQualifier' : { - 'ReadOnly' : 0, - 'WriteOnly' : 1, - 'ReadWrite' : 2, - }, - - 'FunctionParameterAttribute' : { - 'Zext' : 0, - 'Sext' : 1, - 'ByVal' : 2, - 'Sret' : 3, - 'NoAlias' : 4, - 'NoCapture' : 5, - 'NoWrite' : 6, - 'NoReadWrite' : 7, - }, - - 'Decoration' : { - 'RelaxedPrecision' : 0, - 'SpecId' : 1, - 'Block' : 2, - 'BufferBlock' : 3, - 'RowMajor' : 4, - 'ColMajor' : 5, - 'ArrayStride' : 6, - 'MatrixStride' : 7, - 'GLSLShared' : 8, - 'GLSLPacked' : 9, - 'CPacked' : 10, - 'BuiltIn' : 11, - 'NoPerspective' : 13, - 'Flat' : 14, - 'Patch' : 15, - 'Centroid' : 16, - 'Sample' : 17, - 'Invariant' : 18, - 'Restrict' : 19, - 'Aliased' : 20, - 'Volatile' : 21, - 'Constant' : 22, - 'Coherent' : 23, - 'NonWritable' : 24, - 'NonReadable' : 25, - 'Uniform' : 26, - 'SaturatedConversion' : 28, - 'Stream' : 29, - 'Location' : 30, - 'Component' : 31, - 'Index' : 32, - 'Binding' : 33, - 'DescriptorSet' : 34, - 'Offset' : 35, - 'XfbBuffer' : 36, - 'XfbStride' : 37, - 'FuncParamAttr' : 38, - 'FPRoundingMode' : 39, - 'FPFastMathMode' : 40, - 'LinkageAttributes' : 41, - 'NoContraction' : 42, - 'InputAttachmentIndex' : 43, - 'Alignment' : 44, - 'MaxByteOffset' : 45, - 'AlignmentId' : 46, - 'MaxByteOffsetId' : 47, - 'ExplicitInterpAMD' : 4999, - 'OverrideCoverageNV' : 5248, - 'PassthroughNV' : 5250, - 'ViewportRelativeNV' : 5252, - 'SecondaryViewportRelativeNV' : 5256, - 'HlslCounterBufferGOOGLE' : 5634, - 'HlslSemanticGOOGLE' : 5635, - }, - - 'BuiltIn' : { - 'Position' : 0, - 'PointSize' : 1, - 'ClipDistance' : 3, - 'CullDistance' : 4, - 'VertexId' : 5, - 'InstanceId' : 6, - 'PrimitiveId' : 7, - 'InvocationId' : 8, - 'Layer' : 9, - 'ViewportIndex' : 10, - 'TessLevelOuter' : 11, - 'TessLevelInner' : 12, - 'TessCoord' : 13, - 'PatchVertices' : 14, - 'FragCoord' : 15, - 'PointCoord' : 16, - 'FrontFacing' : 17, - 'SampleId' : 18, - 'SamplePosition' : 19, - 'SampleMask' : 20, - 'FragDepth' : 22, - 'HelperInvocation' : 23, - 'NumWorkgroups' : 24, - 'WorkgroupSize' : 25, - 'WorkgroupId' : 26, - 'LocalInvocationId' : 27, - 'GlobalInvocationId' : 28, - 'LocalInvocationIndex' : 29, - 'WorkDim' : 30, - 'GlobalSize' : 31, - 'EnqueuedWorkgroupSize' : 32, - 'GlobalOffset' : 33, - 'GlobalLinearId' : 34, - 'SubgroupSize' : 36, - 'SubgroupMaxSize' : 37, - 'NumSubgroups' : 38, - 'NumEnqueuedSubgroups' : 39, - 'SubgroupId' : 40, - 'SubgroupLocalInvocationId' : 41, - 'VertexIndex' : 42, - 'InstanceIndex' : 43, - 'SubgroupEqMaskKHR' : 4416, - 'SubgroupGeMaskKHR' : 4417, - 'SubgroupGtMaskKHR' : 4418, - 'SubgroupLeMaskKHR' : 4419, - 'SubgroupLtMaskKHR' : 4420, - 'BaseVertex' : 4424, - 'BaseInstance' : 4425, - 'DrawIndex' : 4426, - 'DeviceIndex' : 4438, - 'ViewIndex' : 4440, - 'BaryCoordNoPerspAMD' : 4992, - 'BaryCoordNoPerspCentroidAMD' : 4993, - 'BaryCoordNoPerspSampleAMD' : 4994, - 'BaryCoordSmoothAMD' : 4995, - 'BaryCoordSmoothCentroidAMD' : 4996, - 'BaryCoordSmoothSampleAMD' : 4997, - 'BaryCoordPullModelAMD' : 4998, - 'FragStencilRefEXT' : 5014, - 'ViewportMaskNV' : 5253, - 'SecondaryPositionNV' : 5257, - 'SecondaryViewportMaskNV' : 5258, - 'PositionPerViewNV' : 5261, - 'ViewportMaskPerViewNV' : 5262, - }, - - 'SelectionControlShift' : { - 'Flatten' : 0, - 'DontFlatten' : 1, - }, - - 'SelectionControlMask' : { - 'MaskNone' : 0, - 'Flatten' : 0x00000001, - 'DontFlatten' : 0x00000002, - }, - - 'LoopControlShift' : { - 'Unroll' : 0, - 'DontUnroll' : 1, - 'DependencyInfinite' : 2, - 'DependencyLength' : 3, - }, - - 'LoopControlMask' : { - 'MaskNone' : 0, - 'Unroll' : 0x00000001, - 'DontUnroll' : 0x00000002, - 'DependencyInfinite' : 0x00000004, - 'DependencyLength' : 0x00000008, - }, - - 'FunctionControlShift' : { - 'Inline' : 0, - 'DontInline' : 1, - 'Pure' : 2, - 'Const' : 3, - }, - - 'FunctionControlMask' : { - 'MaskNone' : 0, - 'Inline' : 0x00000001, - 'DontInline' : 0x00000002, - 'Pure' : 0x00000004, - 'Const' : 0x00000008, - }, - - 'MemorySemanticsShift' : { - 'Acquire' : 1, - 'Release' : 2, - 'AcquireRelease' : 3, - 'SequentiallyConsistent' : 4, - 'UniformMemory' : 6, - 'SubgroupMemory' : 7, - 'WorkgroupMemory' : 8, - 'CrossWorkgroupMemory' : 9, - 'AtomicCounterMemory' : 10, - 'ImageMemory' : 11, - }, - - 'MemorySemanticsMask' : { - 'MaskNone' : 0, - 'Acquire' : 0x00000002, - 'Release' : 0x00000004, - 'AcquireRelease' : 0x00000008, - 'SequentiallyConsistent' : 0x00000010, - 'UniformMemory' : 0x00000040, - 'SubgroupMemory' : 0x00000080, - 'WorkgroupMemory' : 0x00000100, - 'CrossWorkgroupMemory' : 0x00000200, - 'AtomicCounterMemory' : 0x00000400, - 'ImageMemory' : 0x00000800, - }, - - 'MemoryAccessShift' : { - 'Volatile' : 0, - 'Aligned' : 1, - 'Nontemporal' : 2, - }, - - 'MemoryAccessMask' : { - 'MaskNone' : 0, - 'Volatile' : 0x00000001, - 'Aligned' : 0x00000002, - 'Nontemporal' : 0x00000004, - }, - - 'Scope' : { - 'CrossDevice' : 0, - 'Device' : 1, - 'Workgroup' : 2, - 'Subgroup' : 3, - 'Invocation' : 4, - }, - - 'GroupOperation' : { - 'Reduce' : 0, - 'InclusiveScan' : 1, - 'ExclusiveScan' : 2, - }, - - 'KernelEnqueueFlags' : { - 'NoWait' : 0, - 'WaitKernel' : 1, - 'WaitWorkGroup' : 2, - }, - - 'KernelProfilingInfoShift' : { - 'CmdExecTime' : 0, - }, - - 'KernelProfilingInfoMask' : { - 'MaskNone' : 0, - 'CmdExecTime' : 0x00000001, - }, - - 'Capability' : { - 'Matrix' : 0, - 'Shader' : 1, - 'Geometry' : 2, - 'Tessellation' : 3, - 'Addresses' : 4, - 'Linkage' : 5, - 'Kernel' : 6, - 'Vector16' : 7, - 'Float16Buffer' : 8, - 'Float16' : 9, - 'Float64' : 10, - 'Int64' : 11, - 'Int64Atomics' : 12, - 'ImageBasic' : 13, - 'ImageReadWrite' : 14, - 'ImageMipmap' : 15, - 'Pipes' : 17, - 'Groups' : 18, - 'DeviceEnqueue' : 19, - 'LiteralSampler' : 20, - 'AtomicStorage' : 21, - 'Int16' : 22, - 'TessellationPointSize' : 23, - 'GeometryPointSize' : 24, - 'ImageGatherExtended' : 25, - 'StorageImageMultisample' : 27, - 'UniformBufferArrayDynamicIndexing' : 28, - 'SampledImageArrayDynamicIndexing' : 29, - 'StorageBufferArrayDynamicIndexing' : 30, - 'StorageImageArrayDynamicIndexing' : 31, - 'ClipDistance' : 32, - 'CullDistance' : 33, - 'ImageCubeArray' : 34, - 'SampleRateShading' : 35, - 'ImageRect' : 36, - 'SampledRect' : 37, - 'GenericPointer' : 38, - 'Int8' : 39, - 'InputAttachment' : 40, - 'SparseResidency' : 41, - 'MinLod' : 42, - 'Sampled1D' : 43, - 'Image1D' : 44, - 'SampledCubeArray' : 45, - 'SampledBuffer' : 46, - 'ImageBuffer' : 47, - 'ImageMSArray' : 48, - 'StorageImageExtendedFormats' : 49, - 'ImageQuery' : 50, - 'DerivativeControl' : 51, - 'InterpolationFunction' : 52, - 'TransformFeedback' : 53, - 'GeometryStreams' : 54, - 'StorageImageReadWithoutFormat' : 55, - 'StorageImageWriteWithoutFormat' : 56, - 'MultiViewport' : 57, - 'SubgroupDispatch' : 58, - 'NamedBarrier' : 59, - 'PipeStorage' : 60, - 'SubgroupBallotKHR' : 4423, - 'DrawParameters' : 4427, - 'SubgroupVoteKHR' : 4431, - 'StorageBuffer16BitAccess' : 4433, - 'StorageUniformBufferBlock16' : 4433, - 'StorageUniform16' : 4434, - 'UniformAndStorageBuffer16BitAccess' : 4434, - 'StoragePushConstant16' : 4435, - 'StorageInputOutput16' : 4436, - 'DeviceGroup' : 4437, - 'MultiView' : 4439, - 'VariablePointersStorageBuffer' : 4441, - 'VariablePointers' : 4442, - 'AtomicStorageOps' : 4445, - 'SampleMaskPostDepthCoverage' : 4447, - 'ImageGatherBiasLodAMD' : 5009, - 'FragmentMaskAMD' : 5010, - 'StencilExportEXT' : 5013, - 'ImageReadWriteLodAMD' : 5015, - 'SampleMaskOverrideCoverageNV' : 5249, - 'GeometryShaderPassthroughNV' : 5251, - 'ShaderViewportIndexLayerEXT' : 5254, - 'ShaderViewportIndexLayerNV' : 5254, - 'ShaderViewportMaskNV' : 5255, - 'ShaderStereoViewNV' : 5259, - 'PerViewAttributesNV' : 5260, - 'SubgroupShuffleINTEL' : 5568, - 'SubgroupBufferBlockIOINTEL' : 5569, - 'SubgroupImageBlockIOINTEL' : 5570, - }, - - 'Op' : { - 'OpNop' : 0, - 'OpUndef' : 1, - 'OpSourceContinued' : 2, - 'OpSource' : 3, - 'OpSourceExtension' : 4, - 'OpName' : 5, - 'OpMemberName' : 6, - 'OpString' : 7, - 'OpLine' : 8, - 'OpExtension' : 10, - 'OpExtInstImport' : 11, - 'OpExtInst' : 12, - 'OpMemoryModel' : 14, - 'OpEntryPoint' : 15, - 'OpExecutionMode' : 16, - 'OpCapability' : 17, - 'OpTypeVoid' : 19, - 'OpTypeBool' : 20, - 'OpTypeInt' : 21, - 'OpTypeFloat' : 22, - 'OpTypeVector' : 23, - 'OpTypeMatrix' : 24, - 'OpTypeImage' : 25, - 'OpTypeSampler' : 26, - 'OpTypeSampledImage' : 27, - 'OpTypeArray' : 28, - 'OpTypeRuntimeArray' : 29, - 'OpTypeStruct' : 30, - 'OpTypeOpaque' : 31, - 'OpTypePointer' : 32, - 'OpTypeFunction' : 33, - 'OpTypeEvent' : 34, - 'OpTypeDeviceEvent' : 35, - 'OpTypeReserveId' : 36, - 'OpTypeQueue' : 37, - 'OpTypePipe' : 38, - 'OpTypeForwardPointer' : 39, - 'OpConstantTrue' : 41, - 'OpConstantFalse' : 42, - 'OpConstant' : 43, - 'OpConstantComposite' : 44, - 'OpConstantSampler' : 45, - 'OpConstantNull' : 46, - 'OpSpecConstantTrue' : 48, - 'OpSpecConstantFalse' : 49, - 'OpSpecConstant' : 50, - 'OpSpecConstantComposite' : 51, - 'OpSpecConstantOp' : 52, - 'OpFunction' : 54, - 'OpFunctionParameter' : 55, - 'OpFunctionEnd' : 56, - 'OpFunctionCall' : 57, - 'OpVariable' : 59, - 'OpImageTexelPointer' : 60, - 'OpLoad' : 61, - 'OpStore' : 62, - 'OpCopyMemory' : 63, - 'OpCopyMemorySized' : 64, - 'OpAccessChain' : 65, - 'OpInBoundsAccessChain' : 66, - 'OpPtrAccessChain' : 67, - 'OpArrayLength' : 68, - 'OpGenericPtrMemSemantics' : 69, - 'OpInBoundsPtrAccessChain' : 70, - 'OpDecorate' : 71, - 'OpMemberDecorate' : 72, - 'OpDecorationGroup' : 73, - 'OpGroupDecorate' : 74, - 'OpGroupMemberDecorate' : 75, - 'OpVectorExtractDynamic' : 77, - 'OpVectorInsertDynamic' : 78, - 'OpVectorShuffle' : 79, - 'OpCompositeConstruct' : 80, - 'OpCompositeExtract' : 81, - 'OpCompositeInsert' : 82, - 'OpCopyObject' : 83, - 'OpTranspose' : 84, - 'OpSampledImage' : 86, - 'OpImageSampleImplicitLod' : 87, - 'OpImageSampleExplicitLod' : 88, - 'OpImageSampleDrefImplicitLod' : 89, - 'OpImageSampleDrefExplicitLod' : 90, - 'OpImageSampleProjImplicitLod' : 91, - 'OpImageSampleProjExplicitLod' : 92, - 'OpImageSampleProjDrefImplicitLod' : 93, - 'OpImageSampleProjDrefExplicitLod' : 94, - 'OpImageFetch' : 95, - 'OpImageGather' : 96, - 'OpImageDrefGather' : 97, - 'OpImageRead' : 98, - 'OpImageWrite' : 99, - 'OpImage' : 100, - 'OpImageQueryFormat' : 101, - 'OpImageQueryOrder' : 102, - 'OpImageQuerySizeLod' : 103, - 'OpImageQuerySize' : 104, - 'OpImageQueryLod' : 105, - 'OpImageQueryLevels' : 106, - 'OpImageQuerySamples' : 107, - 'OpConvertFToU' : 109, - 'OpConvertFToS' : 110, - 'OpConvertSToF' : 111, - 'OpConvertUToF' : 112, - 'OpUConvert' : 113, - 'OpSConvert' : 114, - 'OpFConvert' : 115, - 'OpQuantizeToF16' : 116, - 'OpConvertPtrToU' : 117, - 'OpSatConvertSToU' : 118, - 'OpSatConvertUToS' : 119, - 'OpConvertUToPtr' : 120, - 'OpPtrCastToGeneric' : 121, - 'OpGenericCastToPtr' : 122, - 'OpGenericCastToPtrExplicit' : 123, - 'OpBitcast' : 124, - 'OpSNegate' : 126, - 'OpFNegate' : 127, - 'OpIAdd' : 128, - 'OpFAdd' : 129, - 'OpISub' : 130, - 'OpFSub' : 131, - 'OpIMul' : 132, - 'OpFMul' : 133, - 'OpUDiv' : 134, - 'OpSDiv' : 135, - 'OpFDiv' : 136, - 'OpUMod' : 137, - 'OpSRem' : 138, - 'OpSMod' : 139, - 'OpFRem' : 140, - 'OpFMod' : 141, - 'OpVectorTimesScalar' : 142, - 'OpMatrixTimesScalar' : 143, - 'OpVectorTimesMatrix' : 144, - 'OpMatrixTimesVector' : 145, - 'OpMatrixTimesMatrix' : 146, - 'OpOuterProduct' : 147, - 'OpDot' : 148, - 'OpIAddCarry' : 149, - 'OpISubBorrow' : 150, - 'OpUMulExtended' : 151, - 'OpSMulExtended' : 152, - 'OpAny' : 154, - 'OpAll' : 155, - 'OpIsNan' : 156, - 'OpIsInf' : 157, - 'OpIsFinite' : 158, - 'OpIsNormal' : 159, - 'OpSignBitSet' : 160, - 'OpLessOrGreater' : 161, - 'OpOrdered' : 162, - 'OpUnordered' : 163, - 'OpLogicalEqual' : 164, - 'OpLogicalNotEqual' : 165, - 'OpLogicalOr' : 166, - 'OpLogicalAnd' : 167, - 'OpLogicalNot' : 168, - 'OpSelect' : 169, - 'OpIEqual' : 170, - 'OpINotEqual' : 171, - 'OpUGreaterThan' : 172, - 'OpSGreaterThan' : 173, - 'OpUGreaterThanEqual' : 174, - 'OpSGreaterThanEqual' : 175, - 'OpULessThan' : 176, - 'OpSLessThan' : 177, - 'OpULessThanEqual' : 178, - 'OpSLessThanEqual' : 179, - 'OpFOrdEqual' : 180, - 'OpFUnordEqual' : 181, - 'OpFOrdNotEqual' : 182, - 'OpFUnordNotEqual' : 183, - 'OpFOrdLessThan' : 184, - 'OpFUnordLessThan' : 185, - 'OpFOrdGreaterThan' : 186, - 'OpFUnordGreaterThan' : 187, - 'OpFOrdLessThanEqual' : 188, - 'OpFUnordLessThanEqual' : 189, - 'OpFOrdGreaterThanEqual' : 190, - 'OpFUnordGreaterThanEqual' : 191, - 'OpShiftRightLogical' : 194, - 'OpShiftRightArithmetic' : 195, - 'OpShiftLeftLogical' : 196, - 'OpBitwiseOr' : 197, - 'OpBitwiseXor' : 198, - 'OpBitwiseAnd' : 199, - 'OpNot' : 200, - 'OpBitFieldInsert' : 201, - 'OpBitFieldSExtract' : 202, - 'OpBitFieldUExtract' : 203, - 'OpBitReverse' : 204, - 'OpBitCount' : 205, - 'OpDPdx' : 207, - 'OpDPdy' : 208, - 'OpFwidth' : 209, - 'OpDPdxFine' : 210, - 'OpDPdyFine' : 211, - 'OpFwidthFine' : 212, - 'OpDPdxCoarse' : 213, - 'OpDPdyCoarse' : 214, - 'OpFwidthCoarse' : 215, - 'OpEmitVertex' : 218, - 'OpEndPrimitive' : 219, - 'OpEmitStreamVertex' : 220, - 'OpEndStreamPrimitive' : 221, - 'OpControlBarrier' : 224, - 'OpMemoryBarrier' : 225, - 'OpAtomicLoad' : 227, - 'OpAtomicStore' : 228, - 'OpAtomicExchange' : 229, - 'OpAtomicCompareExchange' : 230, - 'OpAtomicCompareExchangeWeak' : 231, - 'OpAtomicIIncrement' : 232, - 'OpAtomicIDecrement' : 233, - 'OpAtomicIAdd' : 234, - 'OpAtomicISub' : 235, - 'OpAtomicSMin' : 236, - 'OpAtomicUMin' : 237, - 'OpAtomicSMax' : 238, - 'OpAtomicUMax' : 239, - 'OpAtomicAnd' : 240, - 'OpAtomicOr' : 241, - 'OpAtomicXor' : 242, - 'OpPhi' : 245, - 'OpLoopMerge' : 246, - 'OpSelectionMerge' : 247, - 'OpLabel' : 248, - 'OpBranch' : 249, - 'OpBranchConditional' : 250, - 'OpSwitch' : 251, - 'OpKill' : 252, - 'OpReturn' : 253, - 'OpReturnValue' : 254, - 'OpUnreachable' : 255, - 'OpLifetimeStart' : 256, - 'OpLifetimeStop' : 257, - 'OpGroupAsyncCopy' : 259, - 'OpGroupWaitEvents' : 260, - 'OpGroupAll' : 261, - 'OpGroupAny' : 262, - 'OpGroupBroadcast' : 263, - 'OpGroupIAdd' : 264, - 'OpGroupFAdd' : 265, - 'OpGroupFMin' : 266, - 'OpGroupUMin' : 267, - 'OpGroupSMin' : 268, - 'OpGroupFMax' : 269, - 'OpGroupUMax' : 270, - 'OpGroupSMax' : 271, - 'OpReadPipe' : 274, - 'OpWritePipe' : 275, - 'OpReservedReadPipe' : 276, - 'OpReservedWritePipe' : 277, - 'OpReserveReadPipePackets' : 278, - 'OpReserveWritePipePackets' : 279, - 'OpCommitReadPipe' : 280, - 'OpCommitWritePipe' : 281, - 'OpIsValidReserveId' : 282, - 'OpGetNumPipePackets' : 283, - 'OpGetMaxPipePackets' : 284, - 'OpGroupReserveReadPipePackets' : 285, - 'OpGroupReserveWritePipePackets' : 286, - 'OpGroupCommitReadPipe' : 287, - 'OpGroupCommitWritePipe' : 288, - 'OpEnqueueMarker' : 291, - 'OpEnqueueKernel' : 292, - 'OpGetKernelNDrangeSubGroupCount' : 293, - 'OpGetKernelNDrangeMaxSubGroupSize' : 294, - 'OpGetKernelWorkGroupSize' : 295, - 'OpGetKernelPreferredWorkGroupSizeMultiple' : 296, - 'OpRetainEvent' : 297, - 'OpReleaseEvent' : 298, - 'OpCreateUserEvent' : 299, - 'OpIsValidEvent' : 300, - 'OpSetUserEventStatus' : 301, - 'OpCaptureEventProfilingInfo' : 302, - 'OpGetDefaultQueue' : 303, - 'OpBuildNDRange' : 304, - 'OpImageSparseSampleImplicitLod' : 305, - 'OpImageSparseSampleExplicitLod' : 306, - 'OpImageSparseSampleDrefImplicitLod' : 307, - 'OpImageSparseSampleDrefExplicitLod' : 308, - 'OpImageSparseSampleProjImplicitLod' : 309, - 'OpImageSparseSampleProjExplicitLod' : 310, - 'OpImageSparseSampleProjDrefImplicitLod' : 311, - 'OpImageSparseSampleProjDrefExplicitLod' : 312, - 'OpImageSparseFetch' : 313, - 'OpImageSparseGather' : 314, - 'OpImageSparseDrefGather' : 315, - 'OpImageSparseTexelsResident' : 316, - 'OpNoLine' : 317, - 'OpAtomicFlagTestAndSet' : 318, - 'OpAtomicFlagClear' : 319, - 'OpImageSparseRead' : 320, - 'OpSizeOf' : 321, - 'OpTypePipeStorage' : 322, - 'OpConstantPipeStorage' : 323, - 'OpCreatePipeFromPipeStorage' : 324, - 'OpGetKernelLocalSizeForSubgroupCount' : 325, - 'OpGetKernelMaxNumSubgroups' : 326, - 'OpTypeNamedBarrier' : 327, - 'OpNamedBarrierInitialize' : 328, - 'OpMemoryNamedBarrier' : 329, - 'OpModuleProcessed' : 330, - 'OpExecutionModeId' : 331, - 'OpDecorateId' : 332, - 'OpSubgroupBallotKHR' : 4421, - 'OpSubgroupFirstInvocationKHR' : 4422, - 'OpSubgroupAllKHR' : 4428, - 'OpSubgroupAnyKHR' : 4429, - 'OpSubgroupAllEqualKHR' : 4430, - 'OpSubgroupReadInvocationKHR' : 4432, - 'OpGroupIAddNonUniformAMD' : 5000, - 'OpGroupFAddNonUniformAMD' : 5001, - 'OpGroupFMinNonUniformAMD' : 5002, - 'OpGroupUMinNonUniformAMD' : 5003, - 'OpGroupSMinNonUniformAMD' : 5004, - 'OpGroupFMaxNonUniformAMD' : 5005, - 'OpGroupUMaxNonUniformAMD' : 5006, - 'OpGroupSMaxNonUniformAMD' : 5007, - 'OpFragmentMaskFetchAMD' : 5011, - 'OpFragmentFetchAMD' : 5012, - 'OpSubgroupShuffleINTEL' : 5571, - 'OpSubgroupShuffleDownINTEL' : 5572, - 'OpSubgroupShuffleUpINTEL' : 5573, - 'OpSubgroupShuffleXorINTEL' : 5574, - 'OpSubgroupBlockReadINTEL' : 5575, - 'OpSubgroupBlockWriteINTEL' : 5576, - 'OpSubgroupImageBlockReadINTEL' : 5577, - 'OpSubgroupImageBlockWriteINTEL' : 5578, - 'OpDecorateStringGOOGLE' : 5632, - 'OpMemberDecorateStringGOOGLE' : 5633, - }, - -} - diff --git a/Extern/3rdParty/shaderc/shaderc/include/spirv/spir-v.xml b/Extern/3rdParty/shaderc/shaderc/include/spirv/spir-v.xml deleted file mode 100644 index 989b996..0000000 --- a/Extern/3rdParty/shaderc/shaderc/include/spirv/spir-v.xml +++ /dev/null @@ -1,293 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/Extern/3rdParty/shaderc/shaderc/include/spirv/unified1/AMD_gcn_shader.h b/Extern/3rdParty/shaderc/shaderc/include/spirv/unified1/AMD_gcn_shader.h deleted file mode 100644 index 80165ae..0000000 --- a/Extern/3rdParty/shaderc/shaderc/include/spirv/unified1/AMD_gcn_shader.h +++ /dev/null @@ -1,52 +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_AMD_gcn_shader_H_ -#define SPIRV_UNIFIED1_AMD_gcn_shader_H_ - -#ifdef __cplusplus -extern "C" { -#endif - -enum { - AMD_gcn_shaderRevision = 2, - AMD_gcn_shaderRevision_BitWidthPadding = 0x7fffffff -}; - -enum AMD_gcn_shaderInstructions { - AMD_gcn_shaderCubeFaceIndexAMD = 1, - AMD_gcn_shaderCubeFaceCoordAMD = 2, - AMD_gcn_shaderTimeAMD = 3, - AMD_gcn_shaderInstructionsMax = 0x7fffffff -}; - - -#ifdef __cplusplus -} -#endif - -#endif // SPIRV_UNIFIED1_AMD_gcn_shader_H_ diff --git a/Extern/3rdParty/shaderc/shaderc/include/spirv/unified1/AMD_shader_ballot.h b/Extern/3rdParty/shaderc/shaderc/include/spirv/unified1/AMD_shader_ballot.h deleted file mode 100644 index 8a8bb6e..0000000 --- a/Extern/3rdParty/shaderc/shaderc/include/spirv/unified1/AMD_shader_ballot.h +++ /dev/null @@ -1,53 +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_AMD_shader_ballot_H_ -#define SPIRV_UNIFIED1_AMD_shader_ballot_H_ - -#ifdef __cplusplus -extern "C" { -#endif - -enum { - AMD_shader_ballotRevision = 5, - AMD_shader_ballotRevision_BitWidthPadding = 0x7fffffff -}; - -enum AMD_shader_ballotInstructions { - AMD_shader_ballotSwizzleInvocationsAMD = 1, - AMD_shader_ballotSwizzleInvocationsMaskedAMD = 2, - AMD_shader_ballotWriteInvocationAMD = 3, - AMD_shader_ballotMbcntAMD = 4, - AMD_shader_ballotInstructionsMax = 0x7fffffff -}; - - -#ifdef __cplusplus -} -#endif - -#endif // SPIRV_UNIFIED1_AMD_shader_ballot_H_ diff --git a/Extern/3rdParty/shaderc/shaderc/include/spirv/unified1/AMD_shader_explicit_vertex_parameter.h b/Extern/3rdParty/shaderc/shaderc/include/spirv/unified1/AMD_shader_explicit_vertex_parameter.h deleted file mode 100644 index 12b6480..0000000 --- a/Extern/3rdParty/shaderc/shaderc/include/spirv/unified1/AMD_shader_explicit_vertex_parameter.h +++ /dev/null @@ -1,50 +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_AMD_shader_explicit_vertex_parameter_H_ -#define SPIRV_UNIFIED1_AMD_shader_explicit_vertex_parameter_H_ - -#ifdef __cplusplus -extern "C" { -#endif - -enum { - AMD_shader_explicit_vertex_parameterRevision = 4, - AMD_shader_explicit_vertex_parameterRevision_BitWidthPadding = 0x7fffffff -}; - -enum AMD_shader_explicit_vertex_parameterInstructions { - AMD_shader_explicit_vertex_parameterInterpolateAtVertexAMD = 1, - AMD_shader_explicit_vertex_parameterInstructionsMax = 0x7fffffff -}; - - -#ifdef __cplusplus -} -#endif - -#endif // SPIRV_UNIFIED1_AMD_shader_explicit_vertex_parameter_H_ diff --git a/Extern/3rdParty/shaderc/shaderc/include/spirv/unified1/AMD_shader_trinary_minmax.h b/Extern/3rdParty/shaderc/shaderc/include/spirv/unified1/AMD_shader_trinary_minmax.h deleted file mode 100644 index 1b14997..0000000 --- a/Extern/3rdParty/shaderc/shaderc/include/spirv/unified1/AMD_shader_trinary_minmax.h +++ /dev/null @@ -1,58 +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_AMD_shader_trinary_minmax_H_ -#define SPIRV_UNIFIED1_AMD_shader_trinary_minmax_H_ - -#ifdef __cplusplus -extern "C" { -#endif - -enum { - AMD_shader_trinary_minmaxRevision = 4, - AMD_shader_trinary_minmaxRevision_BitWidthPadding = 0x7fffffff -}; - -enum AMD_shader_trinary_minmaxInstructions { - AMD_shader_trinary_minmaxFMin3AMD = 1, - AMD_shader_trinary_minmaxUMin3AMD = 2, - AMD_shader_trinary_minmaxSMin3AMD = 3, - AMD_shader_trinary_minmaxFMax3AMD = 4, - AMD_shader_trinary_minmaxUMax3AMD = 5, - AMD_shader_trinary_minmaxSMax3AMD = 6, - AMD_shader_trinary_minmaxFMid3AMD = 7, - AMD_shader_trinary_minmaxUMid3AMD = 8, - AMD_shader_trinary_minmaxSMid3AMD = 9, - AMD_shader_trinary_minmaxInstructionsMax = 0x7fffffff -}; - - -#ifdef __cplusplus -} -#endif - -#endif // SPIRV_UNIFIED1_AMD_shader_trinary_minmax_H_ diff --git a/Extern/3rdParty/shaderc/shaderc/include/spirv/unified1/DebugInfo.h b/Extern/3rdParty/shaderc/shaderc/include/spirv/unified1/DebugInfo.h deleted file mode 100644 index 4657556..0000000 --- a/Extern/3rdParty/shaderc/shaderc/include/spirv/unified1/DebugInfo.h +++ /dev/null @@ -1,144 +0,0 @@ -// Copyright (c) 2017 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_DebugInfo_H_ -#define SPIRV_UNIFIED1_DebugInfo_H_ - -#ifdef __cplusplus -extern "C" { -#endif - -enum { - DebugInfoVersion = 100, - DebugInfoVersion_BitWidthPadding = 0x7fffffff -}; -enum { - DebugInfoRevision = 1, - DebugInfoRevision_BitWidthPadding = 0x7fffffff -}; - -enum DebugInfoInstructions { - DebugInfoDebugInfoNone = 0, - DebugInfoDebugCompilationUnit = 1, - DebugInfoDebugTypeBasic = 2, - DebugInfoDebugTypePointer = 3, - DebugInfoDebugTypeQualifier = 4, - DebugInfoDebugTypeArray = 5, - DebugInfoDebugTypeVector = 6, - DebugInfoDebugTypedef = 7, - DebugInfoDebugTypeFunction = 8, - DebugInfoDebugTypeEnum = 9, - DebugInfoDebugTypeComposite = 10, - DebugInfoDebugTypeMember = 11, - DebugInfoDebugTypeInheritance = 12, - DebugInfoDebugTypePtrToMember = 13, - DebugInfoDebugTypeTemplate = 14, - DebugInfoDebugTypeTemplateParameter = 15, - DebugInfoDebugTypeTemplateTemplateParameter = 16, - DebugInfoDebugTypeTemplateParameterPack = 17, - DebugInfoDebugGlobalVariable = 18, - DebugInfoDebugFunctionDeclaration = 19, - DebugInfoDebugFunction = 20, - DebugInfoDebugLexicalBlock = 21, - DebugInfoDebugLexicalBlockDiscriminator = 22, - DebugInfoDebugScope = 23, - DebugInfoDebugNoScope = 24, - DebugInfoDebugInlinedAt = 25, - DebugInfoDebugLocalVariable = 26, - DebugInfoDebugInlinedVariable = 27, - DebugInfoDebugDeclare = 28, - DebugInfoDebugValue = 29, - DebugInfoDebugOperation = 30, - DebugInfoDebugExpression = 31, - DebugInfoDebugMacroDef = 32, - DebugInfoDebugMacroUndef = 33, - DebugInfoInstructionsMax = 0x7fffffff -}; - - -enum DebugInfoDebugInfoFlags { - DebugInfoNone = 0x0000, - DebugInfoFlagIsProtected = 0x01, - DebugInfoFlagIsPrivate = 0x02, - DebugInfoFlagIsPublic = 0x03, - DebugInfoFlagIsLocal = 0x04, - DebugInfoFlagIsDefinition = 0x08, - DebugInfoFlagFwdDecl = 0x10, - DebugInfoFlagArtificial = 0x20, - DebugInfoFlagExplicit = 0x40, - DebugInfoFlagPrototyped = 0x80, - DebugInfoFlagObjectPointer = 0x100, - DebugInfoFlagStaticMember = 0x200, - DebugInfoFlagIndirectVariable = 0x400, - DebugInfoFlagLValueReference = 0x800, - DebugInfoFlagRValueReference = 0x1000, - DebugInfoFlagIsOptimized = 0x2000, - DebugInfoDebugInfoFlagsMax = 0x7fffffff -}; - -enum DebugInfoDebugBaseTypeAttributeEncoding { - DebugInfoUnspecified = 0, - DebugInfoAddress = 1, - DebugInfoBoolean = 2, - DebugInfoFloat = 4, - DebugInfoSigned = 5, - DebugInfoSignedChar = 6, - DebugInfoUnsigned = 7, - DebugInfoUnsignedChar = 8, - DebugInfoDebugBaseTypeAttributeEncodingMax = 0x7fffffff -}; - -enum DebugInfoDebugCompositeType { - DebugInfoClass = 0, - DebugInfoStructure = 1, - DebugInfoUnion = 2, - DebugInfoDebugCompositeTypeMax = 0x7fffffff -}; - -enum DebugInfoDebugTypeQualifier { - DebugInfoConstType = 0, - DebugInfoVolatileType = 1, - DebugInfoRestrictType = 2, - DebugInfoDebugTypeQualifierMax = 0x7fffffff -}; - -enum DebugInfoDebugOperation { - DebugInfoDeref = 0, - DebugInfoPlus = 1, - DebugInfoMinus = 2, - DebugInfoPlusUconst = 3, - DebugInfoBitPiece = 4, - DebugInfoSwap = 5, - DebugInfoXderef = 6, - DebugInfoStackValue = 7, - DebugInfoConstu = 8, - DebugInfoDebugOperationMax = 0x7fffffff -}; - - -#ifdef __cplusplus -} -#endif - -#endif // SPIRV_UNIFIED1_DebugInfo_H_ diff --git a/Extern/3rdParty/shaderc/shaderc/include/spirv/unified1/GLSL.std.450.h b/Extern/3rdParty/shaderc/shaderc/include/spirv/unified1/GLSL.std.450.h deleted file mode 100644 index 54cc00e..0000000 --- a/Extern/3rdParty/shaderc/shaderc/include/spirv/unified1/GLSL.std.450.h +++ /dev/null @@ -1,131 +0,0 @@ -/* -** Copyright (c) 2014-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. -*/ - -#ifndef GLSLstd450_H -#define GLSLstd450_H - -static const int GLSLstd450Version = 100; -static const int GLSLstd450Revision = 3; - -enum GLSLstd450 { - GLSLstd450Bad = 0, // Don't use - - GLSLstd450Round = 1, - GLSLstd450RoundEven = 2, - GLSLstd450Trunc = 3, - GLSLstd450FAbs = 4, - GLSLstd450SAbs = 5, - GLSLstd450FSign = 6, - GLSLstd450SSign = 7, - GLSLstd450Floor = 8, - GLSLstd450Ceil = 9, - GLSLstd450Fract = 10, - - GLSLstd450Radians = 11, - GLSLstd450Degrees = 12, - GLSLstd450Sin = 13, - GLSLstd450Cos = 14, - GLSLstd450Tan = 15, - GLSLstd450Asin = 16, - GLSLstd450Acos = 17, - GLSLstd450Atan = 18, - GLSLstd450Sinh = 19, - GLSLstd450Cosh = 20, - GLSLstd450Tanh = 21, - GLSLstd450Asinh = 22, - GLSLstd450Acosh = 23, - GLSLstd450Atanh = 24, - GLSLstd450Atan2 = 25, - - GLSLstd450Pow = 26, - GLSLstd450Exp = 27, - GLSLstd450Log = 28, - GLSLstd450Exp2 = 29, - GLSLstd450Log2 = 30, - GLSLstd450Sqrt = 31, - GLSLstd450InverseSqrt = 32, - - GLSLstd450Determinant = 33, - GLSLstd450MatrixInverse = 34, - - GLSLstd450Modf = 35, // second operand needs an OpVariable to write to - GLSLstd450ModfStruct = 36, // no OpVariable operand - GLSLstd450FMin = 37, - GLSLstd450UMin = 38, - GLSLstd450SMin = 39, - GLSLstd450FMax = 40, - GLSLstd450UMax = 41, - GLSLstd450SMax = 42, - GLSLstd450FClamp = 43, - GLSLstd450UClamp = 44, - GLSLstd450SClamp = 45, - GLSLstd450FMix = 46, - GLSLstd450IMix = 47, // Reserved - GLSLstd450Step = 48, - GLSLstd450SmoothStep = 49, - - GLSLstd450Fma = 50, - GLSLstd450Frexp = 51, // second operand needs an OpVariable to write to - GLSLstd450FrexpStruct = 52, // no OpVariable operand - GLSLstd450Ldexp = 53, - - GLSLstd450PackSnorm4x8 = 54, - GLSLstd450PackUnorm4x8 = 55, - GLSLstd450PackSnorm2x16 = 56, - GLSLstd450PackUnorm2x16 = 57, - GLSLstd450PackHalf2x16 = 58, - GLSLstd450PackDouble2x32 = 59, - GLSLstd450UnpackSnorm2x16 = 60, - GLSLstd450UnpackUnorm2x16 = 61, - GLSLstd450UnpackHalf2x16 = 62, - GLSLstd450UnpackSnorm4x8 = 63, - GLSLstd450UnpackUnorm4x8 = 64, - GLSLstd450UnpackDouble2x32 = 65, - - GLSLstd450Length = 66, - GLSLstd450Distance = 67, - GLSLstd450Cross = 68, - GLSLstd450Normalize = 69, - GLSLstd450FaceForward = 70, - GLSLstd450Reflect = 71, - GLSLstd450Refract = 72, - - GLSLstd450FindILsb = 73, - GLSLstd450FindSMsb = 74, - GLSLstd450FindUMsb = 75, - - GLSLstd450InterpolateAtCentroid = 76, - GLSLstd450InterpolateAtSample = 77, - GLSLstd450InterpolateAtOffset = 78, - - GLSLstd450NMin = 79, - GLSLstd450NMax = 80, - GLSLstd450NClamp = 81, - - GLSLstd450Count -}; - -#endif // #ifndef GLSLstd450_H diff --git a/Extern/3rdParty/shaderc/shaderc/include/spirv/unified1/NonSemanticClspvReflection.h b/Extern/3rdParty/shaderc/shaderc/include/spirv/unified1/NonSemanticClspvReflection.h deleted file mode 100644 index 1a31549..0000000 --- a/Extern/3rdParty/shaderc/shaderc/include/spirv/unified1/NonSemanticClspvReflection.h +++ /dev/null @@ -1,96 +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 = 5, - 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, - NonSemanticClspvReflectionSpecConstantSubgroupMaxSize = 25, - NonSemanticClspvReflectionArgumentPointerPushConstant = 26, - NonSemanticClspvReflectionArgumentPointerUniform = 27, - NonSemanticClspvReflectionProgramScopeVariablesStorageBuffer = 28, - NonSemanticClspvReflectionProgramScopeVariablePointerRelocation = 29, - NonSemanticClspvReflectionImageArgumentInfoChannelOrderPushConstant = 30, - NonSemanticClspvReflectionImageArgumentInfoChannelDataTypePushConstant = 31, - NonSemanticClspvReflectionImageArgumentInfoChannelOrderUniform = 32, - NonSemanticClspvReflectionImageArgumentInfoChannelDataTypeUniform = 33, - NonSemanticClspvReflectionArgumentStorageTexelBuffer = 34, - NonSemanticClspvReflectionArgumentUniformTexelBuffer = 35, - NonSemanticClspvReflectionConstantDataPointerPushConstant = 36, - NonSemanticClspvReflectionProgramScopeVariablePointerPushConstant = 37, - NonSemanticClspvReflectionPrintfInfo = 38, - NonSemanticClspvReflectionPrintfBufferStorageBuffer = 39, - NonSemanticClspvReflectionPrintfBufferPointerPushConstant = 40, - NonSemanticClspvReflectionInstructionsMax = 0x7fffffff -}; - - -enum NonSemanticClspvReflectionKernelPropertyFlags { - NonSemanticClspvReflectionNone = 0x0, - NonSemanticClspvReflectionMayUsePrintf = 0x1, - NonSemanticClspvReflectionKernelPropertyFlagsMax = 0x7fffffff -}; - - -#ifdef __cplusplus -} -#endif - -#endif // SPIRV_UNIFIED1_NonSemanticClspvReflection_H_ diff --git a/Extern/3rdParty/shaderc/shaderc/include/spirv/unified1/NonSemanticDebugBreak.h b/Extern/3rdParty/shaderc/shaderc/include/spirv/unified1/NonSemanticDebugBreak.h deleted file mode 100644 index 6ec2b5b..0000000 --- a/Extern/3rdParty/shaderc/shaderc/include/spirv/unified1/NonSemanticDebugBreak.h +++ /dev/null @@ -1,50 +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_NonSemanticDebugBreak_H_ -#define SPIRV_UNIFIED1_NonSemanticDebugBreak_H_ - -#ifdef __cplusplus -extern "C" { -#endif - -enum { - NonSemanticDebugBreakRevision = 1, - NonSemanticDebugBreakRevision_BitWidthPadding = 0x7fffffff -}; - -enum NonSemanticDebugBreakInstructions { - NonSemanticDebugBreakDebugBreak = 1, - NonSemanticDebugBreakInstructionsMax = 0x7fffffff -}; - - -#ifdef __cplusplus -} -#endif - -#endif // SPIRV_UNIFIED1_NonSemanticDebugBreak_H_ diff --git a/Extern/3rdParty/shaderc/shaderc/include/spirv/unified1/NonSemanticDebugPrintf.h b/Extern/3rdParty/shaderc/shaderc/include/spirv/unified1/NonSemanticDebugPrintf.h deleted file mode 100644 index 83796d7..0000000 --- a/Extern/3rdParty/shaderc/shaderc/include/spirv/unified1/NonSemanticDebugPrintf.h +++ /dev/null @@ -1,50 +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_NonSemanticDebugPrintf_H_ -#define SPIRV_UNIFIED1_NonSemanticDebugPrintf_H_ - -#ifdef __cplusplus -extern "C" { -#endif - -enum { - NonSemanticDebugPrintfRevision = 1, - NonSemanticDebugPrintfRevision_BitWidthPadding = 0x7fffffff -}; - -enum NonSemanticDebugPrintfInstructions { - NonSemanticDebugPrintfDebugPrintf = 1, - NonSemanticDebugPrintfInstructionsMax = 0x7fffffff -}; - - -#ifdef __cplusplus -} -#endif - -#endif // SPIRV_UNIFIED1_NonSemanticDebugPrintf_H_ diff --git a/Extern/3rdParty/shaderc/shaderc/include/spirv/unified1/NonSemanticShaderDebugInfo100.h b/Extern/3rdParty/shaderc/shaderc/include/spirv/unified1/NonSemanticShaderDebugInfo100.h deleted file mode 100644 index c52f32f..0000000 --- a/Extern/3rdParty/shaderc/shaderc/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/Extern/3rdParty/shaderc/shaderc/include/spirv/unified1/OpenCL.std.h b/Extern/3rdParty/shaderc/shaderc/include/spirv/unified1/OpenCL.std.h deleted file mode 100644 index 2745e30..0000000 --- a/Extern/3rdParty/shaderc/shaderc/include/spirv/unified1/OpenCL.std.h +++ /dev/null @@ -1,401 +0,0 @@ -/* -** Copyright (c) 2015-2019 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 OPENCLstd_H -#define OPENCLstd_H - -#ifdef __cplusplus -namespace OpenCLLIB { - -enum Entrypoints { - - // Section 2.1: Math extended instructions - Acos = 0, - Acosh = 1, - Acospi = 2, - Asin = 3, - Asinh = 4, - Asinpi = 5, - Atan = 6, - Atan2 = 7, - Atanh = 8, - Atanpi = 9, - Atan2pi = 10, - Cbrt = 11, - Ceil = 12, - Copysign = 13, - Cos = 14, - Cosh = 15, - Cospi = 16, - Erfc = 17, - Erf = 18, - Exp = 19, - Exp2 = 20, - Exp10 = 21, - Expm1 = 22, - Fabs = 23, - Fdim = 24, - Floor = 25, - Fma = 26, - Fmax = 27, - Fmin = 28, - Fmod = 29, - Fract = 30, - Frexp = 31, - Hypot = 32, - Ilogb = 33, - Ldexp = 34, - Lgamma = 35, - Lgamma_r = 36, - Log = 37, - Log2 = 38, - Log10 = 39, - Log1p = 40, - Logb = 41, - Mad = 42, - Maxmag = 43, - Minmag = 44, - Modf = 45, - Nan = 46, - Nextafter = 47, - Pow = 48, - Pown = 49, - Powr = 50, - Remainder = 51, - Remquo = 52, - Rint = 53, - Rootn = 54, - Round = 55, - Rsqrt = 56, - Sin = 57, - Sincos = 58, - Sinh = 59, - Sinpi = 60, - Sqrt = 61, - Tan = 62, - Tanh = 63, - Tanpi = 64, - Tgamma = 65, - Trunc = 66, - Half_cos = 67, - Half_divide = 68, - Half_exp = 69, - Half_exp2 = 70, - Half_exp10 = 71, - Half_log = 72, - Half_log2 = 73, - Half_log10 = 74, - Half_powr = 75, - Half_recip = 76, - Half_rsqrt = 77, - Half_sin = 78, - Half_sqrt = 79, - Half_tan = 80, - Native_cos = 81, - Native_divide = 82, - Native_exp = 83, - Native_exp2 = 84, - Native_exp10 = 85, - Native_log = 86, - Native_log2 = 87, - Native_log10 = 88, - Native_powr = 89, - Native_recip = 90, - Native_rsqrt = 91, - Native_sin = 92, - Native_sqrt = 93, - Native_tan = 94, - - // Section 2.2: Integer instructions - SAbs = 141, - SAbs_diff = 142, - SAdd_sat = 143, - UAdd_sat = 144, - SHadd = 145, - UHadd = 146, - SRhadd = 147, - URhadd = 148, - SClamp = 149, - UClamp = 150, - Clz = 151, - Ctz = 152, - SMad_hi = 153, - UMad_sat = 154, - SMad_sat = 155, - SMax = 156, - UMax = 157, - SMin = 158, - UMin = 159, - SMul_hi = 160, - Rotate = 161, - SSub_sat = 162, - USub_sat = 163, - U_Upsample = 164, - S_Upsample = 165, - Popcount = 166, - SMad24 = 167, - UMad24 = 168, - SMul24 = 169, - UMul24 = 170, - UAbs = 201, - UAbs_diff = 202, - UMul_hi = 203, - UMad_hi = 204, - - // Section 2.3: Common instructions - FClamp = 95, - Degrees = 96, - FMax_common = 97, - FMin_common = 98, - Mix = 99, - Radians = 100, - Step = 101, - Smoothstep = 102, - Sign = 103, - - // Section 2.4: Geometric instructions - Cross = 104, - Distance = 105, - Length = 106, - Normalize = 107, - Fast_distance = 108, - Fast_length = 109, - Fast_normalize = 110, - - // Section 2.5: Relational instructions - Bitselect = 186, - Select = 187, - - // Section 2.6: Vector Data Load and Store instructions - Vloadn = 171, - Vstoren = 172, - Vload_half = 173, - Vload_halfn = 174, - Vstore_half = 175, - Vstore_half_r = 176, - Vstore_halfn = 177, - Vstore_halfn_r = 178, - Vloada_halfn = 179, - Vstorea_halfn = 180, - Vstorea_halfn_r = 181, - - // Section 2.7: Miscellaneous Vector instructions - Shuffle = 182, - Shuffle2 = 183, - - // Section 2.8: Misc instructions - Printf = 184, - Prefetch = 185, -}; - -} // end namespace OpenCLLIB - -#else - -enum OpenCLstd_Entrypoints { - - // Section 2.1: Math extended instructions - OpenCLstd_Acos = 0, - OpenCLstd_Acosh = 1, - OpenCLstd_Acospi = 2, - OpenCLstd_Asin = 3, - OpenCLstd_Asinh = 4, - OpenCLstd_Asinpi = 5, - OpenCLstd_Atan = 6, - OpenCLstd_Atan2 = 7, - OpenCLstd_Atanh = 8, - OpenCLstd_Atanpi = 9, - OpenCLstd_Atan2pi = 10, - OpenCLstd_Cbrt = 11, - OpenCLstd_Ceil = 12, - OpenCLstd_Copysign = 13, - OpenCLstd_Cos = 14, - OpenCLstd_Cosh = 15, - OpenCLstd_Cospi = 16, - OpenCLstd_Erfc = 17, - OpenCLstd_Erf = 18, - OpenCLstd_Exp = 19, - OpenCLstd_Exp2 = 20, - OpenCLstd_Exp10 = 21, - OpenCLstd_Expm1 = 22, - OpenCLstd_Fabs = 23, - OpenCLstd_Fdim = 24, - OpenCLstd_Floor = 25, - OpenCLstd_Fma = 26, - OpenCLstd_Fmax = 27, - OpenCLstd_Fmin = 28, - OpenCLstd_Fmod = 29, - OpenCLstd_Fract = 30, - OpenCLstd_Frexp = 31, - OpenCLstd_Hypot = 32, - OpenCLstd_Ilogb = 33, - OpenCLstd_Ldexp = 34, - OpenCLstd_Lgamma = 35, - OpenCLstd_Lgamma_r = 36, - OpenCLstd_Log = 37, - OpenCLstd_Log2 = 38, - OpenCLstd_Log10 = 39, - OpenCLstd_Log1p = 40, - OpenCLstd_Logb = 41, - OpenCLstd_Mad = 42, - OpenCLstd_Maxmag = 43, - OpenCLstd_Minmag = 44, - OpenCLstd_Modf = 45, - OpenCLstd_Nan = 46, - OpenCLstd_Nextafter = 47, - OpenCLstd_Pow = 48, - OpenCLstd_Pown = 49, - OpenCLstd_Powr = 50, - OpenCLstd_Remainder = 51, - OpenCLstd_Remquo = 52, - OpenCLstd_Rint = 53, - OpenCLstd_Rootn = 54, - OpenCLstd_Round = 55, - OpenCLstd_Rsqrt = 56, - OpenCLstd_Sin = 57, - OpenCLstd_Sincos = 58, - OpenCLstd_Sinh = 59, - OpenCLstd_Sinpi = 60, - OpenCLstd_Sqrt = 61, - OpenCLstd_Tan = 62, - OpenCLstd_Tanh = 63, - OpenCLstd_Tanpi = 64, - OpenCLstd_Tgamma = 65, - OpenCLstd_Trunc = 66, - OpenCLstd_Half_cos = 67, - OpenCLstd_Half_divide = 68, - OpenCLstd_Half_exp = 69, - OpenCLstd_Half_exp2 = 70, - OpenCLstd_Half_exp10 = 71, - OpenCLstd_Half_log = 72, - OpenCLstd_Half_log2 = 73, - OpenCLstd_Half_log10 = 74, - OpenCLstd_Half_powr = 75, - OpenCLstd_Half_recip = 76, - OpenCLstd_Half_rsqrt = 77, - OpenCLstd_Half_sin = 78, - OpenCLstd_Half_sqrt = 79, - OpenCLstd_Half_tan = 80, - OpenCLstd_Native_cos = 81, - OpenCLstd_Native_divide = 82, - OpenCLstd_Native_exp = 83, - OpenCLstd_Native_exp2 = 84, - OpenCLstd_Native_exp10 = 85, - OpenCLstd_Native_log = 86, - OpenCLstd_Native_log2 = 87, - OpenCLstd_Native_log10 = 88, - OpenCLstd_Native_powr = 89, - OpenCLstd_Native_recip = 90, - OpenCLstd_Native_rsqrt = 91, - OpenCLstd_Native_sin = 92, - OpenCLstd_Native_sqrt = 93, - OpenCLstd_Native_tan = 94, - - // Section 2.2: Integer instructions - OpenCLstd_SAbs = 141, - OpenCLstd_SAbs_diff = 142, - OpenCLstd_SAdd_sat = 143, - OpenCLstd_UAdd_sat = 144, - OpenCLstd_SHadd = 145, - OpenCLstd_UHadd = 146, - OpenCLstd_SRhadd = 147, - OpenCLstd_URhadd = 148, - OpenCLstd_SClamp = 149, - OpenCLstd_UClamp = 150, - OpenCLstd_Clz = 151, - OpenCLstd_Ctz = 152, - OpenCLstd_SMad_hi = 153, - OpenCLstd_UMad_sat = 154, - OpenCLstd_SMad_sat = 155, - OpenCLstd_SMax = 156, - OpenCLstd_UMax = 157, - OpenCLstd_SMin = 158, - OpenCLstd_UMin = 159, - OpenCLstd_SMul_hi = 160, - OpenCLstd_Rotate = 161, - OpenCLstd_SSub_sat = 162, - OpenCLstd_USub_sat = 163, - OpenCLstd_U_Upsample = 164, - OpenCLstd_S_Upsample = 165, - OpenCLstd_Popcount = 166, - OpenCLstd_SMad24 = 167, - OpenCLstd_UMad24 = 168, - OpenCLstd_SMul24 = 169, - OpenCLstd_UMul24 = 170, - OpenCLstd_UAbs = 201, - OpenCLstd_UAbs_diff = 202, - OpenCLstd_UMul_hi = 203, - OpenCLstd_UMad_hi = 204, - - // Section 2.3: Common instructions - OpenCLstd_FClamp = 95, - OpenCLstd_Degrees = 96, - OpenCLstd_FMax_common = 97, - OpenCLstd_FMin_common = 98, - OpenCLstd_Mix = 99, - OpenCLstd_Radians = 100, - OpenCLstd_Step = 101, - OpenCLstd_Smoothstep = 102, - OpenCLstd_Sign = 103, - - // Section 2.4: Geometric instructions - OpenCLstd_Cross = 104, - OpenCLstd_Distance = 105, - OpenCLstd_Length = 106, - OpenCLstd_Normalize = 107, - OpenCLstd_Fast_distance = 108, - OpenCLstd_Fast_length = 109, - OpenCLstd_Fast_normalize = 110, - - // Section 2.5: Relational instructions - OpenCLstd_Bitselect = 186, - OpenCLstd_Select = 187, - - // Section 2.6: Vector Data Load and Store instructions - OpenCLstd_Vloadn = 171, - OpenCLstd_Vstoren = 172, - OpenCLstd_Vload_half = 173, - OpenCLstd_Vload_halfn = 174, - OpenCLstd_Vstore_half = 175, - OpenCLstd_Vstore_half_r = 176, - OpenCLstd_Vstore_halfn = 177, - OpenCLstd_Vstore_halfn_r = 178, - OpenCLstd_Vloada_halfn = 179, - OpenCLstd_Vstorea_halfn = 180, - OpenCLstd_Vstorea_halfn_r = 181, - - // Section 2.7: Miscellaneous Vector instructions - OpenCLstd_Shuffle = 182, - OpenCLstd_Shuffle2 = 183, - - // Section 2.8: Misc instructions - OpenCLstd_Printf = 184, - OpenCLstd_Prefetch = 185, -}; - -#endif - -#endif // #ifndef OPENCLstd_H diff --git a/Extern/3rdParty/shaderc/shaderc/include/spirv/unified1/OpenCLDebugInfo100.h b/Extern/3rdParty/shaderc/shaderc/include/spirv/unified1/OpenCLDebugInfo100.h deleted file mode 100644 index e3847c9..0000000 --- a/Extern/3rdParty/shaderc/shaderc/include/spirv/unified1/OpenCLDebugInfo100.h +++ /dev/null @@ -1,158 +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_OpenCLDebugInfo100_H_ -#define SPIRV_UNIFIED1_OpenCLDebugInfo100_H_ - -#ifdef __cplusplus -extern "C" { -#endif - -enum { - OpenCLDebugInfo100Version = 200, - OpenCLDebugInfo100Version_BitWidthPadding = 0x7fffffff -}; -enum { - OpenCLDebugInfo100Revision = 2, - OpenCLDebugInfo100Revision_BitWidthPadding = 0x7fffffff -}; - -enum OpenCLDebugInfo100Instructions { - OpenCLDebugInfo100DebugInfoNone = 0, - OpenCLDebugInfo100DebugCompilationUnit = 1, - OpenCLDebugInfo100DebugTypeBasic = 2, - OpenCLDebugInfo100DebugTypePointer = 3, - OpenCLDebugInfo100DebugTypeQualifier = 4, - OpenCLDebugInfo100DebugTypeArray = 5, - OpenCLDebugInfo100DebugTypeVector = 6, - OpenCLDebugInfo100DebugTypedef = 7, - OpenCLDebugInfo100DebugTypeFunction = 8, - OpenCLDebugInfo100DebugTypeEnum = 9, - OpenCLDebugInfo100DebugTypeComposite = 10, - OpenCLDebugInfo100DebugTypeMember = 11, - OpenCLDebugInfo100DebugTypeInheritance = 12, - OpenCLDebugInfo100DebugTypePtrToMember = 13, - OpenCLDebugInfo100DebugTypeTemplate = 14, - OpenCLDebugInfo100DebugTypeTemplateParameter = 15, - OpenCLDebugInfo100DebugTypeTemplateTemplateParameter = 16, - OpenCLDebugInfo100DebugTypeTemplateParameterPack = 17, - OpenCLDebugInfo100DebugGlobalVariable = 18, - OpenCLDebugInfo100DebugFunctionDeclaration = 19, - OpenCLDebugInfo100DebugFunction = 20, - OpenCLDebugInfo100DebugLexicalBlock = 21, - OpenCLDebugInfo100DebugLexicalBlockDiscriminator = 22, - OpenCLDebugInfo100DebugScope = 23, - OpenCLDebugInfo100DebugNoScope = 24, - OpenCLDebugInfo100DebugInlinedAt = 25, - OpenCLDebugInfo100DebugLocalVariable = 26, - OpenCLDebugInfo100DebugInlinedVariable = 27, - OpenCLDebugInfo100DebugDeclare = 28, - OpenCLDebugInfo100DebugValue = 29, - OpenCLDebugInfo100DebugOperation = 30, - OpenCLDebugInfo100DebugExpression = 31, - OpenCLDebugInfo100DebugMacroDef = 32, - OpenCLDebugInfo100DebugMacroUndef = 33, - OpenCLDebugInfo100DebugImportedEntity = 34, - OpenCLDebugInfo100DebugSource = 35, - OpenCLDebugInfo100DebugModuleINTEL = 36, - OpenCLDebugInfo100InstructionsMax = 0x7fffffff -}; - - -enum OpenCLDebugInfo100DebugInfoFlags { - OpenCLDebugInfo100None = 0x0000, - OpenCLDebugInfo100FlagIsProtected = 0x01, - OpenCLDebugInfo100FlagIsPrivate = 0x02, - OpenCLDebugInfo100FlagIsPublic = 0x03, - OpenCLDebugInfo100FlagIsLocal = 0x04, - OpenCLDebugInfo100FlagIsDefinition = 0x08, - OpenCLDebugInfo100FlagFwdDecl = 0x10, - OpenCLDebugInfo100FlagArtificial = 0x20, - OpenCLDebugInfo100FlagExplicit = 0x40, - OpenCLDebugInfo100FlagPrototyped = 0x80, - OpenCLDebugInfo100FlagObjectPointer = 0x100, - OpenCLDebugInfo100FlagStaticMember = 0x200, - OpenCLDebugInfo100FlagIndirectVariable = 0x400, - OpenCLDebugInfo100FlagLValueReference = 0x800, - OpenCLDebugInfo100FlagRValueReference = 0x1000, - OpenCLDebugInfo100FlagIsOptimized = 0x2000, - OpenCLDebugInfo100FlagIsEnumClass = 0x4000, - OpenCLDebugInfo100FlagTypePassByValue = 0x8000, - OpenCLDebugInfo100FlagTypePassByReference = 0x10000, - OpenCLDebugInfo100DebugInfoFlagsMax = 0x7fffffff -}; - -enum OpenCLDebugInfo100DebugBaseTypeAttributeEncoding { - OpenCLDebugInfo100Unspecified = 0, - OpenCLDebugInfo100Address = 1, - OpenCLDebugInfo100Boolean = 2, - OpenCLDebugInfo100Float = 3, - OpenCLDebugInfo100Signed = 4, - OpenCLDebugInfo100SignedChar = 5, - OpenCLDebugInfo100Unsigned = 6, - OpenCLDebugInfo100UnsignedChar = 7, - OpenCLDebugInfo100DebugBaseTypeAttributeEncodingMax = 0x7fffffff -}; - -enum OpenCLDebugInfo100DebugCompositeType { - OpenCLDebugInfo100Class = 0, - OpenCLDebugInfo100Structure = 1, - OpenCLDebugInfo100Union = 2, - OpenCLDebugInfo100DebugCompositeTypeMax = 0x7fffffff -}; - -enum OpenCLDebugInfo100DebugTypeQualifier { - OpenCLDebugInfo100ConstType = 0, - OpenCLDebugInfo100VolatileType = 1, - OpenCLDebugInfo100RestrictType = 2, - OpenCLDebugInfo100AtomicType = 3, - OpenCLDebugInfo100DebugTypeQualifierMax = 0x7fffffff -}; - -enum OpenCLDebugInfo100DebugOperation { - OpenCLDebugInfo100Deref = 0, - OpenCLDebugInfo100Plus = 1, - OpenCLDebugInfo100Minus = 2, - OpenCLDebugInfo100PlusUconst = 3, - OpenCLDebugInfo100BitPiece = 4, - OpenCLDebugInfo100Swap = 5, - OpenCLDebugInfo100Xderef = 6, - OpenCLDebugInfo100StackValue = 7, - OpenCLDebugInfo100Constu = 8, - OpenCLDebugInfo100Fragment = 9, - OpenCLDebugInfo100DebugOperationMax = 0x7fffffff -}; - -enum OpenCLDebugInfo100DebugImportedEntity { - OpenCLDebugInfo100ImportedModule = 0, - OpenCLDebugInfo100ImportedDeclaration = 1, - OpenCLDebugInfo100DebugImportedEntityMax = 0x7fffffff -}; - - -#ifdef __cplusplus -} -#endif - -#endif // SPIRV_UNIFIED1_OpenCLDebugInfo100_H_ diff --git a/Extern/3rdParty/shaderc/shaderc/include/spirv/unified1/extinst.debuginfo.grammar.json b/Extern/3rdParty/shaderc/shaderc/include/spirv/unified1/extinst.debuginfo.grammar.json deleted file mode 100644 index 7d6e8e5..0000000 --- a/Extern/3rdParty/shaderc/shaderc/include/spirv/unified1/extinst.debuginfo.grammar.json +++ /dev/null @@ -1,572 +0,0 @@ -{ - "copyright" : [ - "Copyright (c) 2017 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" : 1, - "instructions" : [ - { - "opname" : "DebugInfoNone", - "opcode" : 0 - }, - { - "opname" : "DebugCompilationUnit", - "opcode" : 1, - "operands" : [ - { "kind" : "IdRef", "name" : "'Source'" }, - { "kind" : "LiteralInteger", "name" : "'Version'" }, - { "kind" : "LiteralInteger", "name" : "'DWARF Version'" } - ] - }, - { - "opname" : "DebugTypeBasic", - "opcode" : 2, - "operands" : [ - { "kind" : "IdRef", "name" : "'Name'" }, - { "kind" : "IdRef", "name" : "'Size'" }, - { "kind" : "DebugBaseTypeAttributeEncoding", "name" : "'Encoding'" } - ] - }, - { - "opname" : "DebugTypePointer", - "opcode" : 3, - "operands" : [ - { "kind" : "IdRef", "name" : "'Base Type'" }, - { "kind" : "StorageClass", "name" : "'Storage Class'" }, - { "kind" : "DebugInfoFlags", "name" : "'Literal Flags'" } - ] - }, - { - "opname" : "DebugTypeQualifier", - "opcode" : 4, - "operands" : [ - { "kind" : "IdRef", "name" : "'Base Type'" }, - { "kind" : "DebugTypeQualifier", "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" : "LiteralInteger", "name" : "'Component Count'" } - ] - }, - { - "opname" : "DebugTypedef", - "opcode" : 7, - "operands" : [ - { "kind" : "IdRef", "name" : "'Name'" }, - { "kind" : "IdRef", "name" : "'Base Type'" }, - { "kind" : "IdRef", "name" : "'Source'" }, - { "kind" : "LiteralInteger", "name" : "'Line'" }, - { "kind" : "LiteralInteger", "name" : "'Column'" }, - { "kind" : "IdRef", "name" : "'Parent'" } - ] - }, - { - "opname" : "DebugTypeFunction", - "opcode" : 8, - "operands" : [ - { "kind" : "IdRef", "name" : "'Return Type'" }, - { "kind" : "IdRef", "name" : "'Paramter Types'", "quantifier" : "*" } - ] - }, - { - "opname" : "DebugTypeEnum", - "opcode" : 9, - "operands" : [ - { "kind" : "IdRef", "name" : "'Name'" }, - { "kind" : "IdRef", "name" : "'Underlying Type'" }, - { "kind" : "IdRef", "name" : "'Source'" }, - { "kind" : "LiteralInteger", "name" : "'Line'" }, - { "kind" : "LiteralInteger", "name" : "'Column'" }, - { "kind" : "IdRef", "name" : "'Parent'" }, - { "kind" : "IdRef", "name" : "'Size'" }, - { "kind" : "DebugInfoFlags", "name" : "'Flags'" }, - { "kind" : "PairIdRefIdRef", "name" : "'Value, Name, Value, Name, ...'", "quantifier" : "*" } - ] - }, - { - "opname" : "DebugTypeComposite", - "opcode" : 10, - "operands" : [ - { "kind" : "IdRef", "name" : "'Name'" }, - { "kind" : "DebugCompositeType", "name" : "'Tag'" }, - { "kind" : "IdRef", "name" : "'Source'" }, - { "kind" : "LiteralInteger", "name" : "'Line'" }, - { "kind" : "LiteralInteger", "name" : "'Column'" }, - { "kind" : "IdRef", "name" : "'Parent'" }, - { "kind" : "IdRef", "name" : "'Size'" }, - { "kind" : "DebugInfoFlags", "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" : "LiteralInteger", "name" : "'Line'" }, - { "kind" : "LiteralInteger", "name" : "'Column'" }, - { "kind" : "IdRef", "name" : "'Parent'" }, - { "kind" : "IdRef", "name" : "'Offset'" }, - { "kind" : "IdRef", "name" : "'Size'" }, - { "kind" : "DebugInfoFlags", "name" : "'Flags'" }, - { "kind" : "IdRef", "name" : "'Value'", "quantifier" : "?" } - ] - }, - { - "opname" : "DebugTypeInheritance", - "opcode" : 12, - "operands" : [ - { "kind" : "IdRef", "name" : "'Child'" }, - { "kind" : "IdRef", "name" : "'Parent'" }, - { "kind" : "IdRef", "name" : "'Offset'" }, - { "kind" : "IdRef", "name" : "'Size'" }, - { "kind" : "DebugInfoFlags", "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" : "LiteralInteger", "name" : "'Line'" }, - { "kind" : "LiteralInteger", "name" : "'Column'" } - ] - }, - { - "opname" : "DebugTypeTemplateTemplateParameter", - "opcode" : 16, - "operands" : [ - { "kind" : "IdRef", "name" : "'Name'" }, - { "kind" : "IdRef", "name" : "'Template Name'" }, - { "kind" : "IdRef", "name" : "'Source'" }, - { "kind" : "LiteralInteger", "name" : "'Line'" }, - { "kind" : "LiteralInteger", "name" : "'Column'" } - ] - }, - { - "opname" : "DebugTypeTemplateParameterPack", - "opcode" : 17, - "operands" : [ - { "kind" : "IdRef", "name" : "'Name'" }, - { "kind" : "IdRef", "name" : "'Source'" }, - { "kind" : "LiteralInteger", "name" : "'Line'" }, - { "kind" : "LiteralInteger", "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" : "LiteralInteger", "name" : "'Line'" }, - { "kind" : "LiteralInteger", "name" : "'Column'" }, - { "kind" : "IdRef", "name" : "'Parent'" }, - { "kind" : "IdRef", "name" : "'Linkage Name'" }, - { "kind" : "IdRef", "name" : "'Variable'" }, - { "kind" : "DebugInfoFlags", "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" : "LiteralInteger", "name" : "'Line'" }, - { "kind" : "LiteralInteger", "name" : "'Column'" }, - { "kind" : "IdRef", "name" : "'Parent'" }, - { "kind" : "IdRef", "name" : "'Linkage Name'" }, - { "kind" : "DebugInfoFlags", "name" : "'Flags'" } - ] - }, - { - "opname" : "DebugFunction", - "opcode" : 20, - "operands" : [ - { "kind" : "IdRef", "name" : "'Name'" }, - { "kind" : "IdRef", "name" : "'Type'" }, - { "kind" : "IdRef", "name" : "'Source'" }, - { "kind" : "LiteralInteger", "name" : "'Line'" }, - { "kind" : "LiteralInteger", "name" : "'Column'" }, - { "kind" : "IdRef", "name" : "'Parent'" }, - { "kind" : "IdRef", "name" : "'Linkage Name'" }, - { "kind" : "DebugInfoFlags", "name" : "'Flags'" }, - { "kind" : "LiteralInteger", "name" : "'Scope Line'" }, - { "kind" : "IdRef", "name" : "'Function'" }, - { "kind" : "IdRef", "name" : "'Declaration'", "quantifier" : "?" } - ] - }, - { - "opname" : "DebugLexicalBlock", - "opcode" : 21, - "operands" : [ - { "kind" : "IdRef", "name" : "'Source'" }, - { "kind" : "LiteralInteger", "name" : "'Line'" }, - { "kind" : "LiteralInteger", "name" : "'Column'" }, - { "kind" : "IdRef", "name" : "'Parent'" }, - { "kind" : "IdRef", "name" : "'Name'", "quantifier" : "?" } - ] - }, - { - "opname" : "DebugLexicalBlockDiscriminator", - "opcode" : 22, - "operands" : [ - { "kind" : "IdRef", "name" : "'Scope'" }, - { "kind" : "LiteralInteger", "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" : "LiteralInteger", "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" : "LiteralInteger", "name" : "'Line'" }, - { "kind" : "LiteralInteger", "name" : "'Column'" }, - { "kind" : "IdRef", "name" : "'Parent'" }, - { "kind" : "LiteralInteger", "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'" } - ] - }, - { - "opname" : "DebugValue", - "opcode" : 29, - "operands" : [ - { "kind" : "IdRef", "name" : "'Value'" }, - { "kind" : "IdRef", "name" : "'Expression'" }, - { "kind" : "IdRef", "name" : "'Indexes'", "quantifier" : "*" } - ] - }, - { - "opname" : "DebugOperation", - "opcode" : 30, - "operands" : [ - { "kind" : "DebugOperation", "name" : "'OpCode'" }, - { "kind" : "LiteralInteger", "name" : "'Operands ...'", "quantifier" : "*" } - ] - }, - { - "opname" : "DebugExpression", - "opcode" : 31, - "operands" : [ - { "kind" : "IdRef", "name" : "'Operands ...'", "quantifier" : "*" } - ] - }, - { - "opname" : "DebugMacroDef", - "opcode" : 32, - "operands" : [ - { "kind" : "IdRef", "name" : "'Source'" }, - { "kind" : "LiteralInteger", "name" : "'Line'" }, - { "kind" : "IdRef", "name" : "'Name'" }, - { "kind" : "IdRef", "name" : "'Value'", "quantifier" : "?" } - ] - }, - { - "opname" : "DebugMacroUndef", - "opcode" : 33, - "operands" : [ - { "kind" : "IdRef", "name" : "'Source'" }, - { "kind" : "LiteralInteger", "name" : "'Line'" }, - { "kind" : "IdRef", "name" : "'Macro'" } - ] - } - ], - "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" - } - ] - }, - { - "category" : "ValueEnum", - "kind" : "DebugBaseTypeAttributeEncoding", - "enumerants" : [ - { - "enumerant" : "Unspecified", - "value" : "0" - }, - { - "enumerant" : "Address", - "value" : "1" - }, - { - "enumerant" : "Boolean", - "value" : "2" - }, - { - "enumerant" : "Float", - "value" : "4" - }, - { - "enumerant" : "Signed", - "value" : "5" - }, - { - "enumerant" : "SignedChar", - "value" : "6" - }, - { - "enumerant" : "Unsigned", - "value" : "7" - }, - { - "enumerant" : "UnsignedChar", - "value" : "8" - } - ] - }, - { - "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" - } - ] - }, - { - "category" : "ValueEnum", - "kind" : "DebugOperation", - "enumerants" : [ - { - "enumerant" : "Deref", - "value" : "0" - }, - { - "enumerant" : "Plus", - "value" : "1" - }, - { - "enumerant" : "Minus", - "value" : "2" - }, - { - "enumerant" : "PlusUconst", - "value" : "3", - "parameters" : [ - { "kind" : "LiteralInteger" } - ] - }, - { - "enumerant" : "BitPiece", - "value" : "4", - "parameters" : [ - { "kind" : "LiteralInteger" }, - { "kind" : "LiteralInteger" } - ] - }, - { - "enumerant" : "Swap", - "value" : "5" - }, - { - "enumerant" : "Xderef", - "value" : "6" - }, - { - "enumerant" : "StackValue", - "value" : "7" - }, - { - "enumerant" : "Constu", - "value" : "8", - "parameters" : [ - { "kind" : "LiteralInteger" } - ] - } - ] - } - ] -} diff --git a/Extern/3rdParty/shaderc/shaderc/include/spirv/unified1/extinst.glsl.std.450.grammar.json b/Extern/3rdParty/shaderc/shaderc/include/spirv/unified1/extinst.glsl.std.450.grammar.json deleted file mode 100644 index 3d9f39e..0000000 --- a/Extern/3rdParty/shaderc/shaderc/include/spirv/unified1/extinst.glsl.std.450.grammar.json +++ /dev/null @@ -1,642 +0,0 @@ -{ - "copyright" : [ - "Copyright (c) 2014-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." - ], - "version" : 100, - "revision" : 2, - "instructions" : [ - { - "opname" : "Round", - "opcode" : 1, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" } - ] - }, - { - "opname" : "RoundEven", - "opcode" : 2, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" } - ] - }, - { - "opname" : "Trunc", - "opcode" : 3, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" } - ] - }, - { - "opname" : "FAbs", - "opcode" : 4, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" } - ] - }, - { - "opname" : "SAbs", - "opcode" : 5, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" } - ] - }, - { - "opname" : "FSign", - "opcode" : 6, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" } - ] - }, - { - "opname" : "SSign", - "opcode" : 7, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" } - ] - }, - { - "opname" : "Floor", - "opcode" : 8, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" } - ] - }, - { - "opname" : "Ceil", - "opcode" : 9, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" } - ] - }, - { - "opname" : "Fract", - "opcode" : 10, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" } - ] - }, - { - "opname" : "Radians", - "opcode" : 11, - "operands" : [ - { "kind" : "IdRef", "name" : "'degrees'" } - ] - }, - { - "opname" : "Degrees", - "opcode" : 12, - "operands" : [ - { "kind" : "IdRef", "name" : "'radians'" } - ] - }, - { - "opname" : "Sin", - "opcode" : 13, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" } - ] - }, - { - "opname" : "Cos", - "opcode" : 14, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" } - ] - }, - { - "opname" : "Tan", - "opcode" : 15, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" } - ] - }, - { - "opname" : "Asin", - "opcode" : 16, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" } - ] - }, - { - "opname" : "Acos", - "opcode" : 17, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" } - ] - }, - { - "opname" : "Atan", - "opcode" : 18, - "operands" : [ - { "kind" : "IdRef", "name" : "'y_over_x'" } - ] - }, - { - "opname" : "Sinh", - "opcode" : 19, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" } - ] - }, - { - "opname" : "Cosh", - "opcode" : 20, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" } - ] - }, - { - "opname" : "Tanh", - "opcode" : 21, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" } - ] - }, - { - "opname" : "Asinh", - "opcode" : 22, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" } - ] - }, - { - "opname" : "Acosh", - "opcode" : 23, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" } - ] - }, - { - "opname" : "Atanh", - "opcode" : 24, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" } - ] - }, - { - "opname" : "Atan2", - "opcode" : 25, - "operands" : [ - { "kind" : "IdRef", "name" : "'y'" }, - { "kind" : "IdRef", "name" : "'x'" } - ] - }, - { - "opname" : "Pow", - "opcode" : 26, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" }, - { "kind" : "IdRef", "name" : "'y'" } - ] - }, - { - "opname" : "Exp", - "opcode" : 27, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" } - ] - }, - { - "opname" : "Log", - "opcode" : 28, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" } - ] - }, - { - "opname" : "Exp2", - "opcode" : 29, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" } - ] - }, - { - "opname" : "Log2", - "opcode" : 30, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" } - ] - }, - { - "opname" : "Sqrt", - "opcode" : 31, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" } - ] - }, - { - "opname" : "InverseSqrt", - "opcode" : 32, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" } - ] - }, - { - "opname" : "Determinant", - "opcode" : 33, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" } - ] - }, - { - "opname" : "MatrixInverse", - "opcode" : 34, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" } - ] - }, - { - "opname" : "Modf", - "opcode" : 35, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" }, - { "kind" : "IdRef", "name" : "'i'" } - ] - }, - { - "opname" : "ModfStruct", - "opcode" : 36, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" } - ] - }, - { - "opname" : "FMin", - "opcode" : 37, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" }, - { "kind" : "IdRef", "name" : "'y'" } - ] - }, - { - "opname" : "UMin", - "opcode" : 38, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" }, - { "kind" : "IdRef", "name" : "'y'" } - ] - }, - { - "opname" : "SMin", - "opcode" : 39, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" }, - { "kind" : "IdRef", "name" : "'y'" } - ] - }, - { - "opname" : "FMax", - "opcode" : 40, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" }, - { "kind" : "IdRef", "name" : "'y'" } - ] - }, - { - "opname" : "UMax", - "opcode" : 41, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" }, - { "kind" : "IdRef", "name" : "'y'" } - ] - }, - { - "opname" : "SMax", - "opcode" : 42, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" }, - { "kind" : "IdRef", "name" : "'y'" } - ] - }, - { - "opname" : "FClamp", - "opcode" : 43, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" }, - { "kind" : "IdRef", "name" : "'minVal'" }, - { "kind" : "IdRef", "name" : "'maxVal'" } - ] - }, - { - "opname" : "UClamp", - "opcode" : 44, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" }, - { "kind" : "IdRef", "name" : "'minVal'" }, - { "kind" : "IdRef", "name" : "'maxVal'" } - ] - }, - { - "opname" : "SClamp", - "opcode" : 45, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" }, - { "kind" : "IdRef", "name" : "'minVal'" }, - { "kind" : "IdRef", "name" : "'maxVal'" } - ] - }, - { - "opname" : "FMix", - "opcode" : 46, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" }, - { "kind" : "IdRef", "name" : "'y'" }, - { "kind" : "IdRef", "name" : "'a'" } - ] - }, - { - "opname" : "IMix", - "opcode" : 47, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" }, - { "kind" : "IdRef", "name" : "'y'" }, - { "kind" : "IdRef", "name" : "'a'" } - ] - }, - { - "opname" : "Step", - "opcode" : 48, - "operands" : [ - { "kind" : "IdRef", "name" : "'edge'" }, - { "kind" : "IdRef", "name" : "'x'" } - ] - }, - { - "opname" : "SmoothStep", - "opcode" : 49, - "operands" : [ - { "kind" : "IdRef", "name" : "'edge0'" }, - { "kind" : "IdRef", "name" : "'edge1'" }, - { "kind" : "IdRef", "name" : "'x'" } - ] - }, - { - "opname" : "Fma", - "opcode" : 50, - "operands" : [ - { "kind" : "IdRef", "name" : "'a'" }, - { "kind" : "IdRef", "name" : "'b'" }, - { "kind" : "IdRef", "name" : "'c'" } - ] - }, - { - "opname" : "Frexp", - "opcode" : 51, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" }, - { "kind" : "IdRef", "name" : "'exp'" } - ] - }, - { - "opname" : "FrexpStruct", - "opcode" : 52, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" } - ] - }, - { - "opname" : "Ldexp", - "opcode" : 53, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" }, - { "kind" : "IdRef", "name" : "'exp'" } - ] - }, - { - "opname" : "PackSnorm4x8", - "opcode" : 54, - "operands" : [ - { "kind" : "IdRef", "name" : "'v'" } - ] - }, - { - "opname" : "PackUnorm4x8", - "opcode" : 55, - "operands" : [ - { "kind" : "IdRef", "name" : "'v'" } - ] - }, - { - "opname" : "PackSnorm2x16", - "opcode" : 56, - "operands" : [ - { "kind" : "IdRef", "name" : "'v'" } - ] - }, - { - "opname" : "PackUnorm2x16", - "opcode" : 57, - "operands" : [ - { "kind" : "IdRef", "name" : "'v'" } - ] - }, - { - "opname" : "PackHalf2x16", - "opcode" : 58, - "operands" : [ - { "kind" : "IdRef", "name" : "'v'" } - ] - }, - { - "opname" : "PackDouble2x32", - "opcode" : 59, - "operands" : [ - { "kind" : "IdRef", "name" : "'v'" } - ], - "capabilities" : [ "Float64" ] - }, - { - "opname" : "UnpackSnorm2x16", - "opcode" : 60, - "operands" : [ - { "kind" : "IdRef", "name" : "'p'" } - ] - }, - { - "opname" : "UnpackUnorm2x16", - "opcode" : 61, - "operands" : [ - { "kind" : "IdRef", "name" : "'p'" } - ] - }, - { - "opname" : "UnpackHalf2x16", - "opcode" : 62, - "operands" : [ - { "kind" : "IdRef", "name" : "'v'" } - ] - }, - { - "opname" : "UnpackSnorm4x8", - "opcode" : 63, - "operands" : [ - { "kind" : "IdRef", "name" : "'p'" } - ] - }, - { - "opname" : "UnpackUnorm4x8", - "opcode" : 64, - "operands" : [ - { "kind" : "IdRef", "name" : "'p'" } - ] - }, - { - "opname" : "UnpackDouble2x32", - "opcode" : 65, - "operands" : [ - { "kind" : "IdRef", "name" : "'v'" } - ], - "capabilities" : [ "Float64" ] - }, - { - "opname" : "Length", - "opcode" : 66, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" } - ] - }, - { - "opname" : "Distance", - "opcode" : 67, - "operands" : [ - { "kind" : "IdRef", "name" : "'p0'" }, - { "kind" : "IdRef", "name" : "'p1'" } - ] - }, - { - "opname" : "Cross", - "opcode" : 68, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" }, - { "kind" : "IdRef", "name" : "'y'" } - ] - }, - { - "opname" : "Normalize", - "opcode" : 69, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" } - ] - }, - { - "opname" : "FaceForward", - "opcode" : 70, - "operands" : [ - { "kind" : "IdRef", "name" : "'N'" }, - { "kind" : "IdRef", "name" : "'I'" }, - { "kind" : "IdRef", "name" : "'Nref'" } - ] - }, - { - "opname" : "Reflect", - "opcode" : 71, - "operands" : [ - { "kind" : "IdRef", "name" : "'I'" }, - { "kind" : "IdRef", "name" : "'N'" } - ] - }, - { - "opname" : "Refract", - "opcode" : 72, - "operands" : [ - { "kind" : "IdRef", "name" : "'I'" }, - { "kind" : "IdRef", "name" : "'N'" }, - { "kind" : "IdRef", "name" : "'eta'" } - ] - }, - { - "opname" : "FindILsb", - "opcode" : 73, - "operands" : [ - { "kind" : "IdRef", "name" : "'Value'" } - ] - }, - { - "opname" : "FindSMsb", - "opcode" : 74, - "operands" : [ - { "kind" : "IdRef", "name" : "'Value'" } - ] - }, - { - "opname" : "FindUMsb", - "opcode" : 75, - "operands" : [ - { "kind" : "IdRef", "name" : "'Value'" } - ] - }, - { - "opname" : "InterpolateAtCentroid", - "opcode" : 76, - "operands" : [ - { "kind" : "IdRef", "name" : "'interpolant'" } - ], - "capabilities" : [ "InterpolationFunction" ] - }, - { - "opname" : "InterpolateAtSample", - "opcode" : 77, - "operands" : [ - { "kind" : "IdRef", "name" : "'interpolant'" }, - { "kind" : "IdRef", "name" : "'sample'" } - ], - "capabilities" : [ "InterpolationFunction" ] - }, - { - "opname" : "InterpolateAtOffset", - "opcode" : 78, - "operands" : [ - { "kind" : "IdRef", "name" : "'interpolant'" }, - { "kind" : "IdRef", "name" : "'offset'" } - ], - "capabilities" : [ "InterpolationFunction" ] - }, - { - "opname" : "NMin", - "opcode" : 79, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" }, - { "kind" : "IdRef", "name" : "'y'" } - ] - }, - { - "opname" : "NMax", - "opcode" : 80, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" }, - { "kind" : "IdRef", "name" : "'y'" } - ] - }, - { - "opname" : "NClamp", - "opcode" : 81, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" }, - { "kind" : "IdRef", "name" : "'minVal'" }, - { "kind" : "IdRef", "name" : "'maxVal'" } - ] - } - ] -} diff --git a/Extern/3rdParty/shaderc/shaderc/include/spirv/unified1/extinst.nonsemantic.clspvreflection.grammar.json b/Extern/3rdParty/shaderc/shaderc/include/spirv/unified1/extinst.nonsemantic.clspvreflection.grammar.json deleted file mode 100644 index d6499cc..0000000 --- a/Extern/3rdParty/shaderc/shaderc/include/spirv/unified1/extinst.nonsemantic.clspvreflection.grammar.json +++ /dev/null @@ -1,416 +0,0 @@ -{ - "revision" : 5, - "instructions" : [ - { - "opname" : "Kernel", - "opcode" : 1, - "operands" : [ - { "kind" : "IdRef", "name" : "Kernel" }, - { "kind" : "IdRef", "name" : "Name" }, - { "kind" : "IdRef", "name" : "NumArguments", "quantifier" : "?" }, - { "kind" : "IdRef", "name" : "Flags", "quantifier" : "?" }, - { "kind" : "IdRef", "name" : "Attributes", "quantifier" : "?" } - ] - }, - { - "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" } - ] - }, - { - "opname" : "SpecConstantSubgroupMaxSize", - "opcode" : 25, - "operands" : [ - { "kind" : "IdRef", "name" : "Size" } - ] - }, - { - "opname" : "ArgumentPointerPushConstant", - "opcode" : 26, - "operands": [ - { "kind" : "IdRef", "name" : "Kernel" }, - { "kind" : "IdRef", "name" : "Ordinal" }, - { "kind" : "IdRef", "name" : "Offset" }, - { "kind" : "IdRef", "name" : "Size" }, - { "kind" : "IdRef", "name" : "ArgInfo", "quantifier" : "?" } - ] - }, - { - "opname" : "ArgumentPointerUniform", - "opcode" : 27, - "operands": [ - { "kind" : "IdRef", "name" : "Kernel" }, - { "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" : "ProgramScopeVariablesStorageBuffer", - "opcode" : 28, - "operands": [ - { "kind" : "IdRef", "name" : "DescriptorSet" }, - { "kind" : "IdRef", "name" : "Binding" }, - { "kind" : "IdRef", "name" : "Data" } - ] - }, - { - "opname" : "ProgramScopeVariablePointerRelocation", - "opcode" : 29, - "operands": [ - { "kind" : "IdRef", "name" : "ObjectOffset" }, - { "kind" : "IdRef", "name" : "PointerOffset" }, - { "kind" : "IdRef", "name" : "PointerSize" } - ] - }, - { - "opname" : "ImageArgumentInfoChannelOrderPushConstant", - "opcode" : 30, - "operands": [ - { "kind" : "IdRef", "name" : "Kernel" }, - { "kind" : "IdRef", "name" : "Ordinal" }, - { "kind" : "IdRef", "name" : "Offset" }, - { "kind" : "IdRef", "name" : "Size" } - ] - }, - { - "opname" : "ImageArgumentInfoChannelDataTypePushConstant", - "opcode" : 31, - "operands": [ - { "kind" : "IdRef", "name" : "Kernel" }, - { "kind" : "IdRef", "name" : "Ordinal" }, - { "kind" : "IdRef", "name" : "Offset" }, - { "kind" : "IdRef", "name" : "Size" } - ] - }, - { - "opname" : "ImageArgumentInfoChannelOrderUniform", - "opcode" : 32, - "operands": [ - { "kind" : "IdRef", "name" : "Kernel" }, - { "kind" : "IdRef", "name" : "Ordinal" }, - { "kind" : "IdRef", "name" : "DescriptorSet" }, - { "kind" : "IdRef", "name" : "Binding" }, - { "kind" : "IdRef", "name" : "Offset" }, - { "kind" : "IdRef", "name" : "Size" } - ] - }, - { - "opname" : "ImageArgumentInfoChannelDataTypeUniform", - "opcode" : 33, - "operands": [ - { "kind" : "IdRef", "name" : "Kernel" }, - { "kind" : "IdRef", "name" : "Ordinal" }, - { "kind" : "IdRef", "name" : "DescriptorSet" }, - { "kind" : "IdRef", "name" : "Binding" }, - { "kind" : "IdRef", "name" : "Offset" }, - { "kind" : "IdRef", "name" : "Size" } - ] - }, - { - "opname" : "ArgumentStorageTexelBuffer", - "opcode" : 34, - "operands" : [ - { "kind" : "IdRef", "name" : "Decl" }, - { "kind" : "IdRef", "name" : "Ordinal" }, - { "kind" : "IdRef", "name" : "DescriptorSet" }, - { "kind" : "IdRef", "name" : "Binding" }, - { "kind" : "IdRef", "name" : "ArgInfo", "quantifier" : "?" } - ] - }, - { - "opname" : "ArgumentUniformTexelBuffer", - "opcode" : 35, - "operands" : [ - { "kind" : "IdRef", "name" : "Decl" }, - { "kind" : "IdRef", "name" : "Ordinal" }, - { "kind" : "IdRef", "name" : "DescriptorSet" }, - { "kind" : "IdRef", "name" : "Binding" }, - { "kind" : "IdRef", "name" : "ArgInfo", "quantifier" : "?" } - ] - }, - { - "opname" : "ConstantDataPointerPushConstant", - "opcode" : 36, - "operands" : [ - { "kind" : "IdRef", "name" : "Offset"}, - { "kind" : "IdRef", "name" : "Size"}, - { "kind" : "IdRef", "name" : "Data" } - ] - }, - { - "opname" : "ProgramScopeVariablePointerPushConstant", - "opcode" : 37, - "operands" : [ - { "kind" : "IdRef", "name" : "Offset"}, - { "kind" : "IdRef", "name" : "Size"}, - { "kind" : "IdRef", "name" : "Data" } - ] - }, - { - "opname" : "PrintfInfo", - "opcode" : 38, - "operands" : [ - { "kind" : "IdRef", "name" : "PrintfID" }, - { "kind" : "IdRef", "name" : "FormatString" }, - { "kind" : "IdRef", "quantifier" : "*", "name" : "ArgumentSizes"} - ] - }, - { - "opname" : "PrintfBufferStorageBuffer", - "opcode" : 39, - "operands" : [ - { "kind" : "IdRef", "name" : "DescriptorSet" }, - { "kind" : "IdRef", "name" : "Binding" }, - { "kind" : "IdRef", "name" : "BufferSize"} - ] - }, - { - "opname" : "PrintfBufferPointerPushConstant", - "opcode" : 40, - "operands" : [ - { "kind" : "IdRef", "name" : "Offset" }, - { "kind" : "IdRef", "name" : "Size"}, - { "kind" : "IdRef", "name" : "BufferSize"} - ] - } - ], - "operand_kinds" : [ - { - "category" : "BitEnum", - "kind" : "KernelPropertyFlags", - "enumerants" : [ - { - "enumerant" : "None", - "value" : "0x0" - }, - { - "enumerant" : "MayUsePrintf", - "value" : "0x1" - } - ] - } - ] -} diff --git a/Extern/3rdParty/shaderc/shaderc/include/spirv/unified1/extinst.nonsemantic.debugbreak.grammar.json b/Extern/3rdParty/shaderc/shaderc/include/spirv/unified1/extinst.nonsemantic.debugbreak.grammar.json deleted file mode 100644 index ae28883..0000000 --- a/Extern/3rdParty/shaderc/shaderc/include/spirv/unified1/extinst.nonsemantic.debugbreak.grammar.json +++ /dev/null @@ -1,9 +0,0 @@ -{ - "revision" : 1, - "instructions" : [ - { - "opname" : "DebugBreak", - "opcode" : 1 - } - ] -} diff --git a/Extern/3rdParty/shaderc/shaderc/include/spirv/unified1/extinst.nonsemantic.debugprintf.grammar.json b/Extern/3rdParty/shaderc/shaderc/include/spirv/unified1/extinst.nonsemantic.debugprintf.grammar.json deleted file mode 100644 index 71fa711..0000000 --- a/Extern/3rdParty/shaderc/shaderc/include/spirv/unified1/extinst.nonsemantic.debugprintf.grammar.json +++ /dev/null @@ -1,13 +0,0 @@ -{ - "revision" : 1, - "instructions" : [ - { - "opname" : "DebugPrintf", - "opcode" : 1, - "operands" : [ - { "kind" : "IdRef", "name" : "'Format'" }, - { "kind" : "IdRef", "quantifier" : "*" } - ] - } - ] -} diff --git a/Extern/3rdParty/shaderc/shaderc/include/spirv/unified1/extinst.nonsemantic.shader.debuginfo.100.grammar.json b/Extern/3rdParty/shaderc/shaderc/include/spirv/unified1/extinst.nonsemantic.shader.debuginfo.100.grammar.json deleted file mode 100644 index f3621b0..0000000 --- a/Extern/3rdParty/shaderc/shaderc/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/Extern/3rdParty/shaderc/shaderc/include/spirv/unified1/extinst.opencl.debuginfo.100.grammar.json b/Extern/3rdParty/shaderc/shaderc/include/spirv/unified1/extinst.opencl.debuginfo.100.grammar.json deleted file mode 100644 index 699fe40..0000000 --- a/Extern/3rdParty/shaderc/shaderc/include/spirv/unified1/extinst.opencl.debuginfo.100.grammar.json +++ /dev/null @@ -1,651 +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" : 200, - "revision" : 2, - "instructions" : [ - { - "opname" : "DebugInfoNone", - "opcode" : 0 - }, - { - "opname" : "DebugCompilationUnit", - "opcode" : 1, - "operands" : [ - { "kind" : "LiteralInteger", "name" : "'Version'" }, - { "kind" : "LiteralInteger", "name" : "'DWARF Version'" }, - { "kind" : "IdRef", "name" : "'Source'" }, - { "kind" : "SourceLanguage", "name" : "'Language'" } - ] - }, - { - "opname" : "DebugTypeBasic", - "opcode" : 2, - "operands" : [ - { "kind" : "IdRef", "name" : "'Name'" }, - { "kind" : "IdRef", "name" : "'Size'" }, - { "kind" : "DebugBaseTypeAttributeEncoding", "name" : "'Encoding'" } - ] - }, - { - "opname" : "DebugTypePointer", - "opcode" : 3, - "operands" : [ - { "kind" : "IdRef", "name" : "'Base Type'" }, - { "kind" : "StorageClass", "name" : "'Storage Class'" }, - { "kind" : "DebugInfoFlags", "name" : "'Flags'" } - ] - }, - { - "opname" : "DebugTypeQualifier", - "opcode" : 4, - "operands" : [ - { "kind" : "IdRef", "name" : "'Base Type'" }, - { "kind" : "DebugTypeQualifier", "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" : "LiteralInteger", "name" : "'Component Count'" } - ] - }, - { - "opname" : "DebugTypedef", - "opcode" : 7, - "operands" : [ - { "kind" : "IdRef", "name" : "'Name'" }, - { "kind" : "IdRef", "name" : "'Base Type'" }, - { "kind" : "IdRef", "name" : "'Source'" }, - { "kind" : "LiteralInteger", "name" : "'Line'" }, - { "kind" : "LiteralInteger", "name" : "'Column'" }, - { "kind" : "IdRef", "name" : "'Parent'" } - ] - }, - { - "opname" : "DebugTypeFunction", - "opcode" : 8, - "operands" : [ - { "kind" : "DebugInfoFlags", "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" : "LiteralInteger", "name" : "'Line'" }, - { "kind" : "LiteralInteger", "name" : "'Column'" }, - { "kind" : "IdRef", "name" : "'Parent'" }, - { "kind" : "IdRef", "name" : "'Size'" }, - { "kind" : "DebugInfoFlags", "name" : "'Flags'" }, - { "kind" : "PairIdRefIdRef", "name" : "'Value, Name, Value, Name, ...'", "quantifier" : "*" } - ] - }, - { - "opname" : "DebugTypeComposite", - "opcode" : 10, - "operands" : [ - { "kind" : "IdRef", "name" : "'Name'" }, - { "kind" : "DebugCompositeType", "name" : "'Tag'" }, - { "kind" : "IdRef", "name" : "'Source'" }, - { "kind" : "LiteralInteger", "name" : "'Line'" }, - { "kind" : "LiteralInteger", "name" : "'Column'" }, - { "kind" : "IdRef", "name" : "'Parent'" }, - { "kind" : "IdRef", "name" : "'Linkage Name'" }, - { "kind" : "IdRef", "name" : "'Size'" }, - { "kind" : "DebugInfoFlags", "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" : "LiteralInteger", "name" : "'Line'" }, - { "kind" : "LiteralInteger", "name" : "'Column'" }, - { "kind" : "IdRef", "name" : "'Parent'" }, - { "kind" : "IdRef", "name" : "'Offset'" }, - { "kind" : "IdRef", "name" : "'Size'" }, - { "kind" : "DebugInfoFlags", "name" : "'Flags'" }, - { "kind" : "IdRef", "name" : "'Value'", "quantifier" : "?" } - ] - }, - { - "opname" : "DebugTypeInheritance", - "opcode" : 12, - "operands" : [ - { "kind" : "IdRef", "name" : "'Child'" }, - { "kind" : "IdRef", "name" : "'Parent'" }, - { "kind" : "IdRef", "name" : "'Offset'" }, - { "kind" : "IdRef", "name" : "'Size'" }, - { "kind" : "DebugInfoFlags", "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" : "LiteralInteger", "name" : "'Line'" }, - { "kind" : "LiteralInteger", "name" : "'Column'" } - ] - }, - { - "opname" : "DebugTypeTemplateTemplateParameter", - "opcode" : 16, - "operands" : [ - { "kind" : "IdRef", "name" : "'Name'" }, - { "kind" : "IdRef", "name" : "'Template Name'" }, - { "kind" : "IdRef", "name" : "'Source'" }, - { "kind" : "LiteralInteger", "name" : "'Line'" }, - { "kind" : "LiteralInteger", "name" : "'Column'" } - ] - }, - { - "opname" : "DebugTypeTemplateParameterPack", - "opcode" : 17, - "operands" : [ - { "kind" : "IdRef", "name" : "'Name'" }, - { "kind" : "IdRef", "name" : "'Source'" }, - { "kind" : "LiteralInteger", "name" : "'Line'" }, - { "kind" : "LiteralInteger", "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" : "LiteralInteger", "name" : "'Line'" }, - { "kind" : "LiteralInteger", "name" : "'Column'" }, - { "kind" : "IdRef", "name" : "'Parent'" }, - { "kind" : "IdRef", "name" : "'Linkage Name'" }, - { "kind" : "IdRef", "name" : "'Variable'" }, - { "kind" : "DebugInfoFlags", "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" : "LiteralInteger", "name" : "'Line'" }, - { "kind" : "LiteralInteger", "name" : "'Column'" }, - { "kind" : "IdRef", "name" : "'Parent'" }, - { "kind" : "IdRef", "name" : "'Linkage Name'" }, - { "kind" : "DebugInfoFlags", "name" : "'Flags'" } - ] - }, - { - "opname" : "DebugFunction", - "opcode" : 20, - "operands" : [ - { "kind" : "IdRef", "name" : "'Name'" }, - { "kind" : "IdRef", "name" : "'Type'" }, - { "kind" : "IdRef", "name" : "'Source'" }, - { "kind" : "LiteralInteger", "name" : "'Line'" }, - { "kind" : "LiteralInteger", "name" : "'Column'" }, - { "kind" : "IdRef", "name" : "'Parent'" }, - { "kind" : "IdRef", "name" : "'Linkage Name'" }, - { "kind" : "DebugInfoFlags", "name" : "'Flags'" }, - { "kind" : "LiteralInteger", "name" : "'Scope Line'" }, - { "kind" : "IdRef", "name" : "'Function'" }, - { "kind" : "IdRef", "name" : "'Declaration'", "quantifier" : "?" } - ] - }, - { - "opname" : "DebugLexicalBlock", - "opcode" : 21, - "operands" : [ - { "kind" : "IdRef", "name" : "'Source'" }, - { "kind" : "LiteralInteger", "name" : "'Line'" }, - { "kind" : "LiteralInteger", "name" : "'Column'" }, - { "kind" : "IdRef", "name" : "'Parent'" }, - { "kind" : "IdRef", "name" : "'Name'", "quantifier" : "?" } - ] - }, - { - "opname" : "DebugLexicalBlockDiscriminator", - "opcode" : 22, - "operands" : [ - { "kind" : "IdRef", "name" : "'Source'" }, - { "kind" : "LiteralInteger", "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" : "LiteralInteger", "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" : "LiteralInteger", "name" : "'Line'" }, - { "kind" : "LiteralInteger", "name" : "'Column'" }, - { "kind" : "IdRef", "name" : "'Parent'" }, - { "kind" : "DebugInfoFlags", "name" : "'Flags'" }, - { "kind" : "LiteralInteger", "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'" } - ] - }, - { - "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" : "DebugOperation", "name" : "'OpCode'" }, - { "kind" : "LiteralInteger", "name" : "'Operands ...'", "quantifier" : "*" } - ] - }, - { - "opname" : "DebugExpression", - "opcode" : 31, - "operands" : [ - { "kind" : "IdRef", "name" : "'Operands ...'", "quantifier" : "*" } - ] - }, - { - "opname" : "DebugMacroDef", - "opcode" : 32, - "operands" : [ - { "kind" : "IdRef", "name" : "'Source'" }, - { "kind" : "LiteralInteger", "name" : "'Line'" }, - { "kind" : "IdRef", "name" : "'Name'" }, - { "kind" : "IdRef", "name" : "'Value'", "quantifier" : "?" } - ] - }, - { - "opname" : "DebugMacroUndef", - "opcode" : 33, - "operands" : [ - { "kind" : "IdRef", "name" : "'Source'" }, - { "kind" : "LiteralInteger", "name" : "'Line'" }, - { "kind" : "IdRef", "name" : "'Macro'" } - ] - }, - { - "opname" : "DebugImportedEntity", - "opcode" : 34, - "operands" : [ - { "kind" : "IdRef", "name" : "'Name'" }, - { "kind" : "DebugImportedEntity", "name" : "'Tag'" }, - { "kind" : "IdRef", "name" : "'Source'" }, - { "kind" : "IdRef", "name" : "'Entity'" }, - { "kind" : "LiteralInteger", "name" : "'Line'" }, - { "kind" : "LiteralInteger", "name" : "'Column'" }, - { "kind" : "IdRef", "name" : "'Parent'" } - ] - }, - { - "opname" : "DebugSource", - "opcode" : 35, - "operands" : [ - { "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" : [ - { - "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" - } - ] - }, - { - "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" : "LiteralInteger" } - ] - }, - { - "enumerant" : "BitPiece", - "value" : "4", - "parameters" : [ - { "kind" : "LiteralInteger" }, - { "kind" : "LiteralInteger" } - ] - }, - { - "enumerant" : "Swap", - "value" : "5" - }, - { - "enumerant" : "Xderef", - "value" : "6" - }, - { - "enumerant" : "StackValue", - "value" : "7" - }, - { - "enumerant" : "Constu", - "value" : "8", - "parameters" : [ - { "kind" : "LiteralInteger" } - ] - }, - { - "enumerant" : "Fragment", - "value" : "9", - "parameters" : [ - { "kind" : "LiteralInteger" }, - { "kind" : "LiteralInteger" } - ] - } - ] - }, - { - "category" : "ValueEnum", - "kind" : "DebugImportedEntity", - "enumerants" : [ - { - "enumerant" : "ImportedModule", - "value" : "0" - }, - { - "enumerant" : "ImportedDeclaration", - "value" : "1" - } - ] - } - ] -} diff --git a/Extern/3rdParty/shaderc/shaderc/include/spirv/unified1/extinst.opencl.std.100.grammar.json b/Extern/3rdParty/shaderc/shaderc/include/spirv/unified1/extinst.opencl.std.100.grammar.json deleted file mode 100644 index 4fe4506..0000000 --- a/Extern/3rdParty/shaderc/shaderc/include/spirv/unified1/extinst.opencl.std.100.grammar.json +++ /dev/null @@ -1,1279 +0,0 @@ -{ - "copyright" : [ - "Copyright (c) 2014-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." - ], - "version" : 100, - "revision" : 2, - "instructions" : [ - { - "opname" : "acos", - "opcode" : 0, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" } - ] - }, - { - "opname" : "acosh", - "opcode" : 1, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" } - ] - }, - { - "opname" : "acospi", - "opcode" : 2, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" } - ] - }, - { - "opname" : "asin", - "opcode" : 3, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" } - ] - }, - { - "opname" : "asinh", - "opcode" : 4, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" } - ] - }, - { - "opname" : "asinpi", - "opcode" : 5, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" } - ] - }, - { - "opname" : "atan", - "opcode" : 6, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" } - ] - }, - { - "opname" : "atan2", - "opcode" : 7, - "operands" : [ - { "kind" : "IdRef", "name" : "'y'" }, - { "kind" : "IdRef", "name" : "'x'" } - ] - }, - { - "opname" : "atanh", - "opcode" : 8, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" } - ] - }, - { - "opname" : "atanpi", - "opcode" : 9, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" } - ] - }, - { - "opname" : "atan2pi", - "opcode" : 10, - "operands" : [ - { "kind" : "IdRef", "name" : "'y'" }, - { "kind" : "IdRef", "name" : "'x'" } - ] - }, - { - "opname" : "cbrt", - "opcode" : 11, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" } - ] - }, - { - "opname" : "ceil", - "opcode" : 12, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" } - ] - }, - { - "opname" : "copysign", - "opcode" : 13, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" }, - { "kind" : "IdRef", "name" : "'y'" } - ] - }, - { - "opname" : "cos", - "opcode" : 14, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" } - ] - }, - { - "opname" : "cosh", - "opcode" : 15, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" } - ] - }, - { - "opname" : "cospi", - "opcode" : 16, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" } - ] - }, - { - "opname" : "erfc", - "opcode" : 17, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" } - ] - }, - { - "opname" : "erf", - "opcode" : 18, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" } - ] - }, - { - "opname" : "exp", - "opcode" : 19, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" } - ] - }, - { - "opname" : "exp2", - "opcode" : 20, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" } - ] - }, - { - "opname" : "exp10", - "opcode" : 21, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" } - ] - }, - { - "opname" : "expm1", - "opcode" : 22, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" } - ] - }, - { - "opname" : "fabs", - "opcode" : 23, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" } - ] - }, - { - "opname" : "fdim", - "opcode" : 24, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" }, - { "kind" : "IdRef", "name" : "'y'" } - ] - }, - { - "opname" : "floor", - "opcode" : 25, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" } - ] - }, - { - "opname" : "fma", - "opcode" : 26, - "operands" : [ - { "kind" : "IdRef", "name" : "'a'" }, - { "kind" : "IdRef", "name" : "'b'" }, - { "kind" : "IdRef", "name" : "'c'" } - ] - }, - { - "opname" : "fmax", - "opcode" : 27, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" }, - { "kind" : "IdRef", "name" : "'y'" } - ] - }, - { - "opname" : "fmin", - "opcode" : 28, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" }, - { "kind" : "IdRef", "name" : "'y'" } - ] - }, - { - "opname" : "fmod", - "opcode" : 29, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" }, - { "kind" : "IdRef", "name" : "'y'" } - ] - }, - { - "opname" : "fract", - "opcode" : 30, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" }, - { "kind" : "IdRef", "name" : "'ptr'" } - ] - }, - { - "opname" : "frexp", - "opcode" : 31, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" }, - { "kind" : "IdRef", "name" : "'exp'" } - ] - }, - { - "opname" : "hypot", - "opcode" : 32, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" }, - { "kind" : "IdRef", "name" : "'y'" } - ] - }, - { - "opname" : "ilogb", - "opcode" : 33, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" } - ] - }, - { - "opname" : "ldexp", - "opcode" : 34, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" }, - { "kind" : "IdRef", "name" : "'k'" } - ] - }, - { - "opname" : "lgamma", - "opcode" : 35, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" } - ] - }, - { - "opname" : "lgamma_r", - "opcode" : 36, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" }, - { "kind" : "IdRef", "name" : "'signp'" } - ] - }, - { - "opname" : "log", - "opcode" : 37, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" } - ] - }, - { - "opname" : "log2", - "opcode" : 38, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" } - ] - }, - { - "opname" : "log10", - "opcode" : 39, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" } - ] - }, - { - "opname" : "log1p", - "opcode" : 40, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" } - ] - }, - { - "opname" : "logb", - "opcode" : 41, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" } - ] - }, - { - "opname" : "mad", - "opcode" : 42, - "operands" : [ - { "kind" : "IdRef", "name" : "'a'" }, - { "kind" : "IdRef", "name" : "'b'" }, - { "kind" : "IdRef", "name" : "'c'" } - ] - }, - { - "opname" : "maxmag", - "opcode" : 43, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" }, - { "kind" : "IdRef", "name" : "'y'" } - ] - }, - { - "opname" : "minmag", - "opcode" : 44, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" }, - { "kind" : "IdRef", "name" : "'y'" } - ] - }, - { - "opname" : "modf", - "opcode" : 45, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" }, - { "kind" : "IdRef", "name" : "'iptr'" } - ] - }, - { - "opname" : "nan", - "opcode" : 46, - "operands" : [ - { "kind" : "IdRef", "name" : "'nancode'" } - ] - }, - { - "opname" : "nextafter", - "opcode" : 47, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" }, - { "kind" : "IdRef", "name" : "'y'" } - ] - }, - { - "opname" : "pow", - "opcode" : 48, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" }, - { "kind" : "IdRef", "name" : "'y" } - ] - }, - { - "opname" : "pown", - "opcode" : 49, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" }, - { "kind" : "IdRef", "name" : "'y'" } - ] - }, - { - "opname" : "powr", - "opcode" : 50, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" }, - { "kind" : "IdRef", "name" : "'y'" } - ] - }, - { - "opname" : "remainder", - "opcode" : 51, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" }, - { "kind" : "IdRef", "name" : "'y'" } - ] - }, - { - "opname" : "remquo", - "opcode" : 52, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" }, - { "kind" : "IdRef", "name" : "'y'" }, - { "kind" : "IdRef", "name" : "'quo'" } - ] - }, - { - "opname" : "rint", - "opcode" : 53, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" } - ] - }, - { - "opname" : "rootn", - "opcode" : 54, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" }, - { "kind" : "IdRef", "name" : "'y'" } - ] - }, - { - "opname" : "round", - "opcode" : 55, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" } - ] - }, - { - "opname" : "rsqrt", - "opcode" : 56, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" } - ] - }, - { - "opname" : "sin", - "opcode" : 57, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" } - ] - }, - { - "opname" : "sincos", - "opcode" : 58, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" }, - { "kind" : "IdRef", "name" : "'cosval'" } - ] - }, - { - "opname" : "sinh", - "opcode" : 59, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" } - ] - }, - { - "opname" : "sinpi", - "opcode" : 60, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" } - ] - }, - { - "opname" : "sqrt", - "opcode" : 61, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" } - ] - }, - { - "opname" : "tan", - "opcode" : 62, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" } - ] - }, - { - "opname" : "tanh", - "opcode" : 63, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" } - ] - }, - { - "opname" : "tanpi", - "opcode" : 64, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" } - ] - }, - { - "opname" : "tgamma", - "opcode" : 65, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" } - ] - }, - { - "opname" : "trunc", - "opcode" : 66, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" } - ] - }, - { - "opname" : "half_cos", - "opcode" : 67, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" } - ] - }, - { - "opname" : "half_divide", - "opcode" : 68, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" }, - { "kind" : "IdRef", "name" : "'y'" } - ] - }, - { - "opname" : "half_exp", - "opcode" : 69, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" } - ] - }, - { - "opname" : "half_exp2", - "opcode" : 70, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" } - ] - }, - { - "opname" : "half_exp10", - "opcode" : 71, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" } - ] - }, - { - "opname" : "half_log", - "opcode" : 72, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" } - ] - }, - { - "opname" : "half_log2", - "opcode" : 73, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" } - ] - }, - { - "opname" : "half_log10", - "opcode" : 74, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" } - ] - }, - { - "opname" : "half_powr", - "opcode" : 75, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" }, - { "kind" : "IdRef", "name" : "'y'" } - ] - }, - { - "opname" : "half_recip", - "opcode" : 76, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" } - ] - }, - { - "opname" : "half_rsqrt", - "opcode" : 77, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" } - ] - }, - { - "opname" : "half_sin", - "opcode" : 78, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" } - ] - }, - { - "opname" : "half_sqrt", - "opcode" : 79, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" } - ] - }, - { - "opname" : "half_tan", - "opcode" : 80, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" } - ] - }, - { - "opname" : "native_cos", - "opcode" : 81, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" } - ] - }, - { - "opname" : "native_divide", - "opcode" : 82, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" }, - { "kind" : "IdRef", "name" : "'y'" } - ] - }, - { - "opname" : "native_exp", - "opcode" : 83, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" } - ] - }, - { - "opname" : "native_exp2", - "opcode" : 84, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" } - ] - }, - { - "opname" : "native_exp10", - "opcode" : 85, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" } - ] - }, - { - "opname" : "native_log", - "opcode" : 86, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" } - ] - }, - { - "opname" : "native_log2", - "opcode" : 87, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" } - ] - }, - { - "opname" : "native_log10", - "opcode" : 88, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" } - ] - }, - { - "opname" : "native_powr", - "opcode" : 89, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" }, - { "kind" : "IdRef", "name" : "'y'" } - ] - }, - { - "opname" : "native_recip", - "opcode" : 90, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" } - ] - }, - { - "opname" : "native_rsqrt", - "opcode" : 91, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" } - ] - }, - { - "opname" : "native_sin", - "opcode" : 92, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" } - ] - }, - { - "opname" : "native_sqrt", - "opcode" : 93, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" } - ] - }, - { - "opname" : "native_tan", - "opcode" : 94, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" } - ] - }, - { - "opname" : "s_abs", - "opcode" : 141, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" } - ] - }, - { - "opname" : "s_abs_diff", - "opcode" : 142, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" }, - { "kind" : "IdRef", "name" : "'y'" } - ] - }, - { - "opname" : "s_add_sat", - "opcode" : 143, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" }, - { "kind" : "IdRef", "name" : "'y'" } - ] - }, - { - "opname" : "u_add_sat", - "opcode" : 144, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" }, - { "kind" : "IdRef", "name" : "'y'" } - ] - }, - { - "opname" : "s_hadd", - "opcode" : 145, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" }, - { "kind" : "IdRef", "name" : "'y'" } - ] - }, - { - "opname" : "u_hadd", - "opcode" : 146, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" }, - { "kind" : "IdRef", "name" : "'y'" } - ] - }, - { - "opname" : "s_rhadd", - "opcode" : 147, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" }, - { "kind" : "IdRef", "name" : "'y'" } - ] - }, - { - "opname" : "u_rhadd", - "opcode" : 148, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" }, - { "kind" : "IdRef", "name" : "'y'" } - ] - }, - { - "opname" : "s_clamp", - "opcode" : 149, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" }, - { "kind" : "IdRef", "name" : "'minval'" }, - { "kind" : "IdRef", "name" : "'maxval'" } - ] - }, - { - "opname" : "u_clamp", - "opcode" : 150, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" }, - { "kind" : "IdRef", "name" : "'minval'" }, - { "kind" : "IdRef", "name" : "'maxval'" } - ] - }, - { - "opname" : "clz", - "opcode" : 151, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" } - ] - }, - { - "opname" : "ctz", - "opcode" : 152, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" } - ] - }, - { - "opname" : "s_mad_hi", - "opcode" : 153, - "operands" : [ - { "kind" : "IdRef", "name" : "'a'" }, - { "kind" : "IdRef", "name" : "'b'" }, - { "kind" : "IdRef", "name" : "'c'" } - ] - }, - { - "opname" : "u_mad_sat", - "opcode" : 154, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" }, - { "kind" : "IdRef", "name" : "'y'" }, - { "kind" : "IdRef", "name" : "'z'" } - ] - }, - { - "opname" : "s_mad_sat", - "opcode" : 155, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" }, - { "kind" : "IdRef", "name" : "'y'" }, - { "kind" : "IdRef", "name" : "'z'" } - ] - }, - { - "opname" : "s_max", - "opcode" : 156, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" }, - { "kind" : "IdRef", "name" : "'y'" } - ] - }, - { - "opname" : "u_max", - "opcode" : 157, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" }, - { "kind" : "IdRef", "name" : "'y'" } - ] - }, - { - "opname" : "s_min", - "opcode" : 158, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" }, - { "kind" : "IdRef", "name" : "'y'" } - ] - }, - { - "opname" : "u_min", - "opcode" : 159, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" }, - { "kind" : "IdRef", "name" : "'y'" } - ] - }, - { - "opname" : "s_mul_hi", - "opcode" : 160, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" }, - { "kind" : "IdRef", "name" : "'y'" } - ] - }, - { - "opname" : "rotate", - "opcode" : 161, - "operands" : [ - { "kind" : "IdRef", "name" : "'v'" }, - { "kind" : "IdRef", "name" : "'i'" } - ] - }, - { - "opname" : "s_sub_sat", - "opcode" : 162, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" }, - { "kind" : "IdRef", "name" : "'y'" } - ] - }, - { - "opname" : "u_sub_sat", - "opcode" : 163, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" }, - { "kind" : "IdRef", "name" : "'y'" } - ] - }, - { - "opname" : "u_upsample", - "opcode" : 164, - "operands" : [ - { "kind" : "IdRef", "name" : "'hi'" }, - { "kind" : "IdRef", "name" : "'lo'" } - ] - }, - { - "opname" : "s_upsample", - "opcode" : 165, - "operands" : [ - { "kind" : "IdRef", "name" : "'hi'" }, - { "kind" : "IdRef", "name" : "'lo'" } - ] - }, - { - "opname" : "popcount", - "opcode" : 166, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" } - ] - }, - { - "opname" : "s_mad24", - "opcode" : 167, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" }, - { "kind" : "IdRef", "name" : "'y'" }, - { "kind" : "IdRef", "name" : "'z'" } - ] - }, - { - "opname" : "u_mad24", - "opcode" : 168, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" }, - { "kind" : "IdRef", "name" : "'y'" }, - { "kind" : "IdRef", "name" : "'z'" } - ] - }, - { - "opname" : "s_mul24", - "opcode" : 169, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" }, - { "kind" : "IdRef", "name" : "'y'" } - ] - }, - { - "opname" : "u_mul24", - "opcode" : 170, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" }, - { "kind" : "IdRef", "name" : "'y'" } - ] - }, - { - "opname" : "u_abs", - "opcode" : 201, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" } - ] - }, - { - "opname" : "u_abs_diff", - "opcode" : 202, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" }, - { "kind" : "IdRef", "name" : "'y'" } - ] - }, - { - "opname" : "u_mul_hi", - "opcode" : 203, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" }, - { "kind" : "IdRef", "name" : "'y'" } - ] - }, - { - "opname" : "u_mad_hi", - "opcode" : 204, - "operands" : [ - { "kind" : "IdRef", "name" : "'a'" }, - { "kind" : "IdRef", "name" : "'b'" }, - { "kind" : "IdRef", "name" : "'c'" } - ] - }, - { - "opname" : "fclamp", - "opcode" : 95, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" }, - { "kind" : "IdRef", "name" : "'minval'" }, - { "kind" : "IdRef", "name" : "'maxval'" } - ] - }, - { - "opname" : "degrees", - "opcode" :96, - "operands" : [ - { "kind" : "IdRef", "name" : "'radians'" } - ] - }, - { - "opname" : "fmax_common", - "opcode" : 97, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" }, - { "kind" : "IdRef", "name" : "'y'" } - ] - }, - { - "opname" : "fmin_common", - "opcode" : 98, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" }, - { "kind" : "IdRef", "name" : "'y'" } - ] - }, - { - "opname" : "mix", - "opcode" : 99, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" }, - { "kind" : "IdRef", "name" : "'y'" }, - { "kind" : "IdRef", "name" : "'a'" } - ] - }, - { - "opname" : "radians", - "opcode" : 100, - "operands" : [ - { "kind" : "IdRef", "name" : "'degrees'" } - ] - }, - { - "opname" : "step", - "opcode" : 101, - "operands" : [ - { "kind" : "IdRef", "name" : "'edge'" }, - { "kind" : "IdRef", "name" : "'x'" } - ] - }, - { - "opname" : "smoothstep", - "opcode" : 102, - "operands" : [ - { "kind" : "IdRef", "name" : "'edge0'" }, - { "kind" : "IdRef", "name" : "'edge1'" }, - { "kind" : "IdRef", "name" : "'x'" } - ] - }, - { - "opname" : "sign", - "opcode" : 103, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" } - ] - }, - { - "opname" : "cross", - "opcode" : 104, - "operands" : [ - { "kind" : "IdRef", "name" : "'p0'" }, - { "kind" : "IdRef", "name" : "'p1'" } - ] - }, - { - "opname" : "distance", - "opcode" : 105, - "operands" : [ - { "kind" : "IdRef", "name" : "'p0'" }, - { "kind" : "IdRef", "name" : "'p1'" } - ] - }, - { - "opname" : "length", - "opcode" : 106, - "operands" : [ - { "kind" : "IdRef", "name" : "'p'" } - ] - }, - { - "opname" : "normalize", - "opcode" : 107, - "operands" : [ - { "kind" : "IdRef", "name" : "'p'" } - ] - }, - { - "opname" : "fast_distance", - "opcode" : 108, - "operands" : [ - { "kind" : "IdRef", "name" : "'p0'" }, - { "kind" : "IdRef", "name" : "'p1'" } - ] - }, - { - "opname" : "fast_length", - "opcode" : 109, - "operands" : [ - { "kind" : "IdRef", "name" : "'p'" } - ] - }, - { - "opname" : "fast_normalize", - "opcode" : 110, - "operands" : [ - { "kind" : "IdRef", "name" : "'p'" } - ] - }, - { - "opname" : "bitselect", - "opcode" : 186, - "operands" : [ - { "kind" : "IdRef", "name" : "'a'" }, - { "kind" : "IdRef", "name" : "'b'" }, - { "kind" : "IdRef", "name" : "'c'" } - ] - }, - { - "opname" : "select", - "opcode" : 187, - "operands" : [ - { "kind" : "IdRef", "name" : "'a'" }, - { "kind" : "IdRef", "name" : "'b'" }, - { "kind" : "IdRef", "name" : "'c'" } - ] - }, - { - "opname" : "vloadn", - "opcode" : 171, - "operands" : [ - { "kind" : "IdRef", "name" : "'offset'" }, - { "kind" : "IdRef", "name" : "'p'" }, - { "kind" : "LiteralInteger", "name" : "'n'" } - ] - }, - { - "opname" : "vstoren", - "opcode" : 172, - "operands" : [ - { "kind" : "IdRef", "name" : "'data'" }, - { "kind" : "IdRef", "name" : "'offset'" }, - { "kind" : "IdRef", "name" : "'p'" } - ] - }, - { - "opname" : "vload_half", - "opcode" : 173, - "operands" : [ - { "kind" : "IdRef", "name" : "'offset'" }, - { "kind" : "IdRef", "name" : "'p'" } - ] - }, - { - "opname" : "vload_halfn", - "opcode" : 174, - "operands" : [ - { "kind" : "IdRef", "name" : "'offset'" }, - { "kind" : "IdRef", "name" : "'p'" }, - { "kind" : "LiteralInteger", "name" : "'n'" } - ] - }, - { - "opname" : "vstore_half", - "opcode" : 175, - "operands" : [ - { "kind" : "IdRef", "name" : "'data'" }, - { "kind" : "IdRef", "name" : "'offset'" }, - { "kind" : "IdRef", "name" : "'p'" } - ] - }, - { - "opname" : "vstore_half_r", - "opcode" : 176, - "operands" : [ - { "kind" : "IdRef", "name" : "'data'" }, - { "kind" : "IdRef", "name" : "'offset'" }, - { "kind" : "IdRef", "name" : "'p'" }, - { "kind" : "FPRoundingMode", "name" : "'mode'" } - ] - }, - { - "opname" : "vstore_halfn", - "opcode" : 177, - "operands" : [ - { "kind" : "IdRef", "name" : "'data'" }, - { "kind" : "IdRef", "name" : "'offset'" }, - { "kind" : "IdRef", "name" : "'p'" } - ] - }, - { - "opname" : "vstore_halfn_r", - "opcode" : 178, - "operands" : [ - { "kind" : "IdRef", "name" : "'data'" }, - { "kind" : "IdRef", "name" : "'offset'" }, - { "kind" : "IdRef", "name" : "'p'" }, - { "kind" : "FPRoundingMode", "name" : "'mode'" } - ] - }, - { - "opname" : "vloada_halfn", - "opcode" : 179, - "operands" : [ - { "kind" : "IdRef", "name" : "'offset'" }, - { "kind" : "IdRef", "name" : "'p'" }, - { "kind" : "LiteralInteger", "name" : "'n'" } - ] - }, - { - "opname" : "vstorea_halfn", - "opcode" : 180, - "operands" : [ - { "kind" : "IdRef", "name" : "'data'" }, - { "kind" : "IdRef", "name" : "'offset'" }, - { "kind" : "IdRef", "name" : "'p'" } - ] - }, - { - "opname" : "vstorea_halfn_r", - "opcode" : 181, - "operands" : [ - { "kind" : "IdRef", "name" : "'data'" }, - { "kind" : "IdRef", "name" : "'offset'" }, - { "kind" : "IdRef", "name" : "'p'" }, - { "kind" : "FPRoundingMode", "name" : "'mode'" } - ] - }, - { - "opname" : "shuffle", - "opcode" : 182, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" }, - { "kind" : "IdRef", "name" : "'shuffle mask'" } - ] - }, - { - "opname" : "shuffle2", - "opcode" : 183, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" }, - { "kind" : "IdRef", "name" : "'y'" }, - { "kind" : "IdRef", "name" : "'shuffle mask'" } - ] - }, - { - "opname" : "printf", - "opcode" : 184, - "operands" : [ - { "kind" : "IdRef", "name" : "'format'" }, - { "kind" : "IdRef", "name" : "'additional arguments'", "quantifier" : "*" } - ] - }, - { - "opname" : "prefetch", - "opcode" : 185, - "operands" : [ - { "kind" : "IdRef", "name" : "'ptr'" }, - { "kind" : "IdRef", "name" : "'num elements'" } - ] - } - ] -} diff --git a/Extern/3rdParty/shaderc/shaderc/include/spirv/unified1/extinst.spv-amd-gcn-shader.grammar.json b/Extern/3rdParty/shaderc/shaderc/include/spirv/unified1/extinst.spv-amd-gcn-shader.grammar.json deleted file mode 100644 index e18251b..0000000 --- a/Extern/3rdParty/shaderc/shaderc/include/spirv/unified1/extinst.spv-amd-gcn-shader.grammar.json +++ /dev/null @@ -1,26 +0,0 @@ -{ - "revision" : 2, - "instructions" : [ - { - "opname" : "CubeFaceIndexAMD", - "opcode" : 1, - "operands" : [ - { "kind" : "IdRef", "name" : "'P'" } - ], - "extensions" : [ "SPV_AMD_gcn_shader" ] - }, - { - "opname" : "CubeFaceCoordAMD", - "opcode" : 2, - "operands" : [ - { "kind" : "IdRef", "name" : "'P'" } - ], - "extensions" : [ "SPV_AMD_gcn_shader" ] - }, - { - "opname" : "TimeAMD", - "opcode" : 3, - "extensions" : [ "SPV_AMD_gcn_shader" ] - } - ] -} diff --git a/Extern/3rdParty/shaderc/shaderc/include/spirv/unified1/extinst.spv-amd-shader-ballot.grammar.json b/Extern/3rdParty/shaderc/shaderc/include/spirv/unified1/extinst.spv-amd-shader-ballot.grammar.json deleted file mode 100644 index 62a470e..0000000 --- a/Extern/3rdParty/shaderc/shaderc/include/spirv/unified1/extinst.spv-amd-shader-ballot.grammar.json +++ /dev/null @@ -1,41 +0,0 @@ -{ - "revision" : 5, - "instructions" : [ - { - "opname" : "SwizzleInvocationsAMD", - "opcode" : 1, - "operands" : [ - { "kind" : "IdRef", "name" : "'data'" }, - { "kind" : "IdRef", "name" : "'offset'" } - ], - "extensions" : [ "SPV_AMD_shader_ballot" ] - }, - { - "opname" : "SwizzleInvocationsMaskedAMD", - "opcode" : 2, - "operands" : [ - { "kind" : "IdRef", "name" : "'data'" }, - { "kind" : "IdRef", "name" : "'mask'" } - ], - "extensions" : [ "SPV_AMD_shader_ballot" ] - }, - { - "opname" : "WriteInvocationAMD", - "opcode" : 3, - "operands" : [ - { "kind" : "IdRef", "name" : "'inputValue'" }, - { "kind" : "IdRef", "name" : "'writeValue'" }, - { "kind" : "IdRef", "name" : "'invocationIndex'" } - ], - "extensions" : [ "SPV_AMD_shader_ballot" ] - }, - { - "opname" : "MbcntAMD", - "opcode" : 4, - "operands" : [ - { "kind" : "IdRef", "name" : "'mask'" } - ], - "extensions" : [ "SPV_AMD_shader_ballot" ] - } - ] -} diff --git a/Extern/3rdParty/shaderc/shaderc/include/spirv/unified1/extinst.spv-amd-shader-explicit-vertex-parameter.grammar.json b/Extern/3rdParty/shaderc/shaderc/include/spirv/unified1/extinst.spv-amd-shader-explicit-vertex-parameter.grammar.json deleted file mode 100644 index e156b1b..0000000 --- a/Extern/3rdParty/shaderc/shaderc/include/spirv/unified1/extinst.spv-amd-shader-explicit-vertex-parameter.grammar.json +++ /dev/null @@ -1,14 +0,0 @@ -{ - "revision" : 4, - "instructions" : [ - { - "opname" : "InterpolateAtVertexAMD", - "opcode" : 1, - "operands" : [ - { "kind" : "IdRef", "name" : "'interpolant'" }, - { "kind" : "IdRef", "name" : "'vertexIdx'" } - ], - "extensions" : [ "SPV_AMD_shader_explicit_vertex_parameter" ] - } - ] -} diff --git a/Extern/3rdParty/shaderc/shaderc/include/spirv/unified1/extinst.spv-amd-shader-trinary-minmax.grammar.json b/Extern/3rdParty/shaderc/shaderc/include/spirv/unified1/extinst.spv-amd-shader-trinary-minmax.grammar.json deleted file mode 100644 index c681976..0000000 --- a/Extern/3rdParty/shaderc/shaderc/include/spirv/unified1/extinst.spv-amd-shader-trinary-minmax.grammar.json +++ /dev/null @@ -1,95 +0,0 @@ -{ - "revision" : 4, - "instructions" : [ - { - "opname" : "FMin3AMD", - "opcode" : 1, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" }, - { "kind" : "IdRef", "name" : "'y'" }, - { "kind" : "IdRef", "name" : "'z'" } - ], - "extensions" : [ "SPV_AMD_shader_trinary_minmax" ] - }, - { - "opname" : "UMin3AMD", - "opcode" : 2, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" }, - { "kind" : "IdRef", "name" : "'y'" }, - { "kind" : "IdRef", "name" : "'z'" } - ], - "extensions" : [ "SPV_AMD_shader_trinary_minmax" ] - }, - { - "opname" : "SMin3AMD", - "opcode" : 3, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" }, - { "kind" : "IdRef", "name" : "'y'" }, - { "kind" : "IdRef", "name" : "'z'" } - ], - "extensions" : [ "SPV_AMD_shader_trinary_minmax" ] - }, - { - "opname" : "FMax3AMD", - "opcode" : 4, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" }, - { "kind" : "IdRef", "name" : "'y'" }, - { "kind" : "IdRef", "name" : "'z'" } - ], - "extensions" : [ "SPV_AMD_shader_trinary_minmax" ] - }, - { - "opname" : "UMax3AMD", - "opcode" : 5, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" }, - { "kind" : "IdRef", "name" : "'y'" }, - { "kind" : "IdRef", "name" : "'z'" } - ], - "extensions" : [ "SPV_AMD_shader_trinary_minmax" ] - }, - { - "opname" : "SMax3AMD", - "opcode" : 6, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" }, - { "kind" : "IdRef", "name" : "'y'" }, - { "kind" : "IdRef", "name" : "'z'" } - ], - "extensions" : [ "SPV_AMD_shader_trinary_minmax" ] - }, - { - "opname" : "FMid3AMD", - "opcode" : 7, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" }, - { "kind" : "IdRef", "name" : "'y'" }, - { "kind" : "IdRef", "name" : "'z'" } - ], - "extensions" : [ "SPV_AMD_shader_trinary_minmax" ] - }, - { - "opname" : "UMid3AMD", - "opcode" : 8, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" }, - { "kind" : "IdRef", "name" : "'y'" }, - { "kind" : "IdRef", "name" : "'z'" } - ], - "extensions" : [ "SPV_AMD_shader_trinary_minmax" ] - }, - { - "opname" : "SMid3AMD", - "opcode" : 9, - "operands" : [ - { "kind" : "IdRef", "name" : "'x'" }, - { "kind" : "IdRef", "name" : "'y'" }, - { "kind" : "IdRef", "name" : "'z'" } - ], - "extensions" : [ "SPV_AMD_shader_trinary_minmax" ] - } - ] -} diff --git a/Extern/3rdParty/shaderc/shaderc/include/spirv/unified1/spirv.bf b/Extern/3rdParty/shaderc/shaderc/include/spirv/unified1/spirv.bf deleted file mode 100644 index 8f4b43a..0000000 --- a/Extern/3rdParty/shaderc/shaderc/include/spirv/unified1/spirv.bf +++ /dev/null @@ -1,2044 +0,0 @@ -// Copyright (c) 2014-2020 The Khronos Group Inc. -// -// Permission is hereby granted, free of charge, to any person obtaining a copy -// of this software and/or associated documentation files (the "Materials"), -// 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. - -// This header is automatically generated by the same tool that creates -// the Binary Section of the SPIR-V specification. - -// Enumeration tokens for SPIR-V, in various styles: -// C, C++, C++11, JSON, Lua, Python, C#, D, Beef -// -// - C will have tokens with a "Spv" prefix, e.g.: SpvSourceLanguageGLSL -// - C++ will have tokens in the "spv" name space, e.g.: spv::SourceLanguageGLSL -// - C++11 will use enum classes in the spv namespace, e.g.: spv::SourceLanguage::GLSL -// - Lua will use tables, e.g.: spv.SourceLanguage.GLSL -// - Python will use dictionaries, e.g.: spv['SourceLanguage']['GLSL'] -// - C# will use enum classes in the Specification class located in the "Spv" namespace, -// e.g.: Spv.Specification.SourceLanguage.GLSL -// - D will have tokens under the "spv" module, e.g: spv.SourceLanguage.GLSL -// - Beef will use enum classes in the Specification class located in the "Spv" namespace, -// e.g.: Spv.Specification.SourceLanguage.GLSL -// -// Some tokens act like mask values, which can be OR'd together, -// while others are mutually exclusive. The mask-like ones have -// "Mask" in their name, and a parallel enum that has the shift -// amount (1 << x) for each corresponding enumerant. - -namespace Spv -{ - using System; - - public static class Specification - { - public const uint32 MagicNumber = 0x07230203; - public const uint32 Version = 0x00010600; - public const uint32 Revision = 1; - public const uint32 OpCodeMask = 0xffff; - public const uint32 WordCountShift = 16; - - [AllowDuplicates, CRepr] public enum SourceLanguage - { - Unknown = 0, - ESSL = 1, - GLSL = 2, - OpenCL_C = 3, - OpenCL_CPP = 4, - HLSL = 5, - CPP_for_OpenCL = 6, - SYCL = 7, - HERO_C = 8, - NZSL = 9, - WGSL = 10, - } - - [AllowDuplicates, CRepr] public enum ExecutionModel - { - Vertex = 0, - TessellationControl = 1, - TessellationEvaluation = 2, - Geometry = 3, - Fragment = 4, - GLCompute = 5, - Kernel = 6, - TaskNV = 5267, - MeshNV = 5268, - RayGenerationKHR = 5313, - RayGenerationNV = 5313, - IntersectionKHR = 5314, - IntersectionNV = 5314, - AnyHitKHR = 5315, - AnyHitNV = 5315, - ClosestHitKHR = 5316, - ClosestHitNV = 5316, - MissKHR = 5317, - MissNV = 5317, - CallableKHR = 5318, - CallableNV = 5318, - TaskEXT = 5364, - MeshEXT = 5365, - } - - [AllowDuplicates, CRepr] public enum AddressingModel - { - Logical = 0, - Physical32 = 1, - Physical64 = 2, - PhysicalStorageBuffer64 = 5348, - PhysicalStorageBuffer64EXT = 5348, - } - - [AllowDuplicates, CRepr] public enum MemoryModel - { - Simple = 0, - GLSL450 = 1, - OpenCL = 2, - Vulkan = 3, - VulkanKHR = 3, - } - - [AllowDuplicates, CRepr] public enum ExecutionMode - { - Invocations = 0, - SpacingEqual = 1, - SpacingFractionalEven = 2, - SpacingFractionalOdd = 3, - VertexOrderCw = 4, - VertexOrderCcw = 5, - PixelCenterInteger = 6, - OriginUpperLeft = 7, - OriginLowerLeft = 8, - EarlyFragmentTests = 9, - PointMode = 10, - Xfb = 11, - DepthReplacing = 12, - DepthGreater = 14, - DepthLess = 15, - DepthUnchanged = 16, - LocalSize = 17, - LocalSizeHint = 18, - InputPoints = 19, - InputLines = 20, - InputLinesAdjacency = 21, - Triangles = 22, - InputTrianglesAdjacency = 23, - Quads = 24, - Isolines = 25, - OutputVertices = 26, - OutputPoints = 27, - OutputLineStrip = 28, - OutputTriangleStrip = 29, - VecTypeHint = 30, - ContractionOff = 31, - Initializer = 33, - Finalizer = 34, - SubgroupSize = 35, - SubgroupsPerWorkgroup = 36, - SubgroupsPerWorkgroupId = 37, - LocalSizeId = 38, - LocalSizeHintId = 39, - NonCoherentColorAttachmentReadEXT = 4169, - NonCoherentDepthAttachmentReadEXT = 4170, - NonCoherentStencilAttachmentReadEXT = 4171, - SubgroupUniformControlFlowKHR = 4421, - PostDepthCoverage = 4446, - DenormPreserve = 4459, - DenormFlushToZero = 4460, - SignedZeroInfNanPreserve = 4461, - RoundingModeRTE = 4462, - RoundingModeRTZ = 4463, - EarlyAndLateFragmentTestsAMD = 5017, - StencilRefReplacingEXT = 5027, - StencilRefUnchangedFrontAMD = 5079, - StencilRefGreaterFrontAMD = 5080, - StencilRefLessFrontAMD = 5081, - StencilRefUnchangedBackAMD = 5082, - StencilRefGreaterBackAMD = 5083, - StencilRefLessBackAMD = 5084, - OutputLinesEXT = 5269, - OutputLinesNV = 5269, - OutputPrimitivesEXT = 5270, - OutputPrimitivesNV = 5270, - DerivativeGroupQuadsNV = 5289, - DerivativeGroupLinearNV = 5290, - OutputTrianglesEXT = 5298, - OutputTrianglesNV = 5298, - PixelInterlockOrderedEXT = 5366, - PixelInterlockUnorderedEXT = 5367, - SampleInterlockOrderedEXT = 5368, - SampleInterlockUnorderedEXT = 5369, - ShadingRateInterlockOrderedEXT = 5370, - ShadingRateInterlockUnorderedEXT = 5371, - SharedLocalMemorySizeINTEL = 5618, - RoundingModeRTPINTEL = 5620, - RoundingModeRTNINTEL = 5621, - FloatingPointModeALTINTEL = 5622, - FloatingPointModeIEEEINTEL = 5623, - MaxWorkgroupSizeINTEL = 5893, - MaxWorkDimINTEL = 5894, - NoGlobalOffsetINTEL = 5895, - NumSIMDWorkitemsINTEL = 5896, - SchedulerTargetFmaxMhzINTEL = 5903, - StreamingInterfaceINTEL = 6154, - RegisterMapInterfaceINTEL = 6160, - NamedBarrierCountINTEL = 6417, - } - - [AllowDuplicates, CRepr] public enum StorageClass - { - UniformConstant = 0, - Input = 1, - Uniform = 2, - Output = 3, - Workgroup = 4, - CrossWorkgroup = 5, - Private = 6, - Function = 7, - Generic = 8, - PushConstant = 9, - AtomicCounter = 10, - Image = 11, - StorageBuffer = 12, - TileImageEXT = 4172, - CallableDataKHR = 5328, - CallableDataNV = 5328, - IncomingCallableDataKHR = 5329, - IncomingCallableDataNV = 5329, - RayPayloadKHR = 5338, - RayPayloadNV = 5338, - HitAttributeKHR = 5339, - HitAttributeNV = 5339, - IncomingRayPayloadKHR = 5342, - IncomingRayPayloadNV = 5342, - ShaderRecordBufferKHR = 5343, - ShaderRecordBufferNV = 5343, - PhysicalStorageBuffer = 5349, - PhysicalStorageBufferEXT = 5349, - HitObjectAttributeNV = 5385, - TaskPayloadWorkgroupEXT = 5402, - CodeSectionINTEL = 5605, - DeviceOnlyINTEL = 5936, - HostOnlyINTEL = 5937, - } - - [AllowDuplicates, CRepr] public enum Dim - { - Dim1D = 0, - Dim2D = 1, - Dim3D = 2, - Cube = 3, - Rect = 4, - Buffer = 5, - SubpassData = 6, - TileImageDataEXT = 4173, - } - - [AllowDuplicates, CRepr] public enum SamplerAddressingMode - { - None = 0, - ClampToEdge = 1, - Clamp = 2, - Repeat = 3, - RepeatMirrored = 4, - } - - [AllowDuplicates, CRepr] public enum SamplerFilterMode - { - Nearest = 0, - Linear = 1, - } - - [AllowDuplicates, CRepr] public enum ImageFormat - { - Unknown = 0, - Rgba32f = 1, - Rgba16f = 2, - R32f = 3, - Rgba8 = 4, - Rgba8Snorm = 5, - Rg32f = 6, - Rg16f = 7, - R11fG11fB10f = 8, - R16f = 9, - Rgba16 = 10, - Rgb10A2 = 11, - Rg16 = 12, - Rg8 = 13, - R16 = 14, - R8 = 15, - Rgba16Snorm = 16, - Rg16Snorm = 17, - Rg8Snorm = 18, - R16Snorm = 19, - R8Snorm = 20, - Rgba32i = 21, - Rgba16i = 22, - Rgba8i = 23, - R32i = 24, - Rg32i = 25, - Rg16i = 26, - Rg8i = 27, - R16i = 28, - R8i = 29, - Rgba32ui = 30, - Rgba16ui = 31, - Rgba8ui = 32, - R32ui = 33, - Rgb10a2ui = 34, - Rg32ui = 35, - Rg16ui = 36, - Rg8ui = 37, - R16ui = 38, - R8ui = 39, - R64ui = 40, - R64i = 41, - } - - [AllowDuplicates, CRepr] public enum ImageChannelOrder - { - R = 0, - A = 1, - RG = 2, - RA = 3, - RGB = 4, - RGBA = 5, - BGRA = 6, - ARGB = 7, - Intensity = 8, - Luminance = 9, - Rx = 10, - RGx = 11, - RGBx = 12, - Depth = 13, - DepthStencil = 14, - sRGB = 15, - sRGBx = 16, - sRGBA = 17, - sBGRA = 18, - ABGR = 19, - } - - [AllowDuplicates, CRepr] public enum ImageChannelDataType - { - SnormInt8 = 0, - SnormInt16 = 1, - UnormInt8 = 2, - UnormInt16 = 3, - UnormShort565 = 4, - UnormShort555 = 5, - UnormInt101010 = 6, - SignedInt8 = 7, - SignedInt16 = 8, - SignedInt32 = 9, - UnsignedInt8 = 10, - UnsignedInt16 = 11, - UnsignedInt32 = 12, - HalfFloat = 13, - Float = 14, - UnormInt24 = 15, - UnormInt101010_2 = 16, - UnsignedIntRaw10EXT = 19, - UnsignedIntRaw12EXT = 20, - } - - [AllowDuplicates, CRepr] public enum ImageOperandsShift - { - Bias = 0, - Lod = 1, - Grad = 2, - ConstOffset = 3, - Offset = 4, - ConstOffsets = 5, - Sample = 6, - MinLod = 7, - MakeTexelAvailable = 8, - MakeTexelAvailableKHR = 8, - MakeTexelVisible = 9, - MakeTexelVisibleKHR = 9, - NonPrivateTexel = 10, - NonPrivateTexelKHR = 10, - VolatileTexel = 11, - VolatileTexelKHR = 11, - SignExtend = 12, - ZeroExtend = 13, - Nontemporal = 14, - Offsets = 16, - } - - [AllowDuplicates, CRepr] public enum ImageOperandsMask - { - MaskNone = 0, - Bias = 0x00000001, - Lod = 0x00000002, - Grad = 0x00000004, - ConstOffset = 0x00000008, - Offset = 0x00000010, - ConstOffsets = 0x00000020, - Sample = 0x00000040, - MinLod = 0x00000080, - MakeTexelAvailable = 0x00000100, - MakeTexelAvailableKHR = 0x00000100, - MakeTexelVisible = 0x00000200, - MakeTexelVisibleKHR = 0x00000200, - NonPrivateTexel = 0x00000400, - NonPrivateTexelKHR = 0x00000400, - VolatileTexel = 0x00000800, - VolatileTexelKHR = 0x00000800, - SignExtend = 0x00001000, - ZeroExtend = 0x00002000, - Nontemporal = 0x00004000, - Offsets = 0x00010000, - } - - [AllowDuplicates, CRepr] public enum FPFastMathModeShift - { - NotNaN = 0, - NotInf = 1, - NSZ = 2, - AllowRecip = 3, - Fast = 4, - AllowContractFastINTEL = 16, - AllowReassocINTEL = 17, - } - - [AllowDuplicates, CRepr] public enum FPFastMathModeMask - { - MaskNone = 0, - NotNaN = 0x00000001, - NotInf = 0x00000002, - NSZ = 0x00000004, - AllowRecip = 0x00000008, - Fast = 0x00000010, - AllowContractFastINTEL = 0x00010000, - AllowReassocINTEL = 0x00020000, - } - - [AllowDuplicates, CRepr] public enum FPRoundingMode - { - RTE = 0, - RTZ = 1, - RTP = 2, - RTN = 3, - } - - [AllowDuplicates, CRepr] public enum LinkageType - { - Export = 0, - Import = 1, - LinkOnceODR = 2, - } - - [AllowDuplicates, CRepr] public enum AccessQualifier - { - ReadOnly = 0, - WriteOnly = 1, - ReadWrite = 2, - } - - [AllowDuplicates, CRepr] public enum FunctionParameterAttribute - { - Zext = 0, - Sext = 1, - ByVal = 2, - Sret = 3, - NoAlias = 4, - NoCapture = 5, - NoWrite = 6, - NoReadWrite = 7, - RuntimeAlignedINTEL = 5940, - } - - [AllowDuplicates, CRepr] public enum Decoration - { - RelaxedPrecision = 0, - SpecId = 1, - Block = 2, - BufferBlock = 3, - RowMajor = 4, - ColMajor = 5, - ArrayStride = 6, - MatrixStride = 7, - GLSLShared = 8, - GLSLPacked = 9, - CPacked = 10, - BuiltIn = 11, - NoPerspective = 13, - Flat = 14, - Patch = 15, - Centroid = 16, - Sample = 17, - Invariant = 18, - Restrict = 19, - Aliased = 20, - Volatile = 21, - Constant = 22, - Coherent = 23, - NonWritable = 24, - NonReadable = 25, - Uniform = 26, - UniformId = 27, - SaturatedConversion = 28, - Stream = 29, - Location = 30, - Component = 31, - Index = 32, - Binding = 33, - DescriptorSet = 34, - Offset = 35, - XfbBuffer = 36, - XfbStride = 37, - FuncParamAttr = 38, - FPRoundingMode = 39, - FPFastMathMode = 40, - LinkageAttributes = 41, - NoContraction = 42, - InputAttachmentIndex = 43, - Alignment = 44, - MaxByteOffset = 45, - AlignmentId = 46, - MaxByteOffsetId = 47, - NoSignedWrap = 4469, - NoUnsignedWrap = 4470, - WeightTextureQCOM = 4487, - BlockMatchTextureQCOM = 4488, - ExplicitInterpAMD = 4999, - OverrideCoverageNV = 5248, - PassthroughNV = 5250, - ViewportRelativeNV = 5252, - SecondaryViewportRelativeNV = 5256, - PerPrimitiveEXT = 5271, - PerPrimitiveNV = 5271, - PerViewNV = 5272, - PerTaskNV = 5273, - PerVertexKHR = 5285, - PerVertexNV = 5285, - NonUniform = 5300, - NonUniformEXT = 5300, - RestrictPointer = 5355, - RestrictPointerEXT = 5355, - AliasedPointer = 5356, - AliasedPointerEXT = 5356, - HitObjectShaderRecordBufferNV = 5386, - BindlessSamplerNV = 5398, - BindlessImageNV = 5399, - BoundSamplerNV = 5400, - BoundImageNV = 5401, - SIMTCallINTEL = 5599, - ReferencedIndirectlyINTEL = 5602, - ClobberINTEL = 5607, - SideEffectsINTEL = 5608, - VectorComputeVariableINTEL = 5624, - FuncParamIOKindINTEL = 5625, - VectorComputeFunctionINTEL = 5626, - StackCallINTEL = 5627, - GlobalVariableOffsetINTEL = 5628, - CounterBuffer = 5634, - 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, - MathOpDSPModeINTEL = 5909, - AliasScopeINTEL = 5914, - NoAliasINTEL = 5915, - InitiationIntervalINTEL = 5917, - MaxConcurrencyINTEL = 5918, - PipelineEnableINTEL = 5919, - BufferLocationINTEL = 5921, - IOPipeStorageINTEL = 5944, - FunctionFloatingPointModeINTEL = 6080, - SingleElementVectorINTEL = 6085, - VectorComputeCallableFunctionINTEL = 6087, - MediaBlockIOINTEL = 6140, - FPMaxErrorDecorationINTEL = 6170, - LatencyControlLabelINTEL = 6172, - LatencyControlConstraintINTEL = 6173, - ConduitKernelArgumentINTEL = 6175, - RegisterMapKernelArgumentINTEL = 6176, - MMHostInterfaceAddressWidthINTEL = 6177, - MMHostInterfaceDataWidthINTEL = 6178, - MMHostInterfaceLatencyINTEL = 6179, - MMHostInterfaceReadWriteModeINTEL = 6180, - MMHostInterfaceMaxBurstINTEL = 6181, - MMHostInterfaceWaitRequestINTEL = 6182, - StableKernelArgumentINTEL = 6183, - } - - [AllowDuplicates, CRepr] public enum BuiltIn - { - Position = 0, - PointSize = 1, - ClipDistance = 3, - CullDistance = 4, - VertexId = 5, - InstanceId = 6, - PrimitiveId = 7, - InvocationId = 8, - Layer = 9, - ViewportIndex = 10, - TessLevelOuter = 11, - TessLevelInner = 12, - TessCoord = 13, - PatchVertices = 14, - FragCoord = 15, - PointCoord = 16, - FrontFacing = 17, - SampleId = 18, - SamplePosition = 19, - SampleMask = 20, - FragDepth = 22, - HelperInvocation = 23, - NumWorkgroups = 24, - WorkgroupSize = 25, - WorkgroupId = 26, - LocalInvocationId = 27, - GlobalInvocationId = 28, - LocalInvocationIndex = 29, - WorkDim = 30, - GlobalSize = 31, - EnqueuedWorkgroupSize = 32, - GlobalOffset = 33, - GlobalLinearId = 34, - SubgroupSize = 36, - SubgroupMaxSize = 37, - NumSubgroups = 38, - NumEnqueuedSubgroups = 39, - SubgroupId = 40, - SubgroupLocalInvocationId = 41, - VertexIndex = 42, - InstanceIndex = 43, - CoreIDARM = 4160, - CoreCountARM = 4161, - CoreMaxIDARM = 4162, - WarpIDARM = 4163, - WarpMaxIDARM = 4164, - SubgroupEqMask = 4416, - SubgroupEqMaskKHR = 4416, - SubgroupGeMask = 4417, - SubgroupGeMaskKHR = 4417, - SubgroupGtMask = 4418, - SubgroupGtMaskKHR = 4418, - SubgroupLeMask = 4419, - SubgroupLeMaskKHR = 4419, - SubgroupLtMask = 4420, - SubgroupLtMaskKHR = 4420, - BaseVertex = 4424, - BaseInstance = 4425, - DrawIndex = 4426, - PrimitiveShadingRateKHR = 4432, - DeviceIndex = 4438, - ViewIndex = 4440, - ShadingRateKHR = 4444, - BaryCoordNoPerspAMD = 4992, - BaryCoordNoPerspCentroidAMD = 4993, - BaryCoordNoPerspSampleAMD = 4994, - BaryCoordSmoothAMD = 4995, - BaryCoordSmoothCentroidAMD = 4996, - BaryCoordSmoothSampleAMD = 4997, - BaryCoordPullModelAMD = 4998, - FragStencilRefEXT = 5014, - ViewportMaskNV = 5253, - SecondaryPositionNV = 5257, - SecondaryViewportMaskNV = 5258, - PositionPerViewNV = 5261, - ViewportMaskPerViewNV = 5262, - FullyCoveredEXT = 5264, - TaskCountNV = 5274, - PrimitiveCountNV = 5275, - PrimitiveIndicesNV = 5276, - ClipDistancePerViewNV = 5277, - CullDistancePerViewNV = 5278, - LayerPerViewNV = 5279, - MeshViewCountNV = 5280, - MeshViewIndicesNV = 5281, - BaryCoordKHR = 5286, - BaryCoordNV = 5286, - BaryCoordNoPerspKHR = 5287, - BaryCoordNoPerspNV = 5287, - FragSizeEXT = 5292, - FragmentSizeNV = 5292, - FragInvocationCountEXT = 5293, - InvocationsPerPixelNV = 5293, - PrimitivePointIndicesEXT = 5294, - PrimitiveLineIndicesEXT = 5295, - PrimitiveTriangleIndicesEXT = 5296, - CullPrimitiveEXT = 5299, - LaunchIdKHR = 5319, - LaunchIdNV = 5319, - LaunchSizeKHR = 5320, - LaunchSizeNV = 5320, - WorldRayOriginKHR = 5321, - WorldRayOriginNV = 5321, - WorldRayDirectionKHR = 5322, - WorldRayDirectionNV = 5322, - ObjectRayOriginKHR = 5323, - ObjectRayOriginNV = 5323, - ObjectRayDirectionKHR = 5324, - ObjectRayDirectionNV = 5324, - RayTminKHR = 5325, - RayTminNV = 5325, - RayTmaxKHR = 5326, - RayTmaxNV = 5326, - InstanceCustomIndexKHR = 5327, - InstanceCustomIndexNV = 5327, - ObjectToWorldKHR = 5330, - ObjectToWorldNV = 5330, - WorldToObjectKHR = 5331, - WorldToObjectNV = 5331, - HitTNV = 5332, - HitKindKHR = 5333, - HitKindNV = 5333, - CurrentRayTimeNV = 5334, - HitTriangleVertexPositionsKHR = 5335, - IncomingRayFlagsKHR = 5351, - IncomingRayFlagsNV = 5351, - RayGeometryIndexKHR = 5352, - WarpsPerSMNV = 5374, - SMCountNV = 5375, - WarpIDNV = 5376, - SMIDNV = 5377, - CullMaskKHR = 6021, - } - - [AllowDuplicates, CRepr] public enum SelectionControlShift - { - Flatten = 0, - DontFlatten = 1, - } - - [AllowDuplicates, CRepr] public enum SelectionControlMask - { - MaskNone = 0, - Flatten = 0x00000001, - DontFlatten = 0x00000002, - } - - [AllowDuplicates, CRepr] public enum LoopControlShift - { - Unroll = 0, - DontUnroll = 1, - DependencyInfinite = 2, - DependencyLength = 3, - MinIterations = 4, - MaxIterations = 5, - IterationMultiple = 6, - PeelCount = 7, - PartialCount = 8, - InitiationIntervalINTEL = 16, - MaxConcurrencyINTEL = 17, - DependencyArrayINTEL = 18, - PipelineEnableINTEL = 19, - LoopCoalesceINTEL = 20, - MaxInterleavingINTEL = 21, - SpeculatedIterationsINTEL = 22, - NoFusionINTEL = 23, - LoopCountINTEL = 24, - MaxReinvocationDelayINTEL = 25, - } - - [AllowDuplicates, CRepr] public enum LoopControlMask - { - MaskNone = 0, - Unroll = 0x00000001, - DontUnroll = 0x00000002, - DependencyInfinite = 0x00000004, - DependencyLength = 0x00000008, - MinIterations = 0x00000010, - MaxIterations = 0x00000020, - IterationMultiple = 0x00000040, - PeelCount = 0x00000080, - PartialCount = 0x00000100, - InitiationIntervalINTEL = 0x00010000, - MaxConcurrencyINTEL = 0x00020000, - DependencyArrayINTEL = 0x00040000, - PipelineEnableINTEL = 0x00080000, - LoopCoalesceINTEL = 0x00100000, - MaxInterleavingINTEL = 0x00200000, - SpeculatedIterationsINTEL = 0x00400000, - NoFusionINTEL = 0x00800000, - LoopCountINTEL = 0x01000000, - MaxReinvocationDelayINTEL = 0x02000000, - } - - [AllowDuplicates, CRepr] public enum FunctionControlShift - { - Inline = 0, - DontInline = 1, - Pure = 2, - Const = 3, - OptNoneINTEL = 16, - } - - [AllowDuplicates, CRepr] public enum FunctionControlMask - { - MaskNone = 0, - Inline = 0x00000001, - DontInline = 0x00000002, - Pure = 0x00000004, - Const = 0x00000008, - OptNoneINTEL = 0x00010000, - } - - [AllowDuplicates, CRepr] public enum MemorySemanticsShift - { - Acquire = 1, - Release = 2, - AcquireRelease = 3, - SequentiallyConsistent = 4, - UniformMemory = 6, - SubgroupMemory = 7, - WorkgroupMemory = 8, - CrossWorkgroupMemory = 9, - AtomicCounterMemory = 10, - ImageMemory = 11, - OutputMemory = 12, - OutputMemoryKHR = 12, - MakeAvailable = 13, - MakeAvailableKHR = 13, - MakeVisible = 14, - MakeVisibleKHR = 14, - Volatile = 15, - } - - [AllowDuplicates, CRepr] public enum MemorySemanticsMask - { - MaskNone = 0, - Acquire = 0x00000002, - Release = 0x00000004, - AcquireRelease = 0x00000008, - SequentiallyConsistent = 0x00000010, - UniformMemory = 0x00000040, - SubgroupMemory = 0x00000080, - WorkgroupMemory = 0x00000100, - CrossWorkgroupMemory = 0x00000200, - AtomicCounterMemory = 0x00000400, - ImageMemory = 0x00000800, - OutputMemory = 0x00001000, - OutputMemoryKHR = 0x00001000, - MakeAvailable = 0x00002000, - MakeAvailableKHR = 0x00002000, - MakeVisible = 0x00004000, - MakeVisibleKHR = 0x00004000, - Volatile = 0x00008000, - } - - [AllowDuplicates, CRepr] public enum MemoryAccessShift - { - Volatile = 0, - Aligned = 1, - Nontemporal = 2, - MakePointerAvailable = 3, - MakePointerAvailableKHR = 3, - MakePointerVisible = 4, - MakePointerVisibleKHR = 4, - NonPrivatePointer = 5, - NonPrivatePointerKHR = 5, - AliasScopeINTELMask = 16, - NoAliasINTELMask = 17, - } - - [AllowDuplicates, CRepr] public enum MemoryAccessMask - { - MaskNone = 0, - Volatile = 0x00000001, - Aligned = 0x00000002, - Nontemporal = 0x00000004, - MakePointerAvailable = 0x00000008, - MakePointerAvailableKHR = 0x00000008, - MakePointerVisible = 0x00000010, - MakePointerVisibleKHR = 0x00000010, - NonPrivatePointer = 0x00000020, - NonPrivatePointerKHR = 0x00000020, - AliasScopeINTELMask = 0x00010000, - NoAliasINTELMask = 0x00020000, - } - - [AllowDuplicates, CRepr] public enum Scope - { - CrossDevice = 0, - Device = 1, - Workgroup = 2, - Subgroup = 3, - Invocation = 4, - QueueFamily = 5, - QueueFamilyKHR = 5, - ShaderCallKHR = 6, - } - - [AllowDuplicates, CRepr] public enum GroupOperation - { - Reduce = 0, - InclusiveScan = 1, - ExclusiveScan = 2, - ClusteredReduce = 3, - PartitionedReduceNV = 6, - PartitionedInclusiveScanNV = 7, - PartitionedExclusiveScanNV = 8, - } - - [AllowDuplicates, CRepr] public enum KernelEnqueueFlags - { - NoWait = 0, - WaitKernel = 1, - WaitWorkGroup = 2, - } - - [AllowDuplicates, CRepr] public enum KernelProfilingInfoShift - { - CmdExecTime = 0, - } - - [AllowDuplicates, CRepr] public enum KernelProfilingInfoMask - { - MaskNone = 0, - CmdExecTime = 0x00000001, - } - - [AllowDuplicates, CRepr] public enum Capability - { - Matrix = 0, - Shader = 1, - Geometry = 2, - Tessellation = 3, - Addresses = 4, - Linkage = 5, - Kernel = 6, - Vector16 = 7, - Float16Buffer = 8, - Float16 = 9, - Float64 = 10, - Int64 = 11, - Int64Atomics = 12, - ImageBasic = 13, - ImageReadWrite = 14, - ImageMipmap = 15, - Pipes = 17, - Groups = 18, - DeviceEnqueue = 19, - LiteralSampler = 20, - AtomicStorage = 21, - Int16 = 22, - TessellationPointSize = 23, - GeometryPointSize = 24, - ImageGatherExtended = 25, - StorageImageMultisample = 27, - UniformBufferArrayDynamicIndexing = 28, - SampledImageArrayDynamicIndexing = 29, - StorageBufferArrayDynamicIndexing = 30, - StorageImageArrayDynamicIndexing = 31, - ClipDistance = 32, - CullDistance = 33, - ImageCubeArray = 34, - SampleRateShading = 35, - ImageRect = 36, - SampledRect = 37, - GenericPointer = 38, - Int8 = 39, - InputAttachment = 40, - SparseResidency = 41, - MinLod = 42, - Sampled1D = 43, - Image1D = 44, - SampledCubeArray = 45, - SampledBuffer = 46, - ImageBuffer = 47, - ImageMSArray = 48, - StorageImageExtendedFormats = 49, - ImageQuery = 50, - DerivativeControl = 51, - InterpolationFunction = 52, - TransformFeedback = 53, - GeometryStreams = 54, - StorageImageReadWithoutFormat = 55, - StorageImageWriteWithoutFormat = 56, - MultiViewport = 57, - SubgroupDispatch = 58, - NamedBarrier = 59, - PipeStorage = 60, - GroupNonUniform = 61, - GroupNonUniformVote = 62, - GroupNonUniformArithmetic = 63, - GroupNonUniformBallot = 64, - GroupNonUniformShuffle = 65, - GroupNonUniformShuffleRelative = 66, - GroupNonUniformClustered = 67, - GroupNonUniformQuad = 68, - ShaderLayer = 69, - ShaderViewportIndex = 70, - UniformDecoration = 71, - CoreBuiltinsARM = 4165, - TileImageColorReadAccessEXT = 4166, - TileImageDepthReadAccessEXT = 4167, - TileImageStencilReadAccessEXT = 4168, - FragmentShadingRateKHR = 4422, - SubgroupBallotKHR = 4423, - DrawParameters = 4427, - WorkgroupMemoryExplicitLayoutKHR = 4428, - WorkgroupMemoryExplicitLayout8BitAccessKHR = 4429, - WorkgroupMemoryExplicitLayout16BitAccessKHR = 4430, - SubgroupVoteKHR = 4431, - StorageBuffer16BitAccess = 4433, - StorageUniformBufferBlock16 = 4433, - StorageUniform16 = 4434, - UniformAndStorageBuffer16BitAccess = 4434, - StoragePushConstant16 = 4435, - StorageInputOutput16 = 4436, - DeviceGroup = 4437, - MultiView = 4439, - VariablePointersStorageBuffer = 4441, - VariablePointers = 4442, - AtomicStorageOps = 4445, - SampleMaskPostDepthCoverage = 4447, - StorageBuffer8BitAccess = 4448, - UniformAndStorageBuffer8BitAccess = 4449, - StoragePushConstant8 = 4450, - DenormPreserve = 4464, - DenormFlushToZero = 4465, - SignedZeroInfNanPreserve = 4466, - RoundingModeRTE = 4467, - RoundingModeRTZ = 4468, - RayQueryProvisionalKHR = 4471, - RayQueryKHR = 4472, - RayTraversalPrimitiveCullingKHR = 4478, - RayTracingKHR = 4479, - TextureSampleWeightedQCOM = 4484, - TextureBoxFilterQCOM = 4485, - TextureBlockMatchQCOM = 4486, - Float16ImageAMD = 5008, - ImageGatherBiasLodAMD = 5009, - FragmentMaskAMD = 5010, - StencilExportEXT = 5013, - ImageReadWriteLodAMD = 5015, - Int64ImageEXT = 5016, - ShaderClockKHR = 5055, - SampleMaskOverrideCoverageNV = 5249, - GeometryShaderPassthroughNV = 5251, - ShaderViewportIndexLayerEXT = 5254, - ShaderViewportIndexLayerNV = 5254, - ShaderViewportMaskNV = 5255, - ShaderStereoViewNV = 5259, - PerViewAttributesNV = 5260, - FragmentFullyCoveredEXT = 5265, - MeshShadingNV = 5266, - ImageFootprintNV = 5282, - MeshShadingEXT = 5283, - FragmentBarycentricKHR = 5284, - FragmentBarycentricNV = 5284, - ComputeDerivativeGroupQuadsNV = 5288, - FragmentDensityEXT = 5291, - ShadingRateNV = 5291, - GroupNonUniformPartitionedNV = 5297, - ShaderNonUniform = 5301, - ShaderNonUniformEXT = 5301, - RuntimeDescriptorArray = 5302, - RuntimeDescriptorArrayEXT = 5302, - InputAttachmentArrayDynamicIndexing = 5303, - InputAttachmentArrayDynamicIndexingEXT = 5303, - UniformTexelBufferArrayDynamicIndexing = 5304, - UniformTexelBufferArrayDynamicIndexingEXT = 5304, - StorageTexelBufferArrayDynamicIndexing = 5305, - StorageTexelBufferArrayDynamicIndexingEXT = 5305, - UniformBufferArrayNonUniformIndexing = 5306, - UniformBufferArrayNonUniformIndexingEXT = 5306, - SampledImageArrayNonUniformIndexing = 5307, - SampledImageArrayNonUniformIndexingEXT = 5307, - StorageBufferArrayNonUniformIndexing = 5308, - StorageBufferArrayNonUniformIndexingEXT = 5308, - StorageImageArrayNonUniformIndexing = 5309, - StorageImageArrayNonUniformIndexingEXT = 5309, - InputAttachmentArrayNonUniformIndexing = 5310, - InputAttachmentArrayNonUniformIndexingEXT = 5310, - UniformTexelBufferArrayNonUniformIndexing = 5311, - UniformTexelBufferArrayNonUniformIndexingEXT = 5311, - StorageTexelBufferArrayNonUniformIndexing = 5312, - StorageTexelBufferArrayNonUniformIndexingEXT = 5312, - RayTracingPositionFetchKHR = 5336, - RayTracingNV = 5340, - RayTracingMotionBlurNV = 5341, - VulkanMemoryModel = 5345, - VulkanMemoryModelKHR = 5345, - VulkanMemoryModelDeviceScope = 5346, - VulkanMemoryModelDeviceScopeKHR = 5346, - PhysicalStorageBufferAddresses = 5347, - PhysicalStorageBufferAddressesEXT = 5347, - ComputeDerivativeGroupLinearNV = 5350, - RayTracingProvisionalKHR = 5353, - CooperativeMatrixNV = 5357, - FragmentShaderSampleInterlockEXT = 5363, - FragmentShaderShadingRateInterlockEXT = 5372, - ShaderSMBuiltinsNV = 5373, - FragmentShaderPixelInterlockEXT = 5378, - DemoteToHelperInvocation = 5379, - DemoteToHelperInvocationEXT = 5379, - RayTracingOpacityMicromapEXT = 5381, - ShaderInvocationReorderNV = 5383, - BindlessTextureNV = 5390, - RayQueryPositionFetchKHR = 5391, - SubgroupShuffleINTEL = 5568, - SubgroupBufferBlockIOINTEL = 5569, - SubgroupImageBlockIOINTEL = 5570, - SubgroupImageMediaBlockIOINTEL = 5579, - RoundToInfinityINTEL = 5582, - FloatingPointModeINTEL = 5583, - IntegerFunctions2INTEL = 5584, - FunctionPointersINTEL = 5603, - IndirectReferencesINTEL = 5604, - AsmINTEL = 5606, - AtomicFloat32MinMaxEXT = 5612, - AtomicFloat64MinMaxEXT = 5613, - AtomicFloat16MinMaxEXT = 5616, - VectorComputeINTEL = 5617, - VectorAnyINTEL = 5619, - ExpectAssumeKHR = 5629, - SubgroupAvcMotionEstimationINTEL = 5696, - SubgroupAvcMotionEstimationIntraINTEL = 5697, - SubgroupAvcMotionEstimationChromaINTEL = 5698, - VariableLengthArrayINTEL = 5817, - FunctionFloatControlINTEL = 5821, - FPGAMemoryAttributesINTEL = 5824, - FPFastMathModeINTEL = 5837, - ArbitraryPrecisionIntegersINTEL = 5844, - ArbitraryPrecisionFloatingPointINTEL = 5845, - UnstructuredLoopControlsINTEL = 5886, - FPGALoopControlsINTEL = 5888, - KernelAttributesINTEL = 5892, - FPGAKernelAttributesINTEL = 5897, - FPGAMemoryAccessesINTEL = 5898, - FPGAClusterAttributesINTEL = 5904, - LoopFuseINTEL = 5906, - FPGADSPControlINTEL = 5908, - MemoryAccessAliasingINTEL = 5910, - FPGAInvocationPipeliningAttributesINTEL = 5916, - FPGABufferLocationINTEL = 5920, - ArbitraryPrecisionFixedPointINTEL = 5922, - USMStorageClassesINTEL = 5935, - RuntimeAlignedAttributeINTEL = 5939, - IOPipesINTEL = 5943, - BlockingPipesINTEL = 5945, - FPGARegINTEL = 5948, - DotProductInputAll = 6016, - DotProductInputAllKHR = 6016, - DotProductInput4x8Bit = 6017, - DotProductInput4x8BitKHR = 6017, - DotProductInput4x8BitPacked = 6018, - DotProductInput4x8BitPackedKHR = 6018, - DotProduct = 6019, - DotProductKHR = 6019, - RayCullMaskKHR = 6020, - CooperativeMatrixKHR = 6022, - BitInstructions = 6025, - GroupNonUniformRotateKHR = 6026, - AtomicFloat32AddEXT = 6033, - AtomicFloat64AddEXT = 6034, - LongConstantCompositeINTEL = 6089, - OptNoneINTEL = 6094, - AtomicFloat16AddEXT = 6095, - DebugInfoModuleINTEL = 6114, - BFloat16ConversionINTEL = 6115, - SplitBarrierINTEL = 6141, - FPGAKernelAttributesv2INTEL = 6161, - FPMaxErrorINTEL = 6169, - FPGALatencyControlINTEL = 6171, - FPGAArgumentInterfacesINTEL = 6174, - GroupUniformArithmeticKHR = 6400, - } - - [AllowDuplicates, CRepr] public enum RayFlagsShift - { - OpaqueKHR = 0, - NoOpaqueKHR = 1, - TerminateOnFirstHitKHR = 2, - SkipClosestHitShaderKHR = 3, - CullBackFacingTrianglesKHR = 4, - CullFrontFacingTrianglesKHR = 5, - CullOpaqueKHR = 6, - CullNoOpaqueKHR = 7, - SkipTrianglesKHR = 8, - SkipAABBsKHR = 9, - ForceOpacityMicromap2StateEXT = 10, - } - - [AllowDuplicates, CRepr] public enum RayFlagsMask - { - MaskNone = 0, - OpaqueKHR = 0x00000001, - NoOpaqueKHR = 0x00000002, - TerminateOnFirstHitKHR = 0x00000004, - SkipClosestHitShaderKHR = 0x00000008, - CullBackFacingTrianglesKHR = 0x00000010, - CullFrontFacingTrianglesKHR = 0x00000020, - CullOpaqueKHR = 0x00000040, - CullNoOpaqueKHR = 0x00000080, - SkipTrianglesKHR = 0x00000100, - SkipAABBsKHR = 0x00000200, - ForceOpacityMicromap2StateEXT = 0x00000400, - } - - [AllowDuplicates, CRepr] public enum RayQueryIntersection - { - RayQueryCandidateIntersectionKHR = 0, - RayQueryCommittedIntersectionKHR = 1, - } - - [AllowDuplicates, CRepr] public enum RayQueryCommittedIntersectionType - { - RayQueryCommittedIntersectionNoneKHR = 0, - RayQueryCommittedIntersectionTriangleKHR = 1, - RayQueryCommittedIntersectionGeneratedKHR = 2, - } - - [AllowDuplicates, CRepr] public enum RayQueryCandidateIntersectionType - { - RayQueryCandidateIntersectionTriangleKHR = 0, - RayQueryCandidateIntersectionAABBKHR = 1, - } - - [AllowDuplicates, CRepr] public enum FragmentShadingRateShift - { - Vertical2Pixels = 0, - Vertical4Pixels = 1, - Horizontal2Pixels = 2, - Horizontal4Pixels = 3, - } - - [AllowDuplicates, CRepr] public enum FragmentShadingRateMask - { - MaskNone = 0, - Vertical2Pixels = 0x00000001, - Vertical4Pixels = 0x00000002, - Horizontal2Pixels = 0x00000004, - Horizontal4Pixels = 0x00000008, - } - - [AllowDuplicates, CRepr] public enum FPDenormMode - { - Preserve = 0, - FlushToZero = 1, - } - - [AllowDuplicates, CRepr] public enum FPOperationMode - { - IEEE = 0, - ALT = 1, - } - - [AllowDuplicates, CRepr] 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, - } - - [AllowDuplicates, CRepr] public enum OverflowModes - { - WRAP = 0, - SAT = 1, - SAT_ZERO = 2, - SAT_SYM = 3, - } - - [AllowDuplicates, CRepr] public enum PackedVectorFormat - { - PackedVectorFormat4x8Bit = 0, - PackedVectorFormat4x8BitKHR = 0, - } - - [AllowDuplicates, CRepr] public enum CooperativeMatrixOperandsShift - { - MatrixASignedComponentsKHR = 0, - MatrixBSignedComponentsKHR = 1, - MatrixCSignedComponentsKHR = 2, - MatrixResultSignedComponentsKHR = 3, - SaturatingAccumulationKHR = 4, - } - - [AllowDuplicates, CRepr] public enum CooperativeMatrixOperandsMask - { - MaskNone = 0, - MatrixASignedComponentsKHR = 0x00000001, - MatrixBSignedComponentsKHR = 0x00000002, - MatrixCSignedComponentsKHR = 0x00000004, - MatrixResultSignedComponentsKHR = 0x00000008, - SaturatingAccumulationKHR = 0x00000010, - } - - [AllowDuplicates, CRepr] public enum CooperativeMatrixLayout - { - RowMajorKHR = 0, - ColumnMajorKHR = 1, - } - - [AllowDuplicates, CRepr] public enum CooperativeMatrixUse - { - MatrixAKHR = 0, - MatrixBKHR = 1, - MatrixAccumulatorKHR = 2, - } - - [AllowDuplicates, CRepr] public enum Op - { - OpNop = 0, - OpUndef = 1, - OpSourceContinued = 2, - OpSource = 3, - OpSourceExtension = 4, - OpName = 5, - OpMemberName = 6, - OpString = 7, - OpLine = 8, - OpExtension = 10, - OpExtInstImport = 11, - OpExtInst = 12, - OpMemoryModel = 14, - OpEntryPoint = 15, - OpExecutionMode = 16, - OpCapability = 17, - OpTypeVoid = 19, - OpTypeBool = 20, - OpTypeInt = 21, - OpTypeFloat = 22, - OpTypeVector = 23, - OpTypeMatrix = 24, - OpTypeImage = 25, - OpTypeSampler = 26, - OpTypeSampledImage = 27, - OpTypeArray = 28, - OpTypeRuntimeArray = 29, - OpTypeStruct = 30, - OpTypeOpaque = 31, - OpTypePointer = 32, - OpTypeFunction = 33, - OpTypeEvent = 34, - OpTypeDeviceEvent = 35, - OpTypeReserveId = 36, - OpTypeQueue = 37, - OpTypePipe = 38, - OpTypeForwardPointer = 39, - OpConstantTrue = 41, - OpConstantFalse = 42, - OpConstant = 43, - OpConstantComposite = 44, - OpConstantSampler = 45, - OpConstantNull = 46, - OpSpecConstantTrue = 48, - OpSpecConstantFalse = 49, - OpSpecConstant = 50, - OpSpecConstantComposite = 51, - OpSpecConstantOp = 52, - OpFunction = 54, - OpFunctionParameter = 55, - OpFunctionEnd = 56, - OpFunctionCall = 57, - OpVariable = 59, - OpImageTexelPointer = 60, - OpLoad = 61, - OpStore = 62, - OpCopyMemory = 63, - OpCopyMemorySized = 64, - OpAccessChain = 65, - OpInBoundsAccessChain = 66, - OpPtrAccessChain = 67, - OpArrayLength = 68, - OpGenericPtrMemSemantics = 69, - OpInBoundsPtrAccessChain = 70, - OpDecorate = 71, - OpMemberDecorate = 72, - OpDecorationGroup = 73, - OpGroupDecorate = 74, - OpGroupMemberDecorate = 75, - OpVectorExtractDynamic = 77, - OpVectorInsertDynamic = 78, - OpVectorShuffle = 79, - OpCompositeConstruct = 80, - OpCompositeExtract = 81, - OpCompositeInsert = 82, - OpCopyObject = 83, - OpTranspose = 84, - OpSampledImage = 86, - OpImageSampleImplicitLod = 87, - OpImageSampleExplicitLod = 88, - OpImageSampleDrefImplicitLod = 89, - OpImageSampleDrefExplicitLod = 90, - OpImageSampleProjImplicitLod = 91, - OpImageSampleProjExplicitLod = 92, - OpImageSampleProjDrefImplicitLod = 93, - OpImageSampleProjDrefExplicitLod = 94, - OpImageFetch = 95, - OpImageGather = 96, - OpImageDrefGather = 97, - OpImageRead = 98, - OpImageWrite = 99, - OpImage = 100, - OpImageQueryFormat = 101, - OpImageQueryOrder = 102, - OpImageQuerySizeLod = 103, - OpImageQuerySize = 104, - OpImageQueryLod = 105, - OpImageQueryLevels = 106, - OpImageQuerySamples = 107, - OpConvertFToU = 109, - OpConvertFToS = 110, - OpConvertSToF = 111, - OpConvertUToF = 112, - OpUConvert = 113, - OpSConvert = 114, - OpFConvert = 115, - OpQuantizeToF16 = 116, - OpConvertPtrToU = 117, - OpSatConvertSToU = 118, - OpSatConvertUToS = 119, - OpConvertUToPtr = 120, - OpPtrCastToGeneric = 121, - OpGenericCastToPtr = 122, - OpGenericCastToPtrExplicit = 123, - OpBitcast = 124, - OpSNegate = 126, - OpFNegate = 127, - OpIAdd = 128, - OpFAdd = 129, - OpISub = 130, - OpFSub = 131, - OpIMul = 132, - OpFMul = 133, - OpUDiv = 134, - OpSDiv = 135, - OpFDiv = 136, - OpUMod = 137, - OpSRem = 138, - OpSMod = 139, - OpFRem = 140, - OpFMod = 141, - OpVectorTimesScalar = 142, - OpMatrixTimesScalar = 143, - OpVectorTimesMatrix = 144, - OpMatrixTimesVector = 145, - OpMatrixTimesMatrix = 146, - OpOuterProduct = 147, - OpDot = 148, - OpIAddCarry = 149, - OpISubBorrow = 150, - OpUMulExtended = 151, - OpSMulExtended = 152, - OpAny = 154, - OpAll = 155, - OpIsNan = 156, - OpIsInf = 157, - OpIsFinite = 158, - OpIsNormal = 159, - OpSignBitSet = 160, - OpLessOrGreater = 161, - OpOrdered = 162, - OpUnordered = 163, - OpLogicalEqual = 164, - OpLogicalNotEqual = 165, - OpLogicalOr = 166, - OpLogicalAnd = 167, - OpLogicalNot = 168, - OpSelect = 169, - OpIEqual = 170, - OpINotEqual = 171, - OpUGreaterThan = 172, - OpSGreaterThan = 173, - OpUGreaterThanEqual = 174, - OpSGreaterThanEqual = 175, - OpULessThan = 176, - OpSLessThan = 177, - OpULessThanEqual = 178, - OpSLessThanEqual = 179, - OpFOrdEqual = 180, - OpFUnordEqual = 181, - OpFOrdNotEqual = 182, - OpFUnordNotEqual = 183, - OpFOrdLessThan = 184, - OpFUnordLessThan = 185, - OpFOrdGreaterThan = 186, - OpFUnordGreaterThan = 187, - OpFOrdLessThanEqual = 188, - OpFUnordLessThanEqual = 189, - OpFOrdGreaterThanEqual = 190, - OpFUnordGreaterThanEqual = 191, - OpShiftRightLogical = 194, - OpShiftRightArithmetic = 195, - OpShiftLeftLogical = 196, - OpBitwiseOr = 197, - OpBitwiseXor = 198, - OpBitwiseAnd = 199, - OpNot = 200, - OpBitFieldInsert = 201, - OpBitFieldSExtract = 202, - OpBitFieldUExtract = 203, - OpBitReverse = 204, - OpBitCount = 205, - OpDPdx = 207, - OpDPdy = 208, - OpFwidth = 209, - OpDPdxFine = 210, - OpDPdyFine = 211, - OpFwidthFine = 212, - OpDPdxCoarse = 213, - OpDPdyCoarse = 214, - OpFwidthCoarse = 215, - OpEmitVertex = 218, - OpEndPrimitive = 219, - OpEmitStreamVertex = 220, - OpEndStreamPrimitive = 221, - OpControlBarrier = 224, - OpMemoryBarrier = 225, - OpAtomicLoad = 227, - OpAtomicStore = 228, - OpAtomicExchange = 229, - OpAtomicCompareExchange = 230, - OpAtomicCompareExchangeWeak = 231, - OpAtomicIIncrement = 232, - OpAtomicIDecrement = 233, - OpAtomicIAdd = 234, - OpAtomicISub = 235, - OpAtomicSMin = 236, - OpAtomicUMin = 237, - OpAtomicSMax = 238, - OpAtomicUMax = 239, - OpAtomicAnd = 240, - OpAtomicOr = 241, - OpAtomicXor = 242, - OpPhi = 245, - OpLoopMerge = 246, - OpSelectionMerge = 247, - OpLabel = 248, - OpBranch = 249, - OpBranchConditional = 250, - OpSwitch = 251, - OpKill = 252, - OpReturn = 253, - OpReturnValue = 254, - OpUnreachable = 255, - OpLifetimeStart = 256, - OpLifetimeStop = 257, - OpGroupAsyncCopy = 259, - OpGroupWaitEvents = 260, - OpGroupAll = 261, - OpGroupAny = 262, - OpGroupBroadcast = 263, - OpGroupIAdd = 264, - OpGroupFAdd = 265, - OpGroupFMin = 266, - OpGroupUMin = 267, - OpGroupSMin = 268, - OpGroupFMax = 269, - OpGroupUMax = 270, - OpGroupSMax = 271, - OpReadPipe = 274, - OpWritePipe = 275, - OpReservedReadPipe = 276, - OpReservedWritePipe = 277, - OpReserveReadPipePackets = 278, - OpReserveWritePipePackets = 279, - OpCommitReadPipe = 280, - OpCommitWritePipe = 281, - OpIsValidReserveId = 282, - OpGetNumPipePackets = 283, - OpGetMaxPipePackets = 284, - OpGroupReserveReadPipePackets = 285, - OpGroupReserveWritePipePackets = 286, - OpGroupCommitReadPipe = 287, - OpGroupCommitWritePipe = 288, - OpEnqueueMarker = 291, - OpEnqueueKernel = 292, - OpGetKernelNDrangeSubGroupCount = 293, - OpGetKernelNDrangeMaxSubGroupSize = 294, - OpGetKernelWorkGroupSize = 295, - OpGetKernelPreferredWorkGroupSizeMultiple = 296, - OpRetainEvent = 297, - OpReleaseEvent = 298, - OpCreateUserEvent = 299, - OpIsValidEvent = 300, - OpSetUserEventStatus = 301, - OpCaptureEventProfilingInfo = 302, - OpGetDefaultQueue = 303, - OpBuildNDRange = 304, - OpImageSparseSampleImplicitLod = 305, - OpImageSparseSampleExplicitLod = 306, - OpImageSparseSampleDrefImplicitLod = 307, - OpImageSparseSampleDrefExplicitLod = 308, - OpImageSparseSampleProjImplicitLod = 309, - OpImageSparseSampleProjExplicitLod = 310, - OpImageSparseSampleProjDrefImplicitLod = 311, - OpImageSparseSampleProjDrefExplicitLod = 312, - OpImageSparseFetch = 313, - OpImageSparseGather = 314, - OpImageSparseDrefGather = 315, - OpImageSparseTexelsResident = 316, - OpNoLine = 317, - OpAtomicFlagTestAndSet = 318, - OpAtomicFlagClear = 319, - OpImageSparseRead = 320, - OpSizeOf = 321, - OpTypePipeStorage = 322, - OpConstantPipeStorage = 323, - OpCreatePipeFromPipeStorage = 324, - OpGetKernelLocalSizeForSubgroupCount = 325, - OpGetKernelMaxNumSubgroups = 326, - OpTypeNamedBarrier = 327, - OpNamedBarrierInitialize = 328, - OpMemoryNamedBarrier = 329, - OpModuleProcessed = 330, - OpExecutionModeId = 331, - OpDecorateId = 332, - OpGroupNonUniformElect = 333, - OpGroupNonUniformAll = 334, - OpGroupNonUniformAny = 335, - OpGroupNonUniformAllEqual = 336, - OpGroupNonUniformBroadcast = 337, - OpGroupNonUniformBroadcastFirst = 338, - OpGroupNonUniformBallot = 339, - OpGroupNonUniformInverseBallot = 340, - OpGroupNonUniformBallotBitExtract = 341, - OpGroupNonUniformBallotBitCount = 342, - OpGroupNonUniformBallotFindLSB = 343, - OpGroupNonUniformBallotFindMSB = 344, - OpGroupNonUniformShuffle = 345, - OpGroupNonUniformShuffleXor = 346, - OpGroupNonUniformShuffleUp = 347, - OpGroupNonUniformShuffleDown = 348, - OpGroupNonUniformIAdd = 349, - OpGroupNonUniformFAdd = 350, - OpGroupNonUniformIMul = 351, - OpGroupNonUniformFMul = 352, - OpGroupNonUniformSMin = 353, - OpGroupNonUniformUMin = 354, - OpGroupNonUniformFMin = 355, - OpGroupNonUniformSMax = 356, - OpGroupNonUniformUMax = 357, - OpGroupNonUniformFMax = 358, - OpGroupNonUniformBitwiseAnd = 359, - OpGroupNonUniformBitwiseOr = 360, - OpGroupNonUniformBitwiseXor = 361, - OpGroupNonUniformLogicalAnd = 362, - OpGroupNonUniformLogicalOr = 363, - OpGroupNonUniformLogicalXor = 364, - OpGroupNonUniformQuadBroadcast = 365, - OpGroupNonUniformQuadSwap = 366, - OpCopyLogical = 400, - OpPtrEqual = 401, - OpPtrNotEqual = 402, - OpPtrDiff = 403, - OpColorAttachmentReadEXT = 4160, - OpDepthAttachmentReadEXT = 4161, - OpStencilAttachmentReadEXT = 4162, - OpTerminateInvocation = 4416, - OpSubgroupBallotKHR = 4421, - OpSubgroupFirstInvocationKHR = 4422, - OpSubgroupAllKHR = 4428, - OpSubgroupAnyKHR = 4429, - OpSubgroupAllEqualKHR = 4430, - OpGroupNonUniformRotateKHR = 4431, - OpSubgroupReadInvocationKHR = 4432, - OpTraceRayKHR = 4445, - OpExecuteCallableKHR = 4446, - OpConvertUToAccelerationStructureKHR = 4447, - OpIgnoreIntersectionKHR = 4448, - OpTerminateRayKHR = 4449, - OpSDot = 4450, - OpSDotKHR = 4450, - OpUDot = 4451, - OpUDotKHR = 4451, - OpSUDot = 4452, - OpSUDotKHR = 4452, - OpSDotAccSat = 4453, - OpSDotAccSatKHR = 4453, - OpUDotAccSat = 4454, - OpUDotAccSatKHR = 4454, - OpSUDotAccSat = 4455, - OpSUDotAccSatKHR = 4455, - OpTypeCooperativeMatrixKHR = 4456, - OpCooperativeMatrixLoadKHR = 4457, - OpCooperativeMatrixStoreKHR = 4458, - OpCooperativeMatrixMulAddKHR = 4459, - OpCooperativeMatrixLengthKHR = 4460, - OpTypeRayQueryKHR = 4472, - OpRayQueryInitializeKHR = 4473, - OpRayQueryTerminateKHR = 4474, - OpRayQueryGenerateIntersectionKHR = 4475, - OpRayQueryConfirmIntersectionKHR = 4476, - OpRayQueryProceedKHR = 4477, - OpRayQueryGetIntersectionTypeKHR = 4479, - OpImageSampleWeightedQCOM = 4480, - OpImageBoxFilterQCOM = 4481, - OpImageBlockMatchSSDQCOM = 4482, - OpImageBlockMatchSADQCOM = 4483, - OpGroupIAddNonUniformAMD = 5000, - OpGroupFAddNonUniformAMD = 5001, - OpGroupFMinNonUniformAMD = 5002, - OpGroupUMinNonUniformAMD = 5003, - OpGroupSMinNonUniformAMD = 5004, - OpGroupFMaxNonUniformAMD = 5005, - OpGroupUMaxNonUniformAMD = 5006, - OpGroupSMaxNonUniformAMD = 5007, - OpFragmentMaskFetchAMD = 5011, - OpFragmentFetchAMD = 5012, - OpReadClockKHR = 5056, - OpHitObjectRecordHitMotionNV = 5249, - OpHitObjectRecordHitWithIndexMotionNV = 5250, - OpHitObjectRecordMissMotionNV = 5251, - OpHitObjectGetWorldToObjectNV = 5252, - OpHitObjectGetObjectToWorldNV = 5253, - OpHitObjectGetObjectRayDirectionNV = 5254, - OpHitObjectGetObjectRayOriginNV = 5255, - OpHitObjectTraceRayMotionNV = 5256, - OpHitObjectGetShaderRecordBufferHandleNV = 5257, - OpHitObjectGetShaderBindingTableRecordIndexNV = 5258, - OpHitObjectRecordEmptyNV = 5259, - OpHitObjectTraceRayNV = 5260, - OpHitObjectRecordHitNV = 5261, - OpHitObjectRecordHitWithIndexNV = 5262, - OpHitObjectRecordMissNV = 5263, - OpHitObjectExecuteShaderNV = 5264, - OpHitObjectGetCurrentTimeNV = 5265, - OpHitObjectGetAttributesNV = 5266, - OpHitObjectGetHitKindNV = 5267, - OpHitObjectGetPrimitiveIndexNV = 5268, - OpHitObjectGetGeometryIndexNV = 5269, - OpHitObjectGetInstanceIdNV = 5270, - OpHitObjectGetInstanceCustomIndexNV = 5271, - OpHitObjectGetWorldRayDirectionNV = 5272, - OpHitObjectGetWorldRayOriginNV = 5273, - OpHitObjectGetRayTMaxNV = 5274, - OpHitObjectGetRayTMinNV = 5275, - OpHitObjectIsEmptyNV = 5276, - OpHitObjectIsHitNV = 5277, - OpHitObjectIsMissNV = 5278, - OpReorderThreadWithHitObjectNV = 5279, - OpReorderThreadWithHintNV = 5280, - OpTypeHitObjectNV = 5281, - OpImageSampleFootprintNV = 5283, - OpEmitMeshTasksEXT = 5294, - OpSetMeshOutputsEXT = 5295, - OpGroupNonUniformPartitionNV = 5296, - OpWritePackedPrimitiveIndices4x8NV = 5299, - OpReportIntersectionKHR = 5334, - OpReportIntersectionNV = 5334, - OpIgnoreIntersectionNV = 5335, - OpTerminateRayNV = 5336, - OpTraceNV = 5337, - OpTraceMotionNV = 5338, - OpTraceRayMotionNV = 5339, - OpRayQueryGetIntersectionTriangleVertexPositionsKHR = 5340, - OpTypeAccelerationStructureKHR = 5341, - OpTypeAccelerationStructureNV = 5341, - OpExecuteCallableNV = 5344, - OpTypeCooperativeMatrixNV = 5358, - OpCooperativeMatrixLoadNV = 5359, - OpCooperativeMatrixStoreNV = 5360, - OpCooperativeMatrixMulAddNV = 5361, - OpCooperativeMatrixLengthNV = 5362, - OpBeginInvocationInterlockEXT = 5364, - OpEndInvocationInterlockEXT = 5365, - OpDemoteToHelperInvocation = 5380, - OpDemoteToHelperInvocationEXT = 5380, - OpIsHelperInvocationEXT = 5381, - OpConvertUToImageNV = 5391, - OpConvertUToSamplerNV = 5392, - OpConvertImageToUNV = 5393, - OpConvertSamplerToUNV = 5394, - OpConvertUToSampledImageNV = 5395, - OpConvertSampledImageToUNV = 5396, - OpSamplerImageAddressingModeNV = 5397, - OpSubgroupShuffleINTEL = 5571, - OpSubgroupShuffleDownINTEL = 5572, - OpSubgroupShuffleUpINTEL = 5573, - OpSubgroupShuffleXorINTEL = 5574, - OpSubgroupBlockReadINTEL = 5575, - OpSubgroupBlockWriteINTEL = 5576, - OpSubgroupImageBlockReadINTEL = 5577, - OpSubgroupImageBlockWriteINTEL = 5578, - OpSubgroupImageMediaBlockReadINTEL = 5580, - OpSubgroupImageMediaBlockWriteINTEL = 5581, - OpUCountLeadingZerosINTEL = 5585, - OpUCountTrailingZerosINTEL = 5586, - OpAbsISubINTEL = 5587, - OpAbsUSubINTEL = 5588, - OpIAddSatINTEL = 5589, - OpUAddSatINTEL = 5590, - OpIAverageINTEL = 5591, - OpUAverageINTEL = 5592, - OpIAverageRoundedINTEL = 5593, - OpUAverageRoundedINTEL = 5594, - OpISubSatINTEL = 5595, - OpUSubSatINTEL = 5596, - OpIMul32x16INTEL = 5597, - OpUMul32x16INTEL = 5598, - OpConstantFunctionPointerINTEL = 5600, - OpFunctionPointerCallINTEL = 5601, - OpAsmTargetINTEL = 5609, - OpAsmINTEL = 5610, - OpAsmCallINTEL = 5611, - OpAtomicFMinEXT = 5614, - OpAtomicFMaxEXT = 5615, - OpAssumeTrueKHR = 5630, - OpExpectKHR = 5631, - OpDecorateString = 5632, - OpDecorateStringGOOGLE = 5632, - OpMemberDecorateString = 5633, - OpMemberDecorateStringGOOGLE = 5633, - OpVmeImageINTEL = 5699, - OpTypeVmeImageINTEL = 5700, - OpTypeAvcImePayloadINTEL = 5701, - OpTypeAvcRefPayloadINTEL = 5702, - OpTypeAvcSicPayloadINTEL = 5703, - OpTypeAvcMcePayloadINTEL = 5704, - OpTypeAvcMceResultINTEL = 5705, - OpTypeAvcImeResultINTEL = 5706, - OpTypeAvcImeResultSingleReferenceStreamoutINTEL = 5707, - OpTypeAvcImeResultDualReferenceStreamoutINTEL = 5708, - OpTypeAvcImeSingleReferenceStreaminINTEL = 5709, - OpTypeAvcImeDualReferenceStreaminINTEL = 5710, - OpTypeAvcRefResultINTEL = 5711, - OpTypeAvcSicResultINTEL = 5712, - OpSubgroupAvcMceGetDefaultInterBaseMultiReferencePenaltyINTEL = 5713, - OpSubgroupAvcMceSetInterBaseMultiReferencePenaltyINTEL = 5714, - OpSubgroupAvcMceGetDefaultInterShapePenaltyINTEL = 5715, - OpSubgroupAvcMceSetInterShapePenaltyINTEL = 5716, - OpSubgroupAvcMceGetDefaultInterDirectionPenaltyINTEL = 5717, - OpSubgroupAvcMceSetInterDirectionPenaltyINTEL = 5718, - OpSubgroupAvcMceGetDefaultIntraLumaShapePenaltyINTEL = 5719, - OpSubgroupAvcMceGetDefaultInterMotionVectorCostTableINTEL = 5720, - OpSubgroupAvcMceGetDefaultHighPenaltyCostTableINTEL = 5721, - OpSubgroupAvcMceGetDefaultMediumPenaltyCostTableINTEL = 5722, - OpSubgroupAvcMceGetDefaultLowPenaltyCostTableINTEL = 5723, - OpSubgroupAvcMceSetMotionVectorCostFunctionINTEL = 5724, - OpSubgroupAvcMceGetDefaultIntraLumaModePenaltyINTEL = 5725, - OpSubgroupAvcMceGetDefaultNonDcLumaIntraPenaltyINTEL = 5726, - OpSubgroupAvcMceGetDefaultIntraChromaModeBasePenaltyINTEL = 5727, - OpSubgroupAvcMceSetAcOnlyHaarINTEL = 5728, - OpSubgroupAvcMceSetSourceInterlacedFieldPolarityINTEL = 5729, - OpSubgroupAvcMceSetSingleReferenceInterlacedFieldPolarityINTEL = 5730, - OpSubgroupAvcMceSetDualReferenceInterlacedFieldPolaritiesINTEL = 5731, - OpSubgroupAvcMceConvertToImePayloadINTEL = 5732, - OpSubgroupAvcMceConvertToImeResultINTEL = 5733, - OpSubgroupAvcMceConvertToRefPayloadINTEL = 5734, - OpSubgroupAvcMceConvertToRefResultINTEL = 5735, - OpSubgroupAvcMceConvertToSicPayloadINTEL = 5736, - OpSubgroupAvcMceConvertToSicResultINTEL = 5737, - OpSubgroupAvcMceGetMotionVectorsINTEL = 5738, - OpSubgroupAvcMceGetInterDistortionsINTEL = 5739, - OpSubgroupAvcMceGetBestInterDistortionsINTEL = 5740, - OpSubgroupAvcMceGetInterMajorShapeINTEL = 5741, - OpSubgroupAvcMceGetInterMinorShapeINTEL = 5742, - OpSubgroupAvcMceGetInterDirectionsINTEL = 5743, - OpSubgroupAvcMceGetInterMotionVectorCountINTEL = 5744, - OpSubgroupAvcMceGetInterReferenceIdsINTEL = 5745, - OpSubgroupAvcMceGetInterReferenceInterlacedFieldPolaritiesINTEL = 5746, - OpSubgroupAvcImeInitializeINTEL = 5747, - OpSubgroupAvcImeSetSingleReferenceINTEL = 5748, - OpSubgroupAvcImeSetDualReferenceINTEL = 5749, - OpSubgroupAvcImeRefWindowSizeINTEL = 5750, - OpSubgroupAvcImeAdjustRefOffsetINTEL = 5751, - OpSubgroupAvcImeConvertToMcePayloadINTEL = 5752, - OpSubgroupAvcImeSetMaxMotionVectorCountINTEL = 5753, - OpSubgroupAvcImeSetUnidirectionalMixDisableINTEL = 5754, - OpSubgroupAvcImeSetEarlySearchTerminationThresholdINTEL = 5755, - OpSubgroupAvcImeSetWeightedSadINTEL = 5756, - OpSubgroupAvcImeEvaluateWithSingleReferenceINTEL = 5757, - OpSubgroupAvcImeEvaluateWithDualReferenceINTEL = 5758, - OpSubgroupAvcImeEvaluateWithSingleReferenceStreaminINTEL = 5759, - OpSubgroupAvcImeEvaluateWithDualReferenceStreaminINTEL = 5760, - OpSubgroupAvcImeEvaluateWithSingleReferenceStreamoutINTEL = 5761, - OpSubgroupAvcImeEvaluateWithDualReferenceStreamoutINTEL = 5762, - OpSubgroupAvcImeEvaluateWithSingleReferenceStreaminoutINTEL = 5763, - OpSubgroupAvcImeEvaluateWithDualReferenceStreaminoutINTEL = 5764, - OpSubgroupAvcImeConvertToMceResultINTEL = 5765, - OpSubgroupAvcImeGetSingleReferenceStreaminINTEL = 5766, - OpSubgroupAvcImeGetDualReferenceStreaminINTEL = 5767, - OpSubgroupAvcImeStripSingleReferenceStreamoutINTEL = 5768, - OpSubgroupAvcImeStripDualReferenceStreamoutINTEL = 5769, - OpSubgroupAvcImeGetStreamoutSingleReferenceMajorShapeMotionVectorsINTEL = 5770, - OpSubgroupAvcImeGetStreamoutSingleReferenceMajorShapeDistortionsINTEL = 5771, - OpSubgroupAvcImeGetStreamoutSingleReferenceMajorShapeReferenceIdsINTEL = 5772, - OpSubgroupAvcImeGetStreamoutDualReferenceMajorShapeMotionVectorsINTEL = 5773, - OpSubgroupAvcImeGetStreamoutDualReferenceMajorShapeDistortionsINTEL = 5774, - OpSubgroupAvcImeGetStreamoutDualReferenceMajorShapeReferenceIdsINTEL = 5775, - OpSubgroupAvcImeGetBorderReachedINTEL = 5776, - OpSubgroupAvcImeGetTruncatedSearchIndicationINTEL = 5777, - OpSubgroupAvcImeGetUnidirectionalEarlySearchTerminationINTEL = 5778, - OpSubgroupAvcImeGetWeightingPatternMinimumMotionVectorINTEL = 5779, - OpSubgroupAvcImeGetWeightingPatternMinimumDistortionINTEL = 5780, - OpSubgroupAvcFmeInitializeINTEL = 5781, - OpSubgroupAvcBmeInitializeINTEL = 5782, - OpSubgroupAvcRefConvertToMcePayloadINTEL = 5783, - OpSubgroupAvcRefSetBidirectionalMixDisableINTEL = 5784, - OpSubgroupAvcRefSetBilinearFilterEnableINTEL = 5785, - OpSubgroupAvcRefEvaluateWithSingleReferenceINTEL = 5786, - OpSubgroupAvcRefEvaluateWithDualReferenceINTEL = 5787, - OpSubgroupAvcRefEvaluateWithMultiReferenceINTEL = 5788, - OpSubgroupAvcRefEvaluateWithMultiReferenceInterlacedINTEL = 5789, - OpSubgroupAvcRefConvertToMceResultINTEL = 5790, - OpSubgroupAvcSicInitializeINTEL = 5791, - OpSubgroupAvcSicConfigureSkcINTEL = 5792, - OpSubgroupAvcSicConfigureIpeLumaINTEL = 5793, - OpSubgroupAvcSicConfigureIpeLumaChromaINTEL = 5794, - OpSubgroupAvcSicGetMotionVectorMaskINTEL = 5795, - OpSubgroupAvcSicConvertToMcePayloadINTEL = 5796, - OpSubgroupAvcSicSetIntraLumaShapePenaltyINTEL = 5797, - OpSubgroupAvcSicSetIntraLumaModeCostFunctionINTEL = 5798, - OpSubgroupAvcSicSetIntraChromaModeCostFunctionINTEL = 5799, - OpSubgroupAvcSicSetBilinearFilterEnableINTEL = 5800, - OpSubgroupAvcSicSetSkcForwardTransformEnableINTEL = 5801, - OpSubgroupAvcSicSetBlockBasedRawSkipSadINTEL = 5802, - OpSubgroupAvcSicEvaluateIpeINTEL = 5803, - OpSubgroupAvcSicEvaluateWithSingleReferenceINTEL = 5804, - OpSubgroupAvcSicEvaluateWithDualReferenceINTEL = 5805, - OpSubgroupAvcSicEvaluateWithMultiReferenceINTEL = 5806, - OpSubgroupAvcSicEvaluateWithMultiReferenceInterlacedINTEL = 5807, - OpSubgroupAvcSicConvertToMceResultINTEL = 5808, - OpSubgroupAvcSicGetIpeLumaShapeINTEL = 5809, - OpSubgroupAvcSicGetBestIpeLumaDistortionINTEL = 5810, - OpSubgroupAvcSicGetBestIpeChromaDistortionINTEL = 5811, - OpSubgroupAvcSicGetPackedIpeLumaModesINTEL = 5812, - OpSubgroupAvcSicGetIpeChromaModeINTEL = 5813, - 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, - OpAliasDomainDeclINTEL = 5911, - OpAliasScopeDeclINTEL = 5912, - OpAliasScopeListDeclINTEL = 5913, - 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, - OpRayQueryGetIntersectionInstanceCustomIndexKHR = 6019, - OpRayQueryGetIntersectionInstanceIdKHR = 6020, - OpRayQueryGetIntersectionInstanceShaderBindingTableRecordOffsetKHR = 6021, - OpRayQueryGetIntersectionGeometryIndexKHR = 6022, - OpRayQueryGetIntersectionPrimitiveIndexKHR = 6023, - OpRayQueryGetIntersectionBarycentricsKHR = 6024, - OpRayQueryGetIntersectionFrontFaceKHR = 6025, - OpRayQueryGetIntersectionCandidateAABBOpaqueKHR = 6026, - OpRayQueryGetIntersectionObjectRayDirectionKHR = 6027, - OpRayQueryGetIntersectionObjectRayOriginKHR = 6028, - OpRayQueryGetWorldRayDirectionKHR = 6029, - OpRayQueryGetWorldRayOriginKHR = 6030, - OpRayQueryGetIntersectionObjectToWorldKHR = 6031, - OpRayQueryGetIntersectionWorldToObjectKHR = 6032, - OpAtomicFAddEXT = 6035, - OpTypeBufferSurfaceINTEL = 6086, - OpTypeStructContinuedINTEL = 6090, - OpConstantCompositeContinuedINTEL = 6091, - OpSpecConstantCompositeContinuedINTEL = 6092, - OpConvertFToBF16INTEL = 6116, - OpConvertBF16ToFINTEL = 6117, - OpControlBarrierArriveINTEL = 6142, - OpControlBarrierWaitINTEL = 6143, - OpGroupIMulKHR = 6401, - OpGroupFMulKHR = 6402, - OpGroupBitwiseAndKHR = 6403, - OpGroupBitwiseOrKHR = 6404, - OpGroupBitwiseXorKHR = 6405, - OpGroupLogicalAndKHR = 6406, - OpGroupLogicalOrKHR = 6407, - OpGroupLogicalXorKHR = 6408, - } - } -} - diff --git a/Extern/3rdParty/shaderc/shaderc/include/spirv/unified1/spirv.core.grammar.json b/Extern/3rdParty/shaderc/shaderc/include/spirv/unified1/spirv.core.grammar.json deleted file mode 100644 index 4aeb620..0000000 --- a/Extern/3rdParty/shaderc/shaderc/include/spirv/unified1/spirv.core.grammar.json +++ /dev/null @@ -1,15536 +0,0 @@ -{ - "copyright" : [ - "Copyright (c) 2014-2020 The Khronos Group Inc.", - "", - "Permission is hereby granted, free of charge, to any person obtaining a copy", - "of this software and/or associated documentation files (the \"Materials\"),", - "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." - ], - "magic_number" : "0x07230203", - "major_version" : 1, - "minor_version" : 6, - "revision" : 1, - "instruction_printing_class" : [ - { - "tag" : "@exclude" - }, - { - "tag" : "Miscellaneous", - "heading" : "Miscellaneous Instructions" - }, - { - "tag" : "Debug", - "heading" : "Debug Instructions" - }, - { - "tag" : "Annotation", - "heading" : "Annotation Instructions" - }, - { - "tag" : "Extension", - "heading" : "Extension Instructions" - }, - { - "tag" : "Mode-Setting", - "heading" : "Mode-Setting Instructions" - }, - { - "tag" : "Type-Declaration", - "heading" : "Type-Declaration Instructions" - }, - { - "tag" : "Constant-Creation", - "heading" : "Constant-Creation Instructions" - }, - { - "tag" : "Memory", - "heading" : "Memory Instructions" - }, - { - "tag" : "Function", - "heading" : "Function Instructions" - }, - { - "tag" : "Image", - "heading" : "Image Instructions" - }, - { - "tag" : "Conversion", - "heading" : "Conversion Instructions" - }, - { - "tag" : "Composite", - "heading" : "Composite Instructions" - }, - { - "tag" : "Arithmetic", - "heading" : "Arithmetic Instructions" - }, - { - "tag" : "Bit", - "heading" : "Bit Instructions" - }, - { - "tag" : "Relational_and_Logical", - "heading" : "Relational and Logical Instructions" - }, - { - "tag" : "Derivative", - "heading" : "Derivative Instructions" - }, - { - "tag" : "Control-Flow", - "heading" : "Control-Flow Instructions" - }, - { - "tag" : "Atomic", - "heading" : "Atomic Instructions" - }, - { - "tag" : "Primitive", - "heading" : "Primitive Instructions" - }, - { - "tag" : "Barrier", - "heading" : "Barrier Instructions" - }, - { - "tag" : "Group", - "heading" : "Group and Subgroup Instructions" - }, - { - "tag" : "Device-Side_Enqueue", - "heading" : "Device-Side Enqueue Instructions" - }, - { - "tag" : "Pipe", - "heading" : "Pipe Instructions" - }, - { - "tag" : "Non-Uniform", - "heading" : "Non-Uniform Instructions" - }, - { - "tag" : "Reserved", - "heading" : "Reserved Instructions" - } - ], - "instructions" : [ - { - "opname" : "OpNop", - "class" : "Miscellaneous", - "opcode" : 0 - }, - { - "opname" : "OpUndef", - "class" : "Miscellaneous", - "opcode" : 1, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" } - ] - }, - { - "opname" : "OpSourceContinued", - "class" : "Debug", - "opcode" : 2, - "operands" : [ - { "kind" : "LiteralString", "name" : "'Continued Source'" } - ] - }, - { - "opname" : "OpSource", - "class" : "Debug", - "opcode" : 3, - "operands" : [ - { "kind" : "SourceLanguage" }, - { "kind" : "LiteralInteger", "name" : "'Version'" }, - { "kind" : "IdRef", "quantifier" : "?", "name" : "'File'" }, - { "kind" : "LiteralString", "quantifier" : "?", "name" : "'Source'" } - ] - }, - { - "opname" : "OpSourceExtension", - "class" : "Debug", - "opcode" : 4, - "operands" : [ - { "kind" : "LiteralString", "name" : "'Extension'" } - ] - }, - { - "opname" : "OpName", - "class" : "Debug", - "opcode" : 5, - "operands" : [ - { "kind" : "IdRef", "name" : "'Target'" }, - { "kind" : "LiteralString", "name" : "'Name'" } - ] - }, - { - "opname" : "OpMemberName", - "class" : "Debug", - "opcode" : 6, - "operands" : [ - { "kind" : "IdRef", "name" : "'Type'" }, - { "kind" : "LiteralInteger", "name" : "'Member'" }, - { "kind" : "LiteralString", "name" : "'Name'" } - ] - }, - { - "opname" : "OpString", - "class" : "Debug", - "opcode" : 7, - "operands" : [ - { "kind" : "IdResult" }, - { "kind" : "LiteralString", "name" : "'String'" } - ] - }, - { - "opname" : "OpLine", - "class" : "Debug", - "opcode" : 8, - "operands" : [ - { "kind" : "IdRef", "name" : "'File'" }, - { "kind" : "LiteralInteger", "name" : "'Line'" }, - { "kind" : "LiteralInteger", "name" : "'Column'" } - ] - }, - { - "opname" : "OpExtension", - "class" : "Extension", - "opcode" : 10, - "operands" : [ - { "kind" : "LiteralString", "name" : "'Name'" } - ] - }, - { - "opname" : "OpExtInstImport", - "class" : "Extension", - "opcode" : 11, - "operands" : [ - { "kind" : "IdResult" }, - { "kind" : "LiteralString", "name" : "'Name'" } - ] - }, - { - "opname" : "OpExtInst", - "class" : "Extension", - "opcode" : 12, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Set'" }, - { "kind" : "LiteralExtInstInteger", "name" : "'Instruction'" }, - { "kind" : "IdRef", "quantifier" : "*", "name" : "'Operand 1', +\n'Operand 2', +\n..." } - ] - }, - { - "opname" : "OpMemoryModel", - "class" : "Mode-Setting", - "opcode" : 14, - "operands" : [ - { "kind" : "AddressingModel" }, - { "kind" : "MemoryModel" } - ] - }, - { - "opname" : "OpEntryPoint", - "class" : "Mode-Setting", - "opcode" : 15, - "operands" : [ - { "kind" : "ExecutionModel" }, - { "kind" : "IdRef", "name" : "'Entry Point'" }, - { "kind" : "LiteralString", "name" : "'Name'" }, - { "kind" : "IdRef", "quantifier" : "*", "name" : "'Interface'" } - ] - }, - { - "opname" : "OpExecutionMode", - "class" : "Mode-Setting", - "opcode" : 16, - "operands" : [ - { "kind" : "IdRef", "name" : "'Entry Point'" }, - { "kind" : "ExecutionMode", "name" : "'Mode'" } - ] - }, - { - "opname" : "OpCapability", - "class" : "Mode-Setting", - "opcode" : 17, - "operands" : [ - { "kind" : "Capability", "name" : "'Capability'" } - ] - }, - { - "opname" : "OpTypeVoid", - "class" : "Type-Declaration", - "opcode" : 19, - "operands" : [ - { "kind" : "IdResult" } - ] - }, - { - "opname" : "OpTypeBool", - "class" : "Type-Declaration", - "opcode" : 20, - "operands" : [ - { "kind" : "IdResult" } - ] - }, - { - "opname" : "OpTypeInt", - "class" : "Type-Declaration", - "opcode" : 21, - "operands" : [ - { "kind" : "IdResult" }, - { "kind" : "LiteralInteger", "name" : "'Width'" }, - { "kind" : "LiteralInteger", "name" : "'Signedness'" } - ] - }, - { - "opname" : "OpTypeFloat", - "class" : "Type-Declaration", - "opcode" : 22, - "operands" : [ - { "kind" : "IdResult" }, - { "kind" : "LiteralInteger", "name" : "'Width'" } - ] - }, - { - "opname" : "OpTypeVector", - "class" : "Type-Declaration", - "opcode" : 23, - "operands" : [ - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Component Type'" }, - { "kind" : "LiteralInteger", "name" : "'Component Count'" } - ] - }, - { - "opname" : "OpTypeMatrix", - "class" : "Type-Declaration", - "opcode" : 24, - "operands" : [ - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Column Type'" }, - { "kind" : "LiteralInteger", "name" : "'Column Count'" } - ], - "capabilities" : [ "Matrix" ] - }, - { - "opname" : "OpTypeImage", - "class" : "Type-Declaration", - "opcode" : 25, - "operands" : [ - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Sampled Type'" }, - { "kind" : "Dim" }, - { "kind" : "LiteralInteger", "name" : "'Depth'" }, - { "kind" : "LiteralInteger", "name" : "'Arrayed'" }, - { "kind" : "LiteralInteger", "name" : "'MS'" }, - { "kind" : "LiteralInteger", "name" : "'Sampled'" }, - { "kind" : "ImageFormat" }, - { "kind" : "AccessQualifier", "quantifier" : "?" } - ] - }, - { - "opname" : "OpTypeSampler", - "class" : "Type-Declaration", - "opcode" : 26, - "operands" : [ - { "kind" : "IdResult" } - ] - }, - { - "opname" : "OpTypeSampledImage", - "class" : "Type-Declaration", - "opcode" : 27, - "operands" : [ - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Image Type'" } - ] - }, - { - "opname" : "OpTypeArray", - "class" : "Type-Declaration", - "opcode" : 28, - "operands" : [ - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Element Type'" }, - { "kind" : "IdRef", "name" : "'Length'" } - ] - }, - { - "opname" : "OpTypeRuntimeArray", - "class" : "Type-Declaration", - "opcode" : 29, - "operands" : [ - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Element Type'" } - ], - "capabilities" : [ "Shader" ] - }, - { - "opname" : "OpTypeStruct", - "class" : "Type-Declaration", - "opcode" : 30, - "operands" : [ - { "kind" : "IdResult" }, - { "kind" : "IdRef", "quantifier" : "*", "name" : "'Member 0 type', +\n'member 1 type', +\n..." } - ] - }, - { - "opname" : "OpTypeOpaque", - "class" : "Type-Declaration", - "opcode" : 31, - "operands" : [ - { "kind" : "IdResult" }, - { "kind" : "LiteralString", "name" : "The name of the opaque type." } - ], - "capabilities" : [ "Kernel" ] - }, - { - "opname" : "OpTypePointer", - "class" : "Type-Declaration", - "opcode" : 32, - "operands" : [ - { "kind" : "IdResult" }, - { "kind" : "StorageClass" }, - { "kind" : "IdRef", "name" : "'Type'" } - ] - }, - { - "opname" : "OpTypeFunction", - "class" : "Type-Declaration", - "opcode" : 33, - "operands" : [ - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Return Type'" }, - { "kind" : "IdRef", "quantifier" : "*", "name" : "'Parameter 0 Type', +\n'Parameter 1 Type', +\n..." } - ] - }, - { - "opname" : "OpTypeEvent", - "class" : "Type-Declaration", - "opcode" : 34, - "operands" : [ - { "kind" : "IdResult" } - ], - "capabilities" : [ "Kernel" ] - }, - { - "opname" : "OpTypeDeviceEvent", - "class" : "Type-Declaration", - "opcode" : 35, - "operands" : [ - { "kind" : "IdResult" } - ], - "capabilities" : [ "DeviceEnqueue" ] - }, - { - "opname" : "OpTypeReserveId", - "class" : "Type-Declaration", - "opcode" : 36, - "operands" : [ - { "kind" : "IdResult" } - ], - "capabilities" : [ "Pipes" ] - }, - { - "opname" : "OpTypeQueue", - "class" : "Type-Declaration", - "opcode" : 37, - "operands" : [ - { "kind" : "IdResult" } - ], - "capabilities" : [ "DeviceEnqueue" ] - }, - { - "opname" : "OpTypePipe", - "class" : "Type-Declaration", - "opcode" : 38, - "operands" : [ - { "kind" : "IdResult" }, - { "kind" : "AccessQualifier", "name" : "'Qualifier'" } - ], - "capabilities" : [ "Pipes" ] - }, - { - "opname" : "OpTypeForwardPointer", - "class" : "Type-Declaration", - "opcode" : 39, - "operands" : [ - { "kind" : "IdRef", "name" : "'Pointer Type'" }, - { "kind" : "StorageClass" } - ], - "capabilities" : [ - "Addresses", - "PhysicalStorageBufferAddresses" - ] - }, - { - "opname" : "OpConstantTrue", - "class" : "Constant-Creation", - "opcode" : 41, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" } - ] - }, - { - "opname" : "OpConstantFalse", - "class" : "Constant-Creation", - "opcode" : 42, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" } - ] - }, - { - "opname" : "OpConstant", - "class" : "Constant-Creation", - "opcode" : 43, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "LiteralContextDependentNumber", "name" : "'Value'" } - ] - }, - { - "opname" : "OpConstantComposite", - "class" : "Constant-Creation", - "opcode" : 44, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "quantifier" : "*", "name" : "'Constituents'" } - ] - }, - { - "opname" : "OpConstantSampler", - "class" : "Constant-Creation", - "opcode" : 45, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "SamplerAddressingMode" }, - { "kind" : "LiteralInteger", "name" : "'Param'" }, - { "kind" : "SamplerFilterMode" } - ], - "capabilities" : [ "LiteralSampler" ] - }, - { - "opname" : "OpConstantNull", - "class" : "Constant-Creation", - "opcode" : 46, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" } - ] - }, - { - "opname" : "OpSpecConstantTrue", - "class" : "Constant-Creation", - "opcode" : 48, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" } - ] - }, - { - "opname" : "OpSpecConstantFalse", - "class" : "Constant-Creation", - "opcode" : 49, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" } - ] - }, - { - "opname" : "OpSpecConstant", - "class" : "Constant-Creation", - "opcode" : 50, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "LiteralContextDependentNumber", "name" : "'Value'" } - ] - }, - { - "opname" : "OpSpecConstantComposite", - "class" : "Constant-Creation", - "opcode" : 51, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "quantifier" : "*", "name" : "'Constituents'" } - ] - }, - { - "opname" : "OpSpecConstantOp", - "class" : "Constant-Creation", - "opcode" : 52, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "LiteralSpecConstantOpInteger", "name" : "'Opcode'" } - ] - }, - { - "opname" : "OpFunction", - "class" : "Function", - "opcode" : 54, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "FunctionControl" }, - { "kind" : "IdRef", "name" : "'Function Type'" } - ] - }, - { - "opname" : "OpFunctionParameter", - "class" : "Function", - "opcode" : 55, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" } - ] - }, - { - "opname" : "OpFunctionEnd", - "class" : "Function", - "opcode" : 56 - }, - { - "opname" : "OpFunctionCall", - "class" : "Function", - "opcode" : 57, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Function'" }, - { "kind" : "IdRef", "quantifier" : "*", "name" : "'Argument 0', +\n'Argument 1', +\n..." } - ] - }, - { - "opname" : "OpVariable", - "class" : "Memory", - "opcode" : 59, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "StorageClass" }, - { "kind" : "IdRef", "quantifier" : "?", "name" : "'Initializer'" } - ] - }, - { - "opname" : "OpImageTexelPointer", - "class" : "Memory", - "opcode" : 60, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Image'" }, - { "kind" : "IdRef", "name" : "'Coordinate'" }, - { "kind" : "IdRef", "name" : "'Sample'" } - ] - }, - { - "opname" : "OpLoad", - "class" : "Memory", - "opcode" : 61, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Pointer'" }, - { "kind" : "MemoryAccess", "quantifier" : "?" } - ] - }, - { - "opname" : "OpStore", - "class" : "Memory", - "opcode" : 62, - "operands" : [ - { "kind" : "IdRef", "name" : "'Pointer'" }, - { "kind" : "IdRef", "name" : "'Object'" }, - { "kind" : "MemoryAccess", "quantifier" : "?" } - ] - }, - { - "opname" : "OpCopyMemory", - "class" : "Memory", - "opcode" : 63, - "operands" : [ - { "kind" : "IdRef", "name" : "'Target'" }, - { "kind" : "IdRef", "name" : "'Source'" }, - { "kind" : "MemoryAccess", "quantifier" : "?" }, - { "kind" : "MemoryAccess", "quantifier" : "?" } - ] - }, - { - "opname" : "OpCopyMemorySized", - "class" : "Memory", - "opcode" : 64, - "operands" : [ - { "kind" : "IdRef", "name" : "'Target'" }, - { "kind" : "IdRef", "name" : "'Source'" }, - { "kind" : "IdRef", "name" : "'Size'" }, - { "kind" : "MemoryAccess", "quantifier" : "?" }, - { "kind" : "MemoryAccess", "quantifier" : "?" } - ], - "capabilities" : [ "Addresses" ] - }, - { - "opname" : "OpAccessChain", - "class" : "Memory", - "opcode" : 65, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Base'" }, - { "kind" : "IdRef", "quantifier" : "*", "name" : "'Indexes'" } - ] - }, - { - "opname" : "OpInBoundsAccessChain", - "class" : "Memory", - "opcode" : 66, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Base'" }, - { "kind" : "IdRef", "quantifier" : "*", "name" : "'Indexes'" } - ] - }, - { - "opname" : "OpPtrAccessChain", - "class" : "Memory", - "opcode" : 67, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Base'" }, - { "kind" : "IdRef", "name" : "'Element'" }, - { "kind" : "IdRef", "quantifier" : "*", "name" : "'Indexes'" } - ], - "capabilities" : [ - "Addresses", - "VariablePointers", - "VariablePointersStorageBuffer", - "PhysicalStorageBufferAddresses" - ] - }, - { - "opname" : "OpArrayLength", - "class" : "Memory", - "opcode" : 68, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Structure'" }, - { "kind" : "LiteralInteger", "name" : "'Array member'" } - ], - "capabilities" : [ "Shader" ] - }, - { - "opname" : "OpGenericPtrMemSemantics", - "class" : "Memory", - "opcode" : 69, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Pointer'" } - ], - "capabilities" : [ "Kernel" ] - }, - { - "opname" : "OpInBoundsPtrAccessChain", - "class" : "Memory", - "opcode" : 70, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Base'" }, - { "kind" : "IdRef", "name" : "'Element'" }, - { "kind" : "IdRef", "quantifier" : "*", "name" : "'Indexes'" } - ], - "capabilities" : [ "Addresses" ] - }, - { - "opname" : "OpDecorate", - "class" : "Annotation", - "opcode" : 71, - "operands" : [ - { "kind" : "IdRef", "name" : "'Target'" }, - { "kind" : "Decoration" } - ] - }, - { - "opname" : "OpMemberDecorate", - "class" : "Annotation", - "opcode" : 72, - "operands" : [ - { "kind" : "IdRef", "name" : "'Structure Type'" }, - { "kind" : "LiteralInteger", "name" : "'Member'" }, - { "kind" : "Decoration" } - ] - }, - { - "opname" : "OpDecorationGroup", - "class" : "Annotation", - "opcode" : 73, - "operands" : [ - { "kind" : "IdResult" } - ] - }, - { - "opname" : "OpGroupDecorate", - "class" : "Annotation", - "opcode" : 74, - "operands" : [ - { "kind" : "IdRef", "name" : "'Decoration Group'" }, - { "kind" : "IdRef", "quantifier" : "*", "name" : "'Targets'" } - ] - }, - { - "opname" : "OpGroupMemberDecorate", - "class" : "Annotation", - "opcode" : 75, - "operands" : [ - { "kind" : "IdRef", "name" : "'Decoration Group'" }, - { "kind" : "PairIdRefLiteralInteger", "quantifier" : "*", "name" : "'Targets'" } - ] - }, - { - "opname" : "OpVectorExtractDynamic", - "class" : "Composite", - "opcode" : 77, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Vector'" }, - { "kind" : "IdRef", "name" : "'Index'" } - ] - }, - { - "opname" : "OpVectorInsertDynamic", - "class" : "Composite", - "opcode" : 78, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Vector'" }, - { "kind" : "IdRef", "name" : "'Component'" }, - { "kind" : "IdRef", "name" : "'Index'" } - ] - }, - { - "opname" : "OpVectorShuffle", - "class" : "Composite", - "opcode" : 79, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Vector 1'" }, - { "kind" : "IdRef", "name" : "'Vector 2'" }, - { "kind" : "LiteralInteger", "quantifier" : "*", "name" : "'Components'" } - ] - }, - { - "opname" : "OpCompositeConstruct", - "class" : "Composite", - "opcode" : 80, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "quantifier" : "*", "name" : "'Constituents'" } - ] - }, - { - "opname" : "OpCompositeExtract", - "class" : "Composite", - "opcode" : 81, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Composite'" }, - { "kind" : "LiteralInteger", "quantifier" : "*", "name" : "'Indexes'" } - ] - }, - { - "opname" : "OpCompositeInsert", - "class" : "Composite", - "opcode" : 82, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Object'" }, - { "kind" : "IdRef", "name" : "'Composite'" }, - { "kind" : "LiteralInteger", "quantifier" : "*", "name" : "'Indexes'" } - ] - }, - { - "opname" : "OpCopyObject", - "class" : "Composite", - "opcode" : 83, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Operand'" } - ] - }, - { - "opname" : "OpTranspose", - "class" : "Composite", - "opcode" : 84, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Matrix'" } - ], - "capabilities" : [ "Matrix" ] - }, - { - "opname" : "OpSampledImage", - "class" : "Image", - "opcode" : 86, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Image'" }, - { "kind" : "IdRef", "name" : "'Sampler'" } - ] - }, - { - "opname" : "OpImageSampleImplicitLod", - "class" : "Image", - "opcode" : 87, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Sampled Image'" }, - { "kind" : "IdRef", "name" : "'Coordinate'" }, - { "kind" : "ImageOperands", "quantifier" : "?" } - ], - "capabilities" : [ "Shader" ] - }, - { - "opname" : "OpImageSampleExplicitLod", - "class" : "Image", - "opcode" : 88, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Sampled Image'" }, - { "kind" : "IdRef", "name" : "'Coordinate'" }, - { "kind" : "ImageOperands" } - ] - }, - { - "opname" : "OpImageSampleDrefImplicitLod", - "class" : "Image", - "opcode" : 89, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Sampled Image'" }, - { "kind" : "IdRef", "name" : "'Coordinate'" }, - { "kind" : "IdRef", "name" : "'D~ref~'" }, - { "kind" : "ImageOperands", "quantifier" : "?" } - ], - "capabilities" : [ "Shader" ] - }, - { - "opname" : "OpImageSampleDrefExplicitLod", - "class" : "Image", - "opcode" : 90, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Sampled Image'" }, - { "kind" : "IdRef", "name" : "'Coordinate'" }, - { "kind" : "IdRef", "name" : "'D~ref~'" }, - { "kind" : "ImageOperands" } - ], - "capabilities" : [ "Shader" ] - }, - { - "opname" : "OpImageSampleProjImplicitLod", - "class" : "Image", - "opcode" : 91, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Sampled Image'" }, - { "kind" : "IdRef", "name" : "'Coordinate'" }, - { "kind" : "ImageOperands", "quantifier" : "?" } - ], - "capabilities" : [ "Shader" ] - }, - { - "opname" : "OpImageSampleProjExplicitLod", - "class" : "Image", - "opcode" : 92, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Sampled Image'" }, - { "kind" : "IdRef", "name" : "'Coordinate'" }, - { "kind" : "ImageOperands" } - ], - "capabilities" : [ "Shader" ] - }, - { - "opname" : "OpImageSampleProjDrefImplicitLod", - "class" : "Image", - "opcode" : 93, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Sampled Image'" }, - { "kind" : "IdRef", "name" : "'Coordinate'" }, - { "kind" : "IdRef", "name" : "'D~ref~'" }, - { "kind" : "ImageOperands", "quantifier" : "?" } - ], - "capabilities" : [ "Shader" ] - }, - { - "opname" : "OpImageSampleProjDrefExplicitLod", - "class" : "Image", - "opcode" : 94, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Sampled Image'" }, - { "kind" : "IdRef", "name" : "'Coordinate'" }, - { "kind" : "IdRef", "name" : "'D~ref~'" }, - { "kind" : "ImageOperands" } - ], - "capabilities" : [ "Shader" ] - }, - { - "opname" : "OpImageFetch", - "class" : "Image", - "opcode" : 95, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Image'" }, - { "kind" : "IdRef", "name" : "'Coordinate'" }, - { "kind" : "ImageOperands", "quantifier" : "?" } - ] - }, - { - "opname" : "OpImageGather", - "class" : "Image", - "opcode" : 96, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Sampled Image'" }, - { "kind" : "IdRef", "name" : "'Coordinate'" }, - { "kind" : "IdRef", "name" : "'Component'" }, - { "kind" : "ImageOperands", "quantifier" : "?" } - ], - "capabilities" : [ "Shader" ] - }, - { - "opname" : "OpImageDrefGather", - "class" : "Image", - "opcode" : 97, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Sampled Image'" }, - { "kind" : "IdRef", "name" : "'Coordinate'" }, - { "kind" : "IdRef", "name" : "'D~ref~'" }, - { "kind" : "ImageOperands", "quantifier" : "?" } - ], - "capabilities" : [ "Shader" ] - }, - { - "opname" : "OpImageRead", - "class" : "Image", - "opcode" : 98, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Image'" }, - { "kind" : "IdRef", "name" : "'Coordinate'" }, - { "kind" : "ImageOperands", "quantifier" : "?" } - ] - }, - { - "opname" : "OpImageWrite", - "class" : "Image", - "opcode" : 99, - "operands" : [ - { "kind" : "IdRef", "name" : "'Image'" }, - { "kind" : "IdRef", "name" : "'Coordinate'" }, - { "kind" : "IdRef", "name" : "'Texel'" }, - { "kind" : "ImageOperands", "quantifier" : "?" } - ] - }, - { - "opname" : "OpImage", - "class" : "Image", - "opcode" : 100, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Sampled Image'" } - ] - }, - { - "opname" : "OpImageQueryFormat", - "class" : "Image", - "opcode" : 101, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Image'" } - ], - "capabilities" : [ "Kernel" ] - }, - { - "opname" : "OpImageQueryOrder", - "class" : "Image", - "opcode" : 102, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Image'" } - ], - "capabilities" : [ "Kernel" ] - }, - { - "opname" : "OpImageQuerySizeLod", - "class" : "Image", - "opcode" : 103, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Image'" }, - { "kind" : "IdRef", "name" : "'Level of Detail'" } - ], - "capabilities" : [ "Kernel", "ImageQuery" ] - }, - { - "opname" : "OpImageQuerySize", - "class" : "Image", - "opcode" : 104, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Image'" } - ], - "capabilities" : [ "Kernel", "ImageQuery" ] - }, - { - "opname" : "OpImageQueryLod", - "class" : "Image", - "opcode" : 105, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Sampled Image'" }, - { "kind" : "IdRef", "name" : "'Coordinate'" } - ], - "capabilities" : [ "ImageQuery" ] - }, - { - "opname" : "OpImageQueryLevels", - "class" : "Image", - "opcode" : 106, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Image'" } - ], - "capabilities" : [ "Kernel", "ImageQuery" ] - }, - { - "opname" : "OpImageQuerySamples", - "class" : "Image", - "opcode" : 107, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Image'" } - ], - "capabilities" : [ "Kernel", "ImageQuery" ] - }, - { - "opname" : "OpConvertFToU", - "class" : "Conversion", - "opcode" : 109, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Float Value'" } - ] - }, - { - "opname" : "OpConvertFToS", - "class" : "Conversion", - "opcode" : 110, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Float Value'" } - ] - }, - { - "opname" : "OpConvertSToF", - "class" : "Conversion", - "opcode" : 111, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Signed Value'" } - ] - }, - { - "opname" : "OpConvertUToF", - "class" : "Conversion", - "opcode" : 112, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Unsigned Value'" } - ] - }, - { - "opname" : "OpUConvert", - "class" : "Conversion", - "opcode" : 113, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Unsigned Value'" } - ] - }, - { - "opname" : "OpSConvert", - "class" : "Conversion", - "opcode" : 114, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Signed Value'" } - ] - }, - { - "opname" : "OpFConvert", - "class" : "Conversion", - "opcode" : 115, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Float Value'" } - ] - }, - { - "opname" : "OpQuantizeToF16", - "class" : "Conversion", - "opcode" : 116, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Value'" } - ] - }, - { - "opname" : "OpConvertPtrToU", - "class" : "Conversion", - "opcode" : 117, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Pointer'" } - ], - "capabilities" : [ - "Addresses", - "PhysicalStorageBufferAddresses" - ] - }, - { - "opname" : "OpSatConvertSToU", - "class" : "Conversion", - "opcode" : 118, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Signed Value'" } - ], - "capabilities" : [ "Kernel" ] - }, - { - "opname" : "OpSatConvertUToS", - "class" : "Conversion", - "opcode" : 119, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Unsigned Value'" } - ], - "capabilities" : [ "Kernel" ] - }, - { - "opname" : "OpConvertUToPtr", - "class" : "Conversion", - "opcode" : 120, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Integer Value'" } - ], - "capabilities" : [ - "Addresses", - "PhysicalStorageBufferAddresses" - ] - }, - { - "opname" : "OpPtrCastToGeneric", - "class" : "Conversion", - "opcode" : 121, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Pointer'" } - ], - "capabilities" : [ "Kernel" ] - }, - { - "opname" : "OpGenericCastToPtr", - "class" : "Conversion", - "opcode" : 122, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Pointer'" } - ], - "capabilities" : [ "Kernel" ] - }, - { - "opname" : "OpGenericCastToPtrExplicit", - "class" : "Conversion", - "opcode" : 123, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Pointer'" }, - { "kind" : "StorageClass", "name" : "'Storage'" } - ], - "capabilities" : [ "Kernel" ] - }, - { - "opname" : "OpBitcast", - "class" : "Conversion", - "opcode" : 124, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Operand'" } - ] - }, - { - "opname" : "OpSNegate", - "class" : "Arithmetic", - "opcode" : 126, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Operand'" } - ] - }, - { - "opname" : "OpFNegate", - "class" : "Arithmetic", - "opcode" : 127, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Operand'" } - ] - }, - { - "opname" : "OpIAdd", - "class" : "Arithmetic", - "opcode" : 128, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Operand 1'" }, - { "kind" : "IdRef", "name" : "'Operand 2'" } - ] - }, - { - "opname" : "OpFAdd", - "class" : "Arithmetic", - "opcode" : 129, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Operand 1'" }, - { "kind" : "IdRef", "name" : "'Operand 2'" } - ] - }, - { - "opname" : "OpISub", - "class" : "Arithmetic", - "opcode" : 130, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Operand 1'" }, - { "kind" : "IdRef", "name" : "'Operand 2'" } - ] - }, - { - "opname" : "OpFSub", - "class" : "Arithmetic", - "opcode" : 131, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Operand 1'" }, - { "kind" : "IdRef", "name" : "'Operand 2'" } - ] - }, - { - "opname" : "OpIMul", - "class" : "Arithmetic", - "opcode" : 132, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Operand 1'" }, - { "kind" : "IdRef", "name" : "'Operand 2'" } - ] - }, - { - "opname" : "OpFMul", - "class" : "Arithmetic", - "opcode" : 133, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Operand 1'" }, - { "kind" : "IdRef", "name" : "'Operand 2'" } - ] - }, - { - "opname" : "OpUDiv", - "class" : "Arithmetic", - "opcode" : 134, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Operand 1'" }, - { "kind" : "IdRef", "name" : "'Operand 2'" } - ] - }, - { - "opname" : "OpSDiv", - "class" : "Arithmetic", - "opcode" : 135, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Operand 1'" }, - { "kind" : "IdRef", "name" : "'Operand 2'" } - ] - }, - { - "opname" : "OpFDiv", - "class" : "Arithmetic", - "opcode" : 136, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Operand 1'" }, - { "kind" : "IdRef", "name" : "'Operand 2'" } - ] - }, - { - "opname" : "OpUMod", - "class" : "Arithmetic", - "opcode" : 137, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Operand 1'" }, - { "kind" : "IdRef", "name" : "'Operand 2'" } - ] - }, - { - "opname" : "OpSRem", - "class" : "Arithmetic", - "opcode" : 138, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Operand 1'" }, - { "kind" : "IdRef", "name" : "'Operand 2'" } - ] - }, - { - "opname" : "OpSMod", - "class" : "Arithmetic", - "opcode" : 139, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Operand 1'" }, - { "kind" : "IdRef", "name" : "'Operand 2'" } - ] - }, - { - "opname" : "OpFRem", - "class" : "Arithmetic", - "opcode" : 140, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Operand 1'" }, - { "kind" : "IdRef", "name" : "'Operand 2'" } - ] - }, - { - "opname" : "OpFMod", - "class" : "Arithmetic", - "opcode" : 141, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Operand 1'" }, - { "kind" : "IdRef", "name" : "'Operand 2'" } - ] - }, - { - "opname" : "OpVectorTimesScalar", - "class" : "Arithmetic", - "opcode" : 142, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Vector'" }, - { "kind" : "IdRef", "name" : "'Scalar'" } - ] - }, - { - "opname" : "OpMatrixTimesScalar", - "class" : "Arithmetic", - "opcode" : 143, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Matrix'" }, - { "kind" : "IdRef", "name" : "'Scalar'" } - ], - "capabilities" : [ "Matrix" ] - }, - { - "opname" : "OpVectorTimesMatrix", - "class" : "Arithmetic", - "opcode" : 144, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Vector'" }, - { "kind" : "IdRef", "name" : "'Matrix'" } - ], - "capabilities" : [ "Matrix" ] - }, - { - "opname" : "OpMatrixTimesVector", - "class" : "Arithmetic", - "opcode" : 145, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Matrix'" }, - { "kind" : "IdRef", "name" : "'Vector'" } - ], - "capabilities" : [ "Matrix" ] - }, - { - "opname" : "OpMatrixTimesMatrix", - "class" : "Arithmetic", - "opcode" : 146, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'LeftMatrix'" }, - { "kind" : "IdRef", "name" : "'RightMatrix'" } - ], - "capabilities" : [ "Matrix" ] - }, - { - "opname" : "OpOuterProduct", - "class" : "Arithmetic", - "opcode" : 147, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Vector 1'" }, - { "kind" : "IdRef", "name" : "'Vector 2'" } - ], - "capabilities" : [ "Matrix" ] - }, - { - "opname" : "OpDot", - "class" : "Arithmetic", - "opcode" : 148, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Vector 1'" }, - { "kind" : "IdRef", "name" : "'Vector 2'" } - ] - }, - { - "opname" : "OpIAddCarry", - "class" : "Arithmetic", - "opcode" : 149, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Operand 1'" }, - { "kind" : "IdRef", "name" : "'Operand 2'" } - ] - }, - { - "opname" : "OpISubBorrow", - "class" : "Arithmetic", - "opcode" : 150, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Operand 1'" }, - { "kind" : "IdRef", "name" : "'Operand 2'" } - ] - }, - { - "opname" : "OpUMulExtended", - "class" : "Arithmetic", - "opcode" : 151, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Operand 1'" }, - { "kind" : "IdRef", "name" : "'Operand 2'" } - ] - }, - { - "opname" : "OpSMulExtended", - "class" : "Arithmetic", - "opcode" : 152, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Operand 1'" }, - { "kind" : "IdRef", "name" : "'Operand 2'" } - ] - }, - { - "opname" : "OpAny", - "class" : "Relational_and_Logical", - "opcode" : 154, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Vector'" } - ] - }, - { - "opname" : "OpAll", - "class" : "Relational_and_Logical", - "opcode" : 155, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Vector'" } - ] - }, - { - "opname" : "OpIsNan", - "class" : "Relational_and_Logical", - "opcode" : 156, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'x'" } - ] - }, - { - "opname" : "OpIsInf", - "class" : "Relational_and_Logical", - "opcode" : 157, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'x'" } - ] - }, - { - "opname" : "OpIsFinite", - "class" : "Relational_and_Logical", - "opcode" : 158, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'x'" } - ], - "capabilities" : [ "Kernel" ] - }, - { - "opname" : "OpIsNormal", - "class" : "Relational_and_Logical", - "opcode" : 159, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'x'" } - ], - "capabilities" : [ "Kernel" ] - }, - { - "opname" : "OpSignBitSet", - "class" : "Relational_and_Logical", - "opcode" : 160, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'x'" } - ], - "capabilities" : [ "Kernel" ] - }, - { - "opname" : "OpLessOrGreater", - "class" : "Relational_and_Logical", - "opcode" : 161, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'x'" }, - { "kind" : "IdRef", "name" : "'y'" } - ], - "capabilities" : [ "Kernel" ], - "lastVersion" : "1.5" - }, - { - "opname" : "OpOrdered", - "class" : "Relational_and_Logical", - "opcode" : 162, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'x'" }, - { "kind" : "IdRef", "name" : "'y'" } - ], - "capabilities" : [ "Kernel" ] - }, - { - "opname" : "OpUnordered", - "class" : "Relational_and_Logical", - "opcode" : 163, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'x'" }, - { "kind" : "IdRef", "name" : "'y'" } - ], - "capabilities" : [ "Kernel" ] - }, - { - "opname" : "OpLogicalEqual", - "class" : "Relational_and_Logical", - "opcode" : 164, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Operand 1'" }, - { "kind" : "IdRef", "name" : "'Operand 2'" } - ] - }, - { - "opname" : "OpLogicalNotEqual", - "class" : "Relational_and_Logical", - "opcode" : 165, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Operand 1'" }, - { "kind" : "IdRef", "name" : "'Operand 2'" } - ] - }, - { - "opname" : "OpLogicalOr", - "class" : "Relational_and_Logical", - "opcode" : 166, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Operand 1'" }, - { "kind" : "IdRef", "name" : "'Operand 2'" } - ] - }, - { - "opname" : "OpLogicalAnd", - "class" : "Relational_and_Logical", - "opcode" : 167, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Operand 1'" }, - { "kind" : "IdRef", "name" : "'Operand 2'" } - ] - }, - { - "opname" : "OpLogicalNot", - "class" : "Relational_and_Logical", - "opcode" : 168, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Operand'" } - ] - }, - { - "opname" : "OpSelect", - "class" : "Relational_and_Logical", - "opcode" : 169, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Condition'" }, - { "kind" : "IdRef", "name" : "'Object 1'" }, - { "kind" : "IdRef", "name" : "'Object 2'" } - ] - }, - { - "opname" : "OpIEqual", - "class" : "Relational_and_Logical", - "opcode" : 170, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Operand 1'" }, - { "kind" : "IdRef", "name" : "'Operand 2'" } - ] - }, - { - "opname" : "OpINotEqual", - "class" : "Relational_and_Logical", - "opcode" : 171, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Operand 1'" }, - { "kind" : "IdRef", "name" : "'Operand 2'" } - ] - }, - { - "opname" : "OpUGreaterThan", - "class" : "Relational_and_Logical", - "opcode" : 172, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Operand 1'" }, - { "kind" : "IdRef", "name" : "'Operand 2'" } - ] - }, - { - "opname" : "OpSGreaterThan", - "class" : "Relational_and_Logical", - "opcode" : 173, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Operand 1'" }, - { "kind" : "IdRef", "name" : "'Operand 2'" } - ] - }, - { - "opname" : "OpUGreaterThanEqual", - "class" : "Relational_and_Logical", - "opcode" : 174, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Operand 1'" }, - { "kind" : "IdRef", "name" : "'Operand 2'" } - ] - }, - { - "opname" : "OpSGreaterThanEqual", - "class" : "Relational_and_Logical", - "opcode" : 175, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Operand 1'" }, - { "kind" : "IdRef", "name" : "'Operand 2'" } - ] - }, - { - "opname" : "OpULessThan", - "class" : "Relational_and_Logical", - "opcode" : 176, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Operand 1'" }, - { "kind" : "IdRef", "name" : "'Operand 2'" } - ] - }, - { - "opname" : "OpSLessThan", - "class" : "Relational_and_Logical", - "opcode" : 177, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Operand 1'" }, - { "kind" : "IdRef", "name" : "'Operand 2'" } - ] - }, - { - "opname" : "OpULessThanEqual", - "class" : "Relational_and_Logical", - "opcode" : 178, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Operand 1'" }, - { "kind" : "IdRef", "name" : "'Operand 2'" } - ] - }, - { - "opname" : "OpSLessThanEqual", - "class" : "Relational_and_Logical", - "opcode" : 179, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Operand 1'" }, - { "kind" : "IdRef", "name" : "'Operand 2'" } - ] - }, - { - "opname" : "OpFOrdEqual", - "class" : "Relational_and_Logical", - "opcode" : 180, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Operand 1'" }, - { "kind" : "IdRef", "name" : "'Operand 2'" } - ] - }, - { - "opname" : "OpFUnordEqual", - "class" : "Relational_and_Logical", - "opcode" : 181, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Operand 1'" }, - { "kind" : "IdRef", "name" : "'Operand 2'" } - ] - }, - { - "opname" : "OpFOrdNotEqual", - "class" : "Relational_and_Logical", - "opcode" : 182, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Operand 1'" }, - { "kind" : "IdRef", "name" : "'Operand 2'" } - ] - }, - { - "opname" : "OpFUnordNotEqual", - "class" : "Relational_and_Logical", - "opcode" : 183, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Operand 1'" }, - { "kind" : "IdRef", "name" : "'Operand 2'" } - ] - }, - { - "opname" : "OpFOrdLessThan", - "class" : "Relational_and_Logical", - "opcode" : 184, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Operand 1'" }, - { "kind" : "IdRef", "name" : "'Operand 2'" } - ] - }, - { - "opname" : "OpFUnordLessThan", - "class" : "Relational_and_Logical", - "opcode" : 185, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Operand 1'" }, - { "kind" : "IdRef", "name" : "'Operand 2'" } - ] - }, - { - "opname" : "OpFOrdGreaterThan", - "class" : "Relational_and_Logical", - "opcode" : 186, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Operand 1'" }, - { "kind" : "IdRef", "name" : "'Operand 2'" } - ] - }, - { - "opname" : "OpFUnordGreaterThan", - "class" : "Relational_and_Logical", - "opcode" : 187, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Operand 1'" }, - { "kind" : "IdRef", "name" : "'Operand 2'" } - ] - }, - { - "opname" : "OpFOrdLessThanEqual", - "class" : "Relational_and_Logical", - "opcode" : 188, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Operand 1'" }, - { "kind" : "IdRef", "name" : "'Operand 2'" } - ] - }, - { - "opname" : "OpFUnordLessThanEqual", - "class" : "Relational_and_Logical", - "opcode" : 189, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Operand 1'" }, - { "kind" : "IdRef", "name" : "'Operand 2'" } - ] - }, - { - "opname" : "OpFOrdGreaterThanEqual", - "class" : "Relational_and_Logical", - "opcode" : 190, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Operand 1'" }, - { "kind" : "IdRef", "name" : "'Operand 2'" } - ] - }, - { - "opname" : "OpFUnordGreaterThanEqual", - "class" : "Relational_and_Logical", - "opcode" : 191, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Operand 1'" }, - { "kind" : "IdRef", "name" : "'Operand 2'" } - ] - }, - { - "opname" : "OpShiftRightLogical", - "class" : "Bit", - "opcode" : 194, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Base'" }, - { "kind" : "IdRef", "name" : "'Shift'" } - ] - }, - { - "opname" : "OpShiftRightArithmetic", - "class" : "Bit", - "opcode" : 195, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Base'" }, - { "kind" : "IdRef", "name" : "'Shift'" } - ] - }, - { - "opname" : "OpShiftLeftLogical", - "class" : "Bit", - "opcode" : 196, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Base'" }, - { "kind" : "IdRef", "name" : "'Shift'" } - ] - }, - { - "opname" : "OpBitwiseOr", - "class" : "Bit", - "opcode" : 197, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Operand 1'" }, - { "kind" : "IdRef", "name" : "'Operand 2'" } - ] - }, - { - "opname" : "OpBitwiseXor", - "class" : "Bit", - "opcode" : 198, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Operand 1'" }, - { "kind" : "IdRef", "name" : "'Operand 2'" } - ] - }, - { - "opname" : "OpBitwiseAnd", - "class" : "Bit", - "opcode" : 199, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Operand 1'" }, - { "kind" : "IdRef", "name" : "'Operand 2'" } - ] - }, - { - "opname" : "OpNot", - "class" : "Bit", - "opcode" : 200, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Operand'" } - ] - }, - { - "opname" : "OpBitFieldInsert", - "class" : "Bit", - "opcode" : 201, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Base'" }, - { "kind" : "IdRef", "name" : "'Insert'" }, - { "kind" : "IdRef", "name" : "'Offset'" }, - { "kind" : "IdRef", "name" : "'Count'" } - ], - "capabilities" : [ "Shader", "BitInstructions" ] - }, - { - "opname" : "OpBitFieldSExtract", - "class" : "Bit", - "opcode" : 202, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Base'" }, - { "kind" : "IdRef", "name" : "'Offset'" }, - { "kind" : "IdRef", "name" : "'Count'" } - ], - "capabilities" : [ "Shader", "BitInstructions" ] - }, - { - "opname" : "OpBitFieldUExtract", - "class" : "Bit", - "opcode" : 203, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Base'" }, - { "kind" : "IdRef", "name" : "'Offset'" }, - { "kind" : "IdRef", "name" : "'Count'" } - ], - "capabilities" : [ "Shader", "BitInstructions" ] - }, - { - "opname" : "OpBitReverse", - "class" : "Bit", - "opcode" : 204, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Base'" } - ], - "capabilities" : [ "Shader", "BitInstructions" ] - }, - { - "opname" : "OpBitCount", - "class" : "Bit", - "opcode" : 205, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Base'" } - ] - }, - { - "opname" : "OpDPdx", - "class" : "Derivative", - "opcode" : 207, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'P'" } - ], - "capabilities" : [ "Shader" ] - }, - { - "opname" : "OpDPdy", - "class" : "Derivative", - "opcode" : 208, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'P'" } - ], - "capabilities" : [ "Shader" ] - }, - { - "opname" : "OpFwidth", - "class" : "Derivative", - "opcode" : 209, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'P'" } - ], - "capabilities" : [ "Shader" ] - }, - { - "opname" : "OpDPdxFine", - "class" : "Derivative", - "opcode" : 210, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'P'" } - ], - "capabilities" : [ "DerivativeControl" ] - }, - { - "opname" : "OpDPdyFine", - "class" : "Derivative", - "opcode" : 211, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'P'" } - ], - "capabilities" : [ "DerivativeControl" ] - }, - { - "opname" : "OpFwidthFine", - "class" : "Derivative", - "opcode" : 212, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'P'" } - ], - "capabilities" : [ "DerivativeControl" ] - }, - { - "opname" : "OpDPdxCoarse", - "class" : "Derivative", - "opcode" : 213, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'P'" } - ], - "capabilities" : [ "DerivativeControl" ] - }, - { - "opname" : "OpDPdyCoarse", - "class" : "Derivative", - "opcode" : 214, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'P'" } - ], - "capabilities" : [ "DerivativeControl" ] - }, - { - "opname" : "OpFwidthCoarse", - "class" : "Derivative", - "opcode" : 215, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'P'" } - ], - "capabilities" : [ "DerivativeControl" ] - }, - { - "opname" : "OpEmitVertex", - "class" : "Primitive", - "opcode" : 218, - "capabilities" : [ "Geometry" ] - }, - { - "opname" : "OpEndPrimitive", - "class" : "Primitive", - "opcode" : 219, - "capabilities" : [ "Geometry" ] - }, - { - "opname" : "OpEmitStreamVertex", - "class" : "Primitive", - "opcode" : 220, - "operands" : [ - { "kind" : "IdRef", "name" : "'Stream'" } - ], - "capabilities" : [ "GeometryStreams" ] - }, - { - "opname" : "OpEndStreamPrimitive", - "class" : "Primitive", - "opcode" : 221, - "operands" : [ - { "kind" : "IdRef", "name" : "'Stream'" } - ], - "capabilities" : [ "GeometryStreams" ] - }, - { - "opname" : "OpControlBarrier", - "class" : "Barrier", - "opcode" : 224, - "operands" : [ - { "kind" : "IdScope", "name" : "'Execution'" }, - { "kind" : "IdScope", "name" : "'Memory'" }, - { "kind" : "IdMemorySemantics", "name" : "'Semantics'" } - ] - }, - { - "opname" : "OpMemoryBarrier", - "class" : "Barrier", - "opcode" : 225, - "operands" : [ - { "kind" : "IdScope", "name" : "'Memory'" }, - { "kind" : "IdMemorySemantics", "name" : "'Semantics'" } - ] - }, - { - "opname" : "OpAtomicLoad", - "class" : "Atomic", - "opcode" : 227, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Pointer'" }, - { "kind" : "IdScope", "name" : "'Memory'" }, - { "kind" : "IdMemorySemantics", "name" : "'Semantics'" } - ] - }, - { - "opname" : "OpAtomicStore", - "class" : "Atomic", - "opcode" : 228, - "operands" : [ - { "kind" : "IdRef", "name" : "'Pointer'" }, - { "kind" : "IdScope", "name" : "'Memory'" }, - { "kind" : "IdMemorySemantics", "name" : "'Semantics'" }, - { "kind" : "IdRef", "name" : "'Value'" } - ] - }, - { - "opname" : "OpAtomicExchange", - "class" : "Atomic", - "opcode" : 229, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Pointer'" }, - { "kind" : "IdScope", "name" : "'Memory'" }, - { "kind" : "IdMemorySemantics", "name" : "'Semantics'" }, - { "kind" : "IdRef", "name" : "'Value'" } - ] - }, - { - "opname" : "OpAtomicCompareExchange", - "class" : "Atomic", - "opcode" : 230, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Pointer'" }, - { "kind" : "IdScope", "name" : "'Memory'" }, - { "kind" : "IdMemorySemantics", "name" : "'Equal'" }, - { "kind" : "IdMemorySemantics", "name" : "'Unequal'" }, - { "kind" : "IdRef", "name" : "'Value'" }, - { "kind" : "IdRef", "name" : "'Comparator'" } - ] - }, - { - "opname" : "OpAtomicCompareExchangeWeak", - "class" : "Atomic", - "opcode" : 231, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Pointer'" }, - { "kind" : "IdScope", "name" : "'Memory'" }, - { "kind" : "IdMemorySemantics", "name" : "'Equal'" }, - { "kind" : "IdMemorySemantics", "name" : "'Unequal'" }, - { "kind" : "IdRef", "name" : "'Value'" }, - { "kind" : "IdRef", "name" : "'Comparator'" } - ], - "capabilities" : [ "Kernel" ], - "lastVersion" : "1.3" - }, - { - "opname" : "OpAtomicIIncrement", - "class" : "Atomic", - "opcode" : 232, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Pointer'" }, - { "kind" : "IdScope", "name" : "'Memory'" }, - { "kind" : "IdMemorySemantics", "name" : "'Semantics'" } - ] - }, - { - "opname" : "OpAtomicIDecrement", - "class" : "Atomic", - "opcode" : 233, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Pointer'" }, - { "kind" : "IdScope", "name" : "'Memory'" }, - { "kind" : "IdMemorySemantics", "name" : "'Semantics'" } - ] - }, - { - "opname" : "OpAtomicIAdd", - "class" : "Atomic", - "opcode" : 234, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Pointer'" }, - { "kind" : "IdScope", "name" : "'Memory'" }, - { "kind" : "IdMemorySemantics", "name" : "'Semantics'" }, - { "kind" : "IdRef", "name" : "'Value'" } - ] - }, - { - "opname" : "OpAtomicISub", - "class" : "Atomic", - "opcode" : 235, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Pointer'" }, - { "kind" : "IdScope", "name" : "'Memory'" }, - { "kind" : "IdMemorySemantics", "name" : "'Semantics'" }, - { "kind" : "IdRef", "name" : "'Value'" } - ] - }, - { - "opname" : "OpAtomicSMin", - "class" : "Atomic", - "opcode" : 236, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Pointer'" }, - { "kind" : "IdScope", "name" : "'Memory'" }, - { "kind" : "IdMemorySemantics", "name" : "'Semantics'" }, - { "kind" : "IdRef", "name" : "'Value'" } - ] - }, - { - "opname" : "OpAtomicUMin", - "class" : "Atomic", - "opcode" : 237, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Pointer'" }, - { "kind" : "IdScope", "name" : "'Memory'" }, - { "kind" : "IdMemorySemantics", "name" : "'Semantics'" }, - { "kind" : "IdRef", "name" : "'Value'" } - ] - }, - { - "opname" : "OpAtomicSMax", - "class" : "Atomic", - "opcode" : 238, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Pointer'" }, - { "kind" : "IdScope", "name" : "'Memory'" }, - { "kind" : "IdMemorySemantics", "name" : "'Semantics'" }, - { "kind" : "IdRef", "name" : "'Value'" } - ] - }, - { - "opname" : "OpAtomicUMax", - "class" : "Atomic", - "opcode" : 239, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Pointer'" }, - { "kind" : "IdScope", "name" : "'Memory'" }, - { "kind" : "IdMemorySemantics", "name" : "'Semantics'" }, - { "kind" : "IdRef", "name" : "'Value'" } - ] - }, - { - "opname" : "OpAtomicAnd", - "class" : "Atomic", - "opcode" : 240, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Pointer'" }, - { "kind" : "IdScope", "name" : "'Memory'" }, - { "kind" : "IdMemorySemantics", "name" : "'Semantics'" }, - { "kind" : "IdRef", "name" : "'Value'" } - ] - }, - { - "opname" : "OpAtomicOr", - "class" : "Atomic", - "opcode" : 241, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Pointer'" }, - { "kind" : "IdScope", "name" : "'Memory'" }, - { "kind" : "IdMemorySemantics", "name" : "'Semantics'" }, - { "kind" : "IdRef", "name" : "'Value'" } - ] - }, - { - "opname" : "OpAtomicXor", - "class" : "Atomic", - "opcode" : 242, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Pointer'" }, - { "kind" : "IdScope", "name" : "'Memory'" }, - { "kind" : "IdMemorySemantics", "name" : "'Semantics'" }, - { "kind" : "IdRef", "name" : "'Value'" } - ] - }, - { - "opname" : "OpPhi", - "class" : "Control-Flow", - "opcode" : 245, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "PairIdRefIdRef", "quantifier" : "*", "name" : "'Variable, Parent, ...'" } - ] - }, - { - "opname" : "OpLoopMerge", - "class" : "Control-Flow", - "opcode" : 246, - "operands" : [ - { "kind" : "IdRef", "name" : "'Merge Block'" }, - { "kind" : "IdRef", "name" : "'Continue Target'" }, - { "kind" : "LoopControl" } - ] - }, - { - "opname" : "OpSelectionMerge", - "class" : "Control-Flow", - "opcode" : 247, - "operands" : [ - { "kind" : "IdRef", "name" : "'Merge Block'" }, - { "kind" : "SelectionControl" } - ] - }, - { - "opname" : "OpLabel", - "class" : "Control-Flow", - "opcode" : 248, - "operands" : [ - { "kind" : "IdResult" } - ] - }, - { - "opname" : "OpBranch", - "class" : "Control-Flow", - "opcode" : 249, - "operands" : [ - { "kind" : "IdRef", "name" : "'Target Label'" } - ] - }, - { - "opname" : "OpBranchConditional", - "class" : "Control-Flow", - "opcode" : 250, - "operands" : [ - { "kind" : "IdRef", "name" : "'Condition'" }, - { "kind" : "IdRef", "name" : "'True Label'" }, - { "kind" : "IdRef", "name" : "'False Label'" }, - { "kind" : "LiteralInteger", "quantifier" : "*", "name" : "'Branch weights'" } - ] - }, - { - "opname" : "OpSwitch", - "class" : "Control-Flow", - "opcode" : 251, - "operands" : [ - { "kind" : "IdRef", "name" : "'Selector'" }, - { "kind" : "IdRef", "name" : "'Default'" }, - { "kind" : "PairLiteralIntegerIdRef", "quantifier" : "*", "name" : "'Target'" } - ] - }, - { - "opname" : "OpKill", - "class" : "Control-Flow", - "opcode" : 252, - "capabilities" : [ "Shader" ] - }, - { - "opname" : "OpReturn", - "class" : "Control-Flow", - "opcode" : 253 - }, - { - "opname" : "OpReturnValue", - "class" : "Control-Flow", - "opcode" : 254, - "operands" : [ - { "kind" : "IdRef", "name" : "'Value'" } - ] - }, - { - "opname" : "OpUnreachable", - "class" : "Control-Flow", - "opcode" : 255 - }, - { - "opname" : "OpLifetimeStart", - "class" : "Control-Flow", - "opcode" : 256, - "operands" : [ - { "kind" : "IdRef", "name" : "'Pointer'" }, - { "kind" : "LiteralInteger", "name" : "'Size'" } - ], - "capabilities" : [ "Kernel" ] - }, - { - "opname" : "OpLifetimeStop", - "class" : "Control-Flow", - "opcode" : 257, - "operands" : [ - { "kind" : "IdRef", "name" : "'Pointer'" }, - { "kind" : "LiteralInteger", "name" : "'Size'" } - ], - "capabilities" : [ "Kernel" ] - }, - { - "opname" : "OpGroupAsyncCopy", - "class" : "Group", - "opcode" : 259, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdScope", "name" : "'Execution'" }, - { "kind" : "IdRef", "name" : "'Destination'" }, - { "kind" : "IdRef", "name" : "'Source'" }, - { "kind" : "IdRef", "name" : "'Num Elements'" }, - { "kind" : "IdRef", "name" : "'Stride'" }, - { "kind" : "IdRef", "name" : "'Event'" } - ], - "capabilities" : [ "Kernel" ] - }, - { - "opname" : "OpGroupWaitEvents", - "class" : "Group", - "opcode" : 260, - "operands" : [ - { "kind" : "IdScope", "name" : "'Execution'" }, - { "kind" : "IdRef", "name" : "'Num Events'" }, - { "kind" : "IdRef", "name" : "'Events List'" } - ], - "capabilities" : [ "Kernel" ] - }, - { - "opname" : "OpGroupAll", - "class" : "Group", - "opcode" : 261, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdScope", "name" : "'Execution'" }, - { "kind" : "IdRef", "name" : "'Predicate'" } - ], - "capabilities" : [ "Groups" ] - }, - { - "opname" : "OpGroupAny", - "class" : "Group", - "opcode" : 262, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdScope", "name" : "'Execution'" }, - { "kind" : "IdRef", "name" : "'Predicate'" } - ], - "capabilities" : [ "Groups" ] - }, - { - "opname" : "OpGroupBroadcast", - "class" : "Group", - "opcode" : 263, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdScope", "name" : "'Execution'" }, - { "kind" : "IdRef", "name" : "'Value'" }, - { "kind" : "IdRef", "name" : "'LocalId'" } - ], - "capabilities" : [ "Groups" ] - }, - { - "opname" : "OpGroupIAdd", - "class" : "Group", - "opcode" : 264, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdScope", "name" : "'Execution'" }, - { "kind" : "GroupOperation", "name" : "'Operation'" }, - { "kind" : "IdRef", "name" : "'X'" } - ], - "capabilities" : [ "Groups" ] - }, - { - "opname" : "OpGroupFAdd", - "class" : "Group", - "opcode" : 265, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdScope", "name" : "'Execution'" }, - { "kind" : "GroupOperation", "name" : "'Operation'" }, - { "kind" : "IdRef", "name" : "'X'" } - ], - "capabilities" : [ "Groups" ] - }, - { - "opname" : "OpGroupFMin", - "class" : "Group", - "opcode" : 266, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdScope", "name" : "'Execution'" }, - { "kind" : "GroupOperation", "name" : "'Operation'" }, - { "kind" : "IdRef", "name" : "'X'" } - ], - "capabilities" : [ "Groups" ] - }, - { - "opname" : "OpGroupUMin", - "class" : "Group", - "opcode" : 267, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdScope", "name" : "'Execution'" }, - { "kind" : "GroupOperation", "name" : "'Operation'" }, - { "kind" : "IdRef", "name" : "'X'" } - ], - "capabilities" : [ "Groups" ] - }, - { - "opname" : "OpGroupSMin", - "class" : "Group", - "opcode" : 268, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdScope", "name" : "'Execution'" }, - { "kind" : "GroupOperation", "name" : "'Operation'" }, - { "kind" : "IdRef", "name" : "'X'" } - ], - "capabilities" : [ "Groups" ] - }, - { - "opname" : "OpGroupFMax", - "class" : "Group", - "opcode" : 269, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdScope", "name" : "'Execution'" }, - { "kind" : "GroupOperation", "name" : "'Operation'" }, - { "kind" : "IdRef", "name" : "'X'" } - ], - "capabilities" : [ "Groups" ] - }, - { - "opname" : "OpGroupUMax", - "class" : "Group", - "opcode" : 270, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdScope", "name" : "'Execution'" }, - { "kind" : "GroupOperation", "name" : "'Operation'" }, - { "kind" : "IdRef", "name" : "'X'" } - ], - "capabilities" : [ "Groups" ] - }, - { - "opname" : "OpGroupSMax", - "class" : "Group", - "opcode" : 271, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdScope", "name" : "'Execution'" }, - { "kind" : "GroupOperation", "name" : "'Operation'" }, - { "kind" : "IdRef", "name" : "'X'" } - ], - "capabilities" : [ "Groups" ] - }, - { - "opname" : "OpReadPipe", - "class" : "Pipe", - "opcode" : 274, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Pipe'" }, - { "kind" : "IdRef", "name" : "'Pointer'" }, - { "kind" : "IdRef", "name" : "'Packet Size'" }, - { "kind" : "IdRef", "name" : "'Packet Alignment'" } - ], - "capabilities" : [ "Pipes" ] - }, - { - "opname" : "OpWritePipe", - "class" : "Pipe", - "opcode" : 275, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Pipe'" }, - { "kind" : "IdRef", "name" : "'Pointer'" }, - { "kind" : "IdRef", "name" : "'Packet Size'" }, - { "kind" : "IdRef", "name" : "'Packet Alignment'" } - ], - "capabilities" : [ "Pipes" ] - }, - { - "opname" : "OpReservedReadPipe", - "class" : "Pipe", - "opcode" : 276, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Pipe'" }, - { "kind" : "IdRef", "name" : "'Reserve Id'" }, - { "kind" : "IdRef", "name" : "'Index'" }, - { "kind" : "IdRef", "name" : "'Pointer'" }, - { "kind" : "IdRef", "name" : "'Packet Size'" }, - { "kind" : "IdRef", "name" : "'Packet Alignment'" } - ], - "capabilities" : [ "Pipes" ] - }, - { - "opname" : "OpReservedWritePipe", - "class" : "Pipe", - "opcode" : 277, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Pipe'" }, - { "kind" : "IdRef", "name" : "'Reserve Id'" }, - { "kind" : "IdRef", "name" : "'Index'" }, - { "kind" : "IdRef", "name" : "'Pointer'" }, - { "kind" : "IdRef", "name" : "'Packet Size'" }, - { "kind" : "IdRef", "name" : "'Packet Alignment'" } - ], - "capabilities" : [ "Pipes" ] - }, - { - "opname" : "OpReserveReadPipePackets", - "class" : "Pipe", - "opcode" : 278, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Pipe'" }, - { "kind" : "IdRef", "name" : "'Num Packets'" }, - { "kind" : "IdRef", "name" : "'Packet Size'" }, - { "kind" : "IdRef", "name" : "'Packet Alignment'" } - ], - "capabilities" : [ "Pipes" ] - }, - { - "opname" : "OpReserveWritePipePackets", - "class" : "Pipe", - "opcode" : 279, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Pipe'" }, - { "kind" : "IdRef", "name" : "'Num Packets'" }, - { "kind" : "IdRef", "name" : "'Packet Size'" }, - { "kind" : "IdRef", "name" : "'Packet Alignment'" } - ], - "capabilities" : [ "Pipes" ] - }, - { - "opname" : "OpCommitReadPipe", - "class" : "Pipe", - "opcode" : 280, - "operands" : [ - { "kind" : "IdRef", "name" : "'Pipe'" }, - { "kind" : "IdRef", "name" : "'Reserve Id'" }, - { "kind" : "IdRef", "name" : "'Packet Size'" }, - { "kind" : "IdRef", "name" : "'Packet Alignment'" } - ], - "capabilities" : [ "Pipes" ] - }, - { - "opname" : "OpCommitWritePipe", - "class" : "Pipe", - "opcode" : 281, - "operands" : [ - { "kind" : "IdRef", "name" : "'Pipe'" }, - { "kind" : "IdRef", "name" : "'Reserve Id'" }, - { "kind" : "IdRef", "name" : "'Packet Size'" }, - { "kind" : "IdRef", "name" : "'Packet Alignment'" } - ], - "capabilities" : [ "Pipes" ] - }, - { - "opname" : "OpIsValidReserveId", - "class" : "Pipe", - "opcode" : 282, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Reserve Id'" } - ], - "capabilities" : [ "Pipes" ] - }, - { - "opname" : "OpGetNumPipePackets", - "class" : "Pipe", - "opcode" : 283, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Pipe'" }, - { "kind" : "IdRef", "name" : "'Packet Size'" }, - { "kind" : "IdRef", "name" : "'Packet Alignment'" } - ], - "capabilities" : [ "Pipes" ] - }, - { - "opname" : "OpGetMaxPipePackets", - "class" : "Pipe", - "opcode" : 284, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Pipe'" }, - { "kind" : "IdRef", "name" : "'Packet Size'" }, - { "kind" : "IdRef", "name" : "'Packet Alignment'" } - ], - "capabilities" : [ "Pipes" ] - }, - { - "opname" : "OpGroupReserveReadPipePackets", - "class" : "Pipe", - "opcode" : 285, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdScope", "name" : "'Execution'" }, - { "kind" : "IdRef", "name" : "'Pipe'" }, - { "kind" : "IdRef", "name" : "'Num Packets'" }, - { "kind" : "IdRef", "name" : "'Packet Size'" }, - { "kind" : "IdRef", "name" : "'Packet Alignment'" } - ], - "capabilities" : [ "Pipes" ] - }, - { - "opname" : "OpGroupReserveWritePipePackets", - "class" : "Pipe", - "opcode" : 286, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdScope", "name" : "'Execution'" }, - { "kind" : "IdRef", "name" : "'Pipe'" }, - { "kind" : "IdRef", "name" : "'Num Packets'" }, - { "kind" : "IdRef", "name" : "'Packet Size'" }, - { "kind" : "IdRef", "name" : "'Packet Alignment'" } - ], - "capabilities" : [ "Pipes" ] - }, - { - "opname" : "OpGroupCommitReadPipe", - "class" : "Pipe", - "opcode" : 287, - "operands" : [ - { "kind" : "IdScope", "name" : "'Execution'" }, - { "kind" : "IdRef", "name" : "'Pipe'" }, - { "kind" : "IdRef", "name" : "'Reserve Id'" }, - { "kind" : "IdRef", "name" : "'Packet Size'" }, - { "kind" : "IdRef", "name" : "'Packet Alignment'" } - ], - "capabilities" : [ "Pipes" ] - }, - { - "opname" : "OpGroupCommitWritePipe", - "class" : "Pipe", - "opcode" : 288, - "operands" : [ - { "kind" : "IdScope", "name" : "'Execution'" }, - { "kind" : "IdRef", "name" : "'Pipe'" }, - { "kind" : "IdRef", "name" : "'Reserve Id'" }, - { "kind" : "IdRef", "name" : "'Packet Size'" }, - { "kind" : "IdRef", "name" : "'Packet Alignment'" } - ], - "capabilities" : [ "Pipes" ] - }, - { - "opname" : "OpEnqueueMarker", - "class" : "Device-Side_Enqueue", - "opcode" : 291, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Queue'" }, - { "kind" : "IdRef", "name" : "'Num Events'" }, - { "kind" : "IdRef", "name" : "'Wait Events'" }, - { "kind" : "IdRef", "name" : "'Ret Event'" } - ], - "capabilities" : [ "DeviceEnqueue" ] - }, - { - "opname" : "OpEnqueueKernel", - "class" : "Device-Side_Enqueue", - "opcode" : 292, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Queue'" }, - { "kind" : "IdRef", "name" : "'Flags'" }, - { "kind" : "IdRef", "name" : "'ND Range'" }, - { "kind" : "IdRef", "name" : "'Num Events'" }, - { "kind" : "IdRef", "name" : "'Wait Events'" }, - { "kind" : "IdRef", "name" : "'Ret Event'" }, - { "kind" : "IdRef", "name" : "'Invoke'" }, - { "kind" : "IdRef", "name" : "'Param'" }, - { "kind" : "IdRef", "name" : "'Param Size'" }, - { "kind" : "IdRef", "name" : "'Param Align'" }, - { "kind" : "IdRef", "quantifier" : "*", "name" : "'Local Size'" } - ], - "capabilities" : [ "DeviceEnqueue" ] - }, - { - "opname" : "OpGetKernelNDrangeSubGroupCount", - "class" : "Device-Side_Enqueue", - "opcode" : 293, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'ND Range'" }, - { "kind" : "IdRef", "name" : "'Invoke'" }, - { "kind" : "IdRef", "name" : "'Param'" }, - { "kind" : "IdRef", "name" : "'Param Size'" }, - { "kind" : "IdRef", "name" : "'Param Align'" } - ], - "capabilities" : [ "DeviceEnqueue" ] - }, - { - "opname" : "OpGetKernelNDrangeMaxSubGroupSize", - "class" : "Device-Side_Enqueue", - "opcode" : 294, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'ND Range'" }, - { "kind" : "IdRef", "name" : "'Invoke'" }, - { "kind" : "IdRef", "name" : "'Param'" }, - { "kind" : "IdRef", "name" : "'Param Size'" }, - { "kind" : "IdRef", "name" : "'Param Align'" } - ], - "capabilities" : [ "DeviceEnqueue" ] - }, - { - "opname" : "OpGetKernelWorkGroupSize", - "class" : "Device-Side_Enqueue", - "opcode" : 295, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Invoke'" }, - { "kind" : "IdRef", "name" : "'Param'" }, - { "kind" : "IdRef", "name" : "'Param Size'" }, - { "kind" : "IdRef", "name" : "'Param Align'" } - ], - "capabilities" : [ "DeviceEnqueue" ] - }, - { - "opname" : "OpGetKernelPreferredWorkGroupSizeMultiple", - "class" : "Device-Side_Enqueue", - "opcode" : 296, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Invoke'" }, - { "kind" : "IdRef", "name" : "'Param'" }, - { "kind" : "IdRef", "name" : "'Param Size'" }, - { "kind" : "IdRef", "name" : "'Param Align'" } - ], - "capabilities" : [ "DeviceEnqueue" ] - }, - { - "opname" : "OpRetainEvent", - "class" : "Device-Side_Enqueue", - "opcode" : 297, - "operands" : [ - { "kind" : "IdRef", "name" : "'Event'" } - ], - "capabilities" : [ "DeviceEnqueue" ] - }, - { - "opname" : "OpReleaseEvent", - "class" : "Device-Side_Enqueue", - "opcode" : 298, - "operands" : [ - { "kind" : "IdRef", "name" : "'Event'" } - ], - "capabilities" : [ "DeviceEnqueue" ] - }, - { - "opname" : "OpCreateUserEvent", - "class" : "Device-Side_Enqueue", - "opcode" : 299, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" } - ], - "capabilities" : [ "DeviceEnqueue" ] - }, - { - "opname" : "OpIsValidEvent", - "class" : "Device-Side_Enqueue", - "opcode" : 300, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Event'" } - ], - "capabilities" : [ "DeviceEnqueue" ] - }, - { - "opname" : "OpSetUserEventStatus", - "class" : "Device-Side_Enqueue", - "opcode" : 301, - "operands" : [ - { "kind" : "IdRef", "name" : "'Event'" }, - { "kind" : "IdRef", "name" : "'Status'" } - ], - "capabilities" : [ "DeviceEnqueue" ] - }, - { - "opname" : "OpCaptureEventProfilingInfo", - "class" : "Device-Side_Enqueue", - "opcode" : 302, - "operands" : [ - { "kind" : "IdRef", "name" : "'Event'" }, - { "kind" : "IdRef", "name" : "'Profiling Info'" }, - { "kind" : "IdRef", "name" : "'Value'" } - ], - "capabilities" : [ "DeviceEnqueue" ] - }, - { - "opname" : "OpGetDefaultQueue", - "class" : "Device-Side_Enqueue", - "opcode" : 303, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" } - ], - "capabilities" : [ "DeviceEnqueue" ] - }, - { - "opname" : "OpBuildNDRange", - "class" : "Device-Side_Enqueue", - "opcode" : 304, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'GlobalWorkSize'" }, - { "kind" : "IdRef", "name" : "'LocalWorkSize'" }, - { "kind" : "IdRef", "name" : "'GlobalWorkOffset'" } - ], - "capabilities" : [ "DeviceEnqueue" ] - }, - { - "opname" : "OpImageSparseSampleImplicitLod", - "class" : "Image", - "opcode" : 305, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Sampled Image'" }, - { "kind" : "IdRef", "name" : "'Coordinate'" }, - { "kind" : "ImageOperands", "quantifier" : "?" } - ], - "capabilities" : [ "SparseResidency" ] - }, - { - "opname" : "OpImageSparseSampleExplicitLod", - "class" : "Image", - "opcode" : 306, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Sampled Image'" }, - { "kind" : "IdRef", "name" : "'Coordinate'" }, - { "kind" : "ImageOperands" } - ], - "capabilities" : [ "SparseResidency" ] - }, - { - "opname" : "OpImageSparseSampleDrefImplicitLod", - "class" : "Image", - "opcode" : 307, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Sampled Image'" }, - { "kind" : "IdRef", "name" : "'Coordinate'" }, - { "kind" : "IdRef", "name" : "'D~ref~'" }, - { "kind" : "ImageOperands", "quantifier" : "?" } - ], - "capabilities" : [ "SparseResidency" ] - }, - { - "opname" : "OpImageSparseSampleDrefExplicitLod", - "class" : "Image", - "opcode" : 308, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Sampled Image'" }, - { "kind" : "IdRef", "name" : "'Coordinate'" }, - { "kind" : "IdRef", "name" : "'D~ref~'" }, - { "kind" : "ImageOperands" } - ], - "capabilities" : [ "SparseResidency" ] - }, - { - "opname" : "OpImageSparseSampleProjImplicitLod", - "class" : "Image", - "opcode" : 309, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Sampled Image'" }, - { "kind" : "IdRef", "name" : "'Coordinate'" }, - { "kind" : "ImageOperands", "quantifier" : "?" } - ], - "capabilities" : [ "SparseResidency" ], - "version" : "None" - }, - { - "opname" : "OpImageSparseSampleProjExplicitLod", - "class" : "Image", - "opcode" : 310, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Sampled Image'" }, - { "kind" : "IdRef", "name" : "'Coordinate'" }, - { "kind" : "ImageOperands" } - ], - "capabilities" : [ "SparseResidency" ], - "version" : "None" - }, - { - "opname" : "OpImageSparseSampleProjDrefImplicitLod", - "class" : "Image", - "opcode" : 311, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Sampled Image'" }, - { "kind" : "IdRef", "name" : "'Coordinate'" }, - { "kind" : "IdRef", "name" : "'D~ref~'" }, - { "kind" : "ImageOperands", "quantifier" : "?" } - ], - "capabilities" : [ "SparseResidency" ], - "version" : "None" - }, - { - "opname" : "OpImageSparseSampleProjDrefExplicitLod", - "class" : "Image", - "opcode" : 312, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Sampled Image'" }, - { "kind" : "IdRef", "name" : "'Coordinate'" }, - { "kind" : "IdRef", "name" : "'D~ref~'" }, - { "kind" : "ImageOperands" } - ], - "capabilities" : [ "SparseResidency" ], - "version" : "None" - }, - { - "opname" : "OpImageSparseFetch", - "class" : "Image", - "opcode" : 313, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Image'" }, - { "kind" : "IdRef", "name" : "'Coordinate'" }, - { "kind" : "ImageOperands", "quantifier" : "?" } - ], - "capabilities" : [ "SparseResidency" ] - }, - { - "opname" : "OpImageSparseGather", - "class" : "Image", - "opcode" : 314, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Sampled Image'" }, - { "kind" : "IdRef", "name" : "'Coordinate'" }, - { "kind" : "IdRef", "name" : "'Component'" }, - { "kind" : "ImageOperands", "quantifier" : "?" } - ], - "capabilities" : [ "SparseResidency" ] - }, - { - "opname" : "OpImageSparseDrefGather", - "class" : "Image", - "opcode" : 315, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Sampled Image'" }, - { "kind" : "IdRef", "name" : "'Coordinate'" }, - { "kind" : "IdRef", "name" : "'D~ref~'" }, - { "kind" : "ImageOperands", "quantifier" : "?" } - ], - "capabilities" : [ "SparseResidency" ] - }, - { - "opname" : "OpImageSparseTexelsResident", - "class" : "Image", - "opcode" : 316, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Resident Code'" } - ], - "capabilities" : [ "SparseResidency" ] - }, - { - "opname" : "OpNoLine", - "class" : "Debug", - "opcode" : 317 - }, - { - "opname" : "OpAtomicFlagTestAndSet", - "class" : "Atomic", - "opcode" : 318, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Pointer'" }, - { "kind" : "IdScope", "name" : "'Memory'" }, - { "kind" : "IdMemorySemantics", "name" : "'Semantics'" } - ], - "capabilities" : [ "Kernel" ] - }, - { - "opname" : "OpAtomicFlagClear", - "class" : "Atomic", - "opcode" : 319, - "operands" : [ - { "kind" : "IdRef", "name" : "'Pointer'" }, - { "kind" : "IdScope", "name" : "'Memory'" }, - { "kind" : "IdMemorySemantics", "name" : "'Semantics'" } - ], - "capabilities" : [ "Kernel" ] - }, - { - "opname" : "OpImageSparseRead", - "class" : "Image", - "opcode" : 320, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Image'" }, - { "kind" : "IdRef", "name" : "'Coordinate'" }, - { "kind" : "ImageOperands", "quantifier" : "?" } - ], - "capabilities" : [ "SparseResidency" ] - }, - { - "opname" : "OpSizeOf", - "class" : "Miscellaneous", - "opcode" : 321, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Pointer'" } - ], - "capabilities" : [ "Addresses" ], - "version" : "1.1" - }, - { - "opname" : "OpTypePipeStorage", - "class" : "Type-Declaration", - "opcode" : 322, - "operands" : [ - { "kind" : "IdResult" } - ], - "capabilities" : [ "PipeStorage" ], - "version" : "1.1" - }, - { - "opname" : "OpConstantPipeStorage", - "class" : "Pipe", - "opcode" : 323, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "LiteralInteger", "name" : "'Packet Size'" }, - { "kind" : "LiteralInteger", "name" : "'Packet Alignment'" }, - { "kind" : "LiteralInteger", "name" : "'Capacity'" } - ], - "capabilities" : [ "PipeStorage" ], - "version" : "1.1" - }, - { - "opname" : "OpCreatePipeFromPipeStorage", - "class" : "Pipe", - "opcode" : 324, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Pipe Storage'" } - ], - "capabilities" : [ "PipeStorage" ], - "version" : "1.1" - }, - { - "opname" : "OpGetKernelLocalSizeForSubgroupCount", - "class" : "Device-Side_Enqueue", - "opcode" : 325, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Subgroup Count'" }, - { "kind" : "IdRef", "name" : "'Invoke'" }, - { "kind" : "IdRef", "name" : "'Param'" }, - { "kind" : "IdRef", "name" : "'Param Size'" }, - { "kind" : "IdRef", "name" : "'Param Align'" } - ], - "capabilities" : [ "SubgroupDispatch" ], - "version" : "1.1" - }, - { - "opname" : "OpGetKernelMaxNumSubgroups", - "class" : "Device-Side_Enqueue", - "opcode" : 326, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Invoke'" }, - { "kind" : "IdRef", "name" : "'Param'" }, - { "kind" : "IdRef", "name" : "'Param Size'" }, - { "kind" : "IdRef", "name" : "'Param Align'" } - ], - "capabilities" : [ "SubgroupDispatch" ], - "version" : "1.1" - }, - { - "opname" : "OpTypeNamedBarrier", - "class" : "Type-Declaration", - "opcode" : 327, - "operands" : [ - { "kind" : "IdResult" } - ], - "capabilities" : [ "NamedBarrier" ], - "version" : "1.1" - }, - { - "opname" : "OpNamedBarrierInitialize", - "class" : "Barrier", - "opcode" : 328, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Subgroup Count'" } - ], - "capabilities" : [ "NamedBarrier" ], - "version" : "1.1" - }, - { - "opname" : "OpMemoryNamedBarrier", - "class" : "Barrier", - "opcode" : 329, - "operands" : [ - { "kind" : "IdRef", "name" : "'Named Barrier'" }, - { "kind" : "IdScope", "name" : "'Memory'" }, - { "kind" : "IdMemorySemantics", "name" : "'Semantics'" } - ], - "capabilities" : [ "NamedBarrier" ], - "version" : "1.1" - }, - { - "opname" : "OpModuleProcessed", - "class" : "Debug", - "opcode" : 330, - "operands" : [ - { "kind" : "LiteralString", "name" : "'Process'" } - ], - "version" : "1.1" - }, - { - "opname" : "OpExecutionModeId", - "class" : "Mode-Setting", - "opcode" : 331, - "operands" : [ - { "kind" : "IdRef", "name" : "'Entry Point'" }, - { "kind" : "ExecutionMode", "name" : "'Mode'" } - ], - "version" : "1.2" - }, - { - "opname" : "OpDecorateId", - "class" : "Annotation", - "opcode" : 332, - "operands" : [ - { "kind" : "IdRef", "name" : "'Target'" }, - { "kind" : "Decoration" } - ], - "extensions" : [ "SPV_GOOGLE_hlsl_functionality1" ], - "version" : "1.2" - }, - { - "opname" : "OpGroupNonUniformElect", - "class" : "Non-Uniform", - "opcode" : 333, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdScope", "name" : "'Execution'" } - ], - "capabilities" : [ "GroupNonUniform" ], - "version" : "1.3" - }, - { - "opname" : "OpGroupNonUniformAll", - "class" : "Non-Uniform", - "opcode" : 334, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdScope", "name" : "'Execution'" }, - { "kind" : "IdRef", "name" : "'Predicate'" } - ], - "capabilities" : [ "GroupNonUniformVote" ], - "version" : "1.3" - }, - { - "opname" : "OpGroupNonUniformAny", - "class" : "Non-Uniform", - "opcode" : 335, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdScope", "name" : "'Execution'" }, - { "kind" : "IdRef", "name" : "'Predicate'" } - ], - "capabilities" : [ "GroupNonUniformVote" ], - "version" : "1.3" - }, - { - "opname" : "OpGroupNonUniformAllEqual", - "class" : "Non-Uniform", - "opcode" : 336, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdScope", "name" : "'Execution'" }, - { "kind" : "IdRef", "name" : "'Value'" } - ], - "capabilities" : [ "GroupNonUniformVote" ], - "version" : "1.3" - }, - { - "opname" : "OpGroupNonUniformBroadcast", - "class" : "Non-Uniform", - "opcode" : 337, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdScope", "name" : "'Execution'" }, - { "kind" : "IdRef", "name" : "'Value'" }, - { "kind" : "IdRef", "name" : "'Id'" } - ], - "capabilities" : [ "GroupNonUniformBallot" ], - "version" : "1.3" - }, - { - "opname" : "OpGroupNonUniformBroadcastFirst", - "class" : "Non-Uniform", - "opcode" : 338, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdScope", "name" : "'Execution'" }, - { "kind" : "IdRef", "name" : "'Value'" } - ], - "capabilities" : [ "GroupNonUniformBallot" ], - "version" : "1.3" - }, - { - "opname" : "OpGroupNonUniformBallot", - "class" : "Non-Uniform", - "opcode" : 339, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdScope", "name" : "'Execution'" }, - { "kind" : "IdRef", "name" : "'Predicate'" } - ], - "capabilities" : [ "GroupNonUniformBallot" ], - "version" : "1.3" - }, - { - "opname" : "OpGroupNonUniformInverseBallot", - "class" : "Non-Uniform", - "opcode" : 340, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdScope", "name" : "'Execution'" }, - { "kind" : "IdRef", "name" : "'Value'" } - ], - "capabilities" : [ "GroupNonUniformBallot" ], - "version" : "1.3" - }, - { - "opname" : "OpGroupNonUniformBallotBitExtract", - "class" : "Non-Uniform", - "opcode" : 341, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdScope", "name" : "'Execution'" }, - { "kind" : "IdRef", "name" : "'Value'" }, - { "kind" : "IdRef", "name" : "'Index'" } - ], - "capabilities" : [ "GroupNonUniformBallot" ], - "version" : "1.3" - }, - { - "opname" : "OpGroupNonUniformBallotBitCount", - "class" : "Non-Uniform", - "opcode" : 342, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdScope", "name" : "'Execution'" }, - { "kind" : "GroupOperation", "name" : "'Operation'" }, - { "kind" : "IdRef", "name" : "'Value'" } - ], - "capabilities" : [ "GroupNonUniformBallot" ], - "version" : "1.3" - }, - { - "opname" : "OpGroupNonUniformBallotFindLSB", - "class" : "Non-Uniform", - "opcode" : 343, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdScope", "name" : "'Execution'" }, - { "kind" : "IdRef", "name" : "'Value'" } - ], - "capabilities" : [ "GroupNonUniformBallot" ], - "version" : "1.3" - }, - { - "opname" : "OpGroupNonUniformBallotFindMSB", - "class" : "Non-Uniform", - "opcode" : 344, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdScope", "name" : "'Execution'" }, - { "kind" : "IdRef", "name" : "'Value'" } - ], - "capabilities" : [ "GroupNonUniformBallot" ], - "version" : "1.3" - }, - { - "opname" : "OpGroupNonUniformShuffle", - "class" : "Non-Uniform", - "opcode" : 345, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdScope", "name" : "'Execution'" }, - { "kind" : "IdRef", "name" : "'Value'" }, - { "kind" : "IdRef", "name" : "'Id'" } - ], - "capabilities" : [ "GroupNonUniformShuffle" ], - "version" : "1.3" - }, - { - "opname" : "OpGroupNonUniformShuffleXor", - "class" : "Non-Uniform", - "opcode" : 346, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdScope", "name" : "'Execution'" }, - { "kind" : "IdRef", "name" : "'Value'" }, - { "kind" : "IdRef", "name" : "'Mask'" } - ], - "capabilities" : [ "GroupNonUniformShuffle" ], - "version" : "1.3" - }, - { - "opname" : "OpGroupNonUniformShuffleUp", - "class" : "Non-Uniform", - "opcode" : 347, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdScope", "name" : "'Execution'" }, - { "kind" : "IdRef", "name" : "'Value'" }, - { "kind" : "IdRef", "name" : "'Delta'" } - ], - "capabilities" : [ "GroupNonUniformShuffleRelative" ], - "version" : "1.3" - }, - { - "opname" : "OpGroupNonUniformShuffleDown", - "class" : "Non-Uniform", - "opcode" : 348, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdScope", "name" : "'Execution'" }, - { "kind" : "IdRef", "name" : "'Value'" }, - { "kind" : "IdRef", "name" : "'Delta'" } - ], - "capabilities" : [ "GroupNonUniformShuffleRelative" ], - "version" : "1.3" - }, - { - "opname" : "OpGroupNonUniformIAdd", - "class" : "Non-Uniform", - "opcode" : 349, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdScope", "name" : "'Execution'" }, - { "kind" : "GroupOperation", "name" : "'Operation'" }, - { "kind" : "IdRef", "name" : "'Value'" }, - { "kind" : "IdRef", "name" : "'ClusterSize'", "quantifier" : "?" } - ], - "capabilities" : [ "GroupNonUniformArithmetic", "GroupNonUniformClustered", "GroupNonUniformPartitionedNV" ], - "version" : "1.3" - }, - { - "opname" : "OpGroupNonUniformFAdd", - "class" : "Non-Uniform", - "opcode" : 350, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdScope", "name" : "'Execution'" }, - { "kind" : "GroupOperation", "name" : "'Operation'" }, - { "kind" : "IdRef", "name" : "'Value'" }, - { "kind" : "IdRef", "name" : "'ClusterSize'", "quantifier" : "?" } - ], - "capabilities" : [ "GroupNonUniformArithmetic", "GroupNonUniformClustered", "GroupNonUniformPartitionedNV" ], - "version" : "1.3" - }, - { - "opname" : "OpGroupNonUniformIMul", - "class" : "Non-Uniform", - "opcode" : 351, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdScope", "name" : "'Execution'" }, - { "kind" : "GroupOperation", "name" : "'Operation'" }, - { "kind" : "IdRef", "name" : "'Value'" }, - { "kind" : "IdRef", "name" : "'ClusterSize'", "quantifier" : "?" } - ], - "capabilities" : [ "GroupNonUniformArithmetic", "GroupNonUniformClustered", "GroupNonUniformPartitionedNV" ], - "version" : "1.3" - }, - { - "opname" : "OpGroupNonUniformFMul", - "class" : "Non-Uniform", - "opcode" : 352, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdScope", "name" : "'Execution'" }, - { "kind" : "GroupOperation", "name" : "'Operation'" }, - { "kind" : "IdRef", "name" : "'Value'" }, - { "kind" : "IdRef", "name" : "'ClusterSize'", "quantifier" : "?" } - ], - "capabilities" : [ "GroupNonUniformArithmetic", "GroupNonUniformClustered", "GroupNonUniformPartitionedNV" ], - "version" : "1.3" - }, - { - "opname" : "OpGroupNonUniformSMin", - "class" : "Non-Uniform", - "opcode" : 353, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdScope", "name" : "'Execution'" }, - { "kind" : "GroupOperation", "name" : "'Operation'" }, - { "kind" : "IdRef", "name" : "'Value'" }, - { "kind" : "IdRef", "name" : "'ClusterSize'", "quantifier" : "?" } - ], - "capabilities" : [ "GroupNonUniformArithmetic", "GroupNonUniformClustered", "GroupNonUniformPartitionedNV" ], - "version" : "1.3" - }, - { - "opname" : "OpGroupNonUniformUMin", - "class" : "Non-Uniform", - "opcode" : 354, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdScope", "name" : "'Execution'" }, - { "kind" : "GroupOperation", "name" : "'Operation'" }, - { "kind" : "IdRef", "name" : "'Value'" }, - { "kind" : "IdRef", "name" : "'ClusterSize'", "quantifier" : "?" } - ], - "capabilities" : [ "GroupNonUniformArithmetic", "GroupNonUniformClustered", "GroupNonUniformPartitionedNV" ], - "version" : "1.3" - }, - { - "opname" : "OpGroupNonUniformFMin", - "class" : "Non-Uniform", - "opcode" : 355, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdScope", "name" : "'Execution'" }, - { "kind" : "GroupOperation", "name" : "'Operation'" }, - { "kind" : "IdRef", "name" : "'Value'" }, - { "kind" : "IdRef", "name" : "'ClusterSize'", "quantifier" : "?" } - ], - "capabilities" : [ "GroupNonUniformArithmetic", "GroupNonUniformClustered", "GroupNonUniformPartitionedNV" ], - "version" : "1.3" - }, - { - "opname" : "OpGroupNonUniformSMax", - "class" : "Non-Uniform", - "opcode" : 356, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdScope", "name" : "'Execution'" }, - { "kind" : "GroupOperation", "name" : "'Operation'" }, - { "kind" : "IdRef", "name" : "'Value'" }, - { "kind" : "IdRef", "name" : "'ClusterSize'", "quantifier" : "?" } - ], - "capabilities" : [ "GroupNonUniformArithmetic", "GroupNonUniformClustered", "GroupNonUniformPartitionedNV" ], - "version" : "1.3" - }, - { - "opname" : "OpGroupNonUniformUMax", - "class" : "Non-Uniform", - "opcode" : 357, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdScope", "name" : "'Execution'" }, - { "kind" : "GroupOperation", "name" : "'Operation'" }, - { "kind" : "IdRef", "name" : "'Value'" }, - { "kind" : "IdRef", "name" : "'ClusterSize'", "quantifier" : "?" } - ], - "capabilities" : [ "GroupNonUniformArithmetic", "GroupNonUniformClustered", "GroupNonUniformPartitionedNV" ], - "version" : "1.3" - }, - { - "opname" : "OpGroupNonUniformFMax", - "class" : "Non-Uniform", - "opcode" : 358, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdScope", "name" : "'Execution'" }, - { "kind" : "GroupOperation", "name" : "'Operation'" }, - { "kind" : "IdRef", "name" : "'Value'" }, - { "kind" : "IdRef", "name" : "'ClusterSize'", "quantifier" : "?" } - ], - "capabilities" : [ "GroupNonUniformArithmetic", "GroupNonUniformClustered", "GroupNonUniformPartitionedNV" ], - "version" : "1.3" - }, - { - "opname" : "OpGroupNonUniformBitwiseAnd", - "class" : "Non-Uniform", - "opcode" : 359, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdScope", "name" : "'Execution'" }, - { "kind" : "GroupOperation", "name" : "'Operation'" }, - { "kind" : "IdRef", "name" : "'Value'" }, - { "kind" : "IdRef", "name" : "'ClusterSize'", "quantifier" : "?" } - ], - "capabilities" : [ "GroupNonUniformArithmetic", "GroupNonUniformClustered", "GroupNonUniformPartitionedNV" ], - "version" : "1.3" - }, - { - "opname" : "OpGroupNonUniformBitwiseOr", - "class" : "Non-Uniform", - "opcode" : 360, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdScope", "name" : "'Execution'" }, - { "kind" : "GroupOperation", "name" : "'Operation'" }, - { "kind" : "IdRef", "name" : "'Value'" }, - { "kind" : "IdRef", "name" : "'ClusterSize'", "quantifier" : "?" } - ], - "capabilities" : [ "GroupNonUniformArithmetic", "GroupNonUniformClustered", "GroupNonUniformPartitionedNV" ], - "version" : "1.3" - }, - { - "opname" : "OpGroupNonUniformBitwiseXor", - "class" : "Non-Uniform", - "opcode" : 361, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdScope", "name" : "'Execution'" }, - { "kind" : "GroupOperation", "name" : "'Operation'" }, - { "kind" : "IdRef", "name" : "'Value'" }, - { "kind" : "IdRef", "name" : "'ClusterSize'", "quantifier" : "?" } - ], - "capabilities" : [ "GroupNonUniformArithmetic", "GroupNonUniformClustered", "GroupNonUniformPartitionedNV" ], - "version" : "1.3" - }, - { - "opname" : "OpGroupNonUniformLogicalAnd", - "class" : "Non-Uniform", - "opcode" : 362, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdScope", "name" : "'Execution'" }, - { "kind" : "GroupOperation", "name" : "'Operation'" }, - { "kind" : "IdRef", "name" : "'Value'" }, - { "kind" : "IdRef", "name" : "'ClusterSize'", "quantifier" : "?" } - ], - "capabilities" : [ "GroupNonUniformArithmetic", "GroupNonUniformClustered", "GroupNonUniformPartitionedNV" ], - "version" : "1.3" - }, - { - "opname" : "OpGroupNonUniformLogicalOr", - "class" : "Non-Uniform", - "opcode" : 363, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdScope", "name" : "'Execution'" }, - { "kind" : "GroupOperation", "name" : "'Operation'" }, - { "kind" : "IdRef", "name" : "'Value'" }, - { "kind" : "IdRef", "name" : "'ClusterSize'", "quantifier" : "?" } - ], - "capabilities" : [ "GroupNonUniformArithmetic", "GroupNonUniformClustered", "GroupNonUniformPartitionedNV" ], - "version" : "1.3" - }, - { - "opname" : "OpGroupNonUniformLogicalXor", - "class" : "Non-Uniform", - "opcode" : 364, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdScope", "name" : "'Execution'" }, - { "kind" : "GroupOperation", "name" : "'Operation'" }, - { "kind" : "IdRef", "name" : "'Value'" }, - { "kind" : "IdRef", "name" : "'ClusterSize'", "quantifier" : "?" } - ], - "capabilities" : [ "GroupNonUniformArithmetic", "GroupNonUniformClustered", "GroupNonUniformPartitionedNV" ], - "version" : "1.3" - }, - { - "opname" : "OpGroupNonUniformQuadBroadcast", - "class" : "Non-Uniform", - "opcode" : 365, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdScope", "name" : "'Execution'" }, - { "kind" : "IdRef", "name" : "'Value'" }, - { "kind" : "IdRef", "name" : "'Index'" } - ], - "capabilities" : [ "GroupNonUniformQuad" ], - "version" : "1.3" - }, - { - "opname" : "OpGroupNonUniformQuadSwap", - "class" : "Non-Uniform", - "opcode" : 366, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdScope", "name" : "'Execution'" }, - { "kind" : "IdRef", "name" : "'Value'" }, - { "kind" : "IdRef", "name" : "'Direction'" } - ], - "capabilities" : [ "GroupNonUniformQuad" ], - "version" : "1.3" - }, - { - "opname" : "OpCopyLogical", - "class" : "Composite", - "opcode" : 400, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Operand'" } - ], - "version" : "1.4" - }, - { - "opname" : "OpPtrEqual", - "class" : "Memory", - "opcode" : 401, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Operand 1'" }, - { "kind" : "IdRef", "name" : "'Operand 2'" } - ], - "version" : "1.4" - }, - { - "opname" : "OpPtrNotEqual", - "class" : "Memory", - "opcode" : 402, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Operand 1'" }, - { "kind" : "IdRef", "name" : "'Operand 2'" } - ], - "version" : "1.4" - }, - { - "opname" : "OpPtrDiff", - "class" : "Memory", - "opcode" : 403, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Operand 1'" }, - { "kind" : "IdRef", "name" : "'Operand 2'" } - ], - "capabilities" : [ "Addresses", "VariablePointers", "VariablePointersStorageBuffer" ], - "version" : "1.4" - }, - { - "opname" : "OpColorAttachmentReadEXT", - "class" : "Image", - "opcode" : 4160, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Attachment'" }, - { "kind" : "IdRef", "name" : "'Sample'", "quantifier" : "?" } - ], - "capabilities": [ "TileImageColorReadAccessEXT" ], - "version" : "None" - }, - { - "opname" : "OpDepthAttachmentReadEXT", - "class" : "Image", - "opcode" : 4161, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Sample'", "quantifier" : "?" } - ], - "capabilities" : [ "TileImageDepthReadAccessEXT" ], - "version" : "None" - }, - { - "opname" : "OpStencilAttachmentReadEXT", - "class" : "Image", - "opcode" : 4162, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Sample'", "quantifier" : "?" } - ], - "capabilities" : [ "TileImageStencilReadAccessEXT" ], - "version" : "None" - }, - { - "opname" : "OpTerminateInvocation", - "class" : "Control-Flow", - "opcode" : 4416, - "extensions" : [ - "SPV_KHR_terminate_invocation" - ], - "capabilities" : [ "Shader" ], - "version" : "1.6" - }, - { - "opname" : "OpSubgroupBallotKHR", - "class" : "Group", - "opcode" : 4421, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Predicate'" } - ], - "capabilities" : [ "SubgroupBallotKHR" ], - "extensions" : [ "SPV_KHR_shader_ballot" ], - "version" : "None" - }, - { - "opname" : "OpSubgroupFirstInvocationKHR", - "class" : "Group", - "opcode" : 4422, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Value'" } - ], - "capabilities" : [ "SubgroupBallotKHR" ], - "extensions" : [ "SPV_KHR_shader_ballot" ], - "version" : "None" - }, - { - "opname" : "OpSubgroupAllKHR", - "class" : "Group", - "opcode" : 4428, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Predicate'" } - ], - "extensions" : [ - "SPV_KHR_subgroup_vote" - ], - "capabilities" : [ "SubgroupVoteKHR" ], - "version" : "None" - }, - { - "opname" : "OpSubgroupAnyKHR", - "class" : "Group", - "opcode" : 4429, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Predicate'" } - ], - "extensions" : [ - "SPV_KHR_subgroup_vote" - ], - "capabilities" : [ "SubgroupVoteKHR" ], - "version" : "None" - }, - { - "opname" : "OpSubgroupAllEqualKHR", - "class" : "Group", - "opcode" : 4430, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Predicate'" } - ], - "extensions" : [ - "SPV_KHR_subgroup_vote" - ], - "capabilities" : [ "SubgroupVoteKHR" ], - "version" : "None" - }, - { - "opname" : "OpGroupNonUniformRotateKHR", - "class" : "Group", - "opcode" : 4431, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdScope", "name" : "'Execution'" }, - { "kind" : "IdRef", "name" : "'Value'" }, - { "kind" : "IdRef", "name" : "'Delta'" }, - { "kind" : "IdRef", "name" : "'ClusterSize'", "quantifier" : "?" } - ], - "capabilities" : [ "GroupNonUniformRotateKHR" ], - "version" : "None" - }, - { - "opname" : "OpSubgroupReadInvocationKHR", - "class" : "Group", - "opcode" : 4432, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Value'" }, - { "kind" : "IdRef", "name" : "'Index'" } - ], - "capabilities" : [ "SubgroupBallotKHR" ], - "extensions" : [ "SPV_KHR_shader_ballot" ], - "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" : "OpSDot", - "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" : [ "DotProduct" ], - "version" : "1.6" - }, - { - "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" ], - "extensions" : [ "SPV_KHR_integer_dot_product" ], - "version" : "1.6" - }, - { - "opname" : "OpUDot", - "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" : [ "DotProduct" ], - "version" : "1.6" - }, - { - "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" ], - "extensions" : [ "SPV_KHR_integer_dot_product" ], - "version" : "1.6" - }, - { - "opname" : "OpSUDot", - "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" : [ "DotProduct" ], - "version" : "1.6" - }, - { - "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" ], - "extensions" : [ "SPV_KHR_integer_dot_product" ], - "version" : "1.6" - }, - { - "opname" : "OpSDotAccSat", - "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" : [ "DotProduct" ], - "version" : "1.6" - }, - { - "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" ], - "extensions" : [ "SPV_KHR_integer_dot_product" ], - "version" : "1.6" - }, - { - "opname" : "OpUDotAccSat", - "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" : [ "DotProduct" ], - "version" : "1.6" - }, - { - "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" ], - "extensions" : [ "SPV_KHR_integer_dot_product" ], - "version" : "1.6" - }, - { - "opname" : "OpSUDotAccSat", - "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" : [ "DotProduct" ], - "version" : "1.6" - }, - { - "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" ], - "extensions" : [ "SPV_KHR_integer_dot_product" ], - "version" : "1.6" - }, - { - "opname" : "OpTypeCooperativeMatrixKHR", - "class" : "Type-Declaration", - "opcode" : 4456, - "operands" : [ - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Component Type'" }, - { "kind" : "IdScope", "name" : "'Scope'" }, - { "kind" : "IdRef", "name" : "'Rows'" }, - { "kind" : "IdRef", "name" : "'Columns'" }, - { "kind" : "IdRef", "name" : "'Use'" } - ], - "capabilities" : [ "CooperativeMatrixKHR" ], - "version" : "None" - }, - { - "opname" : "OpCooperativeMatrixLoadKHR", - "class" : "Memory", - "opcode" : 4457, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Pointer'" }, - { "kind" : "IdRef", "name" : "'MemoryLayout'" }, - { "kind" : "IdRef", "name" : "'Stride'", "quantifier": "?" }, - { "kind" : "MemoryAccess", "name" : "'Memory Operand'", "quantifier" : "?" } - ], - "capabilities" : [ "CooperativeMatrixKHR" ], - "version" : "None" - }, - { - "opname" : "OpCooperativeMatrixStoreKHR", - "class" : "Memory", - "opcode" : 4458, - "operands" : [ - { "kind" : "IdRef", "name" : "'Pointer'" }, - { "kind" : "IdRef", "name" : "'Object'" }, - { "kind" : "IdRef", "name" : "'MemoryLayout'" }, - { "kind" : "IdRef", "name" : "'Stride'", "quantifier": "?" }, - { "kind" : "MemoryAccess", "name" : "'Memory Operand'", "quantifier" : "?" } - ], - "capabilities" : [ "CooperativeMatrixKHR" ], - "version" : "None" - }, - { - "opname" : "OpCooperativeMatrixMulAddKHR", - "class" : "Arithmetic", - "opcode" : 4459, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'A'" }, - { "kind" : "IdRef", "name" : "'B'" }, - { "kind" : "IdRef", "name" : "'C'" }, - { "kind" : "CooperativeMatrixOperands", "name" : "'Cooperative Matrix Operands'", "quantifier" : "?" } - ], - "capabilities" : [ "CooperativeMatrixKHR" ], - "version" : "None" - }, - { - "opname" : "OpCooperativeMatrixLengthKHR", - "class" : "Miscellaneous", - "opcode" : 4460, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Type'" } - ], - "capabilities" : [ "CooperativeMatrixKHR" ], - "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" : "OpImageSampleWeightedQCOM", - "class" : "Image", - "opcode" : 4480, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Texture'" }, - { "kind" : "IdRef", "name" : "'Coordinates'" }, - { "kind" : "IdRef", "name" : "'Weights'" } - ], - "capabilities" : [ "TextureSampleWeightedQCOM" ], - "version" : "None" - }, - { - "opname" : "OpImageBoxFilterQCOM", - "class" : "Image", - "opcode" : 4481, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Texture'" }, - { "kind" : "IdRef", "name" : "'Coordinates'" }, - { "kind" : "IdRef", "name" : "'Box Size'" } - ], - "capabilities" : [ "TextureBoxFilterQCOM" ], - "version" : "None" - }, - { - "opname" : "OpImageBlockMatchSSDQCOM", - "class" : "Image", - "opcode" : 4482, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Target'" }, - { "kind" : "IdRef", "name" : "'Target Coordinates'" }, - { "kind" : "IdRef", "name" : "'Reference'" }, - { "kind" : "IdRef", "name" : "'Reference Coordinates'" }, - { "kind" : "IdRef", "name" : "'Block Size'" } - ], - "capabilities" : [ "TextureBlockMatchQCOM" ], - "version" : "None" - }, - { - "opname" : "OpImageBlockMatchSADQCOM", - "class" : "Image", - "opcode" : 4483, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Target'" }, - { "kind" : "IdRef", "name" : "'Target Coordinates'" }, - { "kind" : "IdRef", "name" : "'Reference'" }, - { "kind" : "IdRef", "name" : "'Reference Coordinates'" }, - { "kind" : "IdRef", "name" : "'Block Size'" } - ], - "capabilities" : [ "TextureBlockMatchQCOM" ], - "version" : "None" - }, - { - "opname" : "OpGroupIAddNonUniformAMD", - "class" : "Group", - "opcode" : 5000, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdScope", "name" : "'Execution'" }, - { "kind" : "GroupOperation", "name" : "'Operation'" }, - { "kind" : "IdRef", "name" : "'X'" } - ], - "capabilities" : [ "Groups" ], - "extensions" : [ "SPV_AMD_shader_ballot" ], - "version" : "None" - }, - { - "opname" : "OpGroupFAddNonUniformAMD", - "class" : "Group", - "opcode" : 5001, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdScope", "name" : "'Execution'" }, - { "kind" : "GroupOperation", "name" : "'Operation'" }, - { "kind" : "IdRef", "name" : "'X'" } - ], - "capabilities" : [ "Groups" ], - "extensions" : [ "SPV_AMD_shader_ballot" ], - "version" : "None" - }, - { - "opname" : "OpGroupFMinNonUniformAMD", - "class" : "Group", - "opcode" : 5002, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdScope", "name" : "'Execution'" }, - { "kind" : "GroupOperation", "name" : "'Operation'" }, - { "kind" : "IdRef", "name" : "'X'" } - ], - "capabilities" : [ "Groups" ], - "extensions" : [ "SPV_AMD_shader_ballot" ], - "version" : "None" - }, - { - "opname" : "OpGroupUMinNonUniformAMD", - "class" : "Group", - "opcode" : 5003, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdScope", "name" : "'Execution'" }, - { "kind" : "GroupOperation", "name" : "'Operation'" }, - { "kind" : "IdRef", "name" : "'X'" } - ], - "capabilities" : [ "Groups" ], - "extensions" : [ "SPV_AMD_shader_ballot" ], - "version" : "None" - }, - { - "opname" : "OpGroupSMinNonUniformAMD", - "class" : "Group", - "opcode" : 5004, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdScope", "name" : "'Execution'" }, - { "kind" : "GroupOperation", "name" : "'Operation'" }, - { "kind" : "IdRef", "name" : "'X'" } - ], - "capabilities" : [ "Groups" ], - "extensions" : [ "SPV_AMD_shader_ballot" ], - "version" : "None" - }, - { - "opname" : "OpGroupFMaxNonUniformAMD", - "class" : "Group", - "opcode" : 5005, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdScope", "name" : "'Execution'" }, - { "kind" : "GroupOperation", "name" : "'Operation'" }, - { "kind" : "IdRef", "name" : "'X'" } - ], - "capabilities" : [ "Groups" ], - "extensions" : [ "SPV_AMD_shader_ballot" ], - "version" : "None" - }, - { - "opname" : "OpGroupUMaxNonUniformAMD", - "class" : "Group", - "opcode" : 5006, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdScope", "name" : "'Execution'" }, - { "kind" : "GroupOperation", "name" : "'Operation'" }, - { "kind" : "IdRef", "name" : "'X'" } - ], - "capabilities" : [ "Groups" ], - "extensions" : [ "SPV_AMD_shader_ballot" ], - "version" : "None" - }, - { - "opname" : "OpGroupSMaxNonUniformAMD", - "class" : "Group", - "opcode" : 5007, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdScope", "name" : "'Execution'" }, - { "kind" : "GroupOperation", "name" : "'Operation'" }, - { "kind" : "IdRef", "name" : "'X'" } - ], - "capabilities" : [ "Groups" ], - "extensions" : [ "SPV_AMD_shader_ballot" ], - "version" : "None" - }, - { - "opname" : "OpFragmentMaskFetchAMD", - "class" : "Reserved", - "opcode" : 5011, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Image'" }, - { "kind" : "IdRef", "name" : "'Coordinate'" } - ], - "capabilities" : [ "FragmentMaskAMD" ], - "extensions" : [ "SPV_AMD_shader_fragment_mask" ], - "version" : "None" - }, - { - "opname" : "OpFragmentFetchAMD", - "class" : "Reserved", - "opcode" : 5012, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Image'" }, - { "kind" : "IdRef", "name" : "'Coordinate'" }, - { "kind" : "IdRef", "name" : "'Fragment Index'" } - ], - "capabilities" : [ "FragmentMaskAMD" ], - "extensions" : [ "SPV_AMD_shader_fragment_mask" ], - "version" : "None" - }, - { - "opname" : "OpReadClockKHR", - "class" : "Reserved", - "opcode" : 5056, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdScope", "name" : "'Scope'" } - ], - "capabilities" : [ "ShaderClockKHR" ], - "version" : "None" - }, - { - "opname" : "OpHitObjectRecordHitMotionNV", - "class" : "Reserved", - "opcode" : 5249, - "operands" : [ - { "kind" : "IdRef", "name" : "'Hit Object'" }, - { "kind" : "IdRef", "name" : "'Acceleration Structure'" }, - { "kind" : "IdRef", "name" : "'InstanceId'" }, - { "kind" : "IdRef", "name" : "'PrimitiveId'" }, - { "kind" : "IdRef", "name" : "'GeometryIndex'" }, - { "kind" : "IdRef", "name" : "'Hit Kind'" }, - { "kind" : "IdRef", "name" : "'SBT Record Offset'" }, - { "kind" : "IdRef", "name" : "'SBT Record Stride'" }, - { "kind" : "IdRef", "name" : "'Origin'" }, - { "kind" : "IdRef", "name" : "'TMin'" }, - { "kind" : "IdRef", "name" : "'Direction'" }, - { "kind" : "IdRef", "name" : "'TMax'" }, - { "kind" : "IdRef", "name" : "'Current Time'" }, - { "kind" : "IdRef", "name" : "'HitObject Attributes'" } - ], - "capabilities" : [ "ShaderInvocationReorderNV", "RayTracingMotionBlurNV" ], - "version" : "None" - }, - { - "opname" : "OpHitObjectRecordHitWithIndexMotionNV", - "class" : "Reserved", - "opcode" : 5250, - "operands" : [ - { "kind" : "IdRef", "name" : "'Hit Object'" }, - { "kind" : "IdRef", "name" : "'Acceleration Structure'" }, - { "kind" : "IdRef", "name" : "'InstanceId'" }, - { "kind" : "IdRef", "name" : "'PrimitiveId'" }, - { "kind" : "IdRef", "name" : "'GeometryIndex'" }, - { "kind" : "IdRef", "name" : "'Hit Kind'" }, - { "kind" : "IdRef", "name" : "'SBT Record Index'" }, - { "kind" : "IdRef", "name" : "'Origin'" }, - { "kind" : "IdRef", "name" : "'TMin'" }, - { "kind" : "IdRef", "name" : "'Direction'" }, - { "kind" : "IdRef", "name" : "'TMax'" }, - { "kind" : "IdRef", "name" : "'Current Time'" }, - { "kind" : "IdRef", "name" : "'HitObject Attributes'" } - ], - "capabilities" : [ "ShaderInvocationReorderNV", "RayTracingMotionBlurNV" ], - "version" : "None" - }, - { - "opname" : "OpHitObjectRecordMissMotionNV", - "class" : "Reserved", - "opcode" : 5251, - "operands" : [ - { "kind" : "IdRef", "name" : "'Hit Object'" }, - { "kind" : "IdRef", "name" : "'SBT Index'" }, - { "kind" : "IdRef", "name" : "'Origin'" }, - { "kind" : "IdRef", "name" : "'TMin'" }, - { "kind" : "IdRef", "name" : "'Direction'" }, - { "kind" : "IdRef", "name" : "'TMax'" }, - { "kind" : "IdRef", "name" : "'Current Time'" } - ], - "capabilities" : [ "ShaderInvocationReorderNV", "RayTracingMotionBlurNV" ], - "version" : "None" - }, - { - "opname" : "OpHitObjectGetWorldToObjectNV", - "class" : "Reserved", - "opcode" : 5252, - "operands" : [ - { "kind" : "IdResultType"}, - { "kind" : "IdResult"}, - { "kind" : "IdRef", "name" : "'Hit Object'" } - ], - "capabilities" : [ "ShaderInvocationReorderNV" ], - "version" : "None" - }, - { - "opname" : "OpHitObjectGetObjectToWorldNV", - "class" : "Reserved", - "opcode" : 5253, - "operands" : [ - { "kind" : "IdResultType"}, - { "kind" : "IdResult"}, - { "kind" : "IdRef", "name" : "'Hit Object'" } - ], - "capabilities" : [ "ShaderInvocationReorderNV" ], - "version" : "None" - }, - { - "opname" : "OpHitObjectGetObjectRayDirectionNV", - "class" : "Reserved", - "opcode" : 5254, - "operands" : [ - { "kind" : "IdResultType"}, - { "kind" : "IdResult"}, - { "kind" : "IdRef", "name" : "'Hit Object'" } - ], - "capabilities" : [ "ShaderInvocationReorderNV" ], - "version" : "None" - }, - { - "opname" : "OpHitObjectGetObjectRayOriginNV", - "class" : "Reserved", - "opcode" : 5255, - "operands" : [ - { "kind" : "IdResultType"}, - { "kind" : "IdResult"}, - { "kind" : "IdRef", "name" : "'Hit Object'" } - ], - "capabilities" : [ "ShaderInvocationReorderNV" ], - "version" : "None" - }, - { - "opname" : "OpHitObjectTraceRayMotionNV", - "class" : "Reserved", - "opcode" : 5256, - "operands" : [ - { "kind" : "IdRef", "name" : "'Hit Object'" }, - { "kind" : "IdRef", "name" : "'Acceleration Structure'"}, - { "kind" : "IdRef", "name" : "'RayFlags'"}, - { "kind" : "IdRef", "name" : "'Cullmask'"}, - { "kind" : "IdRef", "name" : "'SBT Record Offset'"}, - { "kind" : "IdRef", "name" : "'SBT Record Stride'"}, - { "kind" : "IdRef", "name" : "'Miss Index'"}, - { "kind" : "IdRef", "name" : "'Origin'"}, - { "kind" : "IdRef", "name" : "'TMin'"}, - { "kind" : "IdRef", "name" : "'Direction'"}, - { "kind" : "IdRef", "name" : "'TMax'"}, - { "kind" : "IdRef", "name" : "'Time'"}, - { "kind" : "IdRef", "name" : "'Payload'"} - ], - "capabilities" : [ "ShaderInvocationReorderNV", "RayTracingMotionBlurNV" ], - "version" : "None" - }, - { - "opname" : "OpHitObjectGetShaderRecordBufferHandleNV", - "class" : "Reserved", - "opcode" : 5257, - "operands" : [ - { "kind" : "IdResultType"}, - { "kind" : "IdResult"}, - { "kind" : "IdRef", "name" : "'Hit Object'" } - ], - "capabilities" : [ "ShaderInvocationReorderNV" ], - "version" : "None" - }, - { - "opname" : "OpHitObjectGetShaderBindingTableRecordIndexNV", - "class" : "Reserved", - "opcode" : 5258, - "operands" : [ - { "kind" : "IdResultType"}, - { "kind" : "IdResult"}, - { "kind" : "IdRef", "name" : "'Hit Object'" } - ], - "capabilities" : [ "ShaderInvocationReorderNV" ], - "version" : "None" - }, - { - "opname" : "OpHitObjectRecordEmptyNV", - "class" : "Reserved", - "opcode" : 5259, - "operands" : [ - { "kind" : "IdRef", "name" : "'Hit Object'" } - ], - "capabilities" : [ "ShaderInvocationReorderNV" ], - "version" : "None" - }, - { - "opname" : "OpHitObjectTraceRayNV", - "class" : "Reserved", - "opcode" : 5260, - "operands" : [ - { "kind" : "IdRef", "name" : "'Hit Object'" }, - { "kind" : "IdRef", "name" : "'Acceleration Structure'"}, - { "kind" : "IdRef", "name" : "'RayFlags'"}, - { "kind" : "IdRef", "name" : "'Cullmask'"}, - { "kind" : "IdRef", "name" : "'SBT Record Offset'"}, - { "kind" : "IdRef", "name" : "'SBT Record Stride'"}, - { "kind" : "IdRef", "name" : "'Miss Index'"}, - { "kind" : "IdRef", "name" : "'Origin'"}, - { "kind" : "IdRef", "name" : "'TMin'"}, - { "kind" : "IdRef", "name" : "'Direction'"}, - { "kind" : "IdRef", "name" : "'TMax'"}, - { "kind" : "IdRef", "name" : "'Payload'"} - ], - "capabilities" : [ "ShaderInvocationReorderNV" ], - "version" : "None" - }, - { - "opname" : "OpHitObjectRecordHitNV", - "class" : "Reserved", - "opcode" : 5261, - "operands" : [ - { "kind" : "IdRef", "name" : "'Hit Object'" }, - { "kind" : "IdRef", "name" : "'Acceleration Structure'" }, - { "kind" : "IdRef", "name" : "'InstanceId'" }, - { "kind" : "IdRef", "name" : "'PrimitiveId'" }, - { "kind" : "IdRef", "name" : "'GeometryIndex'" }, - { "kind" : "IdRef", "name" : "'Hit Kind'" }, - { "kind" : "IdRef", "name" : "'SBT Record Offset'" }, - { "kind" : "IdRef", "name" : "'SBT Record Stride'" }, - { "kind" : "IdRef", "name" : "'Origin'" }, - { "kind" : "IdRef", "name" : "'TMin'" }, - { "kind" : "IdRef", "name" : "'Direction'" }, - { "kind" : "IdRef", "name" : "'TMax'" }, - { "kind" : "IdRef", "name" : "'HitObject Attributes'" } - ], - "capabilities" : [ "ShaderInvocationReorderNV" ], - "version" : "None" - }, - { - "opname" : "OpHitObjectRecordHitWithIndexNV", - "class" : "Reserved", - "opcode" : 5262, - "operands" : [ - { "kind" : "IdRef", "name" : "'Hit Object'" }, - { "kind" : "IdRef", "name" : "'Acceleration Structure'" }, - { "kind" : "IdRef", "name" : "'InstanceId'" }, - { "kind" : "IdRef", "name" : "'PrimitiveId'" }, - { "kind" : "IdRef", "name" : "'GeometryIndex'" }, - { "kind" : "IdRef", "name" : "'Hit Kind'" }, - { "kind" : "IdRef", "name" : "'SBT Record Index'" }, - { "kind" : "IdRef", "name" : "'Origin'" }, - { "kind" : "IdRef", "name" : "'TMin'" }, - { "kind" : "IdRef", "name" : "'Direction'" }, - { "kind" : "IdRef", "name" : "'TMax'" }, - { "kind" : "IdRef", "name" : "'HitObject Attributes'" } - ], - "capabilities" : [ "ShaderInvocationReorderNV" ], - "version" : "None" - }, - { - "opname" : "OpHitObjectRecordMissNV", - "class" : "Reserved", - "opcode" : 5263, - "operands" : [ - { "kind" : "IdRef", "name" : "'Hit Object'" }, - { "kind" : "IdRef", "name" : "'SBT Index'" }, - { "kind" : "IdRef", "name" : "'Origin'" }, - { "kind" : "IdRef", "name" : "'TMin'" }, - { "kind" : "IdRef", "name" : "'Direction'" }, - { "kind" : "IdRef", "name" : "'TMax'" } - ], - "capabilities" : [ "ShaderInvocationReorderNV" ], - "version" : "None" - }, - { - "opname" : "OpHitObjectExecuteShaderNV", - "class" : "Reserved", - "opcode" : 5264, - "operands" : [ - { "kind" : "IdRef", "name" : "'Hit Object'" }, - { "kind" : "IdRef", "name" : "'Payload'" } - ], - "capabilities" : [ "ShaderInvocationReorderNV" ], - "version" : "None" - }, - { - "opname" : "OpHitObjectGetCurrentTimeNV", - "class" : "Reserved", - "opcode" : 5265, - "operands" : [ - { "kind" : "IdResultType"}, - { "kind" : "IdResult"}, - { "kind" : "IdRef", "name" : "'Hit Object'" } - ], - "capabilities" : [ "ShaderInvocationReorderNV" ], - "version" : "None" - }, - { - "opname" : "OpHitObjectGetAttributesNV", - "class" : "Reserved", - "opcode" : 5266, - "operands" : [ - { "kind" : "IdRef", "name" : "'Hit Object'" }, - { "kind" : "IdRef", "name" : "'Hit Object Attribute'" } - ], - "capabilities" : [ "ShaderInvocationReorderNV" ], - "version" : "None" - }, - { - "opname" : "OpHitObjectGetHitKindNV", - "class" : "Reserved", - "opcode" : 5267, - "operands" : [ - { "kind" : "IdResultType"}, - { "kind" : "IdResult"}, - { "kind" : "IdRef", "name" : "'Hit Object'" } - ], - "capabilities" : [ "ShaderInvocationReorderNV" ], - "version" : "None" - }, - { - "opname" : "OpHitObjectGetPrimitiveIndexNV", - "class" : "Reserved", - "opcode" : 5268, - "operands" : [ - { "kind" : "IdResultType"}, - { "kind" : "IdResult"}, - { "kind" : "IdRef", "name" : "'Hit Object'" } - ], - "capabilities" : [ "ShaderInvocationReorderNV" ], - "version" : "None" - }, - { - "opname" : "OpHitObjectGetGeometryIndexNV", - "class" : "Reserved", - "opcode" : 5269, - "operands" : [ - { "kind" : "IdResultType"}, - { "kind" : "IdResult"}, - { "kind" : "IdRef", "name" : "'Hit Object'" } - ], - "capabilities" : [ "ShaderInvocationReorderNV" ], - "version" : "None" - }, - { - "opname" : "OpHitObjectGetInstanceIdNV", - "class" : "Reserved", - "opcode" : 5270, - "operands" : [ - { "kind" : "IdResultType"}, - { "kind" : "IdResult"}, - { "kind" : "IdRef", "name" : "'Hit Object'" } - ], - "capabilities" : [ "ShaderInvocationReorderNV" ], - "version" : "None" - }, - { - "opname" : "OpHitObjectGetInstanceCustomIndexNV", - "class" : "Reserved", - "opcode" : 5271, - "operands" : [ - { "kind" : "IdResultType"}, - { "kind" : "IdResult"}, - { "kind" : "IdRef", "name" : "'Hit Object'" } - ], - "capabilities" : [ "ShaderInvocationReorderNV" ], - "version" : "None" - }, - { - "opname" : "OpHitObjectGetWorldRayDirectionNV", - "class" : "Reserved", - "opcode" : 5272, - "operands" : [ - { "kind" : "IdResultType"}, - { "kind" : "IdResult"}, - { "kind" : "IdRef", "name" : "'Hit Object'" } - ], - "capabilities" : [ "ShaderInvocationReorderNV" ], - "version" : "None" - }, - { - "opname" : "OpHitObjectGetWorldRayOriginNV", - "class" : "Reserved", - "opcode" : 5273, - "operands" : [ - { "kind" : "IdResultType"}, - { "kind" : "IdResult"}, - { "kind" : "IdRef", "name" : "'Hit Object'" } - ], - "capabilities" : [ "ShaderInvocationReorderNV" ], - "version" : "None" - }, - { - "opname" : "OpHitObjectGetRayTMaxNV", - "class" : "Reserved", - "opcode" : 5274, - "operands" : [ - { "kind" : "IdResultType"}, - { "kind" : "IdResult"}, - { "kind" : "IdRef", "name" : "'Hit Object'" } - ], - "capabilities" : [ "ShaderInvocationReorderNV" ], - "version" : "None" - }, - { - "opname" : "OpHitObjectGetRayTMinNV", - "class" : "Reserved", - "opcode" : 5275, - "operands" : [ - { "kind" : "IdResultType"}, - { "kind" : "IdResult"}, - { "kind" : "IdRef", "name" : "'Hit Object'" } - ], - "capabilities" : [ "ShaderInvocationReorderNV" ], - "version" : "None" - }, - { - "opname" : "OpHitObjectIsEmptyNV", - "class" : "Reserved", - "opcode" : 5276, - "operands" : [ - { "kind" : "IdResultType"}, - { "kind" : "IdResult"}, - { "kind" : "IdRef", "name" : "'Hit Object'" } - ], - "capabilities" : [ "ShaderInvocationReorderNV" ], - "version" : "None" - }, - { - "opname" : "OpHitObjectIsHitNV", - "class" : "Reserved", - "opcode" : 5277, - "operands" : [ - { "kind" : "IdResultType"}, - { "kind" : "IdResult"}, - { "kind" : "IdRef", "name" : "'Hit Object'" } - ], - "capabilities" : [ "ShaderInvocationReorderNV" ], - "version" : "None" - }, - { - "opname" : "OpHitObjectIsMissNV", - "class" : "Reserved", - "opcode" : 5278, - "operands" : [ - { "kind" : "IdResultType"}, - { "kind" : "IdResult"}, - { "kind" : "IdRef", "name" : "'Hit Object'" } - ], - "capabilities" : [ "ShaderInvocationReorderNV" ], - "version" : "None" - }, - { - "opname" : "OpReorderThreadWithHitObjectNV", - "class" : "Reserved", - "opcode" : 5279, - "operands" : [ - { "kind" : "IdRef", "name" : "'Hit Object'" }, - { "kind" : "IdRef", "quantifier" : "?", "name" : "'Hint'" }, - { "kind" : "IdRef", "quantifier" : "?", "name" : "'Bits'" } - ], - "capabilities" : [ "ShaderInvocationReorderNV" ], - "version" : "None" - }, - { - "opname" : "OpReorderThreadWithHintNV", - "class" : "Reserved", - "opcode" : 5280, - "operands" : [ - { "kind" : "IdRef", "name" : "'Hint'" }, - { "kind" : "IdRef", "name" : "'Bits'" } - ], - "capabilities" : [ "ShaderInvocationReorderNV" ], - "version" : "None" - }, - { - "opname" : "OpTypeHitObjectNV", - "class" : "Reserved", - "opcode" : 5281, - "operands" : [ - { "kind" : "IdResult" } - ], - "capabilities" : [ "ShaderInvocationReorderNV" ], - "version" : "None" - }, - { - "opname" : "OpImageSampleFootprintNV", - "class" : "Image", - "opcode" : 5283, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Sampled Image'" }, - { "kind" : "IdRef", "name" : "'Coordinate'" }, - { "kind" : "IdRef", "name" : "'Granularity'" }, - { "kind" : "IdRef", "name" : "'Coarse'" }, - { "kind" : "ImageOperands", "quantifier" : "?" } - ], - "capabilities" : [ "ImageFootprintNV" ], - "extensions" : [ "SPV_NV_shader_image_footprint" ], - "version" : "None" - }, - { - "opname" : "OpEmitMeshTasksEXT", - "class" : "Reserved", - "opcode" : 5294, - "operands" : [ - { "kind" : "IdRef", "name" : "'Group Count X'" }, - { "kind" : "IdRef", "name" : "'Group Count Y'" }, - { "kind" : "IdRef", "name" : "'Group Count Z'" }, - { "kind" : "IdRef", "quantifier" : "?", "name" : "'Payload'" } - ], - "capabilities" : [ "MeshShadingEXT" ], - "version" : "None" - }, - { - "opname" : "OpSetMeshOutputsEXT", - "class" : "Reserved", - "opcode" : 5295, - "operands" : [ - { "kind" : "IdRef", "name" : "'Vertex Count'" }, - { "kind" : "IdRef", "name" : "'Primitive Count'" } - ], - "capabilities" : [ "MeshShadingEXT" ], - "version" : "None" - }, - { - "opname" : "OpGroupNonUniformPartitionNV", - "class" : "Non-Uniform", - "opcode" : 5296, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Value'" } - ], - "capabilities" : [ "GroupNonUniformPartitionedNV" ], - "extensions" : [ "SPV_NV_shader_subgroup_partitioned" ], - "version" : "None" - }, - { - "opname" : "OpWritePackedPrimitiveIndices4x8NV", - "class" : "Reserved", - "opcode" : 5299, - "operands" : [ - { "kind" : "IdRef", "name" : "'Index Offset'" }, - { "kind" : "IdRef", "name" : "'Packed Indices'" } - ], - "capabilities" : [ "MeshShadingNV" ], - "extensions" : [ "SPV_NV_mesh_shader" ], - "version" : "None" - }, - { - "opname" : "OpReportIntersectionNV", - "class" : "Reserved", - "opcode" : 5334, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Hit'" }, - { "kind" : "IdRef", "name" : "'HitKind'" } - ], - "capabilities" : [ "RayTracingNV" , "RayTracingKHR" ], - "extensions" : [ "SPV_NV_ray_tracing" , "SPV_KHR_ray_tracing" ], - "version" : "None" - }, - { - "opname" : "OpReportIntersectionKHR", - "class" : "Reserved", - "opcode" : 5334, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Hit'" }, - { "kind" : "IdRef", "name" : "'HitKind'" } - ], - "capabilities" : [ "RayTracingNV" , "RayTracingKHR" ], - "extensions" : [ "SPV_NV_ray_tracing" , "SPV_KHR_ray_tracing" ], - "version" : "None" - }, - { - "opname" : "OpIgnoreIntersectionNV", - "class" : "Reserved", - "opcode" : 5335, - "capabilities" : [ "RayTracingNV" ], - "extensions" : [ "SPV_NV_ray_tracing" ], - "version" : "None" - }, - { - "opname" : "OpTerminateRayNV", - "class" : "Reserved", - "opcode" : 5336, - "capabilities" : [ "RayTracingNV" ], - "extensions" : [ "SPV_NV_ray_tracing" ], - "version" : "None" - }, - { - "opname" : "OpTraceNV", - "class" : "Reserved", - "opcode" : 5337, - "operands" : [ - - { "kind" : "IdRef", "name" : "'Accel'" }, - { "kind" : "IdRef", "name" : "'Ray Flags'" }, - { "kind" : "IdRef", "name" : "'Cull Mask'" }, - { "kind" : "IdRef", "name" : "'SBT Offset'" }, - { "kind" : "IdRef", "name" : "'SBT Stride'" }, - { "kind" : "IdRef", "name" : "'Miss Index'" }, - { "kind" : "IdRef", "name" : "'Ray Origin'" }, - { "kind" : "IdRef", "name" : "'Ray Tmin'" }, - { "kind" : "IdRef", "name" : "'Ray Direction'" }, - { "kind" : "IdRef", "name" : "'Ray Tmax'" }, - { "kind" : "IdRef", "name" : "'PayloadId'" } - ], - "capabilities" : [ "RayTracingNV" ], - "extensions" : [ "SPV_NV_ray_tracing" ], - "version" : "None" - }, - { - "opname" : "OpTraceMotionNV", - "class" : "Reserved", - "opcode" : 5338, - "operands" : [ - - { "kind" : "IdRef", "name" : "'Accel'" }, - { "kind" : "IdRef", "name" : "'Ray Flags'" }, - { "kind" : "IdRef", "name" : "'Cull Mask'" }, - { "kind" : "IdRef", "name" : "'SBT Offset'" }, - { "kind" : "IdRef", "name" : "'SBT Stride'" }, - { "kind" : "IdRef", "name" : "'Miss Index'" }, - { "kind" : "IdRef", "name" : "'Ray Origin'" }, - { "kind" : "IdRef", "name" : "'Ray Tmin'" }, - { "kind" : "IdRef", "name" : "'Ray Direction'" }, - { "kind" : "IdRef", "name" : "'Ray Tmax'" }, - { "kind" : "IdRef", "name" : "'Time'" }, - { "kind" : "IdRef", "name" : "'PayloadId'" } - ], - "capabilities" : [ "RayTracingMotionBlurNV" ], - "extensions" : [ "SPV_NV_ray_tracing_motion_blur" ], - "version" : "None" - }, - { - "opname" : "OpTraceRayMotionNV", - "class" : "Reserved", - "opcode" : 5339, - "operands" : [ - - { "kind" : "IdRef", "name" : "'Accel'" }, - { "kind" : "IdRef", "name" : "'Ray Flags'" }, - { "kind" : "IdRef", "name" : "'Cull Mask'" }, - { "kind" : "IdRef", "name" : "'SBT Offset'" }, - { "kind" : "IdRef", "name" : "'SBT Stride'" }, - { "kind" : "IdRef", "name" : "'Miss Index'" }, - { "kind" : "IdRef", "name" : "'Ray Origin'" }, - { "kind" : "IdRef", "name" : "'Ray Tmin'" }, - { "kind" : "IdRef", "name" : "'Ray Direction'" }, - { "kind" : "IdRef", "name" : "'Ray Tmax'" }, - { "kind" : "IdRef", "name" : "'Time'" }, - { "kind" : "IdRef", "name" : "'Payload'" } - ], - "capabilities" : [ "RayTracingMotionBlurNV" ], - "extensions" : [ "SPV_NV_ray_tracing_motion_blur" ], - "version" : "None" - }, - { - "opname" : "OpRayQueryGetIntersectionTriangleVertexPositionsKHR", - "class" : "Reserved", - "opcode" : 5340, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { - "kind" : "IdRef", - "name" : "'RayQuery'" - }, - { - "kind" : "IdRef", - "name" : "'Intersection'" - } - ], - "capabilities" : [ "RayQueryPositionFetchKHR" ], - "version" : "None" - }, - { - "opname" : "OpTypeAccelerationStructureNV", - "class" : "Reserved", - "opcode" : 5341, - "operands" : [ - { "kind" : "IdResult" } - ], - "capabilities" : [ "RayTracingNV" , "RayTracingKHR", "RayQueryKHR" ], - "extensions" : [ "SPV_NV_ray_tracing" , "SPV_KHR_ray_tracing", "SPV_KHR_ray_query" ], - "version" : "None" - }, - { - "opname" : "OpTypeAccelerationStructureKHR", - "class" : "Reserved", - "opcode" : 5341, - "operands" : [ - { "kind" : "IdResult" } - ], - "capabilities" : [ "RayTracingNV" , "RayTracingKHR", "RayQueryKHR" ], - "extensions" : [ "SPV_NV_ray_tracing" , "SPV_KHR_ray_tracing", "SPV_KHR_ray_query" ], - "version" : "None" - }, - { - "opname" : "OpExecuteCallableNV", - "class" : "Reserved", - "opcode" : 5344, - "operands" : [ - - { "kind" : "IdRef", "name" : "'SBT Index'" }, - { "kind" : "IdRef", "name" : "'Callable DataId'" } - ], - "capabilities" : [ "RayTracingNV" ], - "extensions" : [ "SPV_NV_ray_tracing" ], - "version" : "None" - }, - { - "opname" : "OpTypeCooperativeMatrixNV", - "class" : "Reserved", - "opcode" : 5358, - "operands" : [ - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Component Type'" }, - { "kind" : "IdScope", "name" : "'Execution'" }, - { "kind" : "IdRef", "name" : "'Rows'" }, - { "kind" : "IdRef", "name" : "'Columns'" } - ], - "capabilities" : [ "CooperativeMatrixNV" ], - "extensions" : [ "SPV_NV_cooperative_matrix" ], - "version" : "None" - }, - { - "opname" : "OpCooperativeMatrixLoadNV", - "class" : "Reserved", - "opcode" : 5359, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Pointer'" }, - { "kind" : "IdRef", "name" : "'Stride'" }, - { "kind" : "IdRef", "name" : "'Column Major'" }, - { "kind" : "MemoryAccess", "quantifier" : "?" } - ], - "capabilities" : [ "CooperativeMatrixNV" ], - "extensions" : [ "SPV_NV_cooperative_matrix" ], - "version" : "None" - }, - { - "opname" : "OpCooperativeMatrixStoreNV", - "class" : "Reserved", - "opcode" : 5360, - "operands" : [ - { "kind" : "IdRef", "name" : "'Pointer'" }, - { "kind" : "IdRef", "name" : "'Object'" }, - { "kind" : "IdRef", "name" : "'Stride'" }, - { "kind" : "IdRef", "name" : "'Column Major'" }, - { "kind" : "MemoryAccess", "quantifier" : "?" } - ], - "capabilities" : [ "CooperativeMatrixNV" ], - "extensions" : [ "SPV_NV_cooperative_matrix" ], - "version" : "None" - }, - { - "opname" : "OpCooperativeMatrixMulAddNV", - "class" : "Reserved", - "opcode" : 5361, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'A'" }, - { "kind" : "IdRef", "name" : "'B'" }, - { "kind" : "IdRef", "name" : "'C'" } - ], - "capabilities" : [ "CooperativeMatrixNV" ], - "extensions" : [ "SPV_NV_cooperative_matrix" ], - "version" : "None" - }, - { - "opname" : "OpCooperativeMatrixLengthNV", - "class" : "Reserved", - "opcode" : 5362, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Type'" } - ], - "capabilities" : [ "CooperativeMatrixNV" ], - "extensions" : [ "SPV_NV_cooperative_matrix" ], - "version" : "None" - }, - { - "opname" : "OpBeginInvocationInterlockEXT", - "class" : "Reserved", - "opcode" : 5364, - "capabilities" : [ "FragmentShaderSampleInterlockEXT", "FragmentShaderPixelInterlockEXT", "FragmentShaderShadingRateInterlockEXT" ], - "extensions" : [ "SPV_EXT_fragment_shader_interlock" ], - "version" : "None" - }, - { - "opname" : "OpEndInvocationInterlockEXT", - "class" : "Reserved", - "opcode" : 5365, - "capabilities" : [ "FragmentShaderSampleInterlockEXT", "FragmentShaderPixelInterlockEXT", "FragmentShaderShadingRateInterlockEXT" ], - "extensions" : [ "SPV_EXT_fragment_shader_interlock" ], - "version" : "None" - }, - { - "opname" : "OpDemoteToHelperInvocation", - "class" : "Control-Flow", - "opcode" : 5380, - "capabilities" : [ "DemoteToHelperInvocation" ], - "version" : "1.6" - }, - { - "opname" : "OpDemoteToHelperInvocationEXT", - "class" : "Control-Flow", - "opcode" : 5380, - "capabilities" : [ "DemoteToHelperInvocationEXT" ], - "version" : "1.6" - }, - { - "opname" : "OpIsHelperInvocationEXT", - "class" : "Reserved", - "opcode" : 5381, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" } - ], - "capabilities" : [ "DemoteToHelperInvocationEXT" ], - "extensions" : [ "SPV_EXT_demote_to_helper_invocation" ], - "version" : "None" - }, - { - "opname" : "OpConvertUToImageNV", - "class" : "Reserved", - "opcode" : 5391, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Operand'" } - ], - "capabilities" : [ "BindlessTextureNV" ], - "version" : "None" - }, - { - "opname" : "OpConvertUToSamplerNV", - "class" : "Reserved", - "opcode" : 5392, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Operand'" } - ], - "capabilities" : [ "BindlessTextureNV" ], - "version" : "None" - }, - { - "opname" : "OpConvertImageToUNV", - "class" : "Reserved", - "opcode" : 5393, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Operand'" } - ], - "capabilities" : [ "BindlessTextureNV" ], - "version" : "None" - }, - { - "opname" : "OpConvertSamplerToUNV", - "class" : "Reserved", - "opcode" : 5394, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Operand'" } - ], - "capabilities" : [ "BindlessTextureNV" ], - "version" : "None" - }, - { - "opname" : "OpConvertUToSampledImageNV", - "class" : "Reserved", - "opcode" : 5395, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Operand'" } - ], - "capabilities" : [ "BindlessTextureNV" ], - "version" : "None" - }, - { - "opname" : "OpConvertSampledImageToUNV", - "class" : "Reserved", - "opcode" : 5396, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Operand'" } - ], - "capabilities" : [ "BindlessTextureNV" ], - "version" : "None" - }, - { - "opname" : "OpSamplerImageAddressingModeNV", - "class" : "Reserved", - "opcode" : 5397, - "operands" : [ - { "kind" : "LiteralInteger", "name" : "'Bit Width'" } - ], - "capabilities" : [ "BindlessTextureNV" ], - "version" : "None" - }, - { - "opname" : "OpSubgroupShuffleINTEL", - "class" : "Group", - "opcode" : 5571, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Data'" }, - { "kind" : "IdRef", "name" : "'InvocationId'" } - ], - "capabilities" : [ "SubgroupShuffleINTEL" ], - "version" : "None" - }, - { - "opname" : "OpSubgroupShuffleDownINTEL", - "class" : "Group", - "opcode" : 5572, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Current'" }, - { "kind" : "IdRef", "name" : "'Next'" }, - { "kind" : "IdRef", "name" : "'Delta'" } - ], - "capabilities" : [ "SubgroupShuffleINTEL" ], - "version" : "None" - }, - { - "opname" : "OpSubgroupShuffleUpINTEL", - "class" : "Group", - "opcode" : 5573, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Previous'" }, - { "kind" : "IdRef", "name" : "'Current'" }, - { "kind" : "IdRef", "name" : "'Delta'" } - ], - "capabilities" : [ "SubgroupShuffleINTEL" ], - "version" : "None" - }, - { - "opname" : "OpSubgroupShuffleXorINTEL", - "class" : "Group", - "opcode" : 5574, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Data'" }, - { "kind" : "IdRef", "name" : "'Value'" } - ], - "capabilities" : [ "SubgroupShuffleINTEL" ], - "version" : "None" - }, - { - "opname" : "OpSubgroupBlockReadINTEL", - "class" : "Group", - "opcode" : 5575, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Ptr'" } - ], - "capabilities" : [ "SubgroupBufferBlockIOINTEL" ], - "version" : "None" - }, - { - "opname" : "OpSubgroupBlockWriteINTEL", - "class" : "Group", - "opcode" : 5576, - "operands" : [ - { "kind" : "IdRef", "name" : "'Ptr'" }, - { "kind" : "IdRef", "name" : "'Data'" } - ], - "capabilities" : [ "SubgroupBufferBlockIOINTEL" ], - "version" : "None" - }, - { - "opname" : "OpSubgroupImageBlockReadINTEL", - "class" : "Group", - "opcode" : 5577, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Image'" }, - { "kind" : "IdRef", "name" : "'Coordinate'" } - ], - "capabilities" : [ "SubgroupImageBlockIOINTEL" ], - "version" : "None" - }, - { - "opname" : "OpSubgroupImageBlockWriteINTEL", - "class" : "Group", - "opcode" : 5578, - "operands" : [ - { "kind" : "IdRef", "name" : "'Image'" }, - { "kind" : "IdRef", "name" : "'Coordinate'" }, - { "kind" : "IdRef", "name" : "'Data'" } - ], - "capabilities" : [ "SubgroupImageBlockIOINTEL" ], - "version" : "None" - }, - { - "opname" : "OpSubgroupImageMediaBlockReadINTEL", - "class" : "Group", - "opcode" : 5580, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Image'" }, - { "kind" : "IdRef", "name" : "'Coordinate'" }, - { "kind" : "IdRef", "name" : "'Width'" }, - { "kind" : "IdRef", "name" : "'Height'" } - ], - "capabilities" : [ "SubgroupImageMediaBlockIOINTEL" ], - "version" : "None" - }, - { - "opname" : "OpSubgroupImageMediaBlockWriteINTEL", - "class" : "Group", - "opcode" : 5581, - "operands" : [ - { "kind" : "IdRef", "name" : "'Image'" }, - { "kind" : "IdRef", "name" : "'Coordinate'" }, - { "kind" : "IdRef", "name" : "'Width'" }, - { "kind" : "IdRef", "name" : "'Height'" }, - { "kind" : "IdRef", "name" : "'Data'" } - ], - "capabilities" : [ "SubgroupImageMediaBlockIOINTEL" ], - "version" : "None" - }, - { - "opname" : "OpUCountLeadingZerosINTEL", - "class" : "Reserved", - "opcode" : 5585, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Operand'" } - ], - "capabilities" : [ "IntegerFunctions2INTEL" ], - "version" : "None" - }, - { - "opname" : "OpUCountTrailingZerosINTEL", - "class" : "Reserved", - "opcode" : 5586, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Operand'" } - ], - "capabilities" : [ "IntegerFunctions2INTEL" ], - "version" : "None" - }, - { - "opname" : "OpAbsISubINTEL", - "class" : "Reserved", - "opcode" : 5587, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Operand 1'" }, - { "kind" : "IdRef", "name" : "'Operand 2'" } - ], - "capabilities" : [ "IntegerFunctions2INTEL" ], - "version" : "None" - }, - { - "opname" : "OpAbsUSubINTEL", - "class" : "Reserved", - "opcode" : 5588, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Operand 1'" }, - { "kind" : "IdRef", "name" : "'Operand 2'" } - ], - "capabilities" : [ "IntegerFunctions2INTEL" ], - "version" : "None" - }, - { - "opname" : "OpIAddSatINTEL", - "class" : "Reserved", - "opcode" : 5589, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Operand 1'" }, - { "kind" : "IdRef", "name" : "'Operand 2'" } - ], - "capabilities" : [ "IntegerFunctions2INTEL" ], - "version" : "None" - }, - { - "opname" : "OpUAddSatINTEL", - "class" : "Reserved", - "opcode" : 5590, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Operand 1'" }, - { "kind" : "IdRef", "name" : "'Operand 2'" } - ], - "capabilities" : [ "IntegerFunctions2INTEL" ], - "version" : "None" - }, - { - "opname" : "OpIAverageINTEL", - "class" : "Reserved", - "opcode" : 5591, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Operand 1'" }, - { "kind" : "IdRef", "name" : "'Operand 2'" } - ], - "capabilities" : [ "IntegerFunctions2INTEL" ], - "version" : "None" - }, - { - "opname" : "OpUAverageINTEL", - "class" : "Reserved", - "opcode" : 5592, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Operand 1'" }, - { "kind" : "IdRef", "name" : "'Operand 2'" } - ], - "capabilities" : [ "IntegerFunctions2INTEL" ], - "version" : "None" - }, - { - "opname" : "OpIAverageRoundedINTEL", - "class" : "Reserved", - "opcode" : 5593, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Operand 1'" }, - { "kind" : "IdRef", "name" : "'Operand 2'" } - ], - "capabilities" : [ "IntegerFunctions2INTEL" ], - "version" : "None" - }, - { - "opname" : "OpUAverageRoundedINTEL", - "class" : "Reserved", - "opcode" : 5594, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Operand 1'" }, - { "kind" : "IdRef", "name" : "'Operand 2'" } - ], - "capabilities" : [ "IntegerFunctions2INTEL" ], - "version" : "None" - }, - { - "opname" : "OpISubSatINTEL", - "class" : "Reserved", - "opcode" : 5595, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Operand 1'" }, - { "kind" : "IdRef", "name" : "'Operand 2'" } - ], - "capabilities" : [ "IntegerFunctions2INTEL" ], - "version" : "None" - }, - { - "opname" : "OpUSubSatINTEL", - "class" : "Reserved", - "opcode" : 5596, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Operand 1'" }, - { "kind" : "IdRef", "name" : "'Operand 2'" } - ], - "capabilities" : [ "IntegerFunctions2INTEL" ], - "version" : "None" - }, - { - "opname" : "OpIMul32x16INTEL", - "class" : "Reserved", - "opcode" : 5597, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Operand 1'" }, - { "kind" : "IdRef", "name" : "'Operand 2'" } - ], - "capabilities" : [ "IntegerFunctions2INTEL" ], - "version" : "None" - }, - { - "opname" : "OpUMul32x16INTEL", - "class" : "Reserved", - "opcode" : 5598, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Operand 1'" }, - { "kind" : "IdRef", "name" : "'Operand 2'" } - ], - "capabilities" : [ "IntegerFunctions2INTEL" ], - "version" : "None" - }, - { - "opname" : "OpConstantFunctionPointerINTEL", - "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, - "operands" : [ - { "kind" : "IdRef", "name" : "'Target'" }, - { "kind" : "Decoration" } - ], - "extensions" : [ "SPV_GOOGLE_decorate_string", "SPV_GOOGLE_hlsl_functionality1" ], - "version" : "1.4" - }, - { - "opname" : "OpDecorateStringGOOGLE", - "class" : "Annotation", - "opcode" : 5632, - "operands" : [ - { "kind" : "IdRef", "name" : "'Target'" }, - { "kind" : "Decoration" } - ], - "extensions" : [ "SPV_GOOGLE_decorate_string", "SPV_GOOGLE_hlsl_functionality1" ], - "version" : "1.4" - }, - { - "opname" : "OpMemberDecorateString", - "class" : "Annotation", - "opcode" : 5633, - "operands" : [ - { "kind" : "IdRef", "name" : "'Struct Type'" }, - { "kind" : "LiteralInteger", "name" : "'Member'" }, - { "kind" : "Decoration" } - ], - "extensions" : [ "SPV_GOOGLE_decorate_string", "SPV_GOOGLE_hlsl_functionality1" ], - "version" : "1.4" - }, - { - "opname" : "OpMemberDecorateStringGOOGLE", - "class" : "Annotation", - "opcode" : 5633, - "operands" : [ - { "kind" : "IdRef", "name" : "'Struct Type'" }, - { "kind" : "LiteralInteger", "name" : "'Member'" }, - { "kind" : "Decoration" } - ], - "extensions" : [ "SPV_GOOGLE_decorate_string", "SPV_GOOGLE_hlsl_functionality1" ], - "version" : "1.4" - }, - { - "opname" : "OpVmeImageINTEL", - "class" : "@exclude", - "opcode" : 5699, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Image Type'" }, - { "kind" : "IdRef", "name" : "'Sampler'" } - ], - "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ], - "version" : "None" - }, - { - "opname" : "OpTypeVmeImageINTEL", - "class" : "@exclude", - "opcode" : 5700, - "operands" : [ - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Image Type'" } - ], - "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ], - "version" : "None" - }, - { - "opname" : "OpTypeAvcImePayloadINTEL", - "class" : "@exclude", - "opcode" : 5701, - "operands" : [ - { "kind" : "IdResult" } - ], - "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ], - "version" : "None" - }, - { - "opname" : "OpTypeAvcRefPayloadINTEL", - "class" : "@exclude", - "opcode" : 5702, - "operands" : [ - { "kind" : "IdResult" } - ], - "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ], - "version" : "None" - }, - { - "opname" : "OpTypeAvcSicPayloadINTEL", - "class" : "@exclude", - "opcode" : 5703, - "operands" : [ - { "kind" : "IdResult" } - ], - "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ], - "version" : "None" - }, - { - "opname" : "OpTypeAvcMcePayloadINTEL", - "class" : "@exclude", - "opcode" : 5704, - "operands" : [ - { "kind" : "IdResult" } - ], - "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ], - "version" : "None" - }, - { - "opname" : "OpTypeAvcMceResultINTEL", - "class" : "@exclude", - "opcode" : 5705, - "operands" : [ - { "kind" : "IdResult" } - ], - "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ], - "version" : "None" - }, - { - "opname" : "OpTypeAvcImeResultINTEL", - "class" : "@exclude", - "opcode" : 5706, - "operands" : [ - { "kind" : "IdResult" } - ], - "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ], - "version" : "None" - }, - { - "opname" : "OpTypeAvcImeResultSingleReferenceStreamoutINTEL", - "class" : "@exclude", - "opcode" : 5707, - "operands" : [ - { "kind" : "IdResult" } - ], - "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ], - "version" : "None" - }, - { - "opname" : "OpTypeAvcImeResultDualReferenceStreamoutINTEL", - "class" : "@exclude", - "opcode" : 5708, - "operands" : [ - { "kind" : "IdResult" } - ], - "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ], - "version" : "None" - }, - { - "opname" : "OpTypeAvcImeSingleReferenceStreaminINTEL", - "class" : "@exclude", - "opcode" : 5709, - "operands" : [ - { "kind" : "IdResult" } - ], - "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ], - "version" : "None" - }, - { - "opname" : "OpTypeAvcImeDualReferenceStreaminINTEL", - "class" : "@exclude", - "opcode" : 5710, - "operands" : [ - { "kind" : "IdResult" } - ], - "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ], - "version" : "None" - }, - { - "opname" : "OpTypeAvcRefResultINTEL", - "class" : "@exclude", - "opcode" : 5711, - "operands" : [ - { "kind" : "IdResult" } - ], - "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ], - "version" : "None" - }, - { - "opname" : "OpTypeAvcSicResultINTEL", - "class" : "@exclude", - "opcode" : 5712, - "operands" : [ - { "kind" : "IdResult" } - ], - "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ], - "version" : "None" - }, - { - "opname" : "OpSubgroupAvcMceGetDefaultInterBaseMultiReferencePenaltyINTEL", - "class" : "@exclude", - "opcode" : 5713, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Slice Type'" }, - { "kind" : "IdRef", "name" : "'Qp'" } - ], - "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ], - "version" : "None" - }, - { - "opname" : "OpSubgroupAvcMceSetInterBaseMultiReferencePenaltyINTEL", - "class" : "@exclude", - "opcode" : 5714, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Reference Base Penalty'" }, - { "kind" : "IdRef", "name" : "'Payload'" } - ], - "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ], - "version" : "None" - }, - { - "opname" : "OpSubgroupAvcMceGetDefaultInterShapePenaltyINTEL", - "class" : "@exclude", - "opcode" : 5715, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Slice Type'" }, - { "kind" : "IdRef", "name" : "'Qp'" } - ], - "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ], - "version" : "None" - }, - { - "opname" : "OpSubgroupAvcMceSetInterShapePenaltyINTEL", - "class" : "@exclude", - "opcode" : 5716, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Packed Shape Penalty'" }, - { "kind" : "IdRef", "name" : "'Payload'" } - ], - "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ], - "version" : "None" - }, - { - "opname" : "OpSubgroupAvcMceGetDefaultInterDirectionPenaltyINTEL", - "class" : "@exclude", - "opcode" : 5717, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Slice Type'" }, - { "kind" : "IdRef", "name" : "'Qp'" } - ], - "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ], - "version" : "None" - }, - { - "opname" : "OpSubgroupAvcMceSetInterDirectionPenaltyINTEL", - "class" : "@exclude", - "opcode" : 5718, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Direction Cost'" }, - { "kind" : "IdRef", "name" : "'Payload'" } - ], - "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ], - "version" : "None" - }, - { - "opname" : "OpSubgroupAvcMceGetDefaultIntraLumaShapePenaltyINTEL", - "class" : "@exclude", - "opcode" : 5719, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Slice Type'" }, - { "kind" : "IdRef", "name" : "'Qp'" } - ], - "capabilities" : [ "SubgroupAvcMotionEstimationINTEL", "SubgroupAvcMotionEstimationIntraINTEL" ], - "version" : "None" - }, - { - "opname" : "OpSubgroupAvcMceGetDefaultInterMotionVectorCostTableINTEL", - "class" : "@exclude", - "opcode" : 5720, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Slice Type'" }, - { "kind" : "IdRef", "name" : "'Qp'" } - ], - "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ], - "version" : "None" - }, - { - "opname" : "OpSubgroupAvcMceGetDefaultHighPenaltyCostTableINTEL", - "class" : "@exclude", - "opcode" : 5721, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" } - ], - "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ], - "version" : "None" - }, - { - "opname" : "OpSubgroupAvcMceGetDefaultMediumPenaltyCostTableINTEL", - "class" : "@exclude", - "opcode" : 5722, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" } - ], - "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ], - "version" : "None" - }, - { - "opname" : "OpSubgroupAvcMceGetDefaultLowPenaltyCostTableINTEL", - "class" : "@exclude", - "opcode" : 5723, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" } - ], - "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ], - "version" : "None" - }, - { - "opname" : "OpSubgroupAvcMceSetMotionVectorCostFunctionINTEL", - "class" : "@exclude", - "opcode" : 5724, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Packed Cost Center Delta'" }, - { "kind" : "IdRef", "name" : "'Packed Cost Table'" }, - { "kind" : "IdRef", "name" : "'Cost Precision'" }, - { "kind" : "IdRef", "name" : "'Payload'" } - ], - "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ], - "version" : "None" - }, - { - "opname" : "OpSubgroupAvcMceGetDefaultIntraLumaModePenaltyINTEL", - "class" : "@exclude", - "opcode" : 5725, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Slice Type'" }, - { "kind" : "IdRef", "name" : "'Qp'" } - ], - "capabilities" : [ "SubgroupAvcMotionEstimationINTEL", "SubgroupAvcMotionEstimationIntraINTEL" ], - "version" : "None" - }, - { - "opname" : "OpSubgroupAvcMceGetDefaultNonDcLumaIntraPenaltyINTEL", - "class" : "@exclude", - "opcode" : 5726, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" } - ], - "capabilities" : [ "SubgroupAvcMotionEstimationINTEL", "SubgroupAvcMotionEstimationIntraINTEL" ], - "version" : "None" - }, - { - "opname" : "OpSubgroupAvcMceGetDefaultIntraChromaModeBasePenaltyINTEL", - "class" : "@exclude", - "opcode" : 5727, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" } - ], - "capabilities" : [ "SubgroupAvcMotionEstimationINTEL", "SubgroupAvcMotionEstimationChromaINTEL" ], - "version" : "None" - }, - { - "opname" : "OpSubgroupAvcMceSetAcOnlyHaarINTEL", - "class" : "@exclude", - "opcode" : 5728, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Payload'" } - ], - "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ], - "version" : "None" - }, - { - "opname" : "OpSubgroupAvcMceSetSourceInterlacedFieldPolarityINTEL", - "class" : "@exclude", - "opcode" : 5729, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Source Field Polarity'" }, - { "kind" : "IdRef", "name" : "'Payload'" } - ], - "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ], - "version" : "None" - }, - { - "opname" : "OpSubgroupAvcMceSetSingleReferenceInterlacedFieldPolarityINTEL", - "class" : "@exclude", - "opcode" : 5730, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Reference Field Polarity'" }, - { "kind" : "IdRef", "name" : "'Payload'" } - ], - "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ], - "version" : "None" - }, - { - "opname" : "OpSubgroupAvcMceSetDualReferenceInterlacedFieldPolaritiesINTEL", - "class" : "@exclude", - "opcode" : 5731, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Forward Reference Field Polarity'" }, - { "kind" : "IdRef", "name" : "'Backward Reference Field Polarity'" }, - { "kind" : "IdRef", "name" : "'Payload'" } - ], - "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ], - "version" : "None" - }, - { - "opname" : "OpSubgroupAvcMceConvertToImePayloadINTEL", - "class" : "@exclude", - "opcode" : 5732, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Payload'" } - ], - "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ], - "version" : "None" - }, - { - "opname" : "OpSubgroupAvcMceConvertToImeResultINTEL", - "class" : "@exclude", - "opcode" : 5733, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Payload'" } - ], - "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ], - "version" : "None" - }, - { - "opname" : "OpSubgroupAvcMceConvertToRefPayloadINTEL", - "class" : "@exclude", - "opcode" : 5734, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Payload'" } - ], - "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ], - "version" : "None" - }, - { - "opname" : "OpSubgroupAvcMceConvertToRefResultINTEL", - "class" : "@exclude", - "opcode" : 5735, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Payload'" } - ], - "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ], - "version" : "None" - }, - { - "opname" : "OpSubgroupAvcMceConvertToSicPayloadINTEL", - "class" : "@exclude", - "opcode" : 5736, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Payload'" } - ], - "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ], - "version" : "None" - }, - { - "opname" : "OpSubgroupAvcMceConvertToSicResultINTEL", - "class" : "@exclude", - "opcode" : 5737, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Payload'" } - ], - "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ], - "version" : "None" - }, - { - "opname" : "OpSubgroupAvcMceGetMotionVectorsINTEL", - "class" : "@exclude", - "opcode" : 5738, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Payload'" } - ], - "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ], - "version" : "None" - }, - { - "opname" : "OpSubgroupAvcMceGetInterDistortionsINTEL", - "class" : "@exclude", - "opcode" : 5739, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Payload'" } - ], - "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ], - "version" : "None" - }, - { - "opname" : "OpSubgroupAvcMceGetBestInterDistortionsINTEL", - "class" : "@exclude", - "opcode" : 5740, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Payload'" } - ], - "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ], - "version" : "None" - }, - { - "opname" : "OpSubgroupAvcMceGetInterMajorShapeINTEL", - "class" : "@exclude", - "opcode" : 5741, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Payload'" } - ], - "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ], - "version" : "None" - }, - { - "opname" : "OpSubgroupAvcMceGetInterMinorShapeINTEL", - "class" : "@exclude", - "opcode" : 5742, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Payload'" } - ], - "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ], - "version" : "None" - }, - { - "opname" : "OpSubgroupAvcMceGetInterDirectionsINTEL", - "class" : "@exclude", - "opcode" : 5743, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Payload'" } - ], - "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ], - "version" : "None" - }, - { - "opname" : "OpSubgroupAvcMceGetInterMotionVectorCountINTEL", - "class" : "@exclude", - "opcode" : 5744, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Payload'" } - ], - "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ], - "version" : "None" - }, - { - "opname" : "OpSubgroupAvcMceGetInterReferenceIdsINTEL", - "class" : "@exclude", - "opcode" : 5745, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Payload'" } - ], - "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ], - "version" : "None" - }, - { - "opname" : "OpSubgroupAvcMceGetInterReferenceInterlacedFieldPolaritiesINTEL", - "class" : "@exclude", - "opcode" : 5746, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Packed Reference Ids'" }, - { "kind" : "IdRef", "name" : "'Packed Reference Parameter Field Polarities'" }, - { "kind" : "IdRef", "name" : "'Payload'" } - ], - "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ], - "version" : "None" - }, - { - "opname" : "OpSubgroupAvcImeInitializeINTEL", - "class" : "@exclude", - "opcode" : 5747, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Src Coord'" }, - { "kind" : "IdRef", "name" : "'Partition Mask'" }, - { "kind" : "IdRef", "name" : "'SAD Adjustment'" } - ], - "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ], - "version" : "None" - }, - { - "opname" : "OpSubgroupAvcImeSetSingleReferenceINTEL", - "class" : "@exclude", - "opcode" : 5748, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Ref Offset'" }, - { "kind" : "IdRef", "name" : "'Search Window Config'" }, - { "kind" : "IdRef", "name" : "'Payload'" } - ], - "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ], - "version" : "None" - }, - { - "opname" : "OpSubgroupAvcImeSetDualReferenceINTEL", - "class" : "@exclude", - "opcode" : 5749, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Fwd Ref Offset'" }, - { "kind" : "IdRef", "name" : "'Bwd Ref Offset'" }, - { "kind" : "IdRef", "name" : "'id> Search Window Config'" }, - { "kind" : "IdRef", "name" : "'Payload'" } - ], - "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ], - "version" : "None" - }, - { - "opname" : "OpSubgroupAvcImeRefWindowSizeINTEL", - "class" : "@exclude", - "opcode" : 5750, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Search Window Config'" }, - { "kind" : "IdRef", "name" : "'Dual Ref'" } - ], - "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ], - "version" : "None" - }, - { - "opname" : "OpSubgroupAvcImeAdjustRefOffsetINTEL", - "class" : "@exclude", - "opcode" : 5751, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Ref Offset'" }, - { "kind" : "IdRef", "name" : "'Src Coord'" }, - { "kind" : "IdRef", "name" : "'Ref Window Size'" }, - { "kind" : "IdRef", "name" : "'Image Size'" } - ], - "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ], - "version" : "None" - }, - { - "opname" : "OpSubgroupAvcImeConvertToMcePayloadINTEL", - "class" : "@exclude", - "opcode" : 5752, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Payload'" } - ], - "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ], - "version" : "None" - }, - { - "opname" : "OpSubgroupAvcImeSetMaxMotionVectorCountINTEL", - "class" : "@exclude", - "opcode" : 5753, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Max Motion Vector Count'" }, - { "kind" : "IdRef", "name" : "'Payload'" } - ], - "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ], - "version" : "None" - }, - { - "opname" : "OpSubgroupAvcImeSetUnidirectionalMixDisableINTEL", - "class" : "@exclude", - "opcode" : 5754, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Payload'" } - ], - "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ], - "version" : "None" - }, - { - "opname" : "OpSubgroupAvcImeSetEarlySearchTerminationThresholdINTEL", - "class" : "@exclude", - "opcode" : 5755, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Threshold'" }, - { "kind" : "IdRef", "name" : "'Payload'" } - ], - "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ], - "version" : "None" - }, - { - "opname" : "OpSubgroupAvcImeSetWeightedSadINTEL", - "class" : "@exclude", - "opcode" : 5756, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Packed Sad Weights'" }, - { "kind" : "IdRef", "name" : "'Payload'" } - ], - "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ], - "version" : "None" - }, - { - "opname" : "OpSubgroupAvcImeEvaluateWithSingleReferenceINTEL", - "class" : "@exclude", - "opcode" : 5757, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Src Image'" }, - { "kind" : "IdRef", "name" : "'Ref Image'" }, - { "kind" : "IdRef", "name" : "'Payload'" } - ], - "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ], - "version" : "None" - }, - { - "opname" : "OpSubgroupAvcImeEvaluateWithDualReferenceINTEL", - "class" : "@exclude", - "opcode" : 5758, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Src Image'" }, - { "kind" : "IdRef", "name" : "'Fwd Ref Image'" }, - { "kind" : "IdRef", "name" : "'Bwd Ref Image'" }, - { "kind" : "IdRef", "name" : "'Payload'" } - ], - "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ], - "version" : "None" - }, - { - "opname" : "OpSubgroupAvcImeEvaluateWithSingleReferenceStreaminINTEL", - "class" : "@exclude", - "opcode" : 5759, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Src Image'" }, - { "kind" : "IdRef", "name" : "'Ref Image'" }, - { "kind" : "IdRef", "name" : "'Payload'" }, - { "kind" : "IdRef", "name" : "'Streamin Components'" } - ], - "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ], - "version" : "None" - }, - { - "opname" : "OpSubgroupAvcImeEvaluateWithDualReferenceStreaminINTEL", - "class" : "@exclude", - "opcode" : 5760, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Src Image'" }, - { "kind" : "IdRef", "name" : "'Fwd Ref Image'" }, - { "kind" : "IdRef", "name" : "'Bwd Ref Image'" }, - { "kind" : "IdRef", "name" : "'Payload'" }, - { "kind" : "IdRef", "name" : "'Streamin Components'" } - ], - "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ], - "version" : "None" - }, - { - "opname" : "OpSubgroupAvcImeEvaluateWithSingleReferenceStreamoutINTEL", - "class" : "@exclude", - "opcode" : 5761, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Src Image'" }, - { "kind" : "IdRef", "name" : "'Ref Image'" }, - { "kind" : "IdRef", "name" : "'Payload'" } - ], - "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ], - "version" : "None" - }, - { - "opname" : "OpSubgroupAvcImeEvaluateWithDualReferenceStreamoutINTEL", - "class" : "@exclude", - "opcode" : 5762, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Src Image'" }, - { "kind" : "IdRef", "name" : "'Fwd Ref Image'" }, - { "kind" : "IdRef", "name" : "'Bwd Ref Image'" }, - { "kind" : "IdRef", "name" : "'Payload'" } - ], - "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ], - "version" : "None" - }, - { - "opname" : "OpSubgroupAvcImeEvaluateWithSingleReferenceStreaminoutINTEL", - "class" : "@exclude", - "opcode" : 5763, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Src Image'" }, - { "kind" : "IdRef", "name" : "'Ref Image'" }, - { "kind" : "IdRef", "name" : "'Payload'" }, - { "kind" : "IdRef", "name" : "'Streamin Components'" } - ], - "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ], - "version" : "None" - }, - { - "opname" : "OpSubgroupAvcImeEvaluateWithDualReferenceStreaminoutINTEL", - "class" : "@exclude", - "opcode" : 5764, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Src Image'" }, - { "kind" : "IdRef", "name" : "'Fwd Ref Image'" }, - { "kind" : "IdRef", "name" : "'Bwd Ref Image'" }, - { "kind" : "IdRef", "name" : "'Payload'" }, - { "kind" : "IdRef", "name" : "'Streamin Components'" } - ], - "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ], - "version" : "None" - }, - { - "opname" : "OpSubgroupAvcImeConvertToMceResultINTEL", - "class" : "@exclude", - "opcode" : 5765, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Payload'" } - ], - "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ], - "version" : "None" - }, - { - "opname" : "OpSubgroupAvcImeGetSingleReferenceStreaminINTEL", - "class" : "@exclude", - "opcode" : 5766, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Payload'" } - ], - "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ], - "version" : "None" - }, - { - "opname" : "OpSubgroupAvcImeGetDualReferenceStreaminINTEL", - "class" : "@exclude", - "opcode" : 5767, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Payload'" } - ], - "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ], - "version" : "None" - }, - { - "opname" : "OpSubgroupAvcImeStripSingleReferenceStreamoutINTEL", - "class" : "@exclude", - "opcode" : 5768, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Payload'" } - ], - "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ], - "version" : "None" - }, - { - "opname" : "OpSubgroupAvcImeStripDualReferenceStreamoutINTEL", - "class" : "@exclude", - "opcode" : 5769, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Payload'" } - ], - "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ], - "version" : "None" - }, - { - "opname" : "OpSubgroupAvcImeGetStreamoutSingleReferenceMajorShapeMotionVectorsINTEL", - "class" : "@exclude", - "opcode" : 5770, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Payload'" }, - { "kind" : "IdRef", "name" : "'Major Shape'" } - ], - "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ], - "version" : "None" - }, - { - "opname" : "OpSubgroupAvcImeGetStreamoutSingleReferenceMajorShapeDistortionsINTEL", - "class" : "@exclude", - "opcode" : 5771, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Payload'" }, - { "kind" : "IdRef", "name" : "'Major Shape'" } - ], - "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ], - "version" : "None" - }, - { - "opname" : "OpSubgroupAvcImeGetStreamoutSingleReferenceMajorShapeReferenceIdsINTEL", - "class" : "@exclude", - "opcode" : 5772, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Payload'" }, - { "kind" : "IdRef", "name" : "'Major Shape'" } - ], - "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ], - "version" : "None" - }, - { - "opname" : "OpSubgroupAvcImeGetStreamoutDualReferenceMajorShapeMotionVectorsINTEL", - "class" : "@exclude", - "opcode" : 5773, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Payload'" }, - { "kind" : "IdRef", "name" : "'Major Shape'" }, - { "kind" : "IdRef", "name" : "'Direction'" } - ], - "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ], - "version" : "None" - }, - { - "opname" : "OpSubgroupAvcImeGetStreamoutDualReferenceMajorShapeDistortionsINTEL", - "class" : "@exclude", - "opcode" : 5774, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Payload'" }, - { "kind" : "IdRef", "name" : "'Major Shape'" }, - { "kind" : "IdRef", "name" : "'Direction'" } - ], - "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ], - "version" : "None" - }, - { - "opname" : "OpSubgroupAvcImeGetStreamoutDualReferenceMajorShapeReferenceIdsINTEL", - "class" : "@exclude", - "opcode" : 5775, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Payload'" }, - { "kind" : "IdRef", "name" : "'Major Shape'" }, - { "kind" : "IdRef", "name" : "'Direction'" } - ], - "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ], - "version" : "None" - }, - { - "opname" : "OpSubgroupAvcImeGetBorderReachedINTEL", - "class" : "@exclude", - "opcode" : 5776, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Image Select'" }, - { "kind" : "IdRef", "name" : "'Payload'" } - ], - "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ], - "version" : "None" - }, - { - "opname" : "OpSubgroupAvcImeGetTruncatedSearchIndicationINTEL", - "class" : "@exclude", - "opcode" : 5777, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Payload'" } - ], - "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ], - "version" : "None" - }, - { - "opname" : "OpSubgroupAvcImeGetUnidirectionalEarlySearchTerminationINTEL", - "class" : "@exclude", - "opcode" : 5778, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Payload'" } - ], - "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ], - "version" : "None" - }, - { - "opname" : "OpSubgroupAvcImeGetWeightingPatternMinimumMotionVectorINTEL", - "class" : "@exclude", - "opcode" : 5779, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Payload'" } - ], - "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ], - "version" : "None" - }, - { - "opname" : "OpSubgroupAvcImeGetWeightingPatternMinimumDistortionINTEL", - "class" : "@exclude", - "opcode" : 5780, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Payload'" } - ], - "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ], - "version" : "None" - }, - { - "opname" : "OpSubgroupAvcFmeInitializeINTEL", - "class" : "@exclude", - "opcode" : 5781, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Src Coord'" }, - { "kind" : "IdRef", "name" : "'Motion Vectors'" }, - { "kind" : "IdRef", "name" : "'Major Shapes'" }, - { "kind" : "IdRef", "name" : "'Minor Shapes'" }, - { "kind" : "IdRef", "name" : "'Direction'" }, - { "kind" : "IdRef", "name" : "'Pixel Resolution'" }, - { "kind" : "IdRef", "name" : "'Sad Adjustment'" } - ], - "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ], - "version" : "None" - }, - { - "opname" : "OpSubgroupAvcBmeInitializeINTEL", - "class" : "@exclude", - "opcode" : 5782, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Src Coord'" }, - { "kind" : "IdRef", "name" : "'Motion Vectors'" }, - { "kind" : "IdRef", "name" : "'Major Shapes'" }, - { "kind" : "IdRef", "name" : "'Minor Shapes'" }, - { "kind" : "IdRef", "name" : "'Direction'" }, - { "kind" : "IdRef", "name" : "'Pixel Resolution'" }, - { "kind" : "IdRef", "name" : "'Bidirectional Weight'" }, - { "kind" : "IdRef", "name" : "'Sad Adjustment'" } - ], - "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ], - "version" : "None" - }, - { - "opname" : "OpSubgroupAvcRefConvertToMcePayloadINTEL", - "class" : "@exclude", - "opcode" : 5783, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Payload'" } - ], - "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ], - "version" : "None" - }, - { - "opname" : "OpSubgroupAvcRefSetBidirectionalMixDisableINTEL", - "class" : "@exclude", - "opcode" : 5784, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Payload'" } - ], - "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ], - "version" : "None" - }, - { - "opname" : "OpSubgroupAvcRefSetBilinearFilterEnableINTEL", - "class" : "@exclude", - "opcode" : 5785, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Payload'" } - ], - "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ], - "version" : "None" - }, - { - "opname" : "OpSubgroupAvcRefEvaluateWithSingleReferenceINTEL", - "class" : "@exclude", - "opcode" : 5786, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Src Image'" }, - { "kind" : "IdRef", "name" : "'Ref Image'" }, - { "kind" : "IdRef", "name" : "'Payload'" } - ], - "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ], - "version" : "None" - }, - { - "opname" : "OpSubgroupAvcRefEvaluateWithDualReferenceINTEL", - "class" : "@exclude", - "opcode" : 5787, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Src Image'" }, - { "kind" : "IdRef", "name" : "'Fwd Ref Image'" }, - { "kind" : "IdRef", "name" : "'Bwd Ref Image'" }, - { "kind" : "IdRef", "name" : "'Payload'" } - ], - "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ], - "version" : "None" - }, - { - "opname" : "OpSubgroupAvcRefEvaluateWithMultiReferenceINTEL", - "class" : "@exclude", - "opcode" : 5788, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Src Image'" }, - { "kind" : "IdRef", "name" : "'Packed Reference Ids'" }, - { "kind" : "IdRef", "name" : "'Payload'" } - ], - "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ], - "version" : "None" - }, - { - "opname" : "OpSubgroupAvcRefEvaluateWithMultiReferenceInterlacedINTEL", - "class" : "@exclude", - "opcode" : 5789, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Src Image'" }, - { "kind" : "IdRef", "name" : "'Packed Reference Ids'" }, - { "kind" : "IdRef", "name" : "'Packed Reference Field Polarities'" }, - { "kind" : "IdRef", "name" : "'Payload'" } - ], - "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ], - "version" : "None" - }, - { - "opname" : "OpSubgroupAvcRefConvertToMceResultINTEL", - "class" : "@exclude", - "opcode" : 5790, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Payload'" } - ], - "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ], - "version" : "None" - }, - { - "opname" : "OpSubgroupAvcSicInitializeINTEL", - "class" : "@exclude", - "opcode" : 5791, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Src Coord'" } - ], - "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ], - "version" : "None" - }, - { - "opname" : "OpSubgroupAvcSicConfigureSkcINTEL", - "class" : "@exclude", - "opcode" : 5792, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Skip Block Partition Type'" }, - { "kind" : "IdRef", "name" : "'Skip Motion Vector Mask'" }, - { "kind" : "IdRef", "name" : "'Motion Vectors'" }, - { "kind" : "IdRef", "name" : "'Bidirectional Weight'" }, - { "kind" : "IdRef", "name" : "'Sad Adjustment'" }, - { "kind" : "IdRef", "name" : "'Payload'" } - ], - "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ], - "version" : "None" - }, - { - "opname" : "OpSubgroupAvcSicConfigureIpeLumaINTEL", - "class" : "@exclude", - "opcode" : 5793, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Luma Intra Partition Mask'" }, - { "kind" : "IdRef", "name" : "'Intra Neighbour Availabilty'" }, - { "kind" : "IdRef", "name" : "'Left Edge Luma Pixels'" }, - { "kind" : "IdRef", "name" : "'Upper Left Corner Luma Pixel'" }, - { "kind" : "IdRef", "name" : "'Upper Edge Luma Pixels'" }, - { "kind" : "IdRef", "name" : "'Upper Right Edge Luma Pixels'" }, - { "kind" : "IdRef", "name" : "'Sad Adjustment'" }, - { "kind" : "IdRef", "name" : "'Payload'" } - ], - "capabilities" : [ "SubgroupAvcMotionEstimationINTEL", "SubgroupAvcMotionEstimationIntraINTEL" ], - "version" : "None" - }, - { - "opname" : "OpSubgroupAvcSicConfigureIpeLumaChromaINTEL", - "class" : "@exclude", - "opcode" : 5794, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Luma Intra Partition Mask'" }, - { "kind" : "IdRef", "name" : "'Intra Neighbour Availabilty'" }, - { "kind" : "IdRef", "name" : "'Left Edge Luma Pixels'" }, - { "kind" : "IdRef", "name" : "'Upper Left Corner Luma Pixel'" }, - { "kind" : "IdRef", "name" : "'Upper Edge Luma Pixels'" }, - { "kind" : "IdRef", "name" : "'Upper Right Edge Luma Pixels'" }, - { "kind" : "IdRef", "name" : "'Left Edge Chroma Pixels'" }, - { "kind" : "IdRef", "name" : "'Upper Left Corner Chroma Pixel'" }, - { "kind" : "IdRef", "name" : "'Upper Edge Chroma Pixels'" }, - { "kind" : "IdRef", "name" : "'Sad Adjustment'" }, - { "kind" : "IdRef", "name" : "'Payload'" } - ], - "capabilities" : [ "SubgroupAvcMotionEstimationINTEL", "SubgroupAvcMotionEstimationChromaINTEL" ], - "version" : "None" - }, - { - "opname" : "OpSubgroupAvcSicGetMotionVectorMaskINTEL", - "class" : "@exclude", - "opcode" : 5795, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Skip Block Partition Type'" }, - { "kind" : "IdRef", "name" : "'Direction'" } - ], - "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ], - "version" : "None" - }, - { - "opname" : "OpSubgroupAvcSicConvertToMcePayloadINTEL", - "class" : "@exclude", - "opcode" : 5796, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Payload'" } - ], - "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ], - "version" : "None" - }, - { - "opname" : "OpSubgroupAvcSicSetIntraLumaShapePenaltyINTEL", - "class" : "@exclude", - "opcode" : 5797, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Packed Shape Penalty'" }, - { "kind" : "IdRef", "name" : "'Payload'" } - ], - "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ], - "version" : "None" - }, - { - "opname" : "OpSubgroupAvcSicSetIntraLumaModeCostFunctionINTEL", - "class" : "@exclude", - "opcode" : 5798, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Luma Mode Penalty'" }, - { "kind" : "IdRef", "name" : "'Luma Packed Neighbor Modes'" }, - { "kind" : "IdRef", "name" : "'Luma Packed Non Dc Penalty'" }, - { "kind" : "IdRef", "name" : "'Payload'" } - ], - "capabilities" : [ "SubgroupAvcMotionEstimationINTEL", "SubgroupAvcMotionEstimationIntraINTEL" ], - "version" : "None" - }, - { - "opname" : "OpSubgroupAvcSicSetIntraChromaModeCostFunctionINTEL", - "class" : "@exclude", - "opcode" : 5799, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Chroma Mode Base Penalty'" }, - { "kind" : "IdRef", "name" : "'Payload'" } - ], - "capabilities" : [ "SubgroupAvcMotionEstimationINTEL", "SubgroupAvcMotionEstimationChromaINTEL" ], - "version" : "None" - }, - { - "opname" : "OpSubgroupAvcSicSetBilinearFilterEnableINTEL", - "class" : "@exclude", - "opcode" : 5800, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Payload'" } - ], - "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ], - "version" : "None" - }, - { - "opname" : "OpSubgroupAvcSicSetSkcForwardTransformEnableINTEL", - "class" : "@exclude", - "opcode" : 5801, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Packed Sad Coefficients'" }, - { "kind" : "IdRef", "name" : "'Payload'" } - ], - "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ], - "version" : "None" - }, - { - "opname" : "OpSubgroupAvcSicSetBlockBasedRawSkipSadINTEL", - "class" : "@exclude", - "opcode" : 5802, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Block Based Skip Type'" }, - { "kind" : "IdRef", "name" : "'Payload'" } - ], - "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ], - "version" : "None" - }, - { - "opname" : "OpSubgroupAvcSicEvaluateIpeINTEL", - "class" : "@exclude", - "opcode" : 5803, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Src Image'" }, - { "kind" : "IdRef", "name" : "'Payload'" } - ], - "capabilities" : [ "SubgroupAvcMotionEstimationINTEL", "SubgroupAvcMotionEstimationIntraINTEL" ], - "version" : "None" - }, - { - "opname" : "OpSubgroupAvcSicEvaluateWithSingleReferenceINTEL", - "class" : "@exclude", - "opcode" : 5804, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Src Image'" }, - { "kind" : "IdRef", "name" : "'Ref Image'" }, - { "kind" : "IdRef", "name" : "'Payload'" } - ], - "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ], - "version" : "None" - }, - { - "opname" : "OpSubgroupAvcSicEvaluateWithDualReferenceINTEL", - "class" : "@exclude", - "opcode" : 5805, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Src Image'" }, - { "kind" : "IdRef", "name" : "'Fwd Ref Image'" }, - { "kind" : "IdRef", "name" : "'Bwd Ref Image'" }, - { "kind" : "IdRef", "name" : "'Payload'" } - ], - "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ], - "version" : "None" - }, - { - "opname" : "OpSubgroupAvcSicEvaluateWithMultiReferenceINTEL", - "class" : "@exclude", - "opcode" : 5806, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Src Image'" }, - { "kind" : "IdRef", "name" : "'Packed Reference Ids'" }, - { "kind" : "IdRef", "name" : "'Payload'" } - ], - "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ], - "version" : "None" - }, - { - "opname" : "OpSubgroupAvcSicEvaluateWithMultiReferenceInterlacedINTEL", - "class" : "@exclude", - "opcode" : 5807, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Src Image'" }, - { "kind" : "IdRef", "name" : "'Packed Reference Ids'" }, - { "kind" : "IdRef", "name" : "'Packed Reference Field Polarities'" }, - { "kind" : "IdRef", "name" : "'Payload'" } - ], - "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ], - "version" : "None" - }, - { - "opname" : "OpSubgroupAvcSicConvertToMceResultINTEL", - "class" : "@exclude", - "opcode" : 5808, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Payload'" } - ], - "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ], - "version" : "None" - }, - { - "opname" : "OpSubgroupAvcSicGetIpeLumaShapeINTEL", - "class" : "@exclude", - "opcode" : 5809, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Payload'" } - ], - "capabilities" : [ "SubgroupAvcMotionEstimationINTEL", "SubgroupAvcMotionEstimationIntraINTEL" ], - "version" : "None" - }, - { - "opname" : "OpSubgroupAvcSicGetBestIpeLumaDistortionINTEL", - "class" : "@exclude", - "opcode" : 5810, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Payload'" } - ], - "capabilities" : [ "SubgroupAvcMotionEstimationINTEL", "SubgroupAvcMotionEstimationIntraINTEL" ], - "version" : "None" - }, - { - "opname" : "OpSubgroupAvcSicGetBestIpeChromaDistortionINTEL", - "class" : "@exclude", - "opcode" : 5811, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Payload'" } - ], - "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ], - "version" : "None" - }, - { - "opname" : "OpSubgroupAvcSicGetPackedIpeLumaModesINTEL", - "class" : "@exclude", - "opcode" : 5812, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Payload'" } - ], - "capabilities" : [ "SubgroupAvcMotionEstimationINTEL", "SubgroupAvcMotionEstimationIntraINTEL" ], - "version" : "None" - }, - { - "opname" : "OpSubgroupAvcSicGetIpeChromaModeINTEL", - "class" : "@exclude", - "opcode" : 5813, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Payload'" } - ], - "capabilities" : [ "SubgroupAvcMotionEstimationINTEL", "SubgroupAvcMotionEstimationChromaINTEL" ], - "version" : "None" - }, - { - "opname" : "OpSubgroupAvcSicGetPackedSkcLumaCountThresholdINTEL", - "class" : "@exclude", - "opcode" : 5814, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Payload'" } - ], - "capabilities" : [ "SubgroupAvcMotionEstimationINTEL", "SubgroupAvcMotionEstimationIntraINTEL" ], - "version" : "None" - }, - { - "opname" : "OpSubgroupAvcSicGetPackedSkcLumaSumThresholdINTEL", - "class" : "@exclude", - "opcode" : 5815, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Payload'" } - ], - "capabilities" : [ "SubgroupAvcMotionEstimationINTEL", "SubgroupAvcMotionEstimationIntraINTEL" ], - "version" : "None" - }, - { - "opname" : "OpSubgroupAvcSicGetInterRawSadsINTEL", - "class" : "@exclude", - "opcode" : 5816, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Payload'" } - ], - "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" : "OpAliasDomainDeclINTEL", - "class" : "@exclude", - "opcode" : 5911, - "operands" : [ - { "kind" : "IdResult"}, - { "kind" : "IdRef", "quantifier" : "?", "name" : "'Name'" } - ], - "capabilities" : [ "MemoryAccessAliasingINTEL" ], - "extensions" : [ "SPV_INTEL_memory_access_aliasing" ], - "version" : "None" - }, - { - "opname" : "OpAliasScopeDeclINTEL", - "class" : "@exclude", - "opcode" : 5912, - "operands" : [ - { "kind" : "IdResult"}, - { "kind" : "IdRef", "name" : "'Alias Domain'"}, - { "kind" : "IdRef", "quantifier" : "?", "name" : "'Name'" } - ], - "capabilities" : [ "MemoryAccessAliasingINTEL" ], - "extensions" : [ "SPV_INTEL_memory_access_aliasing" ], - "version" : "None" - }, - { - "opname" : "OpAliasScopeListDeclINTEL", - "class" : "@exclude", - "opcode" : 5913, - "operands" : [ - { "kind" : "IdResult"}, - { "kind" : "IdRef", "quantifier" : "*", "name" : "'AliasScope1, AliasScope2, ...'" } - ], - "capabilities" : [ "MemoryAccessAliasingINTEL" ], - "extensions" : [ "SPV_INTEL_memory_access_aliasing" ], - "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" - }, - { - "opname" : "OpConvertFToBF16INTEL", - "class" : "Conversion", - "opcode" : 6116, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Float Value'" } - ], - "capabilities" : [ "BFloat16ConversionINTEL" ], - "version" : "None" - }, - { - "opname" : "OpConvertBF16ToFINTEL", - "class" : "Conversion", - "opcode" : 6117, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'BFloat16 Value'" } - ], - "capabilities" : [ "BFloat16ConversionINTEL" ], - "version" : "None" - }, - { - "opname" : "OpControlBarrierArriveINTEL", - "class" : "Barrier", - "opcode" : 6142, - "operands" : [ - { "kind" : "IdScope", "name" : "'Execution'" }, - { "kind" : "IdScope", "name" : "'Memory'" }, - { "kind" : "IdMemorySemantics", "name" : "'Semantics'" } - ], - "capabilities" : [ "SplitBarrierINTEL" ], - "version" : "None" - }, - { - "opname" : "OpControlBarrierWaitINTEL", - "class" : "Barrier", - "opcode" : 6143, - "operands" : [ - { "kind" : "IdScope", "name" : "'Execution'" }, - { "kind" : "IdScope", "name" : "'Memory'" }, - { "kind" : "IdMemorySemantics", "name" : "'Semantics'" } - ], - "capabilities" : [ "SplitBarrierINTEL" ], - "version" : "None" - }, - { - "opname" : "OpGroupIMulKHR", - "class" : "Group", - "opcode" : 6401, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdScope", "name" : "'Execution'" }, - { "kind" : "GroupOperation", "name" : "'Operation'" }, - { "kind" : "IdRef", "name" : "'X'" } - ], - "capabilities" : [ "GroupUniformArithmeticKHR" ], - "version" : "None" - }, - { - "opname" : "OpGroupFMulKHR", - "class" : "Group", - "opcode" : 6402, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdScope", "name" : "'Execution'" }, - { "kind" : "GroupOperation", "name" : "'Operation'" }, - { "kind" : "IdRef", "name" : "'X'" } - ], - "capabilities" : [ "GroupUniformArithmeticKHR" ], - "version" : "None" - }, - { - "opname" : "OpGroupBitwiseAndKHR", - "class" : "Group", - "opcode" : 6403, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdScope", "name" : "'Execution'" }, - { "kind" : "GroupOperation", "name" : "'Operation'" }, - { "kind" : "IdRef", "name" : "'X'" } - ], - "capabilities" : [ "GroupUniformArithmeticKHR" ], - "version" : "None" - }, - { - "opname" : "OpGroupBitwiseOrKHR", - "class" : "Group", - "opcode" : 6404, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdScope", "name" : "'Execution'" }, - { "kind" : "GroupOperation", "name" : "'Operation'" }, - { "kind" : "IdRef", "name" : "'X'" } - ], - "capabilities" : [ "GroupUniformArithmeticKHR" ], - "version" : "None" - }, - { - "opname" : "OpGroupBitwiseXorKHR", - "class" : "Group", - "opcode" : 6405, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdScope", "name" : "'Execution'" }, - { "kind" : "GroupOperation", "name" : "'Operation'" }, - { "kind" : "IdRef", "name" : "'X'" } - ], - "capabilities" : [ "GroupUniformArithmeticKHR" ], - "version" : "None" - }, - { - "opname" : "OpGroupLogicalAndKHR", - "class" : "Group", - "opcode" : 6406, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdScope", "name" : "'Execution'" }, - { "kind" : "GroupOperation", "name" : "'Operation'" }, - { "kind" : "IdRef", "name" : "'X'" } - ], - "capabilities" : [ "GroupUniformArithmeticKHR" ], - "version" : "None" - }, - { - "opname" : "OpGroupLogicalOrKHR", - "class" : "Group", - "opcode" : 6407, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdScope", "name" : "'Execution'" }, - { "kind" : "GroupOperation", "name" : "'Operation'" }, - { "kind" : "IdRef", "name" : "'X'" } - ], - "capabilities" : [ "GroupUniformArithmeticKHR" ], - "version" : "None" - }, - { - "opname" : "OpGroupLogicalXorKHR", - "class" : "Group", - "opcode" : 6408, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdScope", "name" : "'Execution'" }, - { "kind" : "GroupOperation", "name" : "'Operation'" }, - { "kind" : "IdRef", "name" : "'X'" } - ], - "capabilities" : [ "GroupUniformArithmeticKHR" ], - "version" : "None" - } - ], - "operand_kinds" : [ - { - "category" : "BitEnum", - "kind" : "ImageOperands", - "enumerants" : [ - { - "enumerant" : "None", - "value" : "0x0000" - }, - { - "enumerant" : "Bias", - "value" : "0x0001", - "capabilities" : [ "Shader" ], - "parameters" : [ - { "kind" : "IdRef" } - ] - }, - { - "enumerant" : "Lod", - "value" : "0x0002", - "parameters" : [ - { "kind" : "IdRef" } - ] - }, - { - "enumerant" : "Grad", - "value" : "0x0004", - "parameters" : [ - { "kind" : "IdRef" }, - { "kind" : "IdRef" } - ] - }, - { - "enumerant" : "ConstOffset", - "value" : "0x0008", - "parameters" : [ - { "kind" : "IdRef" } - ] - }, - { - "enumerant" : "Offset", - "value" : "0x0010", - "capabilities" : [ "ImageGatherExtended" ], - "parameters" : [ - { "kind" : "IdRef" } - ] - }, - { - "enumerant" : "ConstOffsets", - "value" : "0x0020", - "capabilities" : [ "ImageGatherExtended" ], - "parameters" : [ - { "kind" : "IdRef" } - ] - }, - { - "enumerant" : "Sample", - "value" : "0x0040", - "parameters" : [ - { "kind" : "IdRef" } - ] - }, - { - "enumerant" : "MinLod", - "value" : "0x0080", - "capabilities" : [ "MinLod" ], - "parameters" : [ - { "kind" : "IdRef" } - ] - }, - { - "enumerant" : "MakeTexelAvailable", - "value" : "0x0100", - "capabilities" : [ "VulkanMemoryModel" ], - "parameters" : [ - { "kind" : "IdScope" } - ], - "version" : "1.5" - }, - { - "enumerant" : "MakeTexelAvailableKHR", - "value" : "0x0100", - "capabilities" : [ "VulkanMemoryModel" ], - "parameters" : [ - { "kind" : "IdScope" } - ], - "extensions" : [ "SPV_KHR_vulkan_memory_model" ], - "version" : "1.5" - }, - { - "enumerant" : "MakeTexelVisible", - "value" : "0x0200", - "capabilities" : [ "VulkanMemoryModel" ], - "parameters" : [ - { "kind" : "IdScope" } - ], - "version" : "1.5" - }, - { - "enumerant" : "MakeTexelVisibleKHR", - "value" : "0x0200", - "capabilities" : [ "VulkanMemoryModel" ], - "parameters" : [ - { "kind" : "IdScope" } - ], - "extensions" : [ "SPV_KHR_vulkan_memory_model" ], - "version" : "1.5" - }, - { - "enumerant" : "NonPrivateTexel", - "value" : "0x0400", - "capabilities" : [ "VulkanMemoryModel" ], - "version" : "1.5" - }, - { - "enumerant" : "NonPrivateTexelKHR", - "value" : "0x0400", - "capabilities" : [ "VulkanMemoryModel" ], - "extensions" : [ "SPV_KHR_vulkan_memory_model" ], - "version" : "1.5" - }, - { - "enumerant" : "VolatileTexel", - "value" : "0x0800", - "capabilities" : [ "VulkanMemoryModel" ], - "version" : "1.5" - }, - { - "enumerant" : "VolatileTexelKHR", - "value" : "0x0800", - "capabilities" : [ "VulkanMemoryModel" ], - "extensions" : [ "SPV_KHR_vulkan_memory_model" ], - "version" : "1.5" - }, - { - "enumerant" : "SignExtend", - "value" : "0x1000", - "version" : "1.4" - }, - { - "enumerant" : "ZeroExtend", - "value" : "0x2000", - "version" : "1.4" - }, - { - "enumerant" : "Nontemporal", - "value" : "0x4000", - "version" : "1.6" - }, - { - "enumerant" : "Offsets", - "value" : "0x10000", - "parameters" : [ - { "kind" : "IdRef" } - ] - } - ] - }, - { - "category" : "BitEnum", - "kind" : "FPFastMathMode", - "enumerants" : [ - { - "enumerant" : "None", - "value" : "0x0000" - }, - { - "enumerant" : "NotNaN", - "value" : "0x0001" - }, - { - "enumerant" : "NotInf", - "value" : "0x0002" - }, - { - "enumerant" : "NSZ", - "value" : "0x0004" - }, - { - "enumerant" : "AllowRecip", - "value" : "0x0008" - }, - { - "enumerant" : "Fast", - "value" : "0x0010" - }, - { - "enumerant" : "AllowContractFastINTEL", - "value" : "0x10000", - "capabilities" : [ "FPFastMathModeINTEL" ], - "version" : "None" - }, - { - "enumerant" : "AllowReassocINTEL", - "value" : "0x20000", - "capabilities" : [ "FPFastMathModeINTEL" ], - "version" : "None" - } - ] - }, - { - "category" : "BitEnum", - "kind" : "SelectionControl", - "enumerants" : [ - { - "enumerant" : "None", - "value" : "0x0000" - }, - { - "enumerant" : "Flatten", - "value" : "0x0001" - }, - { - "enumerant" : "DontFlatten", - "value" : "0x0002" - } - ] - }, - { - "category" : "BitEnum", - "kind" : "LoopControl", - "enumerants" : [ - { - "enumerant" : "None", - "value" : "0x0000" - }, - { - "enumerant" : "Unroll", - "value" : "0x0001" - }, - { - "enumerant" : "DontUnroll", - "value" : "0x0002" - }, - { - "enumerant" : "DependencyInfinite", - "value" : "0x0004", - "version" : "1.1" - }, - { - "enumerant" : "DependencyLength", - "value" : "0x0008", - "parameters" : [ - { "kind" : "LiteralInteger" } - ], - "version" : "1.1" - }, - { - "enumerant" : "MinIterations", - "value" : "0x0010", - "parameters" : [ - { "kind" : "LiteralInteger" } - ], - "version" : "1.4" - }, - { - "enumerant" : "MaxIterations", - "value" : "0x0020", - "parameters" : [ - { "kind" : "LiteralInteger" } - ], - "version" : "1.4" - }, - { - "enumerant" : "IterationMultiple", - "value" : "0x0040", - "parameters" : [ - { "kind" : "LiteralInteger" } - ], - "version" : "1.4" - }, - { - "enumerant" : "PeelCount", - "value" : "0x0080", - "parameters" : [ - { "kind" : "LiteralInteger" } - ], - "version" : "1.4" - }, - { - "enumerant" : "PartialCount", - "value" : "0x0100", - "parameters" : [ - { "kind" : "LiteralInteger" } - ], - "version" : "1.4" - }, - { - "enumerant" : "InitiationIntervalINTEL", - "value" : "0x10000", - "parameters" : [ - { "kind" : "LiteralInteger" } - ], - "capabilities" : [ "FPGALoopControlsINTEL" ], - "version" : "None" - }, - { - "enumerant" : "MaxConcurrencyINTEL", - "value" : "0x20000", - "parameters" : [ - { "kind" : "LiteralInteger" } - ], - "capabilities" : [ "FPGALoopControlsINTEL" ], - "version" : "None" - }, - { - "enumerant" : "DependencyArrayINTEL", - "value" : "0x40000", - "parameters" : [ - { "kind" : "LiteralInteger" } - ], - "capabilities" : [ "FPGALoopControlsINTEL" ], - "version" : "None" - }, - { - "enumerant" : "PipelineEnableINTEL", - "value" : "0x80000", - "parameters" : [ - { "kind" : "LiteralInteger" } - ], - "capabilities" : [ "FPGALoopControlsINTEL" ], - "version" : "None" - }, - { - "enumerant" : "LoopCoalesceINTEL", - "value" : "0x100000", - "parameters" : [ - { "kind" : "LiteralInteger" } - ], - "capabilities" : [ "FPGALoopControlsINTEL" ], - "version" : "None" - }, - { - "enumerant" : "MaxInterleavingINTEL", - "value" : "0x200000", - "parameters" : [ - { "kind" : "LiteralInteger" } - ], - "capabilities" : [ "FPGALoopControlsINTEL" ], - "version" : "None" - }, - { - "enumerant" : "SpeculatedIterationsINTEL", - "value" : "0x400000", - "parameters" : [ - { "kind" : "LiteralInteger" } - ], - "capabilities" : [ "FPGALoopControlsINTEL" ], - "version" : "None" - }, - { - "enumerant" : "NoFusionINTEL", - "value" : "0x800000", - "capabilities" : [ "FPGALoopControlsINTEL" ], - "version" : "None" - }, - { - "enumerant" : "LoopCountINTEL", - "value" : "0x1000000", - "parameters" : [ - { "kind" : "LiteralInteger" } - ], - "capabilities" : [ "FPGALoopControlsINTEL" ], - "version" : "None" - }, - { - "enumerant" : "MaxReinvocationDelayINTEL", - "value" : "0x2000000", - "parameters" : [ - { "kind" : "LiteralInteger" } - ], - "capabilities" : [ "FPGALoopControlsINTEL" ], - "version" : "None" - } - ] - }, - { - "category" : "BitEnum", - "kind" : "FunctionControl", - "enumerants" : [ - { - "enumerant" : "None", - "value" : "0x0000" - }, - { - "enumerant" : "Inline", - "value" : "0x0001" - }, - { - "enumerant" : "DontInline", - "value" : "0x0002" - }, - { - "enumerant" : "Pure", - "value" : "0x0004" - }, - { - "enumerant" : "Const", - "value" : "0x0008" - }, - { - "enumerant" : "OptNoneINTEL", - "value" : "0x10000", - "capabilities" : [ "OptNoneINTEL" ], - "version" : "None" - } - ] - }, - { - "category" : "BitEnum", - "kind" : "MemorySemantics", - "enumerants" : [ - { - "enumerant" : "Relaxed", - "value" : "0x0000" - }, - { - "enumerant" : "None", - "value" : "0x0000" - }, - { - "enumerant" : "Acquire", - "value" : "0x0002" - }, - { - "enumerant" : "Release", - "value" : "0x0004" - }, - { - "enumerant" : "AcquireRelease", - "value" : "0x0008" - }, - { - "enumerant" : "SequentiallyConsistent", - "value" : "0x0010" - }, - { - "enumerant" : "UniformMemory", - "value" : "0x0040", - "capabilities" : [ "Shader" ] - }, - { - "enumerant" : "SubgroupMemory", - "value" : "0x0080" - }, - { - "enumerant" : "WorkgroupMemory", - "value" : "0x0100" - }, - { - "enumerant" : "CrossWorkgroupMemory", - "value" : "0x0200" - }, - { - "enumerant" : "AtomicCounterMemory", - "value" : "0x0400", - "capabilities" : [ "AtomicStorage" ] - }, - { - "enumerant" : "ImageMemory", - "value" : "0x0800" - }, - { - "enumerant" : "OutputMemory", - "value" : "0x1000", - "capabilities" : [ "VulkanMemoryModel" ], - "version" : "1.5" - }, - { - "enumerant" : "OutputMemoryKHR", - "value" : "0x1000", - "capabilities" : [ "VulkanMemoryModel" ], - "extensions" : [ "SPV_KHR_vulkan_memory_model" ], - "version" : "1.5" - }, - { - "enumerant" : "MakeAvailable", - "value" : "0x2000", - "capabilities" : [ "VulkanMemoryModel" ], - "version" : "1.5" - }, - { - "enumerant" : "MakeAvailableKHR", - "value" : "0x2000", - "capabilities" : [ "VulkanMemoryModel" ], - "extensions" : [ "SPV_KHR_vulkan_memory_model" ], - "version" : "1.5" - }, - { - "enumerant" : "MakeVisible", - "value" : "0x4000", - "capabilities" : [ "VulkanMemoryModel" ], - "version" : "1.5" - }, - { - "enumerant" : "MakeVisibleKHR", - "value" : "0x4000", - "capabilities" : [ "VulkanMemoryModel" ], - "extensions" : [ "SPV_KHR_vulkan_memory_model" ], - "version" : "1.5" - }, - { - "enumerant" : "Volatile", - "value" : "0x8000", - "capabilities" : [ "VulkanMemoryModel" ], - "extensions" : [ "SPV_KHR_vulkan_memory_model" ], - "version" : "1.5" - } - ] - }, - { - "category" : "BitEnum", - "kind" : "MemoryAccess", - "enumerants" : [ - { - "enumerant" : "None", - "value" : "0x0000" - }, - { - "enumerant" : "Volatile", - "value" : "0x0001" - }, - { - "enumerant" : "Aligned", - "value" : "0x0002", - "parameters" : [ - { "kind" : "LiteralInteger" } - ] - }, - { - "enumerant" : "Nontemporal", - "value" : "0x0004" - }, - { - "enumerant" : "MakePointerAvailable", - "value" : "0x0008", - "parameters" : [ - { "kind" : "IdScope" } - ], - "capabilities" : [ "VulkanMemoryModel" ], - "version" : "1.5" - }, - { - "enumerant" : "MakePointerAvailableKHR", - "value" : "0x0008", - "parameters" : [ - { "kind" : "IdScope" } - ], - "capabilities" : [ "VulkanMemoryModel" ], - "extensions" : [ "SPV_KHR_vulkan_memory_model" ], - "version" : "1.5" - }, - { - "enumerant" : "MakePointerVisible", - "value" : "0x0010", - "parameters" : [ - { "kind" : "IdScope" } - ], - "capabilities" : [ "VulkanMemoryModel" ], - "version" : "1.5" - }, - { - "enumerant" : "MakePointerVisibleKHR", - "value" : "0x0010", - "parameters" : [ - { "kind" : "IdScope" } - ], - "capabilities" : [ "VulkanMemoryModel" ], - "extensions" : [ "SPV_KHR_vulkan_memory_model" ], - "version" : "1.5" - }, - { - "enumerant" : "NonPrivatePointer", - "value" : "0x0020", - "capabilities" : [ "VulkanMemoryModel" ], - "version" : "1.5" - }, - { - "enumerant" : "NonPrivatePointerKHR", - "value" : "0x0020", - "capabilities" : [ "VulkanMemoryModel" ], - "extensions" : [ "SPV_KHR_vulkan_memory_model" ], - "version" : "1.5" - }, - { - "enumerant" : "AliasScopeINTELMask", - "value" : "0x10000", - "parameters" : [ - { "kind" : "IdRef" } - ], - "capabilities" : [ "MemoryAccessAliasingINTEL" ], - "extensions" : [ "SPV_INTEL_memory_access_aliasing" ], - "version" : "None" - }, - { - "enumerant" : "NoAliasINTELMask", - "parameters" : [ - { "kind" : "IdRef" } - ], - "value" : "0x20000", - "capabilities" : [ "MemoryAccessAliasingINTEL" ], - "extensions" : [ "SPV_INTEL_memory_access_aliasing" ], - "version" : "None" - } - ] - }, - { - "category" : "BitEnum", - "kind" : "KernelProfilingInfo", - "enumerants" : [ - { - "enumerant" : "None", - "value" : "0x0000" - }, - { - "enumerant" : "CmdExecTime", - "value" : "0x0001", - "capabilities" : [ "Kernel" ] - } - ] - }, - { - "category" : "BitEnum", - "kind" : "RayFlags", - "enumerants" : [ - { - "enumerant" : "NoneKHR", - "value" : "0x0000", - "capabilities" : [ "RayQueryKHR","RayTracingKHR" ], - "version" : "None" - }, - { - "enumerant" : "OpaqueKHR", - "value" : "0x0001", - "capabilities" : [ "RayQueryKHR","RayTracingKHR" ], - "version" : "None" - }, - { - "enumerant" : "NoOpaqueKHR", - "value" : "0x0002", - "capabilities" : [ "RayQueryKHR","RayTracingKHR" ], - "version" : "None" - }, - { - "enumerant" : "TerminateOnFirstHitKHR", - "value" : "0x0004", - "capabilities" : [ "RayQueryKHR","RayTracingKHR" ], - "version" : "None" - }, - { - "enumerant" : "SkipClosestHitShaderKHR", - "value" : "0x0008", - "capabilities" : [ "RayQueryKHR","RayTracingKHR" ], - "version" : "None" - }, - { - "enumerant" : "CullBackFacingTrianglesKHR", - "value" : "0x0010", - "capabilities" : [ "RayQueryKHR","RayTracingKHR" ], - "version" : "None" - }, - { - "enumerant" : "CullFrontFacingTrianglesKHR", - "value" : "0x0020", - "capabilities" : [ "RayQueryKHR","RayTracingKHR" ], - "version" : "None" - }, - { - "enumerant" : "CullOpaqueKHR", - "value" : "0x0040", - "capabilities" : [ "RayQueryKHR","RayTracingKHR" ], - "version" : "None" - }, - { - "enumerant" : "CullNoOpaqueKHR", - "value" : "0x0080", - "capabilities" : [ "RayQueryKHR","RayTracingKHR" ], - "version" : "None" - }, - { - "enumerant" : "SkipTrianglesKHR", - "value" : "0x0100", - "capabilities" : [ "RayTraversalPrimitiveCullingKHR" ], - "version" : "None" - }, - { - "enumerant" : "SkipAABBsKHR", - "value" : "0x0200", - "capabilities" : [ "RayTraversalPrimitiveCullingKHR" ], - "version" : "None" - }, - { - "enumerant" : "ForceOpacityMicromap2StateEXT", - "value" : "0x0400", - "capabilities" : [ "RayTracingOpacityMicromapEXT" ], - "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" - } - ] - }, - { - "category" : "ValueEnum", - "kind" : "SourceLanguage", - "enumerants" : [ - { - "enumerant" : "Unknown", - "value" : 0 - }, - { - "enumerant" : "ESSL", - "value" : 1 - }, - { - "enumerant" : "GLSL", - "value" : 2 - }, - { - "enumerant" : "OpenCL_C", - "value" : 3 - }, - { - "enumerant" : "OpenCL_CPP", - "value" : 4 - }, - { - "enumerant" : "HLSL", - "value" : 5 - }, - { - "enumerant" : "CPP_for_OpenCL", - "value" : 6 - }, - { - "enumerant" : "SYCL", - "value" : 7 - }, - { - "enumerant" : "HERO_C", - "value" : 8 - }, - { - "enumerant" : "NZSL", - "value" : 9 - }, - { - "enumerant" : "WGSL", - "value" : 10 - } - ] - }, - { - "category" : "ValueEnum", - "kind" : "ExecutionModel", - "enumerants" : [ - { - "enumerant" : "Vertex", - "value" : 0, - "capabilities" : [ "Shader" ] - }, - { - "enumerant" : "TessellationControl", - "value" : 1, - "capabilities" : [ "Tessellation" ] - }, - { - "enumerant" : "TessellationEvaluation", - "value" : 2, - "capabilities" : [ "Tessellation" ] - }, - { - "enumerant" : "Geometry", - "value" : 3, - "capabilities" : [ "Geometry" ] - }, - { - "enumerant" : "Fragment", - "value" : 4, - "capabilities" : [ "Shader" ] - }, - { - "enumerant" : "GLCompute", - "value" : 5, - "capabilities" : [ "Shader" ] - }, - { - "enumerant" : "Kernel", - "value" : 6, - "capabilities" : [ "Kernel" ] - }, - { - "enumerant" : "TaskNV", - "value" : 5267, - "capabilities" : [ "MeshShadingNV" ], - "version" : "None" - }, - { - "enumerant" : "MeshNV", - "value" : 5268, - "capabilities" : [ "MeshShadingNV" ], - "version" : "None" - }, - { - "enumerant" : "RayGenerationNV", - "value" : 5313, - "capabilities" : [ "RayTracingNV" , "RayTracingKHR" ], - "version" : "None" - }, - { - "enumerant" : "RayGenerationKHR", - "value" : 5313, - "capabilities" : [ "RayTracingNV" , "RayTracingKHR" ], - "version" : "None" - }, - { - "enumerant" : "IntersectionNV", - "value" : 5314, - "capabilities" : [ "RayTracingNV" , "RayTracingKHR" ], - "version" : "None" - }, - { - "enumerant" : "IntersectionKHR", - "value" : 5314, - "capabilities" : [ "RayTracingNV" , "RayTracingKHR" ], - "version" : "None" - }, - { - "enumerant" : "AnyHitNV", - "value" : 5315, - "capabilities" : [ "RayTracingNV" , "RayTracingKHR" ], - "version" : "None" - }, - { - "enumerant" : "AnyHitKHR", - "value" : 5315, - "capabilities" : [ "RayTracingNV" , "RayTracingKHR" ], - "version" : "None" - }, - { - "enumerant" : "ClosestHitNV", - "value" : 5316, - "capabilities" : [ "RayTracingNV" , "RayTracingKHR" ], - "version" : "None" - }, - { - "enumerant" : "ClosestHitKHR", - "value" : 5316, - "capabilities" : [ "RayTracingNV" , "RayTracingKHR" ], - "version" : "None" - }, - { - "enumerant" : "MissNV", - "value" : 5317, - "capabilities" : [ "RayTracingNV" , "RayTracingKHR" ], - "version" : "None" - }, - { - "enumerant" : "MissKHR", - "value" : 5317, - "capabilities" : [ "RayTracingNV" , "RayTracingKHR" ], - "version" : "None" - }, - { - "enumerant" : "CallableNV", - "value" : 5318, - "capabilities" : [ "RayTracingNV" , "RayTracingKHR" ], - "version" : "None" - }, - { - "enumerant" : "CallableKHR", - "value" : 5318, - "capabilities" : [ "RayTracingNV" , "RayTracingKHR" ], - "version" : "None" - }, - { - "enumerant" : "TaskEXT", - "value" : 5364, - "capabilities" : [ "MeshShadingEXT" ], - "version" : "None" - }, - { - "enumerant" : "MeshEXT", - "value" : 5365, - "capabilities" : [ "MeshShadingEXT" ], - "version" : "None" - } - ] - }, - { - "category" : "ValueEnum", - "kind" : "AddressingModel", - "enumerants" : [ - { - "enumerant" : "Logical", - "value" : 0 - }, - { - "enumerant" : "Physical32", - "value" : 1, - "capabilities" : [ "Addresses" ] - }, - { - "enumerant" : "Physical64", - "value" : 2, - "capabilities" : [ "Addresses" ] - }, - { - "enumerant" : "PhysicalStorageBuffer64", - "value" : 5348, - "extensions" : [ "SPV_EXT_physical_storage_buffer", "SPV_KHR_physical_storage_buffer" ], - "capabilities" : [ "PhysicalStorageBufferAddresses" ], - "version" : "1.5" - }, - { - "enumerant" : "PhysicalStorageBuffer64EXT", - "value" : 5348, - "extensions" : [ "SPV_EXT_physical_storage_buffer" ], - "capabilities" : [ "PhysicalStorageBufferAddresses" ], - "version" : "1.5" - } - ] - }, - { - "category" : "ValueEnum", - "kind" : "MemoryModel", - "enumerants" : [ - { - "enumerant" : "Simple", - "value" : 0, - "capabilities" : [ "Shader" ] - }, - { - "enumerant" : "GLSL450", - "value" : 1, - "capabilities" : [ "Shader" ] - }, - { - "enumerant" : "OpenCL", - "value" : 2, - "capabilities" : [ "Kernel" ] - }, - { - "enumerant" : "Vulkan", - "value" : 3, - "capabilities" : [ "VulkanMemoryModel" ], - "version" : "1.5" - }, - { - "enumerant" : "VulkanKHR", - "value" : 3, - "capabilities" : [ "VulkanMemoryModel" ], - "extensions" : [ "SPV_KHR_vulkan_memory_model" ], - "version" : "1.5" - } - ] - }, - { - "category" : "ValueEnum", - "kind" : "ExecutionMode", - "enumerants" : [ - { - "enumerant" : "Invocations", - "value" : 0, - "capabilities" : [ "Geometry" ], - "parameters" : [ - { "kind" : "LiteralInteger", "name" : "'Number of <>'" } - ] - }, - { - "enumerant" : "SpacingEqual", - "value" : 1, - "capabilities" : [ "Tessellation" ] - }, - { - "enumerant" : "SpacingFractionalEven", - "value" : 2, - "capabilities" : [ "Tessellation" ] - }, - { - "enumerant" : "SpacingFractionalOdd", - "value" : 3, - "capabilities" : [ "Tessellation" ] - }, - { - "enumerant" : "VertexOrderCw", - "value" : 4, - "capabilities" : [ "Tessellation" ] - }, - { - "enumerant" : "VertexOrderCcw", - "value" : 5, - "capabilities" : [ "Tessellation" ] - }, - { - "enumerant" : "PixelCenterInteger", - "value" : 6, - "capabilities" : [ "Shader" ] - }, - { - "enumerant" : "OriginUpperLeft", - "value" : 7, - "capabilities" : [ "Shader" ] - }, - { - "enumerant" : "OriginLowerLeft", - "value" : 8, - "capabilities" : [ "Shader" ] - }, - { - "enumerant" : "EarlyFragmentTests", - "value" : 9, - "capabilities" : [ "Shader" ] - }, - { - "enumerant" : "PointMode", - "value" : 10, - "capabilities" : [ "Tessellation" ] - }, - { - "enumerant" : "Xfb", - "value" : 11, - "capabilities" : [ "TransformFeedback" ] - }, - { - "enumerant" : "DepthReplacing", - "value" : 12, - "capabilities" : [ "Shader" ] - }, - { - "enumerant" : "DepthGreater", - "value" : 14, - "capabilities" : [ "Shader" ] - }, - { - "enumerant" : "DepthLess", - "value" : 15, - "capabilities" : [ "Shader" ] - }, - { - "enumerant" : "DepthUnchanged", - "value" : 16, - "capabilities" : [ "Shader" ] - }, - { - "enumerant" : "LocalSize", - "value" : 17, - "parameters" : [ - { "kind" : "LiteralInteger", "name" : "'x size'" }, - { "kind" : "LiteralInteger", "name" : "'y size'" }, - { "kind" : "LiteralInteger", "name" : "'z size'" } - ] - }, - { - "enumerant" : "LocalSizeHint", - "value" : 18, - "capabilities" : [ "Kernel" ], - "parameters" : [ - { "kind" : "LiteralInteger", "name" : "'x size'" }, - { "kind" : "LiteralInteger", "name" : "'y size'" }, - { "kind" : "LiteralInteger", "name" : "'z size'" } - ] - }, - { - "enumerant" : "InputPoints", - "value" : 19, - "capabilities" : [ "Geometry" ] - }, - { - "enumerant" : "InputLines", - "value" : 20, - "capabilities" : [ "Geometry" ] - }, - { - "enumerant" : "InputLinesAdjacency", - "value" : 21, - "capabilities" : [ "Geometry" ] - }, - { - "enumerant" : "Triangles", - "value" : 22, - "capabilities" : [ "Geometry", "Tessellation" ] - }, - { - "enumerant" : "InputTrianglesAdjacency", - "value" : 23, - "capabilities" : [ "Geometry" ] - }, - { - "enumerant" : "Quads", - "value" : 24, - "capabilities" : [ "Tessellation" ] - }, - { - "enumerant" : "Isolines", - "value" : 25, - "capabilities" : [ "Tessellation" ] - }, - { - "enumerant" : "OutputVertices", - "value" : 26, - "capabilities" : [ "Geometry", "Tessellation", "MeshShadingNV", "MeshShadingEXT" ], - "parameters" : [ - { "kind" : "LiteralInteger", "name" : "'Vertex count'" } - ] - }, - { - "enumerant" : "OutputPoints", - "value" : 27, - "capabilities" : [ "Geometry", "MeshShadingNV", "MeshShadingEXT" ] - }, - { - "enumerant" : "OutputLineStrip", - "value" : 28, - "capabilities" : [ "Geometry" ] - }, - { - "enumerant" : "OutputTriangleStrip", - "value" : 29, - "capabilities" : [ "Geometry" ] - }, - { - "enumerant" : "VecTypeHint", - "value" : 30, - "capabilities" : [ "Kernel" ], - "parameters" : [ - { "kind" : "LiteralInteger", "name" : "'Vector type'" } - ] - }, - { - "enumerant" : "ContractionOff", - "value" : 31, - "capabilities" : [ "Kernel" ] - }, - { - "enumerant" : "Initializer", - "value" : 33, - "capabilities" : [ "Kernel" ], - "version" : "1.1" - }, - { - "enumerant" : "Finalizer", - "value" : 34, - "capabilities" : [ "Kernel" ], - "version" : "1.1" - }, - { - "enumerant" : "SubgroupSize", - "value" : 35, - "capabilities" : [ "SubgroupDispatch" ], - "parameters" : [ - { "kind" : "LiteralInteger", "name" : "'Subgroup Size'" } - ], - "version" : "1.1" - }, - { - "enumerant" : "SubgroupsPerWorkgroup", - "value" : 36, - "capabilities" : [ "SubgroupDispatch" ], - "parameters" : [ - { "kind" : "LiteralInteger", "name" : "'Subgroups Per Workgroup'" } - ], - "version" : "1.1" - }, - { - "enumerant" : "SubgroupsPerWorkgroupId", - "value" : 37, - "capabilities" : [ "SubgroupDispatch" ], - "parameters" : [ - { "kind" : "IdRef", "name" : "'Subgroups Per Workgroup'" } - ], - "version" : "1.2" - }, - { - "enumerant" : "LocalSizeId", - "value" : 38, - "parameters" : [ - { "kind" : "IdRef", "name" : "'x size'" }, - { "kind" : "IdRef", "name" : "'y size'" }, - { "kind" : "IdRef", "name" : "'z size'" } - ], - "version" : "1.2" - }, - { - "enumerant" : "LocalSizeHintId", - "value" : 39, - "capabilities" : [ "Kernel" ], - "parameters" : [ - { "kind" : "IdRef", "name" : "'x size hint'" }, - { "kind" : "IdRef", "name" : "'y size hint'" }, - { "kind" : "IdRef", "name" : "'z size hint'" } - ], - "version" : "1.2" - }, - { - "enumerant" : "NonCoherentColorAttachmentReadEXT", - "value" : 4169, - "capabilities" : [ "TileImageColorReadAccessEXT" ], - "version" : "None" - }, - { - "enumerant" : "NonCoherentDepthAttachmentReadEXT", - "value" : 4170, - "capabilities" : [ "TileImageDepthReadAccessEXT" ], - "version" : "None" - }, - { - "enumerant" : "NonCoherentStencilAttachmentReadEXT", - "value" : 4171, - "capabilities" : [ "TileImageStencilReadAccessEXT" ], - "version" : "None" - }, - { - "enumerant" : "SubgroupUniformControlFlowKHR", - "value" : 4421, - "capabilities" : [ "Shader" ], - "extensions" : [ "SPV_KHR_subgroup_uniform_control_flow" ], - "version" : "None" - }, - { - "enumerant" : "PostDepthCoverage", - "value" : 4446, - "capabilities" : [ "SampleMaskPostDepthCoverage" ], - "extensions" : [ "SPV_KHR_post_depth_coverage" ], - "version" : "None" - }, - { - "enumerant" : "DenormPreserve", - "value" : 4459, - "capabilities" : [ "DenormPreserve" ], - "extensions" : [ "SPV_KHR_float_controls" ], - "parameters" : [ - { "kind" : "LiteralInteger", "name" : "'Target Width'" } - ], - "version" : "1.4" - }, - { - "enumerant" : "DenormFlushToZero", - "value" : 4460, - "capabilities" : [ "DenormFlushToZero" ], - "extensions" : [ "SPV_KHR_float_controls" ], - "parameters" : [ - { "kind" : "LiteralInteger", "name" : "'Target Width'" } - ], - "version" : "1.4" - }, - { - "enumerant" : "SignedZeroInfNanPreserve", - "value" : 4461, - "capabilities" : [ "SignedZeroInfNanPreserve" ], - "extensions" : [ "SPV_KHR_float_controls" ], - "parameters" : [ - { "kind" : "LiteralInteger", "name" : "'Target Width'" } - ], - "version" : "1.4" - }, - { - "enumerant" : "RoundingModeRTE", - "value" : 4462, - "capabilities" : [ "RoundingModeRTE" ], - "extensions" : [ "SPV_KHR_float_controls" ], - "parameters" : [ - { "kind" : "LiteralInteger", "name" : "'Target Width'" } - ], - "version" : "1.4" - }, - { - "enumerant" : "RoundingModeRTZ", - "value" : 4463, - "capabilities" : [ "RoundingModeRTZ" ], - "extensions" : [ "SPV_KHR_float_controls" ], - "parameters" : [ - { "kind" : "LiteralInteger", "name" : "'Target Width'" } - ], - "version" : "1.4" - }, - { - "enumerant": "EarlyAndLateFragmentTestsAMD", - "value": 5017, - "capabilities": [ "Shader" ], - "extensions": [ "SPV_AMD_shader_early_and_late_fragment_tests" ], - "version": "None" - }, - { - "enumerant" : "StencilRefReplacingEXT", - "value" : 5027, - "capabilities" : [ "StencilExportEXT" ], - "extensions" : [ "SPV_EXT_shader_stencil_export" ], - "version" : "None" - }, - { - "enumerant": "StencilRefUnchangedFrontAMD", - "value": 5079, - "capabilities": [ "StencilExportEXT" ], - "extensions": [ "SPV_AMD_shader_early_and_late_fragment_tests", "SPV_EXT_shader_stencil_export" ], - "version": "None" - }, - { - "enumerant": "StencilRefGreaterFrontAMD", - "value": 5080, - "capabilities": [ "StencilExportEXT" ], - "extensions": [ "SPV_AMD_shader_early_and_late_fragment_tests", "SPV_EXT_shader_stencil_export" ], - "version": "None" - }, - { - "enumerant": "StencilRefLessFrontAMD", - "value": 5081, - "capabilities": [ "StencilExportEXT" ], - "extensions": [ "SPV_AMD_shader_early_and_late_fragment_tests", "SPV_EXT_shader_stencil_export" ], - "version": "None" - }, - { - "enumerant": "StencilRefUnchangedBackAMD", - "value": 5082, - "capabilities": [ "StencilExportEXT" ], - "extensions": [ "SPV_AMD_shader_early_and_late_fragment_tests", "SPV_EXT_shader_stencil_export" ], - "version": "None" - }, - { - "enumerant": "StencilRefGreaterBackAMD", - "value": 5083, - "capabilities": [ "StencilExportEXT" ], - "extensions": [ "SPV_AMD_shader_early_and_late_fragment_tests", "SPV_EXT_shader_stencil_export" ], - "version": "None" - }, - { - "enumerant": "StencilRefLessBackAMD", - "value": 5084, - "capabilities": [ "StencilExportEXT" ], - "extensions": [ "SPV_AMD_shader_early_and_late_fragment_tests", "SPV_EXT_shader_stencil_export" ], - "version": "None" - }, - { - "enumerant" : "OutputLinesNV", - "value" : 5269, - "capabilities" : [ "MeshShadingNV", "MeshShadingEXT" ], - "extensions" : [ "SPV_NV_mesh_shader", "SPV_EXT_mesh_shader" ], - "version" : "None" - }, - { - "enumerant" : "OutputLinesEXT", - "value" : 5269, - "capabilities" : [ "MeshShadingNV", "MeshShadingEXT" ], - "extensions" : [ "SPV_NV_mesh_shader", "SPV_EXT_mesh_shader" ], - "version" : "None" - }, - { - "enumerant" : "OutputPrimitivesNV", - "value" : 5270, - "capabilities" : [ "MeshShadingNV", "MeshShadingEXT" ], - "parameters" : [ - { "kind" : "LiteralInteger", "name" : "'Primitive count'" } - ], - "extensions" : [ "SPV_NV_mesh_shader", "SPV_EXT_mesh_shader" ], - "version" : "None" - }, - { - "enumerant" : "OutputPrimitivesEXT", - "value" : 5270, - "capabilities" : [ "MeshShadingNV", "MeshShadingEXT" ], - "parameters" : [ - { "kind" : "LiteralInteger", "name" : "'Primitive count'" } - ], - "extensions" : [ "SPV_NV_mesh_shader", "SPV_EXT_mesh_shader" ], - "version" : "None" - }, - { - "enumerant" : "DerivativeGroupQuadsNV", - "value" : 5289, - "capabilities" : [ "ComputeDerivativeGroupQuadsNV" ], - "extensions" : [ "SPV_NV_compute_shader_derivatives" ], - "version" : "None" - }, - { - "enumerant" : "DerivativeGroupLinearNV", - "value" : 5290, - "capabilities" : [ "ComputeDerivativeGroupLinearNV" ], - "extensions" : [ "SPV_NV_compute_shader_derivatives" ], - "version" : "None" - }, - { - "enumerant" : "OutputTrianglesNV", - "value" : 5298, - "capabilities" : [ "MeshShadingNV", "MeshShadingEXT" ], - "extensions" : [ "SPV_NV_mesh_shader", "SPV_EXT_mesh_shader" ], - "version" : "None" - }, - { - "enumerant" : "OutputTrianglesEXT", - "value" : 5298, - "capabilities" : [ "MeshShadingNV", "MeshShadingEXT" ], - "extensions" : [ "SPV_NV_mesh_shader", "SPV_EXT_mesh_shader" ], - "version" : "None" - }, - { - "enumerant" : "PixelInterlockOrderedEXT", - "value" : 5366, - "capabilities" : [ "FragmentShaderPixelInterlockEXT" ], - "extensions" : [ "SPV_EXT_fragment_shader_interlock" ], - "version" : "None" - }, - { - "enumerant" : "PixelInterlockUnorderedEXT", - "value" : 5367, - "capabilities" : [ "FragmentShaderPixelInterlockEXT" ], - "extensions" : [ "SPV_EXT_fragment_shader_interlock" ], - "version" : "None" - }, - { - "enumerant" : "SampleInterlockOrderedEXT", - "value" : 5368, - "capabilities" : [ "FragmentShaderSampleInterlockEXT" ], - "extensions" : [ "SPV_EXT_fragment_shader_interlock" ], - "version" : "None" - }, - { - "enumerant" : "SampleInterlockUnorderedEXT", - "value" : 5369, - "capabilities" : [ "FragmentShaderSampleInterlockEXT" ], - "extensions" : [ "SPV_EXT_fragment_shader_interlock" ], - "version" : "None" - }, - { - "enumerant" : "ShadingRateInterlockOrderedEXT", - "value" : 5370, - "capabilities" : [ "FragmentShaderShadingRateInterlockEXT" ], - "extensions" : [ "SPV_EXT_fragment_shader_interlock" ], - "version" : "None" - }, - { - "enumerant" : "ShadingRateInterlockUnorderedEXT", - "value" : 5371, - "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" - }, - { - "enumerant" : "StreamingInterfaceINTEL", - "value" : 6154, - "parameters" : [ - { "kind" : "LiteralInteger", "name" : "'StallFreeReturn'" } - ], - "capabilities" : [ "FPGAKernelAttributesINTEL" ], - "version" : "None" - }, - { - "enumerant" : "RegisterMapInterfaceINTEL", - "value" : 6160, - "parameters" : [ - { "kind" : "LiteralInteger", "name" : "'WaitForDoneWrite'" } - ], - "capabilities" : [ "FPGAKernelAttributesv2INTEL" ], - "version" : "None" - }, - { - "enumerant" : "NamedBarrierCountINTEL", - "value" : 6417, - "parameters" : [ - { "kind" : "LiteralInteger", "name" : "'Barrier Count'" } - ], - "capabilities" : [ "VectorComputeINTEL" ], - "version" : "None" - } - ] - }, - { - "category" : "ValueEnum", - "kind" : "StorageClass", - "enumerants" : [ - { - "enumerant" : "UniformConstant", - "value" : 0 - }, - { - "enumerant" : "Input", - "value" : 1 - }, - { - "enumerant" : "Uniform", - "value" : 2, - "capabilities" : [ "Shader" ] - }, - { - "enumerant" : "Output", - "value" : 3, - "capabilities" : [ "Shader" ] - }, - { - "enumerant" : "Workgroup", - "value" : 4 - }, - { - "enumerant" : "CrossWorkgroup", - "value" : 5 - }, - { - "enumerant" : "Private", - "value" : 6, - "capabilities" : [ "Shader", "VectorComputeINTEL" ] - }, - { - "enumerant" : "Function", - "value" : 7 - }, - { - "enumerant" : "Generic", - "value" : 8, - "capabilities" : [ "GenericPointer" ] - }, - { - "enumerant" : "PushConstant", - "value" : 9, - "capabilities" : [ "Shader" ] - }, - { - "enumerant" : "AtomicCounter", - "value" : 10, - "capabilities" : [ "AtomicStorage" ] - }, - { - "enumerant" : "Image", - "value" : 11 - }, - { - "enumerant" : "StorageBuffer", - "value" : 12, - "extensions" : [ - "SPV_KHR_storage_buffer_storage_class", - "SPV_KHR_variable_pointers" - ], - "capabilities" : [ "Shader" ], - "version" : "1.3" - }, - { - "enumerant" : "TileImageEXT", - "value" : 4172, - "capabilities" : [ "TileImageColorReadAccessEXT" ], - "version" : "None" - }, - { - "enumerant" : "CallableDataNV", - "value" : 5328, - "extensions" : [ "SPV_NV_ray_tracing" , "SPV_KHR_ray_tracing" ], - "capabilities" : [ "RayTracingNV" , "RayTracingKHR" ], - "version" : "None" - }, - { - "enumerant" : "CallableDataKHR", - "value" : 5328, - "extensions" : [ "SPV_NV_ray_tracing" , "SPV_KHR_ray_tracing" ], - "capabilities" : [ "RayTracingNV" , "RayTracingKHR" ], - "version" : "None" - }, - { - "enumerant" : "IncomingCallableDataNV", - "value" : 5329, - "extensions" : [ "SPV_NV_ray_tracing" , "SPV_KHR_ray_tracing" ], - "capabilities" : [ "RayTracingNV" , "RayTracingKHR" ], - "version" : "None" - }, - { - "enumerant" : "IncomingCallableDataKHR", - "value" : 5329, - "extensions" : [ "SPV_NV_ray_tracing" , "SPV_KHR_ray_tracing" ], - "capabilities" : [ "RayTracingNV" , "RayTracingKHR" ], - "version" : "None" - }, - { - "enumerant" : "RayPayloadNV", - "value" : 5338, - "extensions" : [ "SPV_NV_ray_tracing" , "SPV_KHR_ray_tracing" ], - "capabilities" : [ "RayTracingNV" , "RayTracingKHR" ], - "version" : "None" - }, - { - "enumerant" : "RayPayloadKHR", - "value" : 5338, - "extensions" : [ "SPV_NV_ray_tracing" , "SPV_KHR_ray_tracing" ], - "capabilities" : [ "RayTracingNV" , "RayTracingKHR" ], - "version" : "None" - }, - { - "enumerant" : "HitAttributeNV", - "value" : 5339, - "extensions" : [ "SPV_NV_ray_tracing" , "SPV_KHR_ray_tracing" ], - "capabilities" : [ "RayTracingNV" , "RayTracingKHR" ], - "version" : "None" - }, - { - "enumerant" : "HitAttributeKHR", - "value" : 5339, - "extensions" : [ "SPV_NV_ray_tracing" , "SPV_KHR_ray_tracing" ], - "capabilities" : [ "RayTracingNV" , "RayTracingKHR" ], - "version" : "None" - }, - { - "enumerant" : "IncomingRayPayloadNV", - "value" : 5342, - "extensions" : [ "SPV_NV_ray_tracing" , "SPV_KHR_ray_tracing" ], - "capabilities" : [ "RayTracingNV" , "RayTracingKHR" ], - "version" : "None" - }, - { - "enumerant" : "IncomingRayPayloadKHR", - "value" : 5342, - "extensions" : [ "SPV_NV_ray_tracing" , "SPV_KHR_ray_tracing" ], - "capabilities" : [ "RayTracingNV" , "RayTracingKHR" ], - "version" : "None" - }, - { - "enumerant" : "ShaderRecordBufferNV", - "value" : 5343, - "extensions" : [ "SPV_NV_ray_tracing" , "SPV_KHR_ray_tracing" ], - "capabilities" : [ "RayTracingNV" , "RayTracingKHR" ], - "version" : "None" - }, - { - "enumerant" : "ShaderRecordBufferKHR", - "value" : 5343, - "extensions" : [ "SPV_NV_ray_tracing" , "SPV_KHR_ray_tracing" ], - "capabilities" : [ "RayTracingNV" , "RayTracingKHR" ], - "version" : "None" - }, - { - "enumerant" : "PhysicalStorageBuffer", - "value" : 5349, - "extensions" : [ "SPV_EXT_physical_storage_buffer", "SPV_KHR_physical_storage_buffer" ], - "capabilities" : [ "PhysicalStorageBufferAddresses" ], - "version" : "1.5" - }, - { - "enumerant" : "PhysicalStorageBufferEXT", - "value" : 5349, - "extensions" : [ "SPV_EXT_physical_storage_buffer" ], - "capabilities" : [ "PhysicalStorageBufferAddresses" ], - "version" : "1.5" - }, - { - "enumerant" : "HitObjectAttributeNV", - "value" : 5385, - "capabilities" : [ "ShaderInvocationReorderNV" ], - "version" : "None" - }, - { - "enumerant" : "TaskPayloadWorkgroupEXT", - "value" : 5402, - "extensions" : [ "SPV_EXT_mesh_shader" ], - "capabilities" : [ "MeshShadingEXT" ], - "version" : "1.4" - }, - { - "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" - } - ] - }, - { - "category" : "ValueEnum", - "kind" : "Dim", - "enumerants" : [ - { - "enumerant" : "1D", - "value" : 0, - "capabilities" : [ "Sampled1D" ] - }, - { - "enumerant" : "2D", - "value" : 1 - }, - { - "enumerant" : "3D", - "value" : 2 - }, - { - "enumerant" : "Cube", - "value" : 3, - "capabilities" : [ "Shader" ] - }, - { - "enumerant" : "Rect", - "value" : 4, - "capabilities" : [ "SampledRect" ] - }, - { - "enumerant" : "Buffer", - "value" : 5, - "capabilities" : [ "SampledBuffer" ] - }, - { - "enumerant" : "SubpassData", - "value" : 6, - "capabilities" : [ "InputAttachment" ] - }, - { - "enumerant" : "TileImageDataEXT", - "value" : 4173, - "capabilities" : [ "TileImageColorReadAccessEXT" ], - "version" : "None" - } - ] - }, - { - "category" : "ValueEnum", - "kind" : "SamplerAddressingMode", - "enumerants" : [ - { - "enumerant" : "None", - "value" : 0, - "capabilities" : [ "Kernel" ] - }, - { - "enumerant" : "ClampToEdge", - "value" : 1, - "capabilities" : [ "Kernel" ] - }, - { - "enumerant" : "Clamp", - "value" : 2, - "capabilities" : [ "Kernel" ] - }, - { - "enumerant" : "Repeat", - "value" : 3, - "capabilities" : [ "Kernel" ] - }, - { - "enumerant" : "RepeatMirrored", - "value" : 4, - "capabilities" : [ "Kernel" ] - } - ] - }, - { - "category" : "ValueEnum", - "kind" : "SamplerFilterMode", - "enumerants" : [ - { - "enumerant" : "Nearest", - "value" : 0, - "capabilities" : [ "Kernel" ] - }, - { - "enumerant" : "Linear", - "value" : 1, - "capabilities" : [ "Kernel" ] - } - ] - }, - { - "category" : "ValueEnum", - "kind" : "ImageFormat", - "enumerants" : [ - { - "enumerant" : "Unknown", - "value" : 0 - }, - { - "enumerant" : "Rgba32f", - "value" : 1, - "capabilities" : [ "Shader" ] - }, - { - "enumerant" : "Rgba16f", - "value" : 2, - "capabilities" : [ "Shader" ] - }, - { - "enumerant" : "R32f", - "value" : 3, - "capabilities" : [ "Shader" ] - }, - { - "enumerant" : "Rgba8", - "value" : 4, - "capabilities" : [ "Shader" ] - }, - { - "enumerant" : "Rgba8Snorm", - "value" : 5, - "capabilities" : [ "Shader" ] - }, - { - "enumerant" : "Rg32f", - "value" : 6, - "capabilities" : [ "StorageImageExtendedFormats" ] - }, - { - "enumerant" : "Rg16f", - "value" : 7, - "capabilities" : [ "StorageImageExtendedFormats" ] - }, - { - "enumerant" : "R11fG11fB10f", - "value" : 8, - "capabilities" : [ "StorageImageExtendedFormats" ] - }, - { - "enumerant" : "R16f", - "value" : 9, - "capabilities" : [ "StorageImageExtendedFormats" ] - }, - { - "enumerant" : "Rgba16", - "value" : 10, - "capabilities" : [ "StorageImageExtendedFormats" ] - }, - { - "enumerant" : "Rgb10A2", - "value" : 11, - "capabilities" : [ "StorageImageExtendedFormats" ] - }, - { - "enumerant" : "Rg16", - "value" : 12, - "capabilities" : [ "StorageImageExtendedFormats" ] - }, - { - "enumerant" : "Rg8", - "value" : 13, - "capabilities" : [ "StorageImageExtendedFormats" ] - }, - { - "enumerant" : "R16", - "value" : 14, - "capabilities" : [ "StorageImageExtendedFormats" ] - }, - { - "enumerant" : "R8", - "value" : 15, - "capabilities" : [ "StorageImageExtendedFormats" ] - }, - { - "enumerant" : "Rgba16Snorm", - "value" : 16, - "capabilities" : [ "StorageImageExtendedFormats" ] - }, - { - "enumerant" : "Rg16Snorm", - "value" : 17, - "capabilities" : [ "StorageImageExtendedFormats" ] - }, - { - "enumerant" : "Rg8Snorm", - "value" : 18, - "capabilities" : [ "StorageImageExtendedFormats" ] - }, - { - "enumerant" : "R16Snorm", - "value" : 19, - "capabilities" : [ "StorageImageExtendedFormats" ] - }, - { - "enumerant" : "R8Snorm", - "value" : 20, - "capabilities" : [ "StorageImageExtendedFormats" ] - }, - { - "enumerant" : "Rgba32i", - "value" : 21, - "capabilities" : [ "Shader" ] - }, - { - "enumerant" : "Rgba16i", - "value" : 22, - "capabilities" : [ "Shader" ] - }, - { - "enumerant" : "Rgba8i", - "value" : 23, - "capabilities" : [ "Shader" ] - }, - { - "enumerant" : "R32i", - "value" : 24, - "capabilities" : [ "Shader" ] - }, - { - "enumerant" : "Rg32i", - "value" : 25, - "capabilities" : [ "StorageImageExtendedFormats" ] - }, - { - "enumerant" : "Rg16i", - "value" : 26, - "capabilities" : [ "StorageImageExtendedFormats" ] - }, - { - "enumerant" : "Rg8i", - "value" : 27, - "capabilities" : [ "StorageImageExtendedFormats" ] - }, - { - "enumerant" : "R16i", - "value" : 28, - "capabilities" : [ "StorageImageExtendedFormats" ] - }, - { - "enumerant" : "R8i", - "value" : 29, - "capabilities" : [ "StorageImageExtendedFormats" ] - }, - { - "enumerant" : "Rgba32ui", - "value" : 30, - "capabilities" : [ "Shader" ] - }, - { - "enumerant" : "Rgba16ui", - "value" : 31, - "capabilities" : [ "Shader" ] - }, - { - "enumerant" : "Rgba8ui", - "value" : 32, - "capabilities" : [ "Shader" ] - }, - { - "enumerant" : "R32ui", - "value" : 33, - "capabilities" : [ "Shader" ] - }, - { - "enumerant" : "Rgb10a2ui", - "value" : 34, - "capabilities" : [ "StorageImageExtendedFormats" ] - }, - { - "enumerant" : "Rg32ui", - "value" : 35, - "capabilities" : [ "StorageImageExtendedFormats" ] - }, - { - "enumerant" : "Rg16ui", - "value" : 36, - "capabilities" : [ "StorageImageExtendedFormats" ] - }, - { - "enumerant" : "Rg8ui", - "value" : 37, - "capabilities" : [ "StorageImageExtendedFormats" ] - }, - { - "enumerant" : "R16ui", - "value" : 38, - "capabilities" : [ "StorageImageExtendedFormats" ] - }, - { - "enumerant" : "R8ui", - "value" : 39, - "capabilities" : [ "StorageImageExtendedFormats" ] - }, - { - "enumerant" : "R64ui", - "value" : 40, - "capabilities" : [ "Int64ImageEXT" ] - }, - { - "enumerant" : "R64i", - "value" : 41, - "capabilities" : [ "Int64ImageEXT" ] - } - ] - }, - { - "category" : "ValueEnum", - "kind" : "ImageChannelOrder", - "enumerants" : [ - { - "enumerant" : "R", - "value" : 0, - "capabilities" : [ "Kernel" ] - }, - { - "enumerant" : "A", - "value" : 1, - "capabilities" : [ "Kernel" ] - }, - { - "enumerant" : "RG", - "value" : 2, - "capabilities" : [ "Kernel" ] - }, - { - "enumerant" : "RA", - "value" : 3, - "capabilities" : [ "Kernel" ] - }, - { - "enumerant" : "RGB", - "value" : 4, - "capabilities" : [ "Kernel" ] - }, - { - "enumerant" : "RGBA", - "value" : 5, - "capabilities" : [ "Kernel" ] - }, - { - "enumerant" : "BGRA", - "value" : 6, - "capabilities" : [ "Kernel" ] - }, - { - "enumerant" : "ARGB", - "value" : 7, - "capabilities" : [ "Kernel" ] - }, - { - "enumerant" : "Intensity", - "value" : 8, - "capabilities" : [ "Kernel" ] - }, - { - "enumerant" : "Luminance", - "value" : 9, - "capabilities" : [ "Kernel" ] - }, - { - "enumerant" : "Rx", - "value" : 10, - "capabilities" : [ "Kernel" ] - }, - { - "enumerant" : "RGx", - "value" : 11, - "capabilities" : [ "Kernel" ] - }, - { - "enumerant" : "RGBx", - "value" : 12, - "capabilities" : [ "Kernel" ] - }, - { - "enumerant" : "Depth", - "value" : 13, - "capabilities" : [ "Kernel" ] - }, - { - "enumerant" : "DepthStencil", - "value" : 14, - "capabilities" : [ "Kernel" ] - }, - { - "enumerant" : "sRGB", - "value" : 15, - "capabilities" : [ "Kernel" ] - }, - { - "enumerant" : "sRGBx", - "value" : 16, - "capabilities" : [ "Kernel" ] - }, - { - "enumerant" : "sRGBA", - "value" : 17, - "capabilities" : [ "Kernel" ] - }, - { - "enumerant" : "sBGRA", - "value" : 18, - "capabilities" : [ "Kernel" ] - }, - { - "enumerant" : "ABGR", - "value" : 19, - "capabilities" : [ "Kernel" ] - } - ] - }, - { - "category" : "ValueEnum", - "kind" : "ImageChannelDataType", - "enumerants" : [ - { - "enumerant" : "SnormInt8", - "value" : 0, - "capabilities" : [ "Kernel" ] - }, - { - "enumerant" : "SnormInt16", - "value" : 1, - "capabilities" : [ "Kernel" ] - }, - { - "enumerant" : "UnormInt8", - "value" : 2, - "capabilities" : [ "Kernel" ] - }, - { - "enumerant" : "UnormInt16", - "value" : 3, - "capabilities" : [ "Kernel" ] - }, - { - "enumerant" : "UnormShort565", - "value" : 4, - "capabilities" : [ "Kernel" ] - }, - { - "enumerant" : "UnormShort555", - "value" : 5, - "capabilities" : [ "Kernel" ] - }, - { - "enumerant" : "UnormInt101010", - "value" : 6, - "capabilities" : [ "Kernel" ] - }, - { - "enumerant" : "SignedInt8", - "value" : 7, - "capabilities" : [ "Kernel" ] - }, - { - "enumerant" : "SignedInt16", - "value" : 8, - "capabilities" : [ "Kernel" ] - }, - { - "enumerant" : "SignedInt32", - "value" : 9, - "capabilities" : [ "Kernel" ] - }, - { - "enumerant" : "UnsignedInt8", - "value" : 10, - "capabilities" : [ "Kernel" ] - }, - { - "enumerant" : "UnsignedInt16", - "value" : 11, - "capabilities" : [ "Kernel" ] - }, - { - "enumerant" : "UnsignedInt32", - "value" : 12, - "capabilities" : [ "Kernel" ] - }, - { - "enumerant" : "HalfFloat", - "value" : 13, - "capabilities" : [ "Kernel" ] - }, - { - "enumerant" : "Float", - "value" : 14, - "capabilities" : [ "Kernel" ] - }, - { - "enumerant" : "UnormInt24", - "value" : 15, - "capabilities" : [ "Kernel" ] - }, - { - "enumerant" : "UnormInt101010_2", - "value" : 16, - "capabilities" : [ "Kernel" ] - }, - { - "enumerant" : "UnsignedIntRaw10EXT", - "value" : 19, - "capabilities" : [ "Kernel" ] - }, - { - "enumerant" : "UnsignedIntRaw12EXT", - "value" : 20, - "capabilities" : [ "Kernel" ] - } - ] - }, - { - "category" : "ValueEnum", - "kind" : "FPRoundingMode", - "enumerants" : [ - { - "enumerant" : "RTE", - "value" : 0 - }, - { - "enumerant" : "RTZ", - "value" : 1 - }, - { - "enumerant" : "RTP", - "value" : 2 - }, - { - "enumerant" : "RTN", - "value" : 3 - } - ] - }, - { - "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" : [ - { - "enumerant" : "Export", - "value" : 0, - "capabilities" : [ "Linkage" ] - }, - { - "enumerant" : "Import", - "value" : 1, - "capabilities" : [ "Linkage" ] - }, - { - "enumerant" : "LinkOnceODR", - "value" : 2, - "capabilities" : [ "Linkage" ], - "extensions" : [ "SPV_KHR_linkonce_odr" ], - "version" : "None" - } - ] - }, - { - "category" : "ValueEnum", - "kind" : "AccessQualifier", - "enumerants" : [ - { - "enumerant" : "ReadOnly", - "value" : 0, - "capabilities" : [ "Kernel" ] - }, - { - "enumerant" : "WriteOnly", - "value" : 1, - "capabilities" : [ "Kernel" ] - }, - { - "enumerant" : "ReadWrite", - "value" : 2, - "capabilities" : [ "Kernel" ] - } - ] - }, - { - "category" : "ValueEnum", - "kind" : "FunctionParameterAttribute", - "enumerants" : [ - { - "enumerant" : "Zext", - "value" : 0, - "capabilities" : [ "Kernel" ] - }, - { - "enumerant" : "Sext", - "value" : 1, - "capabilities" : [ "Kernel" ] - }, - { - "enumerant" : "ByVal", - "value" : 2, - "capabilities" : [ "Kernel" ] - }, - { - "enumerant" : "Sret", - "value" : 3, - "capabilities" : [ "Kernel" ] - }, - { - "enumerant" : "NoAlias", - "value" : 4, - "capabilities" : [ "Kernel" ] - }, - { - "enumerant" : "NoCapture", - "value" : 5, - "capabilities" : [ "Kernel" ] - }, - { - "enumerant" : "NoWrite", - "value" : 6, - "capabilities" : [ "Kernel" ] - }, - { - "enumerant" : "NoReadWrite", - "value" : 7, - "capabilities" : [ "Kernel" ] - }, - { - "enumerant" : "RuntimeAlignedINTEL", - "value" : 5940, - "capabilities" : [ "RuntimeAlignedAttributeINTEL" ] - } - ] - }, - { - "category" : "ValueEnum", - "kind" : "Decoration", - "enumerants" : [ - { - "enumerant" : "RelaxedPrecision", - "value" : 0, - "capabilities" : [ "Shader" ] - }, - { - "enumerant" : "SpecId", - "value" : 1, - "capabilities" : [ "Shader", "Kernel" ], - "parameters" : [ - { "kind" : "LiteralInteger", "name" : "'Specialization Constant ID'" } - ] - }, - { - "enumerant" : "Block", - "value" : 2, - "capabilities" : [ "Shader" ] - }, - { - "enumerant" : "BufferBlock", - "value" : 3, - "capabilities" : [ "Shader" ], - "lastVersion" : "1.3" - }, - { - "enumerant" : "RowMajor", - "value" : 4, - "capabilities" : [ "Matrix" ] - }, - { - "enumerant" : "ColMajor", - "value" : 5, - "capabilities" : [ "Matrix" ] - }, - { - "enumerant" : "ArrayStride", - "value" : 6, - "capabilities" : [ "Shader" ], - "parameters" : [ - { "kind" : "LiteralInteger", "name" : "'Array Stride'" } - ] - }, - { - "enumerant" : "MatrixStride", - "value" : 7, - "capabilities" : [ "Matrix" ], - "parameters" : [ - { "kind" : "LiteralInteger", "name" : "'Matrix Stride'" } - ] - }, - { - "enumerant" : "GLSLShared", - "value" : 8, - "capabilities" : [ "Shader" ] - }, - { - "enumerant" : "GLSLPacked", - "value" : 9, - "capabilities" : [ "Shader" ] - }, - { - "enumerant" : "CPacked", - "value" : 10, - "capabilities" : [ "Kernel" ] - }, - { - "enumerant" : "BuiltIn", - "value" : 11, - "parameters" : [ - { "kind" : "BuiltIn" } - ] - }, - { - "enumerant" : "NoPerspective", - "value" : 13, - "capabilities" : [ "Shader" ] - }, - { - "enumerant" : "Flat", - "value" : 14, - "capabilities" : [ "Shader" ] - }, - { - "enumerant" : "Patch", - "value" : 15, - "capabilities" : [ "Tessellation" ] - }, - { - "enumerant" : "Centroid", - "value" : 16, - "capabilities" : [ "Shader" ] - }, - { - "enumerant" : "Sample", - "value" : 17, - "capabilities" : [ "SampleRateShading" ] - }, - { - "enumerant" : "Invariant", - "value" : 18, - "capabilities" : [ "Shader" ] - }, - { - "enumerant" : "Restrict", - "value" : 19 - }, - { - "enumerant" : "Aliased", - "value" : 20 - }, - { - "enumerant" : "Volatile", - "value" : 21 - }, - { - "enumerant" : "Constant", - "value" : 22, - "capabilities" : [ "Kernel" ] - }, - { - "enumerant" : "Coherent", - "value" : 23 - }, - { - "enumerant" : "NonWritable", - "value" : 24 - }, - { - "enumerant" : "NonReadable", - "value" : 25 - }, - { - "enumerant" : "Uniform", - "value" : 26, - "capabilities" : [ "Shader", "UniformDecoration" ] - }, - { - "enumerant" : "UniformId", - "value" : 27, - "capabilities" : [ "Shader", "UniformDecoration" ], - "parameters" : [ - { "kind" : "IdScope", "name" : "'Execution'" } - ], - "version" : "1.4" - }, - { - "enumerant" : "SaturatedConversion", - "value" : 28, - "capabilities" : [ "Kernel" ] - }, - { - "enumerant" : "Stream", - "value" : 29, - "capabilities" : [ "GeometryStreams" ], - "parameters" : [ - { "kind" : "LiteralInteger", "name" : "'Stream Number'" } - ] - }, - { - "enumerant" : "Location", - "value" : 30, - "capabilities" : [ "Shader" ], - "parameters" : [ - { "kind" : "LiteralInteger", "name" : "'Location'" } - ] - }, - { - "enumerant" : "Component", - "value" : 31, - "capabilities" : [ "Shader" ], - "parameters" : [ - { "kind" : "LiteralInteger", "name" : "'Component'" } - ] - }, - { - "enumerant" : "Index", - "value" : 32, - "capabilities" : [ "Shader" ], - "parameters" : [ - { "kind" : "LiteralInteger", "name" : "'Index'" } - ] - }, - { - "enumerant" : "Binding", - "value" : 33, - "capabilities" : [ "Shader" ], - "parameters" : [ - { "kind" : "LiteralInteger", "name" : "'Binding Point'" } - ] - }, - { - "enumerant" : "DescriptorSet", - "value" : 34, - "capabilities" : [ "Shader" ], - "parameters" : [ - { "kind" : "LiteralInteger", "name" : "'Descriptor Set'" } - ] - }, - { - "enumerant" : "Offset", - "value" : 35, - "capabilities" : [ "Shader" ], - "parameters" : [ - { "kind" : "LiteralInteger", "name" : "'Byte Offset'" } - ] - }, - { - "enumerant" : "XfbBuffer", - "value" : 36, - "capabilities" : [ "TransformFeedback" ], - "parameters" : [ - { "kind" : "LiteralInteger", "name" : "'XFB Buffer Number'" } - ] - }, - { - "enumerant" : "XfbStride", - "value" : 37, - "capabilities" : [ "TransformFeedback" ], - "parameters" : [ - { "kind" : "LiteralInteger", "name" : "'XFB Stride'" } - ] - }, - { - "enumerant" : "FuncParamAttr", - "value" : 38, - "capabilities" : [ "Kernel" ], - "parameters" : [ - { "kind" : "FunctionParameterAttribute", "name" : "'Function Parameter Attribute'" } - ] - }, - { - "enumerant" : "FPRoundingMode", - "value" : 39, - "parameters" : [ - { "kind" : "FPRoundingMode", "name" : "'Floating-Point Rounding Mode'" } - ] - }, - { - "enumerant" : "FPFastMathMode", - "value" : 40, - "capabilities" : [ "Kernel" ], - "parameters" : [ - { "kind" : "FPFastMathMode", "name" : "'Fast-Math Mode'" } - ] - }, - { - "enumerant" : "LinkageAttributes", - "value" : 41, - "capabilities" : [ "Linkage" ], - "parameters" : [ - { "kind" : "LiteralString", "name" : "'Name'" }, - { "kind" : "LinkageType", "name" : "'Linkage Type'" } - ] - }, - { - "enumerant" : "NoContraction", - "value" : 42, - "capabilities" : [ "Shader" ] - }, - { - "enumerant" : "InputAttachmentIndex", - "value" : 43, - "capabilities" : [ "InputAttachment" ], - "parameters" : [ - { "kind" : "LiteralInteger", "name" : "'Attachment Index'" } - ] - }, - { - "enumerant" : "Alignment", - "value" : 44, - "capabilities" : [ "Kernel" ], - "parameters" : [ - { "kind" : "LiteralInteger", "name" : "'Alignment'" } - ] - }, - { - "enumerant" : "MaxByteOffset", - "value" : 45, - "capabilities" : [ "Addresses" ], - "parameters" : [ - { "kind" : "LiteralInteger", "name" : "'Max Byte Offset'" } - ], - "version" : "1.1" - }, - { - "enumerant" : "AlignmentId", - "value" : 46, - "capabilities" : [ "Kernel" ], - "parameters" : [ - { "kind" : "IdRef", "name" : "'Alignment'" } - ], - "version" : "1.2" - }, - { - "enumerant" : "MaxByteOffsetId", - "value" : 47, - "capabilities" : [ "Addresses" ], - "parameters" : [ - { "kind" : "IdRef", "name" : "'Max Byte Offset'" } - ], - "version" : "1.2" - }, - { - "enumerant" : "NoSignedWrap", - "value" : 4469, - "extensions" : [ "SPV_KHR_no_integer_wrap_decoration" ], - "version" : "1.4" - }, - { - "enumerant" : "NoUnsignedWrap", - "value" : 4470, - "extensions" : [ "SPV_KHR_no_integer_wrap_decoration" ], - "version" : "1.4" - }, - { - "enumerant" : "WeightTextureQCOM", - "value" : 4487, - "extensions" : [ "SPV_QCOM_image_processing" ], - "version" : "None" - }, - { - "enumerant" : "BlockMatchTextureQCOM", - "value" : 4488, - "extensions" : [ "SPV_QCOM_image_processing" ], - "version" : "None" - }, - { - "enumerant" : "ExplicitInterpAMD", - "value" : 4999, - "extensions" : [ "SPV_AMD_shader_explicit_vertex_parameter" ], - "version" : "None" - }, - { - "enumerant" : "OverrideCoverageNV", - "value" : 5248, - "capabilities" : [ "SampleMaskOverrideCoverageNV" ], - "extensions" : [ "SPV_NV_sample_mask_override_coverage" ], - "version" : "None" - }, - { - "enumerant" : "PassthroughNV", - "value" : 5250, - "capabilities" : [ "GeometryShaderPassthroughNV" ], - "extensions" : [ "SPV_NV_geometry_shader_passthrough" ], - "version" : "None" - }, - { - "enumerant" : "ViewportRelativeNV", - "value" : 5252, - "capabilities" : [ "ShaderViewportMaskNV" ], - "version" : "None" - }, - { - "enumerant" : "SecondaryViewportRelativeNV", - "value" : 5256, - "capabilities" : [ "ShaderStereoViewNV" ], - "extensions" : [ "SPV_NV_stereo_view_rendering" ], - "version" : "None", - "parameters" : [ - { "kind" : "LiteralInteger", "name" : "'Offset'" } - ] - }, - { - "enumerant" : "PerPrimitiveNV", - "value" : 5271, - "capabilities" : [ "MeshShadingNV", "MeshShadingEXT" ], - "extensions" : [ "SPV_NV_mesh_shader", "SPV_EXT_mesh_shader" ], - "version" : "None" - }, - { - "enumerant" : "PerPrimitiveEXT", - "value" : 5271, - "capabilities" : [ "MeshShadingNV", "MeshShadingEXT" ], - "extensions" : [ "SPV_NV_mesh_shader", "SPV_EXT_mesh_shader" ], - "version" : "None" - }, - { - "enumerant" : "PerViewNV", - "value" : 5272, - "capabilities" : [ "MeshShadingNV" ], - "extensions" : [ "SPV_NV_mesh_shader" ], - "version" : "None" - }, - { - "enumerant" : "PerTaskNV", - "value" : 5273, - "capabilities" : [ "MeshShadingNV", "MeshShadingEXT" ], - "extensions" : [ "SPV_NV_mesh_shader", "SPV_EXT_mesh_shader" ], - "version" : "None" - }, - { - "enumerant" : "PerVertexKHR", - "value" : 5285, - "capabilities" : [ "FragmentBarycentricNV", "FragmentBarycentricKHR" ], - "extensions" : [ "SPV_NV_fragment_shader_barycentric", "SPV_KHR_fragment_shader_barycentric" ], - "version" : "None" - }, - { - "enumerant" : "PerVertexNV", - "value" : 5285, - "capabilities" : [ "FragmentBarycentricNV", "FragmentBarycentricKHR" ], - "extensions" : [ "SPV_NV_fragment_shader_barycentric", "SPV_KHR_fragment_shader_barycentric" ], - "version" : "None" - }, - { - "enumerant" : "NonUniform", - "value" : 5300, - "capabilities" : [ "ShaderNonUniform" ], - "version" : "1.5" - }, - { - "enumerant" : "NonUniformEXT", - "value" : 5300, - "capabilities" : [ "ShaderNonUniform" ], - "extensions" : [ "SPV_EXT_descriptor_indexing" ], - "version" : "1.5" - }, - { - "enumerant" : "RestrictPointer", - "value" : 5355, - "capabilities" : [ "PhysicalStorageBufferAddresses" ], - "extensions" : [ "SPV_EXT_physical_storage_buffer", "SPV_KHR_physical_storage_buffer" ], - "version" : "1.5" - }, - { - "enumerant" : "RestrictPointerEXT", - "value" : 5355, - "capabilities" : [ "PhysicalStorageBufferAddresses" ], - "extensions" : [ "SPV_EXT_physical_storage_buffer" ], - "version" : "1.5" - }, - { - "enumerant" : "AliasedPointer", - "value" : 5356, - "capabilities" : [ "PhysicalStorageBufferAddresses" ], - "extensions" : [ "SPV_EXT_physical_storage_buffer", "SPV_KHR_physical_storage_buffer" ], - "version" : "1.5" - }, - { - "enumerant" : "AliasedPointerEXT", - "value" : 5356, - "capabilities" : [ "PhysicalStorageBufferAddresses" ], - "extensions" : [ "SPV_EXT_physical_storage_buffer" ], - "version" : "1.5" - }, - { - "enumerant" : "HitObjectShaderRecordBufferNV", - "value" : 5386, - "capabilities" : [ "ShaderInvocationReorderNV" ], - "version" : "None" - }, - { - "enumerant" : "BindlessSamplerNV", - "value" : 5398, - "capabilities" : [ "BindlessTextureNV" ], - "version" : "None" - }, - { - "enumerant" : "BindlessImageNV", - "value" : 5399, - "capabilities" : [ "BindlessTextureNV" ], - "version" : "None" - }, - { - "enumerant" : "BoundSamplerNV", - "value" : 5400, - "capabilities" : [ "BindlessTextureNV" ], - "version" : "None" - }, - { - "enumerant" : "BoundImageNV", - "value" : 5401, - "capabilities" : [ "BindlessTextureNV" ], - "version" : "None" - }, - { - "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" : [ - { "kind" : "IdRef", "name" : "'Counter Buffer'" } - ], - "version" : "1.4" - }, - { - "enumerant" : "HlslCounterBufferGOOGLE", - "value" : 5634, - "parameters" : [ - { "kind" : "IdRef", "name" : "'Counter Buffer'" } - ], - "extensions" : [ "SPV_GOOGLE_hlsl_functionality1" ], - "version" : "None" - }, - { - "enumerant" : "UserSemantic", - "value" : 5635, - "parameters" : [ - { "kind" : "LiteralString", "name" : "'Semantic'" } - ], - "version" : "1.4" - }, - { - "enumerant" : "HlslSemanticGOOGLE", - "value" : 5635, - "parameters" : [ - { "kind" : "LiteralString", "name" : "'Semantic'" } - ], - "extensions" : [ "SPV_GOOGLE_hlsl_functionality1" ], - "version" : "None" - }, - { - "enumerant" : "UserTypeGOOGLE", - "value" : 5636, - "parameters" : [ - { "kind" : "LiteralString", "name" : "'User Type'" } - ], - "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" : "MathOpDSPModeINTEL", - "value" : 5909, - "parameters" : [ - { "kind" : "LiteralInteger", "name" : "'Mode'" }, - { "kind" : "LiteralInteger", "name" : "'Propagate'" } - ], - "capabilities" : [ "FPGADSPControlINTEL" ], - "version" : "None" - }, - { - "enumerant" : "AliasScopeINTEL", - "value" : 5914, - "parameters" : [ - { "kind" : "IdRef", "name" : "'Aliasing Scopes List'" } - ], - "capabilities" : [ "MemoryAccessAliasingINTEL" ], - "version" : "None" - }, - { - "enumerant" : "NoAliasINTEL", - "value" : 5915, - "parameters" : [ - { "kind" : "IdRef", "name" : "'Aliasing Scopes List'" } - ], - "capabilities" : [ "MemoryAccessAliasingINTEL" ], - "version" : "None" - }, - { - "enumerant" : "InitiationIntervalINTEL", - "value" : 5917, - "parameters" : [ - { "kind" : "LiteralInteger", "name" : "'Cycles'" } - ], - "capabilities" : [ "FPGAInvocationPipeliningAttributesINTEL" ], - "version" : "None" - }, - { - "enumerant" : "MaxConcurrencyINTEL", - "value" : 5918, - "parameters" : [ - { "kind" : "LiteralInteger", "name" : "'Invocations'" } - ], - "capabilities" : [ "FPGAInvocationPipeliningAttributesINTEL" ], - "version" : "None" - }, - { - "enumerant" : "PipelineEnableINTEL", - "value" : 5919, - "parameters" : [ - { "kind" : "LiteralInteger", "name" : "'Enable'" } - ], - "capabilities" : [ "FPGAInvocationPipeliningAttributesINTEL" ], - "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" - }, - { - "enumerant" : "MediaBlockIOINTEL", - "value" : 6140, - "capabilities" : [ "VectorComputeINTEL" ], - "version" : "None" - }, - { - "enumerant" : "FPMaxErrorDecorationINTEL", - "value" : 6170, - "parameters" : [ - { "kind" : "LiteralFloat", "name" : "'Max Error'" } - ], - "capabilities" : [ "FPMaxErrorINTEL" ], - "version" : "None" - }, - { - "enumerant" : "LatencyControlLabelINTEL", - "value" : 6172, - "parameters" : [ - { "kind" : "LiteralInteger", "name" : "'Latency Label'" } - ], - "capabilities" : [ "FPGALatencyControlINTEL" ], - "version" : "None" - }, - { - "enumerant" : "LatencyControlConstraintINTEL", - "value" : 6173, - "parameters" : [ - { "kind" : "LiteralInteger", "name" : "'Relative To'" }, - { "kind" : "LiteralInteger", "name" : "'Control Type'" }, - { "kind" : "LiteralInteger", "name" : "'Relative Cycle'" } - ], - "capabilities" : [ "FPGALatencyControlINTEL" ], - "version" : "None" - }, - { - "enumerant" : "ConduitKernelArgumentINTEL", - "value" : 6175, - "capabilities" : [ "FPGAArgumentInterfacesINTEL" ], - "version" : "None" - }, - { - "enumerant" : "RegisterMapKernelArgumentINTEL", - "value" : 6176, - "capabilities" : [ "FPGAArgumentInterfacesINTEL" ], - "version" : "None" - }, - { - "enumerant" : "MMHostInterfaceAddressWidthINTEL", - "value" : 6177, - "capabilities" : [ "FPGAArgumentInterfacesINTEL" ], - "parameters" : [ - { "kind" : "LiteralInteger", "name" : "'AddressWidth'" } - ], - "version" : "None" - }, - { - "enumerant" : "MMHostInterfaceDataWidthINTEL", - "value" : 6178, - "capabilities" : [ "FPGAArgumentInterfacesINTEL" ], - "parameters" : [ - { "kind" : "LiteralInteger", "name" : "'DataWidth'" } - ], - "version" : "None" - }, - { - "enumerant" : "MMHostInterfaceLatencyINTEL", - "value" : 6179, - "capabilities" : [ "FPGAArgumentInterfacesINTEL" ], - "parameters" : [ - { "kind" : "LiteralInteger", "name" : "'Latency'" } - ], - "version" : "None" - }, - { - "enumerant" : "MMHostInterfaceReadWriteModeINTEL", - "value" : 6180, - "capabilities" : [ "FPGAArgumentInterfacesINTEL" ], - "parameters" : [ - { "kind" : "AccessQualifier", "name" : "'ReadWriteMode'" } - ], - "version" : "None" - }, - { - "enumerant" : "MMHostInterfaceMaxBurstINTEL", - "value" : 6181, - "capabilities" : [ "FPGAArgumentInterfacesINTEL" ], - "parameters" : [ - { "kind" : "LiteralInteger", "name" : "'MaxBurstCount'" } - ], - "version" : "None" - }, - { - "enumerant" : "MMHostInterfaceWaitRequestINTEL", - "value" : 6182, - "capabilities" : [ "FPGAArgumentInterfacesINTEL" ], - "parameters" : [ - { "kind" : "LiteralInteger", "name" : "'Waitrequest'" } - ], - "version" : "None" - }, - { - "enumerant" : "StableKernelArgumentINTEL", - "value" : 6183, - "capabilities" : [ "FPGAArgumentInterfacesINTEL" ], - "version" : "None" - } - ] - }, - { - "category" : "ValueEnum", - "kind" : "BuiltIn", - "enumerants" : [ - { - "enumerant" : "Position", - "value" : 0, - "capabilities" : [ "Shader" ] - }, - { - "enumerant" : "PointSize", - "value" : 1, - "capabilities" : [ "Shader" ] - }, - { - "enumerant" : "ClipDistance", - "value" : 3, - "capabilities" : [ "ClipDistance" ] - }, - { - "enumerant" : "CullDistance", - "value" : 4, - "capabilities" : [ "CullDistance" ] - }, - { - "enumerant" : "VertexId", - "value" : 5, - "capabilities" : [ "Shader" ] - }, - { - "enumerant" : "InstanceId", - "value" : 6, - "capabilities" : [ "Shader" ] - }, - { - "enumerant" : "PrimitiveId", - "value" : 7, - "capabilities" : [ "Geometry", "Tessellation", "RayTracingNV", "RayTracingKHR", "MeshShadingNV", "MeshShadingEXT" ] - }, - { - "enumerant" : "InvocationId", - "value" : 8, - "capabilities" : [ "Geometry", "Tessellation" ] - }, - { - "enumerant" : "Layer", - "value" : 9, - "capabilities" : [ "Geometry", "ShaderLayer", "ShaderViewportIndexLayerEXT", "MeshShadingNV", "MeshShadingEXT" ] - }, - { - "enumerant" : "ViewportIndex", - "value" : 10, - "capabilities" : [ "MultiViewport", "ShaderViewportIndex", "ShaderViewportIndexLayerEXT", "MeshShadingNV", "MeshShadingEXT" ] - }, - { - "enumerant" : "TessLevelOuter", - "value" : 11, - "capabilities" : [ "Tessellation" ] - }, - { - "enumerant" : "TessLevelInner", - "value" : 12, - "capabilities" : [ "Tessellation" ] - }, - { - "enumerant" : "TessCoord", - "value" : 13, - "capabilities" : [ "Tessellation" ] - }, - { - "enumerant" : "PatchVertices", - "value" : 14, - "capabilities" : [ "Tessellation" ] - }, - { - "enumerant" : "FragCoord", - "value" : 15, - "capabilities" : [ "Shader" ] - }, - { - "enumerant" : "PointCoord", - "value" : 16, - "capabilities" : [ "Shader" ] - }, - { - "enumerant" : "FrontFacing", - "value" : 17, - "capabilities" : [ "Shader" ] - }, - { - "enumerant" : "SampleId", - "value" : 18, - "capabilities" : [ "SampleRateShading" ] - }, - { - "enumerant" : "SamplePosition", - "value" : 19, - "capabilities" : [ "SampleRateShading" ] - }, - { - "enumerant" : "SampleMask", - "value" : 20, - "capabilities" : [ "Shader" ] - }, - { - "enumerant" : "FragDepth", - "value" : 22, - "capabilities" : [ "Shader" ] - }, - { - "enumerant" : "HelperInvocation", - "value" : 23, - "capabilities" : [ "Shader" ] - }, - { - "enumerant" : "NumWorkgroups", - "value" : 24 - }, - { - "enumerant" : "WorkgroupSize", - "value" : 25 - }, - { - "enumerant" : "WorkgroupId", - "value" : 26 - }, - { - "enumerant" : "LocalInvocationId", - "value" : 27 - }, - { - "enumerant" : "GlobalInvocationId", - "value" : 28 - }, - { - "enumerant" : "LocalInvocationIndex", - "value" : 29 - }, - { - "enumerant" : "WorkDim", - "value" : 30, - "capabilities" : [ "Kernel" ] - }, - { - "enumerant" : "GlobalSize", - "value" : 31, - "capabilities" : [ "Kernel" ] - }, - { - "enumerant" : "EnqueuedWorkgroupSize", - "value" : 32, - "capabilities" : [ "Kernel" ] - }, - { - "enumerant" : "GlobalOffset", - "value" : 33, - "capabilities" : [ "Kernel" ] - }, - { - "enumerant" : "GlobalLinearId", - "value" : 34, - "capabilities" : [ "Kernel" ] - }, - { - "enumerant" : "SubgroupSize", - "value" : 36, - "capabilities" : [ "Kernel", "GroupNonUniform", "SubgroupBallotKHR" ] - }, - { - "enumerant" : "SubgroupMaxSize", - "value" : 37, - "capabilities" : [ "Kernel" ] - }, - { - "enumerant" : "NumSubgroups", - "value" : 38, - "capabilities" : [ "Kernel", "GroupNonUniform" ] - }, - { - "enumerant" : "NumEnqueuedSubgroups", - "value" : 39, - "capabilities" : [ "Kernel" ] - }, - { - "enumerant" : "SubgroupId", - "value" : 40, - "capabilities" : [ "Kernel", "GroupNonUniform" ] - }, - { - "enumerant" : "SubgroupLocalInvocationId", - "value" : 41, - "capabilities" : [ "Kernel", "GroupNonUniform", "SubgroupBallotKHR" ] - }, - { - "enumerant" : "VertexIndex", - "value" : 42, - "capabilities" : [ "Shader" ] - }, - { - "enumerant" : "InstanceIndex", - "value" : 43, - "capabilities" : [ "Shader" ] - }, - { - "enumerant" : "CoreIDARM", - "value" : 4160, - "capabilities" : [ "CoreBuiltinsARM" ] - }, - { - "enumerant" : "CoreCountARM", - "value" : 4161, - "capabilities" : [ "CoreBuiltinsARM" ] - }, - { - "enumerant" : "CoreMaxIDARM", - "value" : 4162, - "capabilities" : [ "CoreBuiltinsARM" ] - }, - { - "enumerant" : "WarpIDARM", - "value" : 4163, - "capabilities" : [ "CoreBuiltinsARM" ] - }, - { - "enumerant" : "WarpMaxIDARM", - "value" : 4164, - "capabilities" : [ "CoreBuiltinsARM" ] - }, - { - "enumerant" : "SubgroupEqMask", - "value" : 4416, - "capabilities" : [ "SubgroupBallotKHR", "GroupNonUniformBallot" ], - "version" : "1.3" - }, - { - "enumerant" : "SubgroupEqMaskKHR", - "value" : 4416, - "capabilities" : [ "SubgroupBallotKHR", "GroupNonUniformBallot" ], - "extensions" : [ "SPV_KHR_shader_ballot" ], - "version" : "1.3" - }, - { - "enumerant" : "SubgroupGeMask", - "value" : 4417, - "capabilities" : [ "SubgroupBallotKHR", "GroupNonUniformBallot" ], - "version" : "1.3" - }, - { - "enumerant" : "SubgroupGeMaskKHR", - "value" : 4417, - "capabilities" : [ "SubgroupBallotKHR", "GroupNonUniformBallot" ], - "extensions" : [ "SPV_KHR_shader_ballot" ], - "version" : "1.3" - }, - { - "enumerant" : "SubgroupGtMask", - "value" : 4418, - "capabilities" : [ "SubgroupBallotKHR", "GroupNonUniformBallot" ], - "version" : "1.3" - }, - { - "enumerant" : "SubgroupGtMaskKHR", - "value" : 4418, - "capabilities" : [ "SubgroupBallotKHR", "GroupNonUniformBallot" ], - "extensions" : [ "SPV_KHR_shader_ballot" ], - "version" : "1.3" - }, - { - "enumerant" : "SubgroupLeMask", - "value" : 4419, - "capabilities" : [ "SubgroupBallotKHR", "GroupNonUniformBallot" ], - "version" : "1.3" - }, - { - "enumerant" : "SubgroupLeMaskKHR", - "value" : 4419, - "capabilities" : [ "SubgroupBallotKHR", "GroupNonUniformBallot" ], - "extensions" : [ "SPV_KHR_shader_ballot" ], - "version" : "1.3" - }, - { - "enumerant" : "SubgroupLtMask", - "value" : 4420, - "capabilities" : [ "SubgroupBallotKHR", "GroupNonUniformBallot" ], - "version" : "1.3" - }, - { - "enumerant" : "SubgroupLtMaskKHR", - "value" : 4420, - "capabilities" : [ "SubgroupBallotKHR", "GroupNonUniformBallot" ], - "extensions" : [ "SPV_KHR_shader_ballot" ], - "version" : "1.3" - }, - { - "enumerant" : "BaseVertex", - "value" : 4424, - "capabilities" : [ "DrawParameters" ], - "extensions" : [ "SPV_KHR_shader_draw_parameters" ], - "version" : "1.3" - }, - { - "enumerant" : "BaseInstance", - "value" : 4425, - "capabilities" : [ "DrawParameters" ], - "extensions" : [ "SPV_KHR_shader_draw_parameters" ], - "version" : "1.3" - }, - { - "enumerant" : "DrawIndex", - "value" : 4426, - "capabilities" : [ "DrawParameters", "MeshShadingNV", "MeshShadingEXT" ], - "extensions" : [ "SPV_KHR_shader_draw_parameters", "SPV_NV_mesh_shader", "SPV_EXT_mesh_shader" ], - "version" : "1.3" - }, - { - "enumerant" : "PrimitiveShadingRateKHR", - "value" : 4432, - "capabilities" : [ "FragmentShadingRateKHR" ], - "extensions" : [ "SPV_KHR_fragment_shading_rate" ], - "version" : "None" - }, - { - "enumerant" : "DeviceIndex", - "value" : 4438, - "capabilities" : [ "DeviceGroup" ], - "extensions" : [ "SPV_KHR_device_group" ], - "version" : "1.3" - }, - { - "enumerant" : "ViewIndex", - "value" : 4440, - "capabilities" : [ "MultiView" ], - "extensions" : [ "SPV_KHR_multiview" ], - "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" ], - "version" : "None" - }, - { - "enumerant" : "BaryCoordNoPerspCentroidAMD", - "value" : 4993, - "extensions" : [ "SPV_AMD_shader_explicit_vertex_parameter" ], - "version" : "None" - }, - { - "enumerant" : "BaryCoordNoPerspSampleAMD", - "value" : 4994, - "extensions" : [ "SPV_AMD_shader_explicit_vertex_parameter" ], - "version" : "None" - }, - { - "enumerant" : "BaryCoordSmoothAMD", - "value" : 4995, - "extensions" : [ "SPV_AMD_shader_explicit_vertex_parameter" ], - "version" : "None" - }, - { - "enumerant" : "BaryCoordSmoothCentroidAMD", - "value" : 4996, - "extensions" : [ "SPV_AMD_shader_explicit_vertex_parameter" ], - "version" : "None" - }, - { - "enumerant" : "BaryCoordSmoothSampleAMD", - "value" : 4997, - "extensions" : [ "SPV_AMD_shader_explicit_vertex_parameter" ], - "version" : "None" - }, - { - "enumerant" : "BaryCoordPullModelAMD", - "value" : 4998, - "extensions" : [ "SPV_AMD_shader_explicit_vertex_parameter" ], - "version" : "None" - }, - { - "enumerant" : "FragStencilRefEXT", - "value" : 5014, - "capabilities" : [ "StencilExportEXT" ], - "extensions" : [ "SPV_EXT_shader_stencil_export" ], - "version" : "None" - }, - { - "enumerant" : "ViewportMaskNV", - "value" : 5253, - "capabilities" : [ "ShaderViewportMaskNV", "MeshShadingNV" ], - "extensions" : [ "SPV_NV_viewport_array2", "SPV_NV_mesh_shader" ], - "version" : "None" - }, - { - "enumerant" : "SecondaryPositionNV", - "value" : 5257, - "capabilities" : [ "ShaderStereoViewNV" ], - "extensions" : [ "SPV_NV_stereo_view_rendering" ], - "version" : "None" - }, - { - "enumerant" : "SecondaryViewportMaskNV", - "value" : 5258, - "capabilities" : [ "ShaderStereoViewNV" ], - "extensions" : [ "SPV_NV_stereo_view_rendering" ], - "version" : "None" - }, - { - "enumerant" : "PositionPerViewNV", - "value" : 5261, - "capabilities" : [ "PerViewAttributesNV", "MeshShadingNV" ], - "extensions" : [ "SPV_NVX_multiview_per_view_attributes", "SPV_NV_mesh_shader" ], - "version" : "None" - }, - { - "enumerant" : "ViewportMaskPerViewNV", - "value" : 5262, - "capabilities" : [ "PerViewAttributesNV", "MeshShadingNV" ], - "extensions" : [ "SPV_NVX_multiview_per_view_attributes", "SPV_NV_mesh_shader" ], - "version" : "None" - }, - { - "enumerant" : "FullyCoveredEXT", - "value" : 5264, - "capabilities" : [ "FragmentFullyCoveredEXT" ], - "extensions" : [ "SPV_EXT_fragment_fully_covered" ], - "version" : "None" - }, - { - "enumerant" : "TaskCountNV", - "value" : 5274, - "capabilities" : [ "MeshShadingNV" ], - "extensions" : [ "SPV_NV_mesh_shader" ], - "version" : "None" - }, - { - "enumerant" : "PrimitiveCountNV", - "value" : 5275, - "capabilities" : [ "MeshShadingNV" ], - "extensions" : [ "SPV_NV_mesh_shader" ], - "version" : "None" - }, - { - "enumerant" : "PrimitiveIndicesNV", - "value" : 5276, - "capabilities" : [ "MeshShadingNV" ], - "extensions" : [ "SPV_NV_mesh_shader" ], - "version" : "None" - }, - { - "enumerant" : "ClipDistancePerViewNV", - "value" : 5277, - "capabilities" : [ "MeshShadingNV" ], - "extensions" : [ "SPV_NV_mesh_shader" ], - "version" : "None" - }, - { - "enumerant" : "CullDistancePerViewNV", - "value" : 5278, - "capabilities" : [ "MeshShadingNV" ], - "extensions" : [ "SPV_NV_mesh_shader" ], - "version" : "None" - }, - { - "enumerant" : "LayerPerViewNV", - "value" : 5279, - "capabilities" : [ "MeshShadingNV" ], - "extensions" : [ "SPV_NV_mesh_shader" ], - "version" : "None" - }, - { - "enumerant" : "MeshViewCountNV", - "value" : 5280, - "capabilities" : [ "MeshShadingNV" ], - "extensions" : [ "SPV_NV_mesh_shader" ], - "version" : "None" - }, - { - "enumerant" : "MeshViewIndicesNV", - "value" : 5281, - "capabilities" : [ "MeshShadingNV" ], - "extensions" : [ "SPV_NV_mesh_shader" ], - "version" : "None" - }, - { - "enumerant" : "BaryCoordKHR", - "value" : 5286, - "capabilities" : [ "FragmentBarycentricNV", "FragmentBarycentricKHR" ], - "extensions" : [ "SPV_NV_fragment_shader_barycentric", "SPV_KHR_fragment_shader_barycentric" ], - "version" : "None" - }, - { - "enumerant" : "BaryCoordNV", - "value" : 5286, - "capabilities" : [ "FragmentBarycentricNV", "FragmentBarycentricKHR" ], - "extensions" : [ "SPV_NV_fragment_shader_barycentric", "SPV_KHR_fragment_shader_barycentric" ], - "version" : "None" - }, - { - "enumerant" : "BaryCoordNoPerspKHR", - "value" : 5287, - "capabilities" : [ "FragmentBarycentricNV", "FragmentBarycentricKHR" ], - "extensions" : [ "SPV_NV_fragment_shader_barycentric", "SPV_KHR_fragment_shader_barycentric" ], - "version" : "None" - }, - { - "enumerant" : "BaryCoordNoPerspNV", - "value" : 5287, - "capabilities" : [ "FragmentBarycentricNV", "FragmentBarycentricKHR" ], - "extensions" : [ "SPV_NV_fragment_shader_barycentric", "SPV_KHR_fragment_shader_barycentric" ], - "version" : "None" - }, - { - "enumerant" : "FragSizeEXT", - "value" : 5292 , - "capabilities" : [ "FragmentDensityEXT", "ShadingRateNV" ], - "extensions" : [ "SPV_EXT_fragment_invocation_density", "SPV_NV_shading_rate" ], - "version" : "None" - }, - { - "enumerant" : "FragmentSizeNV", - "value" : 5292 , - "capabilities" : [ "ShadingRateNV", "FragmentDensityEXT" ], - "extensions" : [ "SPV_NV_shading_rate", "SPV_EXT_fragment_invocation_density" ], - "version" : "None" - }, - { - "enumerant" : "FragInvocationCountEXT", - "value" : 5293, - "capabilities" : [ "FragmentDensityEXT", "ShadingRateNV" ], - "extensions" : [ "SPV_EXT_fragment_invocation_density", "SPV_NV_shading_rate" ], - "version" : "None" - }, - { - "enumerant" : "InvocationsPerPixelNV", - "value" : 5293, - "capabilities" : [ "ShadingRateNV", "FragmentDensityEXT" ], - "extensions" : [ "SPV_NV_shading_rate", "SPV_EXT_fragment_invocation_density" ], - "version" : "None" - }, - { - "enumerant" : "PrimitivePointIndicesEXT", - "value" : 5294, - "capabilities" : [ "MeshShadingEXT" ], - "extensions" : [ "SPV_EXT_mesh_shader" ], - "version" : "None" - }, - { - "enumerant" : "PrimitiveLineIndicesEXT", - "value" : 5295, - "capabilities" : [ "MeshShadingEXT" ], - "extensions" : [ "SPV_EXT_mesh_shader" ], - "version" : "None" - }, - { - "enumerant" : "PrimitiveTriangleIndicesEXT", - "value" : 5296, - "capabilities" : [ "MeshShadingEXT" ], - "extensions" : [ "SPV_EXT_mesh_shader" ], - "version" : "None" - }, - { - "enumerant" : "CullPrimitiveEXT", - "value" : 5299, - "capabilities" : [ "MeshShadingEXT" ], - "extensions" : [ "SPV_EXT_mesh_shader" ], - "version" : "None" - }, - { - "enumerant" : "LaunchIdNV", - "value" : 5319, - "capabilities" : [ "RayTracingNV" , "RayTracingKHR" ], - "extensions" : [ "SPV_NV_ray_tracing" , "SPV_KHR_ray_tracing" ], - "version" : "None" - }, - { - "enumerant" : "LaunchIdKHR", - "value" : 5319, - "capabilities" : [ "RayTracingNV" , "RayTracingKHR" ], - "extensions" : [ "SPV_NV_ray_tracing" , "SPV_KHR_ray_tracing" ], - "version" : "None" - }, - { - "enumerant" : "LaunchSizeNV", - "value" : 5320, - "capabilities" : [ "RayTracingNV" , "RayTracingKHR" ], - "extensions" : [ "SPV_NV_ray_tracing" , "SPV_KHR_ray_tracing" ], - "version" : "None" - }, - { - "enumerant" : "LaunchSizeKHR", - "value" : 5320, - "capabilities" : [ "RayTracingNV" , "RayTracingKHR" ], - "extensions" : [ "SPV_NV_ray_tracing" , "SPV_KHR_ray_tracing" ], - "version" : "None" - }, - { - "enumerant" : "WorldRayOriginNV", - "value" : 5321, - "capabilities" : [ "RayTracingNV" , "RayTracingKHR" ], - "extensions" : [ "SPV_NV_ray_tracing" , "SPV_KHR_ray_tracing" ], - "version" : "None" - }, - { - "enumerant" : "WorldRayOriginKHR", - "value" : 5321, - "capabilities" : [ "RayTracingNV" , "RayTracingKHR" ], - "extensions" : [ "SPV_NV_ray_tracing" , "SPV_KHR_ray_tracing" ], - "version" : "None" - }, - { - "enumerant" : "WorldRayDirectionNV", - "value" : 5322, - "capabilities" : [ "RayTracingNV" , "RayTracingKHR" ], - "extensions" : [ "SPV_NV_ray_tracing" , "SPV_KHR_ray_tracing" ], - "version" : "None" - }, - { - "enumerant" : "WorldRayDirectionKHR", - "value" : 5322, - "capabilities" : [ "RayTracingNV" , "RayTracingKHR" ], - "extensions" : [ "SPV_NV_ray_tracing" , "SPV_KHR_ray_tracing" ], - "version" : "None" - }, - { - "enumerant" : "ObjectRayOriginNV", - "value" : 5323, - "capabilities" : [ "RayTracingNV" , "RayTracingKHR" ], - "extensions" : [ "SPV_NV_ray_tracing" , "SPV_KHR_ray_tracing" ], - "version" : "None" - }, - { - "enumerant" : "ObjectRayOriginKHR", - "value" : 5323, - "capabilities" : [ "RayTracingNV" , "RayTracingKHR" ], - "extensions" : [ "SPV_NV_ray_tracing" , "SPV_KHR_ray_tracing" ], - "version" : "None" - }, - { - "enumerant" : "ObjectRayDirectionNV", - "value" : 5324, - "capabilities" : [ "RayTracingNV" , "RayTracingKHR" ], - "extensions" : [ "SPV_NV_ray_tracing" , "SPV_KHR_ray_tracing" ], - "version" : "None" - }, - { - "enumerant" : "ObjectRayDirectionKHR", - "value" : 5324, - "capabilities" : [ "RayTracingNV" , "RayTracingKHR" ], - "extensions" : [ "SPV_NV_ray_tracing" , "SPV_KHR_ray_tracing" ], - "version" : "None" - }, - { - "enumerant" : "RayTminNV", - "value" : 5325, - "capabilities" : [ "RayTracingNV" , "RayTracingKHR" ], - "extensions" : [ "SPV_NV_ray_tracing" , "SPV_KHR_ray_tracing" ], - "version" : "None" - }, - { - "enumerant" : "RayTminKHR", - "value" : 5325, - "capabilities" : [ "RayTracingNV" , "RayTracingKHR" ], - "extensions" : [ "SPV_NV_ray_tracing" , "SPV_KHR_ray_tracing" ], - "version" : "None" - }, - { - "enumerant" : "RayTmaxNV", - "value" : 5326, - "capabilities" : [ "RayTracingNV" , "RayTracingKHR" ], - "extensions" : [ "SPV_NV_ray_tracing" , "SPV_KHR_ray_tracing" ], - "version" : "None" - }, - { - "enumerant" : "RayTmaxKHR", - "value" : 5326, - "capabilities" : [ "RayTracingNV" , "RayTracingKHR" ], - "extensions" : [ "SPV_NV_ray_tracing" , "SPV_KHR_ray_tracing" ], - "version" : "None" - }, - { - "enumerant" : "InstanceCustomIndexNV", - "value" : 5327, - "capabilities" : [ "RayTracingNV" , "RayTracingKHR" ], - "extensions" : [ "SPV_NV_ray_tracing" , "SPV_KHR_ray_tracing" ], - "version" : "None" - }, - { - "enumerant" : "InstanceCustomIndexKHR", - "value" : 5327, - "capabilities" : [ "RayTracingNV" , "RayTracingKHR" ], - "extensions" : [ "SPV_NV_ray_tracing" , "SPV_KHR_ray_tracing" ], - "version" : "None" - }, - { - "enumerant" : "ObjectToWorldNV", - "value" : 5330, - "capabilities" : [ "RayTracingNV" , "RayTracingKHR" ], - "extensions" : [ "SPV_NV_ray_tracing" , "SPV_KHR_ray_tracing" ], - "version" : "None" - }, - { - "enumerant" : "ObjectToWorldKHR", - "value" : 5330, - "capabilities" : [ "RayTracingNV" , "RayTracingKHR" ], - "extensions" : [ "SPV_NV_ray_tracing" , "SPV_KHR_ray_tracing" ], - "version" : "None" - }, - { - "enumerant" : "WorldToObjectNV", - "value" : 5331, - "capabilities" : [ "RayTracingNV" , "RayTracingKHR" ], - "extensions" : [ "SPV_NV_ray_tracing" , "SPV_KHR_ray_tracing" ], - "version" : "None" - }, - { - "enumerant" : "WorldToObjectKHR", - "value" : 5331, - "capabilities" : [ "RayTracingNV" , "RayTracingKHR" ], - "extensions" : [ "SPV_NV_ray_tracing" , "SPV_KHR_ray_tracing" ], - "version" : "None" - }, - { - "enumerant" : "HitTNV", - "value" : 5332, - "capabilities" : [ "RayTracingNV" ], - "extensions" : [ "SPV_NV_ray_tracing" ], - "version" : "None" - }, - { - "enumerant" : "HitKindNV", - "value" : 5333, - "capabilities" : [ "RayTracingNV" , "RayTracingKHR" ], - "extensions" : [ "SPV_NV_ray_tracing" , "SPV_KHR_ray_tracing" ], - "version" : "None" - }, - { - "enumerant" : "HitKindKHR", - "value" : 5333, - "capabilities" : [ "RayTracingNV" , "RayTracingKHR" ], - "extensions" : [ "SPV_NV_ray_tracing" , "SPV_KHR_ray_tracing" ], - "version" : "None" - }, - { - "enumerant" : "CurrentRayTimeNV", - "value" : 5334, - "capabilities" : [ "RayTracingMotionBlurNV" ], - "extensions" : [ "SPV_NV_ray_tracing_motion_blur" ], - "version" : "None" - }, - { - "enumerant" : "HitTriangleVertexPositionsKHR", - "value" : 5335, - "capabilities" : [ "RayTracingPositionFetchKHR" ], - "version" : "None" - }, - { - "enumerant" : "IncomingRayFlagsNV", - "value" : 5351, - "capabilities" : [ "RayTracingNV" , "RayTracingKHR" ], - "extensions" : [ "SPV_NV_ray_tracing" , "SPV_KHR_ray_tracing" ], - "version" : "None" - }, - { - "enumerant" : "IncomingRayFlagsKHR", - "value" : 5351, - "capabilities" : [ "RayTracingNV" , "RayTracingKHR" ], - "extensions" : [ "SPV_NV_ray_tracing" , "SPV_KHR_ray_tracing" ], - "version" : "None" - }, - { - "enumerant" : "RayGeometryIndexKHR", - "value" : 5352, - "capabilities" : [ "RayTracingKHR" ], - "extensions" : [ "SPV_KHR_ray_tracing" ], - "version" : "None" - }, - { - "enumerant" : "WarpsPerSMNV", - "value" : 5374, - "capabilities" : [ "ShaderSMBuiltinsNV" ], - "extensions" : [ "SPV_NV_shader_sm_builtins" ], - "version" : "None" - }, - { - "enumerant" : "SMCountNV", - "value" : 5375, - "capabilities" : [ "ShaderSMBuiltinsNV" ], - "extensions" : [ "SPV_NV_shader_sm_builtins" ], - "version" : "None" - }, - { - "enumerant" : "WarpIDNV", - "value" : 5376, - "capabilities" : [ "ShaderSMBuiltinsNV" ], - "extensions" : [ "SPV_NV_shader_sm_builtins" ], - "version" : "None" - }, - { - "enumerant" : "SMIDNV", - "value" : 5377, - "capabilities" : [ "ShaderSMBuiltinsNV" ], - "extensions" : [ "SPV_NV_shader_sm_builtins" ], - "version" : "None" - }, - { - "enumerant" : "CullMaskKHR", - "value" : 6021, - "capabilities" : [ "RayCullMaskKHR" ], - "extensions" : [ "SPV_KHR_ray_cull_mask" ], - "version" : "None" - } - ] - }, - { - "category" : "ValueEnum", - "kind" : "Scope", - "enumerants" : [ - { - "enumerant" : "CrossDevice", - "value" : 0 - }, - { - "enumerant" : "Device", - "value" : 1 - }, - { - "enumerant" : "Workgroup", - "value" : 2 - }, - { - "enumerant" : "Subgroup", - "value" : 3 - }, - { - "enumerant" : "Invocation", - "value" : 4 - }, - { - "enumerant" : "QueueFamily", - "value" : 5, - "capabilities" : [ "VulkanMemoryModel" ], - "version" : "1.5" - }, - { - "enumerant" : "QueueFamilyKHR", - "value" : 5, - "capabilities" : [ "VulkanMemoryModel" ], - "version" : "1.5" - }, - { - "enumerant" : "ShaderCallKHR", - "value" : 6, - "capabilities" : [ "RayTracingKHR" ], - "version" : "None" - } - ] - }, - { - "category" : "ValueEnum", - "kind" : "GroupOperation", - "enumerants" : [ - { - "enumerant" : "Reduce", - "value" : 0, - "capabilities" : [ "Kernel", "GroupNonUniformArithmetic", "GroupNonUniformBallot" ] - }, - { - "enumerant" : "InclusiveScan", - "value" : 1, - "capabilities" : [ "Kernel", "GroupNonUniformArithmetic", "GroupNonUniformBallot" ] - }, - { - "enumerant" : "ExclusiveScan", - "value" : 2, - "capabilities" : [ "Kernel", "GroupNonUniformArithmetic", "GroupNonUniformBallot" ] - }, - { - "enumerant" : "ClusteredReduce", - "value" : 3, - "capabilities" : [ "GroupNonUniformClustered" ], - "version" : "1.3" - }, - { - "enumerant" : "PartitionedReduceNV", - "value" : 6, - "capabilities" : [ "GroupNonUniformPartitionedNV" ], - "extensions" : [ "SPV_NV_shader_subgroup_partitioned" ], - "version" : "None" - }, - { - "enumerant" : "PartitionedInclusiveScanNV", - "value" : 7, - "capabilities" : [ "GroupNonUniformPartitionedNV" ], - "extensions" : [ "SPV_NV_shader_subgroup_partitioned" ], - "version" : "None" - }, - { - "enumerant" : "PartitionedExclusiveScanNV", - "value" : 8, - "capabilities" : [ "GroupNonUniformPartitionedNV" ], - "extensions" : [ "SPV_NV_shader_subgroup_partitioned" ], - "version" : "None" - } - ] - }, - { - "category" : "ValueEnum", - "kind" : "KernelEnqueueFlags", - "enumerants" : [ - { - "enumerant" : "NoWait", - "value" : 0, - "capabilities" : [ "Kernel" ] - }, - { - "enumerant" : "WaitKernel", - "value" : 1, - "capabilities" : [ "Kernel" ] - }, - { - "enumerant" : "WaitWorkGroup", - "value" : 2, - "capabilities" : [ "Kernel" ] - } - ] - }, - { - "category" : "ValueEnum", - "kind" : "Capability", - "enumerants" : [ - { - "enumerant" : "Matrix", - "value" : 0 - }, - { - "enumerant" : "Shader", - "value" : 1, - "capabilities" : [ "Matrix" ] - }, - { - "enumerant" : "Geometry", - "value" : 2, - "capabilities" : [ "Shader" ] - }, - { - "enumerant" : "Tessellation", - "value" : 3, - "capabilities" : [ "Shader" ] - }, - { - "enumerant" : "Addresses", - "value" : 4 - }, - { - "enumerant" : "Linkage", - "value" : 5 - }, - { - "enumerant" : "Kernel", - "value" : 6 - }, - { - "enumerant" : "Vector16", - "value" : 7, - "capabilities" : [ "Kernel" ] - }, - { - "enumerant" : "Float16Buffer", - "value" : 8, - "capabilities" : [ "Kernel" ] - }, - { - "enumerant" : "Float16", - "value" : 9 - }, - { - "enumerant" : "Float64", - "value" : 10 - }, - { - "enumerant" : "Int64", - "value" : 11 - }, - { - "enumerant" : "Int64Atomics", - "value" : 12, - "capabilities" : [ "Int64" ] - }, - { - "enumerant" : "ImageBasic", - "value" : 13, - "capabilities" : [ "Kernel" ] - }, - { - "enumerant" : "ImageReadWrite", - "value" : 14, - "capabilities" : [ "ImageBasic" ] - }, - { - "enumerant" : "ImageMipmap", - "value" : 15, - "capabilities" : [ "ImageBasic" ] - }, - { - "enumerant" : "Pipes", - "value" : 17, - "capabilities" : [ "Kernel" ] - }, - { - "enumerant" : "Groups", - "value" : 18, - "extensions" : [ "SPV_AMD_shader_ballot" ] - }, - { - "enumerant" : "DeviceEnqueue", - "value" : 19, - "capabilities" : [ "Kernel" ] - }, - { - "enumerant" : "LiteralSampler", - "value" : 20, - "capabilities" : [ "Kernel" ] - }, - { - "enumerant" : "AtomicStorage", - "value" : 21, - "capabilities" : [ "Shader" ] - }, - { - "enumerant" : "Int16", - "value" : 22 - }, - { - "enumerant" : "TessellationPointSize", - "value" : 23, - "capabilities" : [ "Tessellation" ] - }, - { - "enumerant" : "GeometryPointSize", - "value" : 24, - "capabilities" : [ "Geometry" ] - }, - { - "enumerant" : "ImageGatherExtended", - "value" : 25, - "capabilities" : [ "Shader" ] - }, - { - "enumerant" : "StorageImageMultisample", - "value" : 27, - "capabilities" : [ "Shader" ] - }, - { - "enumerant" : "UniformBufferArrayDynamicIndexing", - "value" : 28, - "capabilities" : [ "Shader" ] - }, - { - "enumerant" : "SampledImageArrayDynamicIndexing", - "value" : 29, - "capabilities" : [ "Shader" ] - }, - { - "enumerant" : "StorageBufferArrayDynamicIndexing", - "value" : 30, - "capabilities" : [ "Shader" ] - }, - { - "enumerant" : "StorageImageArrayDynamicIndexing", - "value" : 31, - "capabilities" : [ "Shader" ] - }, - { - "enumerant" : "ClipDistance", - "value" : 32, - "capabilities" : [ "Shader" ] - }, - { - "enumerant" : "CullDistance", - "value" : 33, - "capabilities" : [ "Shader" ] - }, - { - "enumerant" : "ImageCubeArray", - "value" : 34, - "capabilities" : [ "SampledCubeArray" ] - }, - { - "enumerant" : "SampleRateShading", - "value" : 35, - "capabilities" : [ "Shader" ] - }, - { - "enumerant" : "ImageRect", - "value" : 36, - "capabilities" : [ "SampledRect" ] - }, - { - "enumerant" : "SampledRect", - "value" : 37, - "capabilities" : [ "Shader" ] - }, - { - "enumerant" : "GenericPointer", - "value" : 38, - "capabilities" : [ "Addresses" ] - }, - { - "enumerant" : "Int8", - "value" : 39 - }, - { - "enumerant" : "InputAttachment", - "value" : 40, - "capabilities" : [ "Shader" ] - }, - { - "enumerant" : "SparseResidency", - "value" : 41, - "capabilities" : [ "Shader" ] - }, - { - "enumerant" : "MinLod", - "value" : 42, - "capabilities" : [ "Shader" ] - }, - { - "enumerant" : "Sampled1D", - "value" : 43 - }, - { - "enumerant" : "Image1D", - "value" : 44, - "capabilities" : [ "Sampled1D" ] - }, - { - "enumerant" : "SampledCubeArray", - "value" : 45, - "capabilities" : [ "Shader" ] - }, - { - "enumerant" : "SampledBuffer", - "value" : 46 - }, - { - "enumerant" : "ImageBuffer", - "value" : 47, - "capabilities" : [ "SampledBuffer" ] - }, - { - "enumerant" : "ImageMSArray", - "value" : 48, - "capabilities" : [ "Shader" ] - }, - { - "enumerant" : "StorageImageExtendedFormats", - "value" : 49, - "capabilities" : [ "Shader" ] - }, - { - "enumerant" : "ImageQuery", - "value" : 50, - "capabilities" : [ "Shader" ] - }, - { - "enumerant" : "DerivativeControl", - "value" : 51, - "capabilities" : [ "Shader" ] - }, - { - "enumerant" : "InterpolationFunction", - "value" : 52, - "capabilities" : [ "Shader" ] - }, - { - "enumerant" : "TransformFeedback", - "value" : 53, - "capabilities" : [ "Shader" ] - }, - { - "enumerant" : "GeometryStreams", - "value" : 54, - "capabilities" : [ "Geometry" ] - }, - { - "enumerant" : "StorageImageReadWithoutFormat", - "value" : 55, - "capabilities" : [ "Shader" ] - }, - { - "enumerant" : "StorageImageWriteWithoutFormat", - "value" : 56, - "capabilities" : [ "Shader" ] - }, - { - "enumerant" : "MultiViewport", - "value" : 57, - "capabilities" : [ "Geometry" ] - }, - { - "enumerant" : "SubgroupDispatch", - "value" : 58, - "capabilities" : [ "DeviceEnqueue" ], - "version" : "1.1" - }, - { - "enumerant" : "NamedBarrier", - "value" : 59, - "capabilities" : [ "Kernel" ], - "version" : "1.1" - }, - { - "enumerant" : "PipeStorage", - "value" : 60, - "capabilities" : [ "Pipes" ], - "version" : "1.1" - }, - { - "enumerant" : "GroupNonUniform", - "value" : 61, - "version" : "1.3" - }, - { - "enumerant" : "GroupNonUniformVote", - "value" : 62, - "capabilities" : [ "GroupNonUniform" ], - "version" : "1.3" - }, - { - "enumerant" : "GroupNonUniformArithmetic", - "value" : 63, - "capabilities" : [ "GroupNonUniform" ], - "version" : "1.3" - }, - { - "enumerant" : "GroupNonUniformBallot", - "value" : 64, - "capabilities" : [ "GroupNonUniform" ], - "version" : "1.3" - }, - { - "enumerant" : "GroupNonUniformShuffle", - "value" : 65, - "capabilities" : [ "GroupNonUniform" ], - "version" : "1.3" - }, - { - "enumerant" : "GroupNonUniformShuffleRelative", - "value" : 66, - "capabilities" : [ "GroupNonUniform" ], - "version" : "1.3" - }, - { - "enumerant" : "GroupNonUniformClustered", - "value" : 67, - "capabilities" : [ "GroupNonUniform" ], - "version" : "1.3" - }, - { - "enumerant" : "GroupNonUniformQuad", - "value" : 68, - "capabilities" : [ "GroupNonUniform" ], - "version" : "1.3" - }, - { - "enumerant" : "ShaderLayer", - "value" : 69, - "version" : "1.5" - }, - { - "enumerant" : "ShaderViewportIndex", - "value" : 70, - "version" : "1.5" - }, - { - "enumerant" : "UniformDecoration", - "value" : 71, - "version" : "1.6" - }, - { - "enumerant" : "CoreBuiltinsARM", - "value" : 4165, - "extensions" : [ "SPV_ARM_core_builtins" ] - }, - { - "enumerant" : "TileImageColorReadAccessEXT", - "value" : 4166, - "extensions" : [ "SPV_EXT_shader_tile_image" ], - "version" : "None" - }, - { - "enumerant" : "TileImageDepthReadAccessEXT", - "value" : 4167, - "extensions" : [ "SPV_EXT_shader_tile_image" ], - "version" : "None" - }, - { - "enumerant" : "TileImageStencilReadAccessEXT", - "value" : 4168, - "extensions" : [ "SPV_EXT_shader_tile_image" ], - "version" : "None" - }, - { - "enumerant" : "FragmentShadingRateKHR", - "value" : 4422, - "capabilities" : [ "Shader" ], - "extensions" : [ "SPV_KHR_fragment_shading_rate" ], - "version" : "None" - }, - { - "enumerant" : "SubgroupBallotKHR", - "value" : 4423, - "extensions" : [ "SPV_KHR_shader_ballot" ], - "version" : "None" - }, - { - "enumerant" : "DrawParameters", - "value" : 4427, - "capabilities" : [ "Shader" ], - "extensions" : [ "SPV_KHR_shader_draw_parameters" ], - "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" ], - "version" : "None" - }, - { - "enumerant" : "StorageBuffer16BitAccess", - "value" : 4433, - "extensions" : [ "SPV_KHR_16bit_storage" ], - "version" : "1.3" - }, - { - "enumerant" : "StorageUniformBufferBlock16", - "value" : 4433, - "extensions" : [ "SPV_KHR_16bit_storage" ], - "version" : "1.3" - }, - { - "enumerant" : "UniformAndStorageBuffer16BitAccess", - "value" : 4434, - "capabilities" : [ - "StorageBuffer16BitAccess", - "StorageUniformBufferBlock16" - ], - "extensions" : [ "SPV_KHR_16bit_storage" ], - "version" : "1.3" - }, - { - "enumerant" : "StorageUniform16", - "value" : 4434, - "capabilities" : [ - "StorageBuffer16BitAccess", - "StorageUniformBufferBlock16" - ], - "extensions" : [ "SPV_KHR_16bit_storage" ], - "version" : "1.3" - }, - { - "enumerant" : "StoragePushConstant16", - "value" : 4435, - "extensions" : [ "SPV_KHR_16bit_storage" ], - "version" : "1.3" - }, - { - "enumerant" : "StorageInputOutput16", - "value" : 4436, - "extensions" : [ "SPV_KHR_16bit_storage" ], - "version" : "1.3" - }, - { - "enumerant" : "DeviceGroup", - "value" : 4437, - "extensions" : [ "SPV_KHR_device_group" ], - "version" : "1.3" - }, - { - "enumerant" : "MultiView", - "value" : 4439, - "capabilities" : [ "Shader" ], - "extensions" : [ "SPV_KHR_multiview" ], - "version" : "1.3" - }, - { - "enumerant" : "VariablePointersStorageBuffer", - "value" : 4441, - "capabilities" : [ "Shader" ], - "extensions" : [ "SPV_KHR_variable_pointers" ], - "version" : "1.3" - }, - { - "enumerant" : "VariablePointers", - "value" : 4442, - "capabilities" : [ "VariablePointersStorageBuffer" ], - "extensions" : [ "SPV_KHR_variable_pointers" ], - "version" : "1.3" - }, - { - "enumerant" : "AtomicStorageOps", - "value" : 4445, - "extensions" : [ "SPV_KHR_shader_atomic_counter_ops" ], - "version" : "None" - }, - { - "enumerant" : "SampleMaskPostDepthCoverage", - "value" : 4447, - "extensions" : [ "SPV_KHR_post_depth_coverage" ], - "version" : "None" - }, - { - "enumerant" : "StorageBuffer8BitAccess", - "value" : 4448, - "extensions" : [ "SPV_KHR_8bit_storage" ], - "version" : "1.5" - }, - { - "enumerant" : "UniformAndStorageBuffer8BitAccess", - "value" : 4449, - "capabilities" : [ "StorageBuffer8BitAccess" ], - "extensions" : [ "SPV_KHR_8bit_storage" ], - "version" : "1.5" - }, - { - "enumerant" : "StoragePushConstant8", - "value" : 4450, - "extensions" : [ "SPV_KHR_8bit_storage" ], - "version" : "1.5" - }, - { - "enumerant" : "DenormPreserve", - "value" : 4464, - "extensions" : [ "SPV_KHR_float_controls" ], - "version" : "1.4" - }, - { - "enumerant" : "DenormFlushToZero", - "value" : 4465, - "extensions" : [ "SPV_KHR_float_controls" ], - "version" : "1.4" - }, - { - "enumerant" : "SignedZeroInfNanPreserve", - "value" : 4466, - "extensions" : [ "SPV_KHR_float_controls" ], - "version" : "1.4" - }, - { - "enumerant" : "RoundingModeRTE", - "value" : 4467, - "extensions" : [ "SPV_KHR_float_controls" ], - "version" : "1.4" - }, - { - "enumerant" : "RoundingModeRTZ", - "value" : 4468, - "extensions" : [ "SPV_KHR_float_controls" ], - "version" : "1.4" - }, - { - "enumerant" : "RayQueryProvisionalKHR", - "value" : 4471, - "capabilities" : [ "Shader" ], - "extensions" : [ "SPV_KHR_ray_query" ], - "version" : "None" - }, - { - "enumerant" : "RayQueryKHR", - "value" : 4472, - "capabilities" : [ "Shader" ], - "extensions" : [ "SPV_KHR_ray_query" ], - "version" : "None" - }, - { - "enumerant" : "RayTraversalPrimitiveCullingKHR", - "value" : 4478, - "capabilities" : [ "RayQueryKHR","RayTracingKHR" ], - "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" : "TextureSampleWeightedQCOM", - "value" : 4484, - "extensions" : [ "SPV_QCOM_image_processing" ], - "version" : "None" - }, - { - "enumerant" : "TextureBoxFilterQCOM", - "value" : 4485, - "extensions" : [ "SPV_QCOM_image_processing" ], - "version" : "None" - }, - { - "enumerant" : "TextureBlockMatchQCOM", - "value" : 4486, - "extensions" : [ "SPV_QCOM_image_processing" ], - "version" : "None" - }, - { - "enumerant" : "Float16ImageAMD", - "value" : 5008, - "capabilities" : [ "Shader" ], - "extensions" : [ "SPV_AMD_gpu_shader_half_float_fetch" ], - "version" : "None" - }, - { - "enumerant" : "ImageGatherBiasLodAMD", - "value" : 5009, - "capabilities" : [ "Shader" ], - "extensions" : [ "SPV_AMD_texture_gather_bias_lod" ], - "version" : "None" - }, - { - "enumerant" : "FragmentMaskAMD", - "value" : 5010, - "capabilities" : [ "Shader" ], - "extensions" : [ "SPV_AMD_shader_fragment_mask" ], - "version" : "None" - }, - { - "enumerant" : "StencilExportEXT", - "value" : 5013, - "capabilities" : [ "Shader" ], - "extensions" : [ "SPV_EXT_shader_stencil_export" ], - "version" : "None" - }, - { - "enumerant" : "ImageReadWriteLodAMD", - "value" : 5015, - "capabilities" : [ "Shader" ], - "extensions" : [ "SPV_AMD_shader_image_load_store_lod" ], - "version" : "None" - }, - { - "enumerant" : "Int64ImageEXT", - "value" : 5016, - "capabilities" : [ "Shader" ], - "extensions" : [ "SPV_EXT_shader_image_int64" ], - "version" : "None" - }, - { - "enumerant" : "ShaderClockKHR", - "value" : 5055, - "extensions" : [ "SPV_KHR_shader_clock" ], - "version" : "None" - }, - { - "enumerant" : "SampleMaskOverrideCoverageNV", - "value" : 5249, - "capabilities" : [ "SampleRateShading" ], - "extensions" : [ "SPV_NV_sample_mask_override_coverage" ], - "version" : "None" - }, - { - "enumerant" : "GeometryShaderPassthroughNV", - "value" : 5251, - "capabilities" : [ "Geometry" ], - "extensions" : [ "SPV_NV_geometry_shader_passthrough" ], - "version" : "None" - }, - { - "enumerant" : "ShaderViewportIndexLayerEXT", - "value" : 5254, - "capabilities" : [ "MultiViewport" ], - "extensions" : [ "SPV_EXT_shader_viewport_index_layer" ], - "version" : "None" - }, - { - "enumerant" : "ShaderViewportIndexLayerNV", - "value" : 5254, - "capabilities" : [ "MultiViewport" ], - "extensions" : [ "SPV_NV_viewport_array2" ], - "version" : "None" - }, - { - "enumerant" : "ShaderViewportMaskNV", - "value" : 5255, - "capabilities" : [ "ShaderViewportIndexLayerNV" ], - "extensions" : [ "SPV_NV_viewport_array2" ], - "version" : "None" - }, - { - "enumerant" : "ShaderStereoViewNV", - "value" : 5259, - "capabilities" : [ "ShaderViewportMaskNV" ], - "extensions" : [ "SPV_NV_stereo_view_rendering" ], - "version" : "None" - }, - { - "enumerant" : "PerViewAttributesNV", - "value" : 5260, - "capabilities" : [ "MultiView" ], - "extensions" : [ "SPV_NVX_multiview_per_view_attributes" ], - "version" : "None" - }, - { - "enumerant" : "FragmentFullyCoveredEXT", - "value" : 5265, - "capabilities" : [ "Shader" ], - "extensions" : [ "SPV_EXT_fragment_fully_covered" ], - "version" : "None" - }, - { - "enumerant" : "MeshShadingNV", - "value" : 5266, - "capabilities" : [ "Shader" ], - "extensions" : [ "SPV_NV_mesh_shader" ], - "version" : "None" - }, - { - "enumerant" : "ImageFootprintNV", - "value" : 5282, - "extensions" : [ "SPV_NV_shader_image_footprint" ], - "version" : "None" - }, - { - "enumerant" : "MeshShadingEXT", - "value" : 5283, - "capabilities" : [ "Shader" ], - "extensions" : [ "SPV_EXT_mesh_shader" ], - "version" : "None" - }, - { - "enumerant" : "FragmentBarycentricKHR", - "value" : 5284, - "extensions" : [ "SPV_NV_fragment_shader_barycentric", "SPV_KHR_fragment_shader_barycentric" ], - "version" : "None" - }, - { - "enumerant" : "FragmentBarycentricNV", - "value" : 5284, - "extensions" : [ "SPV_NV_fragment_shader_barycentric", "SPV_KHR_fragment_shader_barycentric" ], - "version" : "None" - }, - { - "enumerant" : "ComputeDerivativeGroupQuadsNV", - "value" : 5288, - "extensions" : [ "SPV_NV_compute_shader_derivatives" ], - "version" : "None" - }, - { - "enumerant" : "FragmentDensityEXT", - "value" : 5291, - "capabilities" : [ "Shader" ], - "extensions" : [ "SPV_EXT_fragment_invocation_density", "SPV_NV_shading_rate" ], - "version" : "None" - }, - { - "enumerant" : "ShadingRateNV", - "value" : 5291, - "capabilities" : [ "Shader" ], - "extensions" : [ "SPV_NV_shading_rate", "SPV_EXT_fragment_invocation_density" ], - "version" : "None" - }, - { - "enumerant" : "GroupNonUniformPartitionedNV", - "value" : 5297, - "extensions" : [ "SPV_NV_shader_subgroup_partitioned" ], - "version" : "None" - }, - { - "enumerant" : "ShaderNonUniform", - "value" : 5301, - "capabilities" : [ "Shader" ], - "version" : "1.5" - }, - { - "enumerant" : "ShaderNonUniformEXT", - "value" : 5301, - "capabilities" : [ "Shader" ], - "extensions" : [ "SPV_EXT_descriptor_indexing" ], - "version" : "1.5" - }, - { - "enumerant" : "RuntimeDescriptorArray", - "value" : 5302, - "capabilities" : [ "Shader" ], - "version" : "1.5" - }, - { - "enumerant" : "RuntimeDescriptorArrayEXT", - "value" : 5302, - "capabilities" : [ "Shader" ], - "extensions" : [ "SPV_EXT_descriptor_indexing" ], - "version" : "1.5" - }, - { - "enumerant" : "InputAttachmentArrayDynamicIndexing", - "value" : 5303, - "capabilities" : [ "InputAttachment" ], - "version" : "1.5" - }, - { - "enumerant" : "InputAttachmentArrayDynamicIndexingEXT", - "value" : 5303, - "capabilities" : [ "InputAttachment" ], - "extensions" : [ "SPV_EXT_descriptor_indexing" ], - "version" : "1.5" - }, - { - "enumerant" : "UniformTexelBufferArrayDynamicIndexing", - "value" : 5304, - "capabilities" : [ "SampledBuffer" ], - "version" : "1.5" - }, - { - "enumerant" : "UniformTexelBufferArrayDynamicIndexingEXT", - "value" : 5304, - "capabilities" : [ "SampledBuffer" ], - "extensions" : [ "SPV_EXT_descriptor_indexing" ], - "version" : "1.5" - }, - { - "enumerant" : "StorageTexelBufferArrayDynamicIndexing", - "value" : 5305, - "capabilities" : [ "ImageBuffer" ], - "version" : "1.5" - }, - { - "enumerant" : "StorageTexelBufferArrayDynamicIndexingEXT", - "value" : 5305, - "capabilities" : [ "ImageBuffer" ], - "extensions" : [ "SPV_EXT_descriptor_indexing" ], - "version" : "1.5" - }, - { - "enumerant" : "UniformBufferArrayNonUniformIndexing", - "value" : 5306, - "capabilities" : [ "ShaderNonUniform" ], - "version" : "1.5" - }, - { - "enumerant" : "UniformBufferArrayNonUniformIndexingEXT", - "value" : 5306, - "capabilities" : [ "ShaderNonUniform" ], - "extensions" : [ "SPV_EXT_descriptor_indexing" ], - "version" : "1.5" - }, - { - "enumerant" : "SampledImageArrayNonUniformIndexing", - "value" : 5307, - "capabilities" : [ "ShaderNonUniform" ], - "version" : "1.5" - }, - { - "enumerant" : "SampledImageArrayNonUniformIndexingEXT", - "value" : 5307, - "capabilities" : [ "ShaderNonUniform" ], - "extensions" : [ "SPV_EXT_descriptor_indexing" ], - "version" : "1.5" - }, - { - "enumerant" : "StorageBufferArrayNonUniformIndexing", - "value" : 5308, - "capabilities" : [ "ShaderNonUniform" ], - "version" : "1.5" - }, - { - "enumerant" : "StorageBufferArrayNonUniformIndexingEXT", - "value" : 5308, - "capabilities" : [ "ShaderNonUniform" ], - "extensions" : [ "SPV_EXT_descriptor_indexing" ], - "version" : "1.5" - }, - { - "enumerant" : "StorageImageArrayNonUniformIndexing", - "value" : 5309, - "capabilities" : [ "ShaderNonUniform" ], - "version" : "1.5" - }, - { - "enumerant" : "StorageImageArrayNonUniformIndexingEXT", - "value" : 5309, - "capabilities" : [ "ShaderNonUniform" ], - "extensions" : [ "SPV_EXT_descriptor_indexing" ], - "version" : "1.5" - }, - { - "enumerant" : "InputAttachmentArrayNonUniformIndexing", - "value" : 5310, - "capabilities" : [ "InputAttachment", "ShaderNonUniform" ], - "version" : "1.5" - }, - { - "enumerant" : "InputAttachmentArrayNonUniformIndexingEXT", - "value" : 5310, - "capabilities" : [ "InputAttachment", "ShaderNonUniform" ], - "extensions" : [ "SPV_EXT_descriptor_indexing" ], - "version" : "1.5" - }, - { - "enumerant" : "UniformTexelBufferArrayNonUniformIndexing", - "value" : 5311, - "capabilities" : [ "SampledBuffer", "ShaderNonUniform" ], - "version" : "1.5" - }, - { - "enumerant" : "UniformTexelBufferArrayNonUniformIndexingEXT", - "value" : 5311, - "capabilities" : [ "SampledBuffer", "ShaderNonUniform" ], - "extensions" : [ "SPV_EXT_descriptor_indexing" ], - "version" : "1.5" - }, - { - "enumerant" : "StorageTexelBufferArrayNonUniformIndexing", - "value" : 5312, - "capabilities" : [ "ImageBuffer", "ShaderNonUniform" ], - "version" : "1.5" - }, - { - "enumerant" : "StorageTexelBufferArrayNonUniformIndexingEXT", - "value" : 5312, - "capabilities" : [ "ImageBuffer", "ShaderNonUniform" ], - "extensions" : [ "SPV_EXT_descriptor_indexing" ], - "version" : "1.5" - }, - { - "enumerant" : "RayTracingPositionFetchKHR", - "value" : 5336, - "capabilities" : [ "Shader" ], - "extensions" : [ "SPV_KHR_ray_tracing_position_fetch" ], - "version" : "None" - }, - { - "enumerant" : "RayTracingNV", - "value" : 5340, - "capabilities" : [ "Shader" ], - "extensions" : [ "SPV_NV_ray_tracing" ], - "version" : "None" - }, - { - "enumerant" : "RayTracingMotionBlurNV", - "value" : 5341, - "capabilities" : [ "Shader" ], - "extensions" : [ "SPV_NV_ray_tracing_motion_blur" ], - "version" : "None" - }, - { - "enumerant" : "VulkanMemoryModel", - "value" : 5345, - "version" : "1.5" - }, - { - "enumerant" : "VulkanMemoryModelKHR", - "value" : 5345, - "extensions" : [ "SPV_KHR_vulkan_memory_model" ], - "version" : "1.5" - }, - { - "enumerant" : "VulkanMemoryModelDeviceScope", - "value" : 5346, - "version" : "1.5" - }, - { - "enumerant" : "VulkanMemoryModelDeviceScopeKHR", - "value" : 5346, - "extensions" : [ "SPV_KHR_vulkan_memory_model" ], - "version" : "1.5" - }, - { - "enumerant" : "PhysicalStorageBufferAddresses", - "value" : 5347, - "capabilities" : [ "Shader" ], - "extensions" : [ "SPV_EXT_physical_storage_buffer", "SPV_KHR_physical_storage_buffer" ], - "version" : "1.5" - }, - { - "enumerant" : "PhysicalStorageBufferAddressesEXT", - "value" : 5347, - "capabilities" : [ "Shader" ], - "extensions" : [ "SPV_EXT_physical_storage_buffer" ], - "version" : "1.5" - }, - { - "enumerant" : "ComputeDerivativeGroupLinearNV", - "value" : 5350, - "extensions" : [ "SPV_NV_compute_shader_derivatives" ], - "version" : "None" - }, - { - "enumerant" : "RayTracingProvisionalKHR", - "value" : 5353, - "capabilities" : [ "Shader" ], - "extensions" : [ "SPV_KHR_ray_tracing" ], - "version" : "None" - }, - { - "enumerant" : "CooperativeMatrixNV", - "value" : 5357, - "capabilities" : [ "Shader" ], - "extensions" : [ "SPV_NV_cooperative_matrix" ], - "version" : "None" - }, - { - "enumerant" : "FragmentShaderSampleInterlockEXT", - "value" : 5363, - "capabilities" : [ "Shader" ], - "extensions" : [ "SPV_EXT_fragment_shader_interlock" ], - "version" : "None" - }, - { - "enumerant" : "FragmentShaderShadingRateInterlockEXT", - "value" : 5372, - "capabilities" : [ "Shader" ], - "extensions" : [ "SPV_EXT_fragment_shader_interlock" ], - "version" : "None" - }, - { - "enumerant" : "ShaderSMBuiltinsNV", - "value" : 5373, - "capabilities" : [ "Shader" ], - "extensions" : [ "SPV_NV_shader_sm_builtins" ], - "version" : "None" - }, - { - "enumerant" : "FragmentShaderPixelInterlockEXT", - "value" : 5378, - "capabilities" : [ "Shader" ], - "extensions" : [ "SPV_EXT_fragment_shader_interlock" ], - "version" : "None" - }, - { - "enumerant" : "DemoteToHelperInvocation", - "value" : 5379, - "capabilities" : [ "Shader" ], - "version" : "1.6" - }, - { - "enumerant" : "DemoteToHelperInvocationEXT", - "value" : 5379, - "capabilities" : [ "Shader" ], - "extensions" : [ "SPV_EXT_demote_to_helper_invocation" ], - "version" : "1.6" - }, - { - "enumerant" : "RayTracingOpacityMicromapEXT", - "value" : 5381, - "capabilities" : [ "RayQueryKHR","RayTracingKHR" ], - "extensions" : [ "SPV_EXT_opacity_micromap" ], - "version" : "None" - }, - { - "enumerant" : "ShaderInvocationReorderNV", - "value" : 5383, - "capabilities" : [ "RayTracingKHR" ], - "extensions" : [ "SPV_NV_shader_invocation_reorder" ], - "version" : "None" - }, - { - "enumerant" : "BindlessTextureNV", - "value" : 5390, - "extensions" : [ "SPV_NV_bindless_texture" ], - "version" : "None" - }, - { - "enumerant" : "RayQueryPositionFetchKHR", - "value" : 5391, - "capabilities" : [ "Shader" ], - "extensions" : [ "SPV_KHR_ray_tracing_position_fetch" ], - "version" : "None" - }, - { - "enumerant" : "SubgroupShuffleINTEL", - "value" : 5568, - "extensions" : [ "SPV_INTEL_subgroups" ], - "version" : "None" - }, - { - "enumerant" : "SubgroupBufferBlockIOINTEL", - "value" : 5569, - "extensions" : [ "SPV_INTEL_subgroups" ], - "version" : "None" - }, - { - "enumerant" : "SubgroupImageBlockIOINTEL", - "value" : 5570, - "extensions" : [ "SPV_INTEL_subgroups" ], - "version" : "None" - }, - { - "enumerant" : "SubgroupImageMediaBlockIOINTEL", - "value" : 5579, - "extensions" : [ "SPV_INTEL_media_block_io" ], - "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" ], - "extensions" : [ "SPV_INTEL_shader_integer_functions2" ], - "version" : "None" - }, - { - "enumerant" : "FunctionPointersINTEL", - "value" : 5603, - "extensions" : [ "SPV_INTEL_function_pointers" ], - "version" : "None" - }, - { - "enumerant" : "IndirectReferencesINTEL", - "value" : 5604, - "extensions" : [ "SPV_INTEL_function_pointers" ], - "version" : "None" - }, - { - "enumerant" : "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" ], - "version" : "None" - }, - { - "enumerant" : "SubgroupAvcMotionEstimationIntraINTEL", - "value" : 5697, - "extensions" : [ "SPV_INTEL_device_side_avc_motion_estimation" ], - "version" : "None" - }, - { - "enumerant" : "SubgroupAvcMotionEstimationChromaINTEL", - "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" : "FPGADSPControlINTEL", - "value" : 5908, - "extensions" : [ "SPV_INTEL_fpga_dsp_control" ], - "version" : "None" - }, - { - "enumerant" : "MemoryAccessAliasingINTEL", - "value" : 5910, - "extensions" : [ "SPV_INTEL_memory_access_aliasing" ], - "version" : "None" - }, - { - "enumerant" : "FPGAInvocationPipeliningAttributesINTEL", - "value" : 5916, - "extensions" : [ "SPV_INTEL_fpga_invocation_pipelining_attributes" ], - "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" : "RuntimeAlignedAttributeINTEL", - "value" : 5939, - "extensions" : [ "SPV_INTEL_runtime_aligned" ], - "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" : "DotProductInputAll", - "value" : 6016, - "version" : "1.6" - }, - { - "enumerant" : "DotProductInputAllKHR", - "value" : 6016, - "extensions" : [ "SPV_KHR_integer_dot_product" ], - "version" : "1.6" - }, - { - "enumerant" : "DotProductInput4x8Bit", - "value" : 6017, - "capabilities" : [ "Int8" ], - "version" : "1.6" - }, - { - "enumerant" : "DotProductInput4x8BitKHR", - "value" : 6017, - "capabilities" : [ "Int8" ], - "extensions" : [ "SPV_KHR_integer_dot_product" ], - "version" : "1.6" - }, - { - "enumerant" : "DotProductInput4x8BitPacked", - "value" : 6018, - "version" : "1.6" - }, - { - "enumerant" : "DotProductInput4x8BitPackedKHR", - "value" : 6018, - "extensions" : [ "SPV_KHR_integer_dot_product" ], - "version" : "1.6" - }, - { - "enumerant" : "DotProduct", - "value" : 6019, - "version" : "1.6" - }, - { - "enumerant" : "DotProductKHR", - "value" : 6019, - "extensions" : [ "SPV_KHR_integer_dot_product" ], - "version" : "1.6" - }, - { - "enumerant" : "RayCullMaskKHR", - "value" : 6020, - "extensions" : [ "SPV_KHR_ray_cull_mask" ], - "version" : "None" - }, - { - "enumerant" : "CooperativeMatrixKHR", - "value" : 6022, - "extensions" : [ "SPV_KHR_cooperative_matrix" ], - "version" : "None" - }, - { - "enumerant" : "BitInstructions", - "value" : 6025, - "extensions" : [ "SPV_KHR_bit_instructions" ], - "version" : "None" - }, - { - "enumerant" : "GroupNonUniformRotateKHR", - "value" : 6026, - "capabilities" : [ "GroupNonUniform" ], - "extensions" : [ "SPV_KHR_subgroup_rotate" ], - "version" : "None" - }, - { - "enumerant" : "AtomicFloat32AddEXT", - "value" : 6033, - "extensions" : [ "SPV_EXT_shader_atomic_float_add" ], - "version" : "None" - }, - { - "enumerant" : "AtomicFloat64AddEXT", - "value" : 6034, - "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, - "extensions" : [ "SPV_EXT_shader_atomic_float16_add" ], - "version" : "None" - }, - { - "enumerant" : "DebugInfoModuleINTEL", - "value" : 6114, - "extensions" : [ "SPV_INTEL_debug_module" ], - "version" : "None" - }, - { - "enumerant" : "BFloat16ConversionINTEL", - "value" : 6115, - "extensions" : [ "SPV_INTEL_bfloat16_conversion" ], - "version" : "None" - }, - { - "enumerant" : "SplitBarrierINTEL", - "value" : 6141, - "extensions" : [ "SPV_INTEL_split_barrier" ], - "version" : "None" - }, - { - "enumerant" : "FPGAKernelAttributesv2INTEL", - "value" : 6161, - "capabilities" : [ "FPGAKernelAttributesINTEL" ], - "extensions" : [ "SPV_INTEL_kernel_attributes" ], - "version" : "None" - }, - { - "enumerant" : "FPMaxErrorINTEL", - "value" : 6169, - "extensions" : [ "SPV_INTEL_fp_max_error" ], - "version" : "None" - }, - { - "enumerant" : "FPGALatencyControlINTEL", - "value" : 6171, - "extensions" : [ "SPV_INTEL_fpga_latency_control" ], - "version" : "None" - }, - { - "enumerant" : "FPGAArgumentInterfacesINTEL", - "value" : 6174, - "extensions" : [ "SPV_INTEL_fpga_argument_interfaces" ], - "version" : "None" - }, - { - "enumerant" : "GroupUniformArithmeticKHR", - "value" : 6400, - "extensions" : [ "SPV_KHR_uniform_group_instructions"], - "version" : "None" - } - ] - }, - { - "category" : "ValueEnum", - "kind" : "RayQueryIntersection", - "enumerants" : [ - { - "enumerant" : "RayQueryCandidateIntersectionKHR", - "value" : 0, - "capabilities" : [ "RayQueryKHR" ], - "version" : "None" - }, - { - "enumerant" : "RayQueryCommittedIntersectionKHR", - "value" : 1, - "capabilities" : [ "RayQueryKHR" ], - "version" : "None" - } - ] - }, - { - "category" : "ValueEnum", - "kind" : "RayQueryCommittedIntersectionType", - "enumerants" : [ - { - "enumerant" : "RayQueryCommittedIntersectionNoneKHR", - "value" : 0, - "capabilities" : [ "RayQueryKHR" ], - "version" : "None" - }, - { - "enumerant" : "RayQueryCommittedIntersectionTriangleKHR", - "value" : 1, - "capabilities" : [ "RayQueryKHR" ], - "version" : "None" - }, - { - "enumerant" : "RayQueryCommittedIntersectionGeneratedKHR", - "value" : 2, - "capabilities" : [ "RayQueryKHR" ], - "version" : "None" - } - ] - }, - { - "category" : "ValueEnum", - "kind" : "RayQueryCandidateIntersectionType", - "enumerants" : [ - { - "enumerant" : "RayQueryCandidateIntersectionTriangleKHR", - "value" : 0, - "capabilities" : [ "RayQueryKHR" ], - "version" : "None" - }, - { - "enumerant" : "RayQueryCandidateIntersectionAABBKHR", - "value" : 1, - "capabilities" : [ "RayQueryKHR" ], - "version" : "None" - } - ] - }, - { - "category" : "ValueEnum", - "kind" : "PackedVectorFormat", - "enumerants" : [ - { - "enumerant" : "PackedVectorFormat4x8Bit", - "value" : 0, - "version" : "1.6" - }, - { - "enumerant" : "PackedVectorFormat4x8BitKHR", - "value" : 0, - "extensions" : [ "SPV_KHR_integer_dot_product" ], - "version" : "1.6" - } - ] - }, - { - "category" : "BitEnum", - "kind" : "CooperativeMatrixOperands", - "enumerants" : [ - { - "enumerant" : "NoneKHR", - "value" : "0x0000", - "extensions" : [ "SPV_KHR_cooperative_matrix" ], - "version" : "None" - }, - { - "enumerant" : "MatrixASignedComponentsKHR", - "value" : "0x0001", - "extensions" : [ "SPV_KHR_cooperative_matrix" ], - "version" : "None" - }, - { - "enumerant" : "MatrixBSignedComponentsKHR", - "value" : "0x0002", - "extensions" : [ "SPV_KHR_cooperative_matrix" ], - "version" : "None" - }, - { - "enumerant" : "MatrixCSignedComponentsKHR", - "value" : "0x0004", - "extensions" : [ "SPV_KHR_cooperative_matrix" ], - "version" : "None" - }, - { - "enumerant" : "MatrixResultSignedComponentsKHR", - "value" : "0x0008", - "extensions" : [ "SPV_KHR_cooperative_matrix" ], - "version" : "None" - }, - { - "enumerant" : "SaturatingAccumulationKHR", - "value" : "0x0010", - "extensions" : [ "SPV_KHR_cooperative_matrix" ], - "version" : "None" - } - ] - }, - { - "category" : "ValueEnum", - "kind" : "CooperativeMatrixLayout", - "enumerants" : [ - { - "enumerant" : "RowMajorKHR", - "value" : 0, - "extensions" : [ "SPV_KHR_cooperative_matrix" ], - "version" : "None" - }, - { - "enumerant" : "ColumnMajorKHR", - "value" : 1, - "extensions" : [ "SPV_KHR_cooperative_matrix" ], - "version" : "None" - } - ] - }, - { - "category" : "ValueEnum", - "kind" : "CooperativeMatrixUse", - "enumerants" : [ - { - "enumerant" : "MatrixAKHR", - "value" : 0, - "extensions" : [ "SPV_KHR_cooperative_matrix" ], - "version" : "None" - }, - { - "enumerant" : "MatrixBKHR", - "value" : 1, - "extensions" : [ "SPV_KHR_cooperative_matrix" ], - "version" : "None" - }, - { - "enumerant" : "MatrixAccumulatorKHR", - "value" : 2, - "extensions" : [ "SPV_KHR_cooperative_matrix" ], - "version" : "None" - } - ] - }, - { - "category" : "Id", - "kind" : "IdResultType", - "doc" : "Reference to an representing the result's type of the enclosing instruction" - }, - { - "category" : "Id", - "kind" : "IdResult", - "doc" : "Definition of an representing the result of the enclosing instruction" - }, - { - "category" : "Id", - "kind" : "IdMemorySemantics", - "doc" : "Reference to an representing a 32-bit integer that is a mask from the MemorySemantics operand kind" - }, - { - "category" : "Id", - "kind" : "IdScope", - "doc" : "Reference to an representing a 32-bit integer that is a mask from the Scope operand kind" - }, - { - "category" : "Id", - "kind" : "IdRef", - "doc" : "Reference to an " - }, - { - "category" : "Literal", - "kind" : "LiteralInteger", - "doc" : "An integer consuming one or more words" - }, - { - "category" : "Literal", - "kind" : "LiteralString", - "doc" : "A null-terminated stream of characters consuming an integral number of words" - }, - { - "category" : "Literal", - "kind" : "LiteralContextDependentNumber", - "doc" : "A literal number whose size and format are determined by a previous operand in the enclosing instruction" - }, - { - "category" : "Literal", - "kind" : "LiteralExtInstInteger", - "doc" : "A 32-bit unsigned integer indicating which instruction to use and determining the layout of following operands (for OpExtInst)" - }, - { - "category" : "Literal", - "kind" : "LiteralSpecConstantOpInteger", - "doc" : "An opcode indicating the operation to be performed and determining the layout of following operands (for OpSpecConstantOp)" - }, - { - "category" : "Composite", - "kind" : "PairLiteralIntegerIdRef", - "bases" : [ "LiteralInteger", "IdRef" ] - }, - { - "category" : "Composite", - "kind" : "PairIdRefLiteralInteger", - "bases" : [ "IdRef", "LiteralInteger" ] - }, - { - "category" : "Composite", - "kind" : "PairIdRefIdRef", - "bases" : [ "IdRef", "IdRef" ] - } - ] -} diff --git a/Extern/3rdParty/shaderc/shaderc/include/spirv/unified1/spirv.cs b/Extern/3rdParty/shaderc/shaderc/include/spirv/unified1/spirv.cs deleted file mode 100644 index 222ac09..0000000 --- a/Extern/3rdParty/shaderc/shaderc/include/spirv/unified1/spirv.cs +++ /dev/null @@ -1,2043 +0,0 @@ -// Copyright (c) 2014-2020 The Khronos Group Inc. -// -// Permission is hereby granted, free of charge, to any person obtaining a copy -// of this software and/or associated documentation files (the "Materials"), -// 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. - -// This header is automatically generated by the same tool that creates -// the Binary Section of the SPIR-V specification. - -// Enumeration tokens for SPIR-V, in various styles: -// C, C++, C++11, JSON, Lua, Python, C#, D, Beef -// -// - C will have tokens with a "Spv" prefix, e.g.: SpvSourceLanguageGLSL -// - C++ will have tokens in the "spv" name space, e.g.: spv::SourceLanguageGLSL -// - C++11 will use enum classes in the spv namespace, e.g.: spv::SourceLanguage::GLSL -// - Lua will use tables, e.g.: spv.SourceLanguage.GLSL -// - Python will use dictionaries, e.g.: spv['SourceLanguage']['GLSL'] -// - C# will use enum classes in the Specification class located in the "Spv" namespace, -// e.g.: Spv.Specification.SourceLanguage.GLSL -// - D will have tokens under the "spv" module, e.g: spv.SourceLanguage.GLSL -// - Beef will use enum classes in the Specification class located in the "Spv" namespace, -// e.g.: Spv.Specification.SourceLanguage.GLSL -// -// Some tokens act like mask values, which can be OR'd together, -// while others are mutually exclusive. The mask-like ones have -// "Mask" in their name, and a parallel enum that has the shift -// amount (1 << x) for each corresponding enumerant. - -namespace Spv -{ - - public static class Specification - { - public const uint MagicNumber = 0x07230203; - public const uint Version = 0x00010600; - public const uint Revision = 1; - public const uint OpCodeMask = 0xffff; - public const uint WordCountShift = 16; - - public enum SourceLanguage - { - Unknown = 0, - ESSL = 1, - GLSL = 2, - OpenCL_C = 3, - OpenCL_CPP = 4, - HLSL = 5, - CPP_for_OpenCL = 6, - SYCL = 7, - HERO_C = 8, - NZSL = 9, - WGSL = 10, - } - - public enum ExecutionModel - { - Vertex = 0, - TessellationControl = 1, - TessellationEvaluation = 2, - Geometry = 3, - Fragment = 4, - GLCompute = 5, - Kernel = 6, - TaskNV = 5267, - MeshNV = 5268, - RayGenerationKHR = 5313, - RayGenerationNV = 5313, - IntersectionKHR = 5314, - IntersectionNV = 5314, - AnyHitKHR = 5315, - AnyHitNV = 5315, - ClosestHitKHR = 5316, - ClosestHitNV = 5316, - MissKHR = 5317, - MissNV = 5317, - CallableKHR = 5318, - CallableNV = 5318, - TaskEXT = 5364, - MeshEXT = 5365, - } - - public enum AddressingModel - { - Logical = 0, - Physical32 = 1, - Physical64 = 2, - PhysicalStorageBuffer64 = 5348, - PhysicalStorageBuffer64EXT = 5348, - } - - public enum MemoryModel - { - Simple = 0, - GLSL450 = 1, - OpenCL = 2, - Vulkan = 3, - VulkanKHR = 3, - } - - public enum ExecutionMode - { - Invocations = 0, - SpacingEqual = 1, - SpacingFractionalEven = 2, - SpacingFractionalOdd = 3, - VertexOrderCw = 4, - VertexOrderCcw = 5, - PixelCenterInteger = 6, - OriginUpperLeft = 7, - OriginLowerLeft = 8, - EarlyFragmentTests = 9, - PointMode = 10, - Xfb = 11, - DepthReplacing = 12, - DepthGreater = 14, - DepthLess = 15, - DepthUnchanged = 16, - LocalSize = 17, - LocalSizeHint = 18, - InputPoints = 19, - InputLines = 20, - InputLinesAdjacency = 21, - Triangles = 22, - InputTrianglesAdjacency = 23, - Quads = 24, - Isolines = 25, - OutputVertices = 26, - OutputPoints = 27, - OutputLineStrip = 28, - OutputTriangleStrip = 29, - VecTypeHint = 30, - ContractionOff = 31, - Initializer = 33, - Finalizer = 34, - SubgroupSize = 35, - SubgroupsPerWorkgroup = 36, - SubgroupsPerWorkgroupId = 37, - LocalSizeId = 38, - LocalSizeHintId = 39, - NonCoherentColorAttachmentReadEXT = 4169, - NonCoherentDepthAttachmentReadEXT = 4170, - NonCoherentStencilAttachmentReadEXT = 4171, - SubgroupUniformControlFlowKHR = 4421, - PostDepthCoverage = 4446, - DenormPreserve = 4459, - DenormFlushToZero = 4460, - SignedZeroInfNanPreserve = 4461, - RoundingModeRTE = 4462, - RoundingModeRTZ = 4463, - EarlyAndLateFragmentTestsAMD = 5017, - StencilRefReplacingEXT = 5027, - StencilRefUnchangedFrontAMD = 5079, - StencilRefGreaterFrontAMD = 5080, - StencilRefLessFrontAMD = 5081, - StencilRefUnchangedBackAMD = 5082, - StencilRefGreaterBackAMD = 5083, - StencilRefLessBackAMD = 5084, - OutputLinesEXT = 5269, - OutputLinesNV = 5269, - OutputPrimitivesEXT = 5270, - OutputPrimitivesNV = 5270, - DerivativeGroupQuadsNV = 5289, - DerivativeGroupLinearNV = 5290, - OutputTrianglesEXT = 5298, - OutputTrianglesNV = 5298, - PixelInterlockOrderedEXT = 5366, - PixelInterlockUnorderedEXT = 5367, - SampleInterlockOrderedEXT = 5368, - SampleInterlockUnorderedEXT = 5369, - ShadingRateInterlockOrderedEXT = 5370, - ShadingRateInterlockUnorderedEXT = 5371, - SharedLocalMemorySizeINTEL = 5618, - RoundingModeRTPINTEL = 5620, - RoundingModeRTNINTEL = 5621, - FloatingPointModeALTINTEL = 5622, - FloatingPointModeIEEEINTEL = 5623, - MaxWorkgroupSizeINTEL = 5893, - MaxWorkDimINTEL = 5894, - NoGlobalOffsetINTEL = 5895, - NumSIMDWorkitemsINTEL = 5896, - SchedulerTargetFmaxMhzINTEL = 5903, - StreamingInterfaceINTEL = 6154, - RegisterMapInterfaceINTEL = 6160, - NamedBarrierCountINTEL = 6417, - } - - public enum StorageClass - { - UniformConstant = 0, - Input = 1, - Uniform = 2, - Output = 3, - Workgroup = 4, - CrossWorkgroup = 5, - Private = 6, - Function = 7, - Generic = 8, - PushConstant = 9, - AtomicCounter = 10, - Image = 11, - StorageBuffer = 12, - TileImageEXT = 4172, - CallableDataKHR = 5328, - CallableDataNV = 5328, - IncomingCallableDataKHR = 5329, - IncomingCallableDataNV = 5329, - RayPayloadKHR = 5338, - RayPayloadNV = 5338, - HitAttributeKHR = 5339, - HitAttributeNV = 5339, - IncomingRayPayloadKHR = 5342, - IncomingRayPayloadNV = 5342, - ShaderRecordBufferKHR = 5343, - ShaderRecordBufferNV = 5343, - PhysicalStorageBuffer = 5349, - PhysicalStorageBufferEXT = 5349, - HitObjectAttributeNV = 5385, - TaskPayloadWorkgroupEXT = 5402, - CodeSectionINTEL = 5605, - DeviceOnlyINTEL = 5936, - HostOnlyINTEL = 5937, - } - - public enum Dim - { - Dim1D = 0, - Dim2D = 1, - Dim3D = 2, - Cube = 3, - Rect = 4, - Buffer = 5, - SubpassData = 6, - TileImageDataEXT = 4173, - } - - public enum SamplerAddressingMode - { - None = 0, - ClampToEdge = 1, - Clamp = 2, - Repeat = 3, - RepeatMirrored = 4, - } - - public enum SamplerFilterMode - { - Nearest = 0, - Linear = 1, - } - - public enum ImageFormat - { - Unknown = 0, - Rgba32f = 1, - Rgba16f = 2, - R32f = 3, - Rgba8 = 4, - Rgba8Snorm = 5, - Rg32f = 6, - Rg16f = 7, - R11fG11fB10f = 8, - R16f = 9, - Rgba16 = 10, - Rgb10A2 = 11, - Rg16 = 12, - Rg8 = 13, - R16 = 14, - R8 = 15, - Rgba16Snorm = 16, - Rg16Snorm = 17, - Rg8Snorm = 18, - R16Snorm = 19, - R8Snorm = 20, - Rgba32i = 21, - Rgba16i = 22, - Rgba8i = 23, - R32i = 24, - Rg32i = 25, - Rg16i = 26, - Rg8i = 27, - R16i = 28, - R8i = 29, - Rgba32ui = 30, - Rgba16ui = 31, - Rgba8ui = 32, - R32ui = 33, - Rgb10a2ui = 34, - Rg32ui = 35, - Rg16ui = 36, - Rg8ui = 37, - R16ui = 38, - R8ui = 39, - R64ui = 40, - R64i = 41, - } - - public enum ImageChannelOrder - { - R = 0, - A = 1, - RG = 2, - RA = 3, - RGB = 4, - RGBA = 5, - BGRA = 6, - ARGB = 7, - Intensity = 8, - Luminance = 9, - Rx = 10, - RGx = 11, - RGBx = 12, - Depth = 13, - DepthStencil = 14, - sRGB = 15, - sRGBx = 16, - sRGBA = 17, - sBGRA = 18, - ABGR = 19, - } - - public enum ImageChannelDataType - { - SnormInt8 = 0, - SnormInt16 = 1, - UnormInt8 = 2, - UnormInt16 = 3, - UnormShort565 = 4, - UnormShort555 = 5, - UnormInt101010 = 6, - SignedInt8 = 7, - SignedInt16 = 8, - SignedInt32 = 9, - UnsignedInt8 = 10, - UnsignedInt16 = 11, - UnsignedInt32 = 12, - HalfFloat = 13, - Float = 14, - UnormInt24 = 15, - UnormInt101010_2 = 16, - UnsignedIntRaw10EXT = 19, - UnsignedIntRaw12EXT = 20, - } - - public enum ImageOperandsShift - { - Bias = 0, - Lod = 1, - Grad = 2, - ConstOffset = 3, - Offset = 4, - ConstOffsets = 5, - Sample = 6, - MinLod = 7, - MakeTexelAvailable = 8, - MakeTexelAvailableKHR = 8, - MakeTexelVisible = 9, - MakeTexelVisibleKHR = 9, - NonPrivateTexel = 10, - NonPrivateTexelKHR = 10, - VolatileTexel = 11, - VolatileTexelKHR = 11, - SignExtend = 12, - ZeroExtend = 13, - Nontemporal = 14, - Offsets = 16, - } - - public enum ImageOperandsMask - { - MaskNone = 0, - Bias = 0x00000001, - Lod = 0x00000002, - Grad = 0x00000004, - ConstOffset = 0x00000008, - Offset = 0x00000010, - ConstOffsets = 0x00000020, - Sample = 0x00000040, - MinLod = 0x00000080, - MakeTexelAvailable = 0x00000100, - MakeTexelAvailableKHR = 0x00000100, - MakeTexelVisible = 0x00000200, - MakeTexelVisibleKHR = 0x00000200, - NonPrivateTexel = 0x00000400, - NonPrivateTexelKHR = 0x00000400, - VolatileTexel = 0x00000800, - VolatileTexelKHR = 0x00000800, - SignExtend = 0x00001000, - ZeroExtend = 0x00002000, - Nontemporal = 0x00004000, - Offsets = 0x00010000, - } - - public enum FPFastMathModeShift - { - NotNaN = 0, - NotInf = 1, - NSZ = 2, - AllowRecip = 3, - Fast = 4, - AllowContractFastINTEL = 16, - AllowReassocINTEL = 17, - } - - public enum FPFastMathModeMask - { - MaskNone = 0, - NotNaN = 0x00000001, - NotInf = 0x00000002, - NSZ = 0x00000004, - AllowRecip = 0x00000008, - Fast = 0x00000010, - AllowContractFastINTEL = 0x00010000, - AllowReassocINTEL = 0x00020000, - } - - public enum FPRoundingMode - { - RTE = 0, - RTZ = 1, - RTP = 2, - RTN = 3, - } - - public enum LinkageType - { - Export = 0, - Import = 1, - LinkOnceODR = 2, - } - - public enum AccessQualifier - { - ReadOnly = 0, - WriteOnly = 1, - ReadWrite = 2, - } - - public enum FunctionParameterAttribute - { - Zext = 0, - Sext = 1, - ByVal = 2, - Sret = 3, - NoAlias = 4, - NoCapture = 5, - NoWrite = 6, - NoReadWrite = 7, - RuntimeAlignedINTEL = 5940, - } - - public enum Decoration - { - RelaxedPrecision = 0, - SpecId = 1, - Block = 2, - BufferBlock = 3, - RowMajor = 4, - ColMajor = 5, - ArrayStride = 6, - MatrixStride = 7, - GLSLShared = 8, - GLSLPacked = 9, - CPacked = 10, - BuiltIn = 11, - NoPerspective = 13, - Flat = 14, - Patch = 15, - Centroid = 16, - Sample = 17, - Invariant = 18, - Restrict = 19, - Aliased = 20, - Volatile = 21, - Constant = 22, - Coherent = 23, - NonWritable = 24, - NonReadable = 25, - Uniform = 26, - UniformId = 27, - SaturatedConversion = 28, - Stream = 29, - Location = 30, - Component = 31, - Index = 32, - Binding = 33, - DescriptorSet = 34, - Offset = 35, - XfbBuffer = 36, - XfbStride = 37, - FuncParamAttr = 38, - FPRoundingMode = 39, - FPFastMathMode = 40, - LinkageAttributes = 41, - NoContraction = 42, - InputAttachmentIndex = 43, - Alignment = 44, - MaxByteOffset = 45, - AlignmentId = 46, - MaxByteOffsetId = 47, - NoSignedWrap = 4469, - NoUnsignedWrap = 4470, - WeightTextureQCOM = 4487, - BlockMatchTextureQCOM = 4488, - ExplicitInterpAMD = 4999, - OverrideCoverageNV = 5248, - PassthroughNV = 5250, - ViewportRelativeNV = 5252, - SecondaryViewportRelativeNV = 5256, - PerPrimitiveEXT = 5271, - PerPrimitiveNV = 5271, - PerViewNV = 5272, - PerTaskNV = 5273, - PerVertexKHR = 5285, - PerVertexNV = 5285, - NonUniform = 5300, - NonUniformEXT = 5300, - RestrictPointer = 5355, - RestrictPointerEXT = 5355, - AliasedPointer = 5356, - AliasedPointerEXT = 5356, - HitObjectShaderRecordBufferNV = 5386, - BindlessSamplerNV = 5398, - BindlessImageNV = 5399, - BoundSamplerNV = 5400, - BoundImageNV = 5401, - SIMTCallINTEL = 5599, - ReferencedIndirectlyINTEL = 5602, - ClobberINTEL = 5607, - SideEffectsINTEL = 5608, - VectorComputeVariableINTEL = 5624, - FuncParamIOKindINTEL = 5625, - VectorComputeFunctionINTEL = 5626, - StackCallINTEL = 5627, - GlobalVariableOffsetINTEL = 5628, - CounterBuffer = 5634, - 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, - MathOpDSPModeINTEL = 5909, - AliasScopeINTEL = 5914, - NoAliasINTEL = 5915, - InitiationIntervalINTEL = 5917, - MaxConcurrencyINTEL = 5918, - PipelineEnableINTEL = 5919, - BufferLocationINTEL = 5921, - IOPipeStorageINTEL = 5944, - FunctionFloatingPointModeINTEL = 6080, - SingleElementVectorINTEL = 6085, - VectorComputeCallableFunctionINTEL = 6087, - MediaBlockIOINTEL = 6140, - FPMaxErrorDecorationINTEL = 6170, - LatencyControlLabelINTEL = 6172, - LatencyControlConstraintINTEL = 6173, - ConduitKernelArgumentINTEL = 6175, - RegisterMapKernelArgumentINTEL = 6176, - MMHostInterfaceAddressWidthINTEL = 6177, - MMHostInterfaceDataWidthINTEL = 6178, - MMHostInterfaceLatencyINTEL = 6179, - MMHostInterfaceReadWriteModeINTEL = 6180, - MMHostInterfaceMaxBurstINTEL = 6181, - MMHostInterfaceWaitRequestINTEL = 6182, - StableKernelArgumentINTEL = 6183, - } - - public enum BuiltIn - { - Position = 0, - PointSize = 1, - ClipDistance = 3, - CullDistance = 4, - VertexId = 5, - InstanceId = 6, - PrimitiveId = 7, - InvocationId = 8, - Layer = 9, - ViewportIndex = 10, - TessLevelOuter = 11, - TessLevelInner = 12, - TessCoord = 13, - PatchVertices = 14, - FragCoord = 15, - PointCoord = 16, - FrontFacing = 17, - SampleId = 18, - SamplePosition = 19, - SampleMask = 20, - FragDepth = 22, - HelperInvocation = 23, - NumWorkgroups = 24, - WorkgroupSize = 25, - WorkgroupId = 26, - LocalInvocationId = 27, - GlobalInvocationId = 28, - LocalInvocationIndex = 29, - WorkDim = 30, - GlobalSize = 31, - EnqueuedWorkgroupSize = 32, - GlobalOffset = 33, - GlobalLinearId = 34, - SubgroupSize = 36, - SubgroupMaxSize = 37, - NumSubgroups = 38, - NumEnqueuedSubgroups = 39, - SubgroupId = 40, - SubgroupLocalInvocationId = 41, - VertexIndex = 42, - InstanceIndex = 43, - CoreIDARM = 4160, - CoreCountARM = 4161, - CoreMaxIDARM = 4162, - WarpIDARM = 4163, - WarpMaxIDARM = 4164, - SubgroupEqMask = 4416, - SubgroupEqMaskKHR = 4416, - SubgroupGeMask = 4417, - SubgroupGeMaskKHR = 4417, - SubgroupGtMask = 4418, - SubgroupGtMaskKHR = 4418, - SubgroupLeMask = 4419, - SubgroupLeMaskKHR = 4419, - SubgroupLtMask = 4420, - SubgroupLtMaskKHR = 4420, - BaseVertex = 4424, - BaseInstance = 4425, - DrawIndex = 4426, - PrimitiveShadingRateKHR = 4432, - DeviceIndex = 4438, - ViewIndex = 4440, - ShadingRateKHR = 4444, - BaryCoordNoPerspAMD = 4992, - BaryCoordNoPerspCentroidAMD = 4993, - BaryCoordNoPerspSampleAMD = 4994, - BaryCoordSmoothAMD = 4995, - BaryCoordSmoothCentroidAMD = 4996, - BaryCoordSmoothSampleAMD = 4997, - BaryCoordPullModelAMD = 4998, - FragStencilRefEXT = 5014, - ViewportMaskNV = 5253, - SecondaryPositionNV = 5257, - SecondaryViewportMaskNV = 5258, - PositionPerViewNV = 5261, - ViewportMaskPerViewNV = 5262, - FullyCoveredEXT = 5264, - TaskCountNV = 5274, - PrimitiveCountNV = 5275, - PrimitiveIndicesNV = 5276, - ClipDistancePerViewNV = 5277, - CullDistancePerViewNV = 5278, - LayerPerViewNV = 5279, - MeshViewCountNV = 5280, - MeshViewIndicesNV = 5281, - BaryCoordKHR = 5286, - BaryCoordNV = 5286, - BaryCoordNoPerspKHR = 5287, - BaryCoordNoPerspNV = 5287, - FragSizeEXT = 5292, - FragmentSizeNV = 5292, - FragInvocationCountEXT = 5293, - InvocationsPerPixelNV = 5293, - PrimitivePointIndicesEXT = 5294, - PrimitiveLineIndicesEXT = 5295, - PrimitiveTriangleIndicesEXT = 5296, - CullPrimitiveEXT = 5299, - LaunchIdKHR = 5319, - LaunchIdNV = 5319, - LaunchSizeKHR = 5320, - LaunchSizeNV = 5320, - WorldRayOriginKHR = 5321, - WorldRayOriginNV = 5321, - WorldRayDirectionKHR = 5322, - WorldRayDirectionNV = 5322, - ObjectRayOriginKHR = 5323, - ObjectRayOriginNV = 5323, - ObjectRayDirectionKHR = 5324, - ObjectRayDirectionNV = 5324, - RayTminKHR = 5325, - RayTminNV = 5325, - RayTmaxKHR = 5326, - RayTmaxNV = 5326, - InstanceCustomIndexKHR = 5327, - InstanceCustomIndexNV = 5327, - ObjectToWorldKHR = 5330, - ObjectToWorldNV = 5330, - WorldToObjectKHR = 5331, - WorldToObjectNV = 5331, - HitTNV = 5332, - HitKindKHR = 5333, - HitKindNV = 5333, - CurrentRayTimeNV = 5334, - HitTriangleVertexPositionsKHR = 5335, - IncomingRayFlagsKHR = 5351, - IncomingRayFlagsNV = 5351, - RayGeometryIndexKHR = 5352, - WarpsPerSMNV = 5374, - SMCountNV = 5375, - WarpIDNV = 5376, - SMIDNV = 5377, - CullMaskKHR = 6021, - } - - public enum SelectionControlShift - { - Flatten = 0, - DontFlatten = 1, - } - - public enum SelectionControlMask - { - MaskNone = 0, - Flatten = 0x00000001, - DontFlatten = 0x00000002, - } - - public enum LoopControlShift - { - Unroll = 0, - DontUnroll = 1, - DependencyInfinite = 2, - DependencyLength = 3, - MinIterations = 4, - MaxIterations = 5, - IterationMultiple = 6, - PeelCount = 7, - PartialCount = 8, - InitiationIntervalINTEL = 16, - MaxConcurrencyINTEL = 17, - DependencyArrayINTEL = 18, - PipelineEnableINTEL = 19, - LoopCoalesceINTEL = 20, - MaxInterleavingINTEL = 21, - SpeculatedIterationsINTEL = 22, - NoFusionINTEL = 23, - LoopCountINTEL = 24, - MaxReinvocationDelayINTEL = 25, - } - - public enum LoopControlMask - { - MaskNone = 0, - Unroll = 0x00000001, - DontUnroll = 0x00000002, - DependencyInfinite = 0x00000004, - DependencyLength = 0x00000008, - MinIterations = 0x00000010, - MaxIterations = 0x00000020, - IterationMultiple = 0x00000040, - PeelCount = 0x00000080, - PartialCount = 0x00000100, - InitiationIntervalINTEL = 0x00010000, - MaxConcurrencyINTEL = 0x00020000, - DependencyArrayINTEL = 0x00040000, - PipelineEnableINTEL = 0x00080000, - LoopCoalesceINTEL = 0x00100000, - MaxInterleavingINTEL = 0x00200000, - SpeculatedIterationsINTEL = 0x00400000, - NoFusionINTEL = 0x00800000, - LoopCountINTEL = 0x01000000, - MaxReinvocationDelayINTEL = 0x02000000, - } - - public enum FunctionControlShift - { - Inline = 0, - DontInline = 1, - Pure = 2, - Const = 3, - OptNoneINTEL = 16, - } - - public enum FunctionControlMask - { - MaskNone = 0, - Inline = 0x00000001, - DontInline = 0x00000002, - Pure = 0x00000004, - Const = 0x00000008, - OptNoneINTEL = 0x00010000, - } - - public enum MemorySemanticsShift - { - Acquire = 1, - Release = 2, - AcquireRelease = 3, - SequentiallyConsistent = 4, - UniformMemory = 6, - SubgroupMemory = 7, - WorkgroupMemory = 8, - CrossWorkgroupMemory = 9, - AtomicCounterMemory = 10, - ImageMemory = 11, - OutputMemory = 12, - OutputMemoryKHR = 12, - MakeAvailable = 13, - MakeAvailableKHR = 13, - MakeVisible = 14, - MakeVisibleKHR = 14, - Volatile = 15, - } - - public enum MemorySemanticsMask - { - MaskNone = 0, - Acquire = 0x00000002, - Release = 0x00000004, - AcquireRelease = 0x00000008, - SequentiallyConsistent = 0x00000010, - UniformMemory = 0x00000040, - SubgroupMemory = 0x00000080, - WorkgroupMemory = 0x00000100, - CrossWorkgroupMemory = 0x00000200, - AtomicCounterMemory = 0x00000400, - ImageMemory = 0x00000800, - OutputMemory = 0x00001000, - OutputMemoryKHR = 0x00001000, - MakeAvailable = 0x00002000, - MakeAvailableKHR = 0x00002000, - MakeVisible = 0x00004000, - MakeVisibleKHR = 0x00004000, - Volatile = 0x00008000, - } - - public enum MemoryAccessShift - { - Volatile = 0, - Aligned = 1, - Nontemporal = 2, - MakePointerAvailable = 3, - MakePointerAvailableKHR = 3, - MakePointerVisible = 4, - MakePointerVisibleKHR = 4, - NonPrivatePointer = 5, - NonPrivatePointerKHR = 5, - AliasScopeINTELMask = 16, - NoAliasINTELMask = 17, - } - - public enum MemoryAccessMask - { - MaskNone = 0, - Volatile = 0x00000001, - Aligned = 0x00000002, - Nontemporal = 0x00000004, - MakePointerAvailable = 0x00000008, - MakePointerAvailableKHR = 0x00000008, - MakePointerVisible = 0x00000010, - MakePointerVisibleKHR = 0x00000010, - NonPrivatePointer = 0x00000020, - NonPrivatePointerKHR = 0x00000020, - AliasScopeINTELMask = 0x00010000, - NoAliasINTELMask = 0x00020000, - } - - public enum Scope - { - CrossDevice = 0, - Device = 1, - Workgroup = 2, - Subgroup = 3, - Invocation = 4, - QueueFamily = 5, - QueueFamilyKHR = 5, - ShaderCallKHR = 6, - } - - public enum GroupOperation - { - Reduce = 0, - InclusiveScan = 1, - ExclusiveScan = 2, - ClusteredReduce = 3, - PartitionedReduceNV = 6, - PartitionedInclusiveScanNV = 7, - PartitionedExclusiveScanNV = 8, - } - - public enum KernelEnqueueFlags - { - NoWait = 0, - WaitKernel = 1, - WaitWorkGroup = 2, - } - - public enum KernelProfilingInfoShift - { - CmdExecTime = 0, - } - - public enum KernelProfilingInfoMask - { - MaskNone = 0, - CmdExecTime = 0x00000001, - } - - public enum Capability - { - Matrix = 0, - Shader = 1, - Geometry = 2, - Tessellation = 3, - Addresses = 4, - Linkage = 5, - Kernel = 6, - Vector16 = 7, - Float16Buffer = 8, - Float16 = 9, - Float64 = 10, - Int64 = 11, - Int64Atomics = 12, - ImageBasic = 13, - ImageReadWrite = 14, - ImageMipmap = 15, - Pipes = 17, - Groups = 18, - DeviceEnqueue = 19, - LiteralSampler = 20, - AtomicStorage = 21, - Int16 = 22, - TessellationPointSize = 23, - GeometryPointSize = 24, - ImageGatherExtended = 25, - StorageImageMultisample = 27, - UniformBufferArrayDynamicIndexing = 28, - SampledImageArrayDynamicIndexing = 29, - StorageBufferArrayDynamicIndexing = 30, - StorageImageArrayDynamicIndexing = 31, - ClipDistance = 32, - CullDistance = 33, - ImageCubeArray = 34, - SampleRateShading = 35, - ImageRect = 36, - SampledRect = 37, - GenericPointer = 38, - Int8 = 39, - InputAttachment = 40, - SparseResidency = 41, - MinLod = 42, - Sampled1D = 43, - Image1D = 44, - SampledCubeArray = 45, - SampledBuffer = 46, - ImageBuffer = 47, - ImageMSArray = 48, - StorageImageExtendedFormats = 49, - ImageQuery = 50, - DerivativeControl = 51, - InterpolationFunction = 52, - TransformFeedback = 53, - GeometryStreams = 54, - StorageImageReadWithoutFormat = 55, - StorageImageWriteWithoutFormat = 56, - MultiViewport = 57, - SubgroupDispatch = 58, - NamedBarrier = 59, - PipeStorage = 60, - GroupNonUniform = 61, - GroupNonUniformVote = 62, - GroupNonUniformArithmetic = 63, - GroupNonUniformBallot = 64, - GroupNonUniformShuffle = 65, - GroupNonUniformShuffleRelative = 66, - GroupNonUniformClustered = 67, - GroupNonUniformQuad = 68, - ShaderLayer = 69, - ShaderViewportIndex = 70, - UniformDecoration = 71, - CoreBuiltinsARM = 4165, - TileImageColorReadAccessEXT = 4166, - TileImageDepthReadAccessEXT = 4167, - TileImageStencilReadAccessEXT = 4168, - FragmentShadingRateKHR = 4422, - SubgroupBallotKHR = 4423, - DrawParameters = 4427, - WorkgroupMemoryExplicitLayoutKHR = 4428, - WorkgroupMemoryExplicitLayout8BitAccessKHR = 4429, - WorkgroupMemoryExplicitLayout16BitAccessKHR = 4430, - SubgroupVoteKHR = 4431, - StorageBuffer16BitAccess = 4433, - StorageUniformBufferBlock16 = 4433, - StorageUniform16 = 4434, - UniformAndStorageBuffer16BitAccess = 4434, - StoragePushConstant16 = 4435, - StorageInputOutput16 = 4436, - DeviceGroup = 4437, - MultiView = 4439, - VariablePointersStorageBuffer = 4441, - VariablePointers = 4442, - AtomicStorageOps = 4445, - SampleMaskPostDepthCoverage = 4447, - StorageBuffer8BitAccess = 4448, - UniformAndStorageBuffer8BitAccess = 4449, - StoragePushConstant8 = 4450, - DenormPreserve = 4464, - DenormFlushToZero = 4465, - SignedZeroInfNanPreserve = 4466, - RoundingModeRTE = 4467, - RoundingModeRTZ = 4468, - RayQueryProvisionalKHR = 4471, - RayQueryKHR = 4472, - RayTraversalPrimitiveCullingKHR = 4478, - RayTracingKHR = 4479, - TextureSampleWeightedQCOM = 4484, - TextureBoxFilterQCOM = 4485, - TextureBlockMatchQCOM = 4486, - Float16ImageAMD = 5008, - ImageGatherBiasLodAMD = 5009, - FragmentMaskAMD = 5010, - StencilExportEXT = 5013, - ImageReadWriteLodAMD = 5015, - Int64ImageEXT = 5016, - ShaderClockKHR = 5055, - SampleMaskOverrideCoverageNV = 5249, - GeometryShaderPassthroughNV = 5251, - ShaderViewportIndexLayerEXT = 5254, - ShaderViewportIndexLayerNV = 5254, - ShaderViewportMaskNV = 5255, - ShaderStereoViewNV = 5259, - PerViewAttributesNV = 5260, - FragmentFullyCoveredEXT = 5265, - MeshShadingNV = 5266, - ImageFootprintNV = 5282, - MeshShadingEXT = 5283, - FragmentBarycentricKHR = 5284, - FragmentBarycentricNV = 5284, - ComputeDerivativeGroupQuadsNV = 5288, - FragmentDensityEXT = 5291, - ShadingRateNV = 5291, - GroupNonUniformPartitionedNV = 5297, - ShaderNonUniform = 5301, - ShaderNonUniformEXT = 5301, - RuntimeDescriptorArray = 5302, - RuntimeDescriptorArrayEXT = 5302, - InputAttachmentArrayDynamicIndexing = 5303, - InputAttachmentArrayDynamicIndexingEXT = 5303, - UniformTexelBufferArrayDynamicIndexing = 5304, - UniformTexelBufferArrayDynamicIndexingEXT = 5304, - StorageTexelBufferArrayDynamicIndexing = 5305, - StorageTexelBufferArrayDynamicIndexingEXT = 5305, - UniformBufferArrayNonUniformIndexing = 5306, - UniformBufferArrayNonUniformIndexingEXT = 5306, - SampledImageArrayNonUniformIndexing = 5307, - SampledImageArrayNonUniformIndexingEXT = 5307, - StorageBufferArrayNonUniformIndexing = 5308, - StorageBufferArrayNonUniformIndexingEXT = 5308, - StorageImageArrayNonUniformIndexing = 5309, - StorageImageArrayNonUniformIndexingEXT = 5309, - InputAttachmentArrayNonUniformIndexing = 5310, - InputAttachmentArrayNonUniformIndexingEXT = 5310, - UniformTexelBufferArrayNonUniformIndexing = 5311, - UniformTexelBufferArrayNonUniformIndexingEXT = 5311, - StorageTexelBufferArrayNonUniformIndexing = 5312, - StorageTexelBufferArrayNonUniformIndexingEXT = 5312, - RayTracingPositionFetchKHR = 5336, - RayTracingNV = 5340, - RayTracingMotionBlurNV = 5341, - VulkanMemoryModel = 5345, - VulkanMemoryModelKHR = 5345, - VulkanMemoryModelDeviceScope = 5346, - VulkanMemoryModelDeviceScopeKHR = 5346, - PhysicalStorageBufferAddresses = 5347, - PhysicalStorageBufferAddressesEXT = 5347, - ComputeDerivativeGroupLinearNV = 5350, - RayTracingProvisionalKHR = 5353, - CooperativeMatrixNV = 5357, - FragmentShaderSampleInterlockEXT = 5363, - FragmentShaderShadingRateInterlockEXT = 5372, - ShaderSMBuiltinsNV = 5373, - FragmentShaderPixelInterlockEXT = 5378, - DemoteToHelperInvocation = 5379, - DemoteToHelperInvocationEXT = 5379, - RayTracingOpacityMicromapEXT = 5381, - ShaderInvocationReorderNV = 5383, - BindlessTextureNV = 5390, - RayQueryPositionFetchKHR = 5391, - SubgroupShuffleINTEL = 5568, - SubgroupBufferBlockIOINTEL = 5569, - SubgroupImageBlockIOINTEL = 5570, - SubgroupImageMediaBlockIOINTEL = 5579, - RoundToInfinityINTEL = 5582, - FloatingPointModeINTEL = 5583, - IntegerFunctions2INTEL = 5584, - FunctionPointersINTEL = 5603, - IndirectReferencesINTEL = 5604, - AsmINTEL = 5606, - AtomicFloat32MinMaxEXT = 5612, - AtomicFloat64MinMaxEXT = 5613, - AtomicFloat16MinMaxEXT = 5616, - VectorComputeINTEL = 5617, - VectorAnyINTEL = 5619, - ExpectAssumeKHR = 5629, - SubgroupAvcMotionEstimationINTEL = 5696, - SubgroupAvcMotionEstimationIntraINTEL = 5697, - SubgroupAvcMotionEstimationChromaINTEL = 5698, - VariableLengthArrayINTEL = 5817, - FunctionFloatControlINTEL = 5821, - FPGAMemoryAttributesINTEL = 5824, - FPFastMathModeINTEL = 5837, - ArbitraryPrecisionIntegersINTEL = 5844, - ArbitraryPrecisionFloatingPointINTEL = 5845, - UnstructuredLoopControlsINTEL = 5886, - FPGALoopControlsINTEL = 5888, - KernelAttributesINTEL = 5892, - FPGAKernelAttributesINTEL = 5897, - FPGAMemoryAccessesINTEL = 5898, - FPGAClusterAttributesINTEL = 5904, - LoopFuseINTEL = 5906, - FPGADSPControlINTEL = 5908, - MemoryAccessAliasingINTEL = 5910, - FPGAInvocationPipeliningAttributesINTEL = 5916, - FPGABufferLocationINTEL = 5920, - ArbitraryPrecisionFixedPointINTEL = 5922, - USMStorageClassesINTEL = 5935, - RuntimeAlignedAttributeINTEL = 5939, - IOPipesINTEL = 5943, - BlockingPipesINTEL = 5945, - FPGARegINTEL = 5948, - DotProductInputAll = 6016, - DotProductInputAllKHR = 6016, - DotProductInput4x8Bit = 6017, - DotProductInput4x8BitKHR = 6017, - DotProductInput4x8BitPacked = 6018, - DotProductInput4x8BitPackedKHR = 6018, - DotProduct = 6019, - DotProductKHR = 6019, - RayCullMaskKHR = 6020, - CooperativeMatrixKHR = 6022, - BitInstructions = 6025, - GroupNonUniformRotateKHR = 6026, - AtomicFloat32AddEXT = 6033, - AtomicFloat64AddEXT = 6034, - LongConstantCompositeINTEL = 6089, - OptNoneINTEL = 6094, - AtomicFloat16AddEXT = 6095, - DebugInfoModuleINTEL = 6114, - BFloat16ConversionINTEL = 6115, - SplitBarrierINTEL = 6141, - FPGAKernelAttributesv2INTEL = 6161, - FPMaxErrorINTEL = 6169, - FPGALatencyControlINTEL = 6171, - FPGAArgumentInterfacesINTEL = 6174, - GroupUniformArithmeticKHR = 6400, - } - - public enum RayFlagsShift - { - OpaqueKHR = 0, - NoOpaqueKHR = 1, - TerminateOnFirstHitKHR = 2, - SkipClosestHitShaderKHR = 3, - CullBackFacingTrianglesKHR = 4, - CullFrontFacingTrianglesKHR = 5, - CullOpaqueKHR = 6, - CullNoOpaqueKHR = 7, - SkipTrianglesKHR = 8, - SkipAABBsKHR = 9, - ForceOpacityMicromap2StateEXT = 10, - } - - public enum RayFlagsMask - { - MaskNone = 0, - OpaqueKHR = 0x00000001, - NoOpaqueKHR = 0x00000002, - TerminateOnFirstHitKHR = 0x00000004, - SkipClosestHitShaderKHR = 0x00000008, - CullBackFacingTrianglesKHR = 0x00000010, - CullFrontFacingTrianglesKHR = 0x00000020, - CullOpaqueKHR = 0x00000040, - CullNoOpaqueKHR = 0x00000080, - SkipTrianglesKHR = 0x00000100, - SkipAABBsKHR = 0x00000200, - ForceOpacityMicromap2StateEXT = 0x00000400, - } - - public enum RayQueryIntersection - { - RayQueryCandidateIntersectionKHR = 0, - RayQueryCommittedIntersectionKHR = 1, - } - - public enum RayQueryCommittedIntersectionType - { - RayQueryCommittedIntersectionNoneKHR = 0, - RayQueryCommittedIntersectionTriangleKHR = 1, - RayQueryCommittedIntersectionGeneratedKHR = 2, - } - - public enum RayQueryCandidateIntersectionType - { - RayQueryCandidateIntersectionTriangleKHR = 0, - 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 - { - PackedVectorFormat4x8Bit = 0, - PackedVectorFormat4x8BitKHR = 0, - } - - public enum CooperativeMatrixOperandsShift - { - MatrixASignedComponentsKHR = 0, - MatrixBSignedComponentsKHR = 1, - MatrixCSignedComponentsKHR = 2, - MatrixResultSignedComponentsKHR = 3, - SaturatingAccumulationKHR = 4, - } - - public enum CooperativeMatrixOperandsMask - { - MaskNone = 0, - MatrixASignedComponentsKHR = 0x00000001, - MatrixBSignedComponentsKHR = 0x00000002, - MatrixCSignedComponentsKHR = 0x00000004, - MatrixResultSignedComponentsKHR = 0x00000008, - SaturatingAccumulationKHR = 0x00000010, - } - - public enum CooperativeMatrixLayout - { - RowMajorKHR = 0, - ColumnMajorKHR = 1, - } - - public enum CooperativeMatrixUse - { - MatrixAKHR = 0, - MatrixBKHR = 1, - MatrixAccumulatorKHR = 2, - } - - public enum Op - { - OpNop = 0, - OpUndef = 1, - OpSourceContinued = 2, - OpSource = 3, - OpSourceExtension = 4, - OpName = 5, - OpMemberName = 6, - OpString = 7, - OpLine = 8, - OpExtension = 10, - OpExtInstImport = 11, - OpExtInst = 12, - OpMemoryModel = 14, - OpEntryPoint = 15, - OpExecutionMode = 16, - OpCapability = 17, - OpTypeVoid = 19, - OpTypeBool = 20, - OpTypeInt = 21, - OpTypeFloat = 22, - OpTypeVector = 23, - OpTypeMatrix = 24, - OpTypeImage = 25, - OpTypeSampler = 26, - OpTypeSampledImage = 27, - OpTypeArray = 28, - OpTypeRuntimeArray = 29, - OpTypeStruct = 30, - OpTypeOpaque = 31, - OpTypePointer = 32, - OpTypeFunction = 33, - OpTypeEvent = 34, - OpTypeDeviceEvent = 35, - OpTypeReserveId = 36, - OpTypeQueue = 37, - OpTypePipe = 38, - OpTypeForwardPointer = 39, - OpConstantTrue = 41, - OpConstantFalse = 42, - OpConstant = 43, - OpConstantComposite = 44, - OpConstantSampler = 45, - OpConstantNull = 46, - OpSpecConstantTrue = 48, - OpSpecConstantFalse = 49, - OpSpecConstant = 50, - OpSpecConstantComposite = 51, - OpSpecConstantOp = 52, - OpFunction = 54, - OpFunctionParameter = 55, - OpFunctionEnd = 56, - OpFunctionCall = 57, - OpVariable = 59, - OpImageTexelPointer = 60, - OpLoad = 61, - OpStore = 62, - OpCopyMemory = 63, - OpCopyMemorySized = 64, - OpAccessChain = 65, - OpInBoundsAccessChain = 66, - OpPtrAccessChain = 67, - OpArrayLength = 68, - OpGenericPtrMemSemantics = 69, - OpInBoundsPtrAccessChain = 70, - OpDecorate = 71, - OpMemberDecorate = 72, - OpDecorationGroup = 73, - OpGroupDecorate = 74, - OpGroupMemberDecorate = 75, - OpVectorExtractDynamic = 77, - OpVectorInsertDynamic = 78, - OpVectorShuffle = 79, - OpCompositeConstruct = 80, - OpCompositeExtract = 81, - OpCompositeInsert = 82, - OpCopyObject = 83, - OpTranspose = 84, - OpSampledImage = 86, - OpImageSampleImplicitLod = 87, - OpImageSampleExplicitLod = 88, - OpImageSampleDrefImplicitLod = 89, - OpImageSampleDrefExplicitLod = 90, - OpImageSampleProjImplicitLod = 91, - OpImageSampleProjExplicitLod = 92, - OpImageSampleProjDrefImplicitLod = 93, - OpImageSampleProjDrefExplicitLod = 94, - OpImageFetch = 95, - OpImageGather = 96, - OpImageDrefGather = 97, - OpImageRead = 98, - OpImageWrite = 99, - OpImage = 100, - OpImageQueryFormat = 101, - OpImageQueryOrder = 102, - OpImageQuerySizeLod = 103, - OpImageQuerySize = 104, - OpImageQueryLod = 105, - OpImageQueryLevels = 106, - OpImageQuerySamples = 107, - OpConvertFToU = 109, - OpConvertFToS = 110, - OpConvertSToF = 111, - OpConvertUToF = 112, - OpUConvert = 113, - OpSConvert = 114, - OpFConvert = 115, - OpQuantizeToF16 = 116, - OpConvertPtrToU = 117, - OpSatConvertSToU = 118, - OpSatConvertUToS = 119, - OpConvertUToPtr = 120, - OpPtrCastToGeneric = 121, - OpGenericCastToPtr = 122, - OpGenericCastToPtrExplicit = 123, - OpBitcast = 124, - OpSNegate = 126, - OpFNegate = 127, - OpIAdd = 128, - OpFAdd = 129, - OpISub = 130, - OpFSub = 131, - OpIMul = 132, - OpFMul = 133, - OpUDiv = 134, - OpSDiv = 135, - OpFDiv = 136, - OpUMod = 137, - OpSRem = 138, - OpSMod = 139, - OpFRem = 140, - OpFMod = 141, - OpVectorTimesScalar = 142, - OpMatrixTimesScalar = 143, - OpVectorTimesMatrix = 144, - OpMatrixTimesVector = 145, - OpMatrixTimesMatrix = 146, - OpOuterProduct = 147, - OpDot = 148, - OpIAddCarry = 149, - OpISubBorrow = 150, - OpUMulExtended = 151, - OpSMulExtended = 152, - OpAny = 154, - OpAll = 155, - OpIsNan = 156, - OpIsInf = 157, - OpIsFinite = 158, - OpIsNormal = 159, - OpSignBitSet = 160, - OpLessOrGreater = 161, - OpOrdered = 162, - OpUnordered = 163, - OpLogicalEqual = 164, - OpLogicalNotEqual = 165, - OpLogicalOr = 166, - OpLogicalAnd = 167, - OpLogicalNot = 168, - OpSelect = 169, - OpIEqual = 170, - OpINotEqual = 171, - OpUGreaterThan = 172, - OpSGreaterThan = 173, - OpUGreaterThanEqual = 174, - OpSGreaterThanEqual = 175, - OpULessThan = 176, - OpSLessThan = 177, - OpULessThanEqual = 178, - OpSLessThanEqual = 179, - OpFOrdEqual = 180, - OpFUnordEqual = 181, - OpFOrdNotEqual = 182, - OpFUnordNotEqual = 183, - OpFOrdLessThan = 184, - OpFUnordLessThan = 185, - OpFOrdGreaterThan = 186, - OpFUnordGreaterThan = 187, - OpFOrdLessThanEqual = 188, - OpFUnordLessThanEqual = 189, - OpFOrdGreaterThanEqual = 190, - OpFUnordGreaterThanEqual = 191, - OpShiftRightLogical = 194, - OpShiftRightArithmetic = 195, - OpShiftLeftLogical = 196, - OpBitwiseOr = 197, - OpBitwiseXor = 198, - OpBitwiseAnd = 199, - OpNot = 200, - OpBitFieldInsert = 201, - OpBitFieldSExtract = 202, - OpBitFieldUExtract = 203, - OpBitReverse = 204, - OpBitCount = 205, - OpDPdx = 207, - OpDPdy = 208, - OpFwidth = 209, - OpDPdxFine = 210, - OpDPdyFine = 211, - OpFwidthFine = 212, - OpDPdxCoarse = 213, - OpDPdyCoarse = 214, - OpFwidthCoarse = 215, - OpEmitVertex = 218, - OpEndPrimitive = 219, - OpEmitStreamVertex = 220, - OpEndStreamPrimitive = 221, - OpControlBarrier = 224, - OpMemoryBarrier = 225, - OpAtomicLoad = 227, - OpAtomicStore = 228, - OpAtomicExchange = 229, - OpAtomicCompareExchange = 230, - OpAtomicCompareExchangeWeak = 231, - OpAtomicIIncrement = 232, - OpAtomicIDecrement = 233, - OpAtomicIAdd = 234, - OpAtomicISub = 235, - OpAtomicSMin = 236, - OpAtomicUMin = 237, - OpAtomicSMax = 238, - OpAtomicUMax = 239, - OpAtomicAnd = 240, - OpAtomicOr = 241, - OpAtomicXor = 242, - OpPhi = 245, - OpLoopMerge = 246, - OpSelectionMerge = 247, - OpLabel = 248, - OpBranch = 249, - OpBranchConditional = 250, - OpSwitch = 251, - OpKill = 252, - OpReturn = 253, - OpReturnValue = 254, - OpUnreachable = 255, - OpLifetimeStart = 256, - OpLifetimeStop = 257, - OpGroupAsyncCopy = 259, - OpGroupWaitEvents = 260, - OpGroupAll = 261, - OpGroupAny = 262, - OpGroupBroadcast = 263, - OpGroupIAdd = 264, - OpGroupFAdd = 265, - OpGroupFMin = 266, - OpGroupUMin = 267, - OpGroupSMin = 268, - OpGroupFMax = 269, - OpGroupUMax = 270, - OpGroupSMax = 271, - OpReadPipe = 274, - OpWritePipe = 275, - OpReservedReadPipe = 276, - OpReservedWritePipe = 277, - OpReserveReadPipePackets = 278, - OpReserveWritePipePackets = 279, - OpCommitReadPipe = 280, - OpCommitWritePipe = 281, - OpIsValidReserveId = 282, - OpGetNumPipePackets = 283, - OpGetMaxPipePackets = 284, - OpGroupReserveReadPipePackets = 285, - OpGroupReserveWritePipePackets = 286, - OpGroupCommitReadPipe = 287, - OpGroupCommitWritePipe = 288, - OpEnqueueMarker = 291, - OpEnqueueKernel = 292, - OpGetKernelNDrangeSubGroupCount = 293, - OpGetKernelNDrangeMaxSubGroupSize = 294, - OpGetKernelWorkGroupSize = 295, - OpGetKernelPreferredWorkGroupSizeMultiple = 296, - OpRetainEvent = 297, - OpReleaseEvent = 298, - OpCreateUserEvent = 299, - OpIsValidEvent = 300, - OpSetUserEventStatus = 301, - OpCaptureEventProfilingInfo = 302, - OpGetDefaultQueue = 303, - OpBuildNDRange = 304, - OpImageSparseSampleImplicitLod = 305, - OpImageSparseSampleExplicitLod = 306, - OpImageSparseSampleDrefImplicitLod = 307, - OpImageSparseSampleDrefExplicitLod = 308, - OpImageSparseSampleProjImplicitLod = 309, - OpImageSparseSampleProjExplicitLod = 310, - OpImageSparseSampleProjDrefImplicitLod = 311, - OpImageSparseSampleProjDrefExplicitLod = 312, - OpImageSparseFetch = 313, - OpImageSparseGather = 314, - OpImageSparseDrefGather = 315, - OpImageSparseTexelsResident = 316, - OpNoLine = 317, - OpAtomicFlagTestAndSet = 318, - OpAtomicFlagClear = 319, - OpImageSparseRead = 320, - OpSizeOf = 321, - OpTypePipeStorage = 322, - OpConstantPipeStorage = 323, - OpCreatePipeFromPipeStorage = 324, - OpGetKernelLocalSizeForSubgroupCount = 325, - OpGetKernelMaxNumSubgroups = 326, - OpTypeNamedBarrier = 327, - OpNamedBarrierInitialize = 328, - OpMemoryNamedBarrier = 329, - OpModuleProcessed = 330, - OpExecutionModeId = 331, - OpDecorateId = 332, - OpGroupNonUniformElect = 333, - OpGroupNonUniformAll = 334, - OpGroupNonUniformAny = 335, - OpGroupNonUniformAllEqual = 336, - OpGroupNonUniformBroadcast = 337, - OpGroupNonUniformBroadcastFirst = 338, - OpGroupNonUniformBallot = 339, - OpGroupNonUniformInverseBallot = 340, - OpGroupNonUniformBallotBitExtract = 341, - OpGroupNonUniformBallotBitCount = 342, - OpGroupNonUniformBallotFindLSB = 343, - OpGroupNonUniformBallotFindMSB = 344, - OpGroupNonUniformShuffle = 345, - OpGroupNonUniformShuffleXor = 346, - OpGroupNonUniformShuffleUp = 347, - OpGroupNonUniformShuffleDown = 348, - OpGroupNonUniformIAdd = 349, - OpGroupNonUniformFAdd = 350, - OpGroupNonUniformIMul = 351, - OpGroupNonUniformFMul = 352, - OpGroupNonUniformSMin = 353, - OpGroupNonUniformUMin = 354, - OpGroupNonUniformFMin = 355, - OpGroupNonUniformSMax = 356, - OpGroupNonUniformUMax = 357, - OpGroupNonUniformFMax = 358, - OpGroupNonUniformBitwiseAnd = 359, - OpGroupNonUniformBitwiseOr = 360, - OpGroupNonUniformBitwiseXor = 361, - OpGroupNonUniformLogicalAnd = 362, - OpGroupNonUniformLogicalOr = 363, - OpGroupNonUniformLogicalXor = 364, - OpGroupNonUniformQuadBroadcast = 365, - OpGroupNonUniformQuadSwap = 366, - OpCopyLogical = 400, - OpPtrEqual = 401, - OpPtrNotEqual = 402, - OpPtrDiff = 403, - OpColorAttachmentReadEXT = 4160, - OpDepthAttachmentReadEXT = 4161, - OpStencilAttachmentReadEXT = 4162, - OpTerminateInvocation = 4416, - OpSubgroupBallotKHR = 4421, - OpSubgroupFirstInvocationKHR = 4422, - OpSubgroupAllKHR = 4428, - OpSubgroupAnyKHR = 4429, - OpSubgroupAllEqualKHR = 4430, - OpGroupNonUniformRotateKHR = 4431, - OpSubgroupReadInvocationKHR = 4432, - OpTraceRayKHR = 4445, - OpExecuteCallableKHR = 4446, - OpConvertUToAccelerationStructureKHR = 4447, - OpIgnoreIntersectionKHR = 4448, - OpTerminateRayKHR = 4449, - OpSDot = 4450, - OpSDotKHR = 4450, - OpUDot = 4451, - OpUDotKHR = 4451, - OpSUDot = 4452, - OpSUDotKHR = 4452, - OpSDotAccSat = 4453, - OpSDotAccSatKHR = 4453, - OpUDotAccSat = 4454, - OpUDotAccSatKHR = 4454, - OpSUDotAccSat = 4455, - OpSUDotAccSatKHR = 4455, - OpTypeCooperativeMatrixKHR = 4456, - OpCooperativeMatrixLoadKHR = 4457, - OpCooperativeMatrixStoreKHR = 4458, - OpCooperativeMatrixMulAddKHR = 4459, - OpCooperativeMatrixLengthKHR = 4460, - OpTypeRayQueryKHR = 4472, - OpRayQueryInitializeKHR = 4473, - OpRayQueryTerminateKHR = 4474, - OpRayQueryGenerateIntersectionKHR = 4475, - OpRayQueryConfirmIntersectionKHR = 4476, - OpRayQueryProceedKHR = 4477, - OpRayQueryGetIntersectionTypeKHR = 4479, - OpImageSampleWeightedQCOM = 4480, - OpImageBoxFilterQCOM = 4481, - OpImageBlockMatchSSDQCOM = 4482, - OpImageBlockMatchSADQCOM = 4483, - OpGroupIAddNonUniformAMD = 5000, - OpGroupFAddNonUniformAMD = 5001, - OpGroupFMinNonUniformAMD = 5002, - OpGroupUMinNonUniformAMD = 5003, - OpGroupSMinNonUniformAMD = 5004, - OpGroupFMaxNonUniformAMD = 5005, - OpGroupUMaxNonUniformAMD = 5006, - OpGroupSMaxNonUniformAMD = 5007, - OpFragmentMaskFetchAMD = 5011, - OpFragmentFetchAMD = 5012, - OpReadClockKHR = 5056, - OpHitObjectRecordHitMotionNV = 5249, - OpHitObjectRecordHitWithIndexMotionNV = 5250, - OpHitObjectRecordMissMotionNV = 5251, - OpHitObjectGetWorldToObjectNV = 5252, - OpHitObjectGetObjectToWorldNV = 5253, - OpHitObjectGetObjectRayDirectionNV = 5254, - OpHitObjectGetObjectRayOriginNV = 5255, - OpHitObjectTraceRayMotionNV = 5256, - OpHitObjectGetShaderRecordBufferHandleNV = 5257, - OpHitObjectGetShaderBindingTableRecordIndexNV = 5258, - OpHitObjectRecordEmptyNV = 5259, - OpHitObjectTraceRayNV = 5260, - OpHitObjectRecordHitNV = 5261, - OpHitObjectRecordHitWithIndexNV = 5262, - OpHitObjectRecordMissNV = 5263, - OpHitObjectExecuteShaderNV = 5264, - OpHitObjectGetCurrentTimeNV = 5265, - OpHitObjectGetAttributesNV = 5266, - OpHitObjectGetHitKindNV = 5267, - OpHitObjectGetPrimitiveIndexNV = 5268, - OpHitObjectGetGeometryIndexNV = 5269, - OpHitObjectGetInstanceIdNV = 5270, - OpHitObjectGetInstanceCustomIndexNV = 5271, - OpHitObjectGetWorldRayDirectionNV = 5272, - OpHitObjectGetWorldRayOriginNV = 5273, - OpHitObjectGetRayTMaxNV = 5274, - OpHitObjectGetRayTMinNV = 5275, - OpHitObjectIsEmptyNV = 5276, - OpHitObjectIsHitNV = 5277, - OpHitObjectIsMissNV = 5278, - OpReorderThreadWithHitObjectNV = 5279, - OpReorderThreadWithHintNV = 5280, - OpTypeHitObjectNV = 5281, - OpImageSampleFootprintNV = 5283, - OpEmitMeshTasksEXT = 5294, - OpSetMeshOutputsEXT = 5295, - OpGroupNonUniformPartitionNV = 5296, - OpWritePackedPrimitiveIndices4x8NV = 5299, - OpReportIntersectionKHR = 5334, - OpReportIntersectionNV = 5334, - OpIgnoreIntersectionNV = 5335, - OpTerminateRayNV = 5336, - OpTraceNV = 5337, - OpTraceMotionNV = 5338, - OpTraceRayMotionNV = 5339, - OpRayQueryGetIntersectionTriangleVertexPositionsKHR = 5340, - OpTypeAccelerationStructureKHR = 5341, - OpTypeAccelerationStructureNV = 5341, - OpExecuteCallableNV = 5344, - OpTypeCooperativeMatrixNV = 5358, - OpCooperativeMatrixLoadNV = 5359, - OpCooperativeMatrixStoreNV = 5360, - OpCooperativeMatrixMulAddNV = 5361, - OpCooperativeMatrixLengthNV = 5362, - OpBeginInvocationInterlockEXT = 5364, - OpEndInvocationInterlockEXT = 5365, - OpDemoteToHelperInvocation = 5380, - OpDemoteToHelperInvocationEXT = 5380, - OpIsHelperInvocationEXT = 5381, - OpConvertUToImageNV = 5391, - OpConvertUToSamplerNV = 5392, - OpConvertImageToUNV = 5393, - OpConvertSamplerToUNV = 5394, - OpConvertUToSampledImageNV = 5395, - OpConvertSampledImageToUNV = 5396, - OpSamplerImageAddressingModeNV = 5397, - OpSubgroupShuffleINTEL = 5571, - OpSubgroupShuffleDownINTEL = 5572, - OpSubgroupShuffleUpINTEL = 5573, - OpSubgroupShuffleXorINTEL = 5574, - OpSubgroupBlockReadINTEL = 5575, - OpSubgroupBlockWriteINTEL = 5576, - OpSubgroupImageBlockReadINTEL = 5577, - OpSubgroupImageBlockWriteINTEL = 5578, - OpSubgroupImageMediaBlockReadINTEL = 5580, - OpSubgroupImageMediaBlockWriteINTEL = 5581, - OpUCountLeadingZerosINTEL = 5585, - OpUCountTrailingZerosINTEL = 5586, - OpAbsISubINTEL = 5587, - OpAbsUSubINTEL = 5588, - OpIAddSatINTEL = 5589, - OpUAddSatINTEL = 5590, - OpIAverageINTEL = 5591, - OpUAverageINTEL = 5592, - OpIAverageRoundedINTEL = 5593, - OpUAverageRoundedINTEL = 5594, - OpISubSatINTEL = 5595, - OpUSubSatINTEL = 5596, - OpIMul32x16INTEL = 5597, - OpUMul32x16INTEL = 5598, - OpConstantFunctionPointerINTEL = 5600, - OpFunctionPointerCallINTEL = 5601, - OpAsmTargetINTEL = 5609, - OpAsmINTEL = 5610, - OpAsmCallINTEL = 5611, - OpAtomicFMinEXT = 5614, - OpAtomicFMaxEXT = 5615, - OpAssumeTrueKHR = 5630, - OpExpectKHR = 5631, - OpDecorateString = 5632, - OpDecorateStringGOOGLE = 5632, - OpMemberDecorateString = 5633, - OpMemberDecorateStringGOOGLE = 5633, - OpVmeImageINTEL = 5699, - OpTypeVmeImageINTEL = 5700, - OpTypeAvcImePayloadINTEL = 5701, - OpTypeAvcRefPayloadINTEL = 5702, - OpTypeAvcSicPayloadINTEL = 5703, - OpTypeAvcMcePayloadINTEL = 5704, - OpTypeAvcMceResultINTEL = 5705, - OpTypeAvcImeResultINTEL = 5706, - OpTypeAvcImeResultSingleReferenceStreamoutINTEL = 5707, - OpTypeAvcImeResultDualReferenceStreamoutINTEL = 5708, - OpTypeAvcImeSingleReferenceStreaminINTEL = 5709, - OpTypeAvcImeDualReferenceStreaminINTEL = 5710, - OpTypeAvcRefResultINTEL = 5711, - OpTypeAvcSicResultINTEL = 5712, - OpSubgroupAvcMceGetDefaultInterBaseMultiReferencePenaltyINTEL = 5713, - OpSubgroupAvcMceSetInterBaseMultiReferencePenaltyINTEL = 5714, - OpSubgroupAvcMceGetDefaultInterShapePenaltyINTEL = 5715, - OpSubgroupAvcMceSetInterShapePenaltyINTEL = 5716, - OpSubgroupAvcMceGetDefaultInterDirectionPenaltyINTEL = 5717, - OpSubgroupAvcMceSetInterDirectionPenaltyINTEL = 5718, - OpSubgroupAvcMceGetDefaultIntraLumaShapePenaltyINTEL = 5719, - OpSubgroupAvcMceGetDefaultInterMotionVectorCostTableINTEL = 5720, - OpSubgroupAvcMceGetDefaultHighPenaltyCostTableINTEL = 5721, - OpSubgroupAvcMceGetDefaultMediumPenaltyCostTableINTEL = 5722, - OpSubgroupAvcMceGetDefaultLowPenaltyCostTableINTEL = 5723, - OpSubgroupAvcMceSetMotionVectorCostFunctionINTEL = 5724, - OpSubgroupAvcMceGetDefaultIntraLumaModePenaltyINTEL = 5725, - OpSubgroupAvcMceGetDefaultNonDcLumaIntraPenaltyINTEL = 5726, - OpSubgroupAvcMceGetDefaultIntraChromaModeBasePenaltyINTEL = 5727, - OpSubgroupAvcMceSetAcOnlyHaarINTEL = 5728, - OpSubgroupAvcMceSetSourceInterlacedFieldPolarityINTEL = 5729, - OpSubgroupAvcMceSetSingleReferenceInterlacedFieldPolarityINTEL = 5730, - OpSubgroupAvcMceSetDualReferenceInterlacedFieldPolaritiesINTEL = 5731, - OpSubgroupAvcMceConvertToImePayloadINTEL = 5732, - OpSubgroupAvcMceConvertToImeResultINTEL = 5733, - OpSubgroupAvcMceConvertToRefPayloadINTEL = 5734, - OpSubgroupAvcMceConvertToRefResultINTEL = 5735, - OpSubgroupAvcMceConvertToSicPayloadINTEL = 5736, - OpSubgroupAvcMceConvertToSicResultINTEL = 5737, - OpSubgroupAvcMceGetMotionVectorsINTEL = 5738, - OpSubgroupAvcMceGetInterDistortionsINTEL = 5739, - OpSubgroupAvcMceGetBestInterDistortionsINTEL = 5740, - OpSubgroupAvcMceGetInterMajorShapeINTEL = 5741, - OpSubgroupAvcMceGetInterMinorShapeINTEL = 5742, - OpSubgroupAvcMceGetInterDirectionsINTEL = 5743, - OpSubgroupAvcMceGetInterMotionVectorCountINTEL = 5744, - OpSubgroupAvcMceGetInterReferenceIdsINTEL = 5745, - OpSubgroupAvcMceGetInterReferenceInterlacedFieldPolaritiesINTEL = 5746, - OpSubgroupAvcImeInitializeINTEL = 5747, - OpSubgroupAvcImeSetSingleReferenceINTEL = 5748, - OpSubgroupAvcImeSetDualReferenceINTEL = 5749, - OpSubgroupAvcImeRefWindowSizeINTEL = 5750, - OpSubgroupAvcImeAdjustRefOffsetINTEL = 5751, - OpSubgroupAvcImeConvertToMcePayloadINTEL = 5752, - OpSubgroupAvcImeSetMaxMotionVectorCountINTEL = 5753, - OpSubgroupAvcImeSetUnidirectionalMixDisableINTEL = 5754, - OpSubgroupAvcImeSetEarlySearchTerminationThresholdINTEL = 5755, - OpSubgroupAvcImeSetWeightedSadINTEL = 5756, - OpSubgroupAvcImeEvaluateWithSingleReferenceINTEL = 5757, - OpSubgroupAvcImeEvaluateWithDualReferenceINTEL = 5758, - OpSubgroupAvcImeEvaluateWithSingleReferenceStreaminINTEL = 5759, - OpSubgroupAvcImeEvaluateWithDualReferenceStreaminINTEL = 5760, - OpSubgroupAvcImeEvaluateWithSingleReferenceStreamoutINTEL = 5761, - OpSubgroupAvcImeEvaluateWithDualReferenceStreamoutINTEL = 5762, - OpSubgroupAvcImeEvaluateWithSingleReferenceStreaminoutINTEL = 5763, - OpSubgroupAvcImeEvaluateWithDualReferenceStreaminoutINTEL = 5764, - OpSubgroupAvcImeConvertToMceResultINTEL = 5765, - OpSubgroupAvcImeGetSingleReferenceStreaminINTEL = 5766, - OpSubgroupAvcImeGetDualReferenceStreaminINTEL = 5767, - OpSubgroupAvcImeStripSingleReferenceStreamoutINTEL = 5768, - OpSubgroupAvcImeStripDualReferenceStreamoutINTEL = 5769, - OpSubgroupAvcImeGetStreamoutSingleReferenceMajorShapeMotionVectorsINTEL = 5770, - OpSubgroupAvcImeGetStreamoutSingleReferenceMajorShapeDistortionsINTEL = 5771, - OpSubgroupAvcImeGetStreamoutSingleReferenceMajorShapeReferenceIdsINTEL = 5772, - OpSubgroupAvcImeGetStreamoutDualReferenceMajorShapeMotionVectorsINTEL = 5773, - OpSubgroupAvcImeGetStreamoutDualReferenceMajorShapeDistortionsINTEL = 5774, - OpSubgroupAvcImeGetStreamoutDualReferenceMajorShapeReferenceIdsINTEL = 5775, - OpSubgroupAvcImeGetBorderReachedINTEL = 5776, - OpSubgroupAvcImeGetTruncatedSearchIndicationINTEL = 5777, - OpSubgroupAvcImeGetUnidirectionalEarlySearchTerminationINTEL = 5778, - OpSubgroupAvcImeGetWeightingPatternMinimumMotionVectorINTEL = 5779, - OpSubgroupAvcImeGetWeightingPatternMinimumDistortionINTEL = 5780, - OpSubgroupAvcFmeInitializeINTEL = 5781, - OpSubgroupAvcBmeInitializeINTEL = 5782, - OpSubgroupAvcRefConvertToMcePayloadINTEL = 5783, - OpSubgroupAvcRefSetBidirectionalMixDisableINTEL = 5784, - OpSubgroupAvcRefSetBilinearFilterEnableINTEL = 5785, - OpSubgroupAvcRefEvaluateWithSingleReferenceINTEL = 5786, - OpSubgroupAvcRefEvaluateWithDualReferenceINTEL = 5787, - OpSubgroupAvcRefEvaluateWithMultiReferenceINTEL = 5788, - OpSubgroupAvcRefEvaluateWithMultiReferenceInterlacedINTEL = 5789, - OpSubgroupAvcRefConvertToMceResultINTEL = 5790, - OpSubgroupAvcSicInitializeINTEL = 5791, - OpSubgroupAvcSicConfigureSkcINTEL = 5792, - OpSubgroupAvcSicConfigureIpeLumaINTEL = 5793, - OpSubgroupAvcSicConfigureIpeLumaChromaINTEL = 5794, - OpSubgroupAvcSicGetMotionVectorMaskINTEL = 5795, - OpSubgroupAvcSicConvertToMcePayloadINTEL = 5796, - OpSubgroupAvcSicSetIntraLumaShapePenaltyINTEL = 5797, - OpSubgroupAvcSicSetIntraLumaModeCostFunctionINTEL = 5798, - OpSubgroupAvcSicSetIntraChromaModeCostFunctionINTEL = 5799, - OpSubgroupAvcSicSetBilinearFilterEnableINTEL = 5800, - OpSubgroupAvcSicSetSkcForwardTransformEnableINTEL = 5801, - OpSubgroupAvcSicSetBlockBasedRawSkipSadINTEL = 5802, - OpSubgroupAvcSicEvaluateIpeINTEL = 5803, - OpSubgroupAvcSicEvaluateWithSingleReferenceINTEL = 5804, - OpSubgroupAvcSicEvaluateWithDualReferenceINTEL = 5805, - OpSubgroupAvcSicEvaluateWithMultiReferenceINTEL = 5806, - OpSubgroupAvcSicEvaluateWithMultiReferenceInterlacedINTEL = 5807, - OpSubgroupAvcSicConvertToMceResultINTEL = 5808, - OpSubgroupAvcSicGetIpeLumaShapeINTEL = 5809, - OpSubgroupAvcSicGetBestIpeLumaDistortionINTEL = 5810, - OpSubgroupAvcSicGetBestIpeChromaDistortionINTEL = 5811, - OpSubgroupAvcSicGetPackedIpeLumaModesINTEL = 5812, - OpSubgroupAvcSicGetIpeChromaModeINTEL = 5813, - 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, - OpAliasDomainDeclINTEL = 5911, - OpAliasScopeDeclINTEL = 5912, - OpAliasScopeListDeclINTEL = 5913, - 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, - OpRayQueryGetIntersectionInstanceCustomIndexKHR = 6019, - OpRayQueryGetIntersectionInstanceIdKHR = 6020, - OpRayQueryGetIntersectionInstanceShaderBindingTableRecordOffsetKHR = 6021, - OpRayQueryGetIntersectionGeometryIndexKHR = 6022, - OpRayQueryGetIntersectionPrimitiveIndexKHR = 6023, - OpRayQueryGetIntersectionBarycentricsKHR = 6024, - OpRayQueryGetIntersectionFrontFaceKHR = 6025, - OpRayQueryGetIntersectionCandidateAABBOpaqueKHR = 6026, - OpRayQueryGetIntersectionObjectRayDirectionKHR = 6027, - OpRayQueryGetIntersectionObjectRayOriginKHR = 6028, - OpRayQueryGetWorldRayDirectionKHR = 6029, - OpRayQueryGetWorldRayOriginKHR = 6030, - OpRayQueryGetIntersectionObjectToWorldKHR = 6031, - OpRayQueryGetIntersectionWorldToObjectKHR = 6032, - OpAtomicFAddEXT = 6035, - OpTypeBufferSurfaceINTEL = 6086, - OpTypeStructContinuedINTEL = 6090, - OpConstantCompositeContinuedINTEL = 6091, - OpSpecConstantCompositeContinuedINTEL = 6092, - OpConvertFToBF16INTEL = 6116, - OpConvertBF16ToFINTEL = 6117, - OpControlBarrierArriveINTEL = 6142, - OpControlBarrierWaitINTEL = 6143, - OpGroupIMulKHR = 6401, - OpGroupFMulKHR = 6402, - OpGroupBitwiseAndKHR = 6403, - OpGroupBitwiseOrKHR = 6404, - OpGroupBitwiseXorKHR = 6405, - OpGroupLogicalAndKHR = 6406, - OpGroupLogicalOrKHR = 6407, - OpGroupLogicalXorKHR = 6408, - } - } -} - diff --git a/Extern/3rdParty/shaderc/shaderc/include/spirv/unified1/spirv.h b/Extern/3rdParty/shaderc/shaderc/include/spirv/unified1/spirv.h deleted file mode 100644 index bc1ef4c..0000000 --- a/Extern/3rdParty/shaderc/shaderc/include/spirv/unified1/spirv.h +++ /dev/null @@ -1,2760 +0,0 @@ -/* -** Copyright (c) 2014-2020 The Khronos Group Inc. -** -** Permission is hereby granted, free of charge, to any person obtaining a copy -** of this software and/or associated documentation files (the "Materials"), -** 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. -*/ - -/* -** This header is automatically generated by the same tool that creates -** the Binary Section of the SPIR-V specification. -*/ - -/* -** Enumeration tokens for SPIR-V, in various styles: -** C, C++, C++11, JSON, Lua, Python, C#, D, Beef -** -** - C will have tokens with a "Spv" prefix, e.g.: SpvSourceLanguageGLSL -** - C++ will have tokens in the "spv" name space, e.g.: spv::SourceLanguageGLSL -** - C++11 will use enum classes in the spv namespace, e.g.: spv::SourceLanguage::GLSL -** - Lua will use tables, e.g.: spv.SourceLanguage.GLSL -** - Python will use dictionaries, e.g.: spv['SourceLanguage']['GLSL'] -** - C# will use enum classes in the Specification class located in the "Spv" namespace, -** e.g.: Spv.Specification.SourceLanguage.GLSL -** - D will have tokens under the "spv" module, e.g: spv.SourceLanguage.GLSL -** - Beef will use enum classes in the Specification class located in the "Spv" namespace, -** e.g.: Spv.Specification.SourceLanguage.GLSL -** -** Some tokens act like mask values, which can be OR'd together, -** while others are mutually exclusive. The mask-like ones have -** "Mask" in their name, and a parallel enum that has the shift -** amount (1 << x) for each corresponding enumerant. -*/ - -#ifndef spirv_H -#define spirv_H - -typedef unsigned int SpvId; - -#define SPV_VERSION 0x10600 -#define SPV_REVISION 1 - -static const unsigned int SpvMagicNumber = 0x07230203; -static const unsigned int SpvVersion = 0x00010600; -static const unsigned int SpvRevision = 1; -static const unsigned int SpvOpCodeMask = 0xffff; -static const unsigned int SpvWordCountShift = 16; - -typedef enum SpvSourceLanguage_ { - SpvSourceLanguageUnknown = 0, - SpvSourceLanguageESSL = 1, - SpvSourceLanguageGLSL = 2, - SpvSourceLanguageOpenCL_C = 3, - SpvSourceLanguageOpenCL_CPP = 4, - SpvSourceLanguageHLSL = 5, - SpvSourceLanguageCPP_for_OpenCL = 6, - SpvSourceLanguageSYCL = 7, - SpvSourceLanguageHERO_C = 8, - SpvSourceLanguageNZSL = 9, - SpvSourceLanguageWGSL = 10, - SpvSourceLanguageMax = 0x7fffffff, -} SpvSourceLanguage; - -typedef enum SpvExecutionModel_ { - SpvExecutionModelVertex = 0, - SpvExecutionModelTessellationControl = 1, - SpvExecutionModelTessellationEvaluation = 2, - SpvExecutionModelGeometry = 3, - SpvExecutionModelFragment = 4, - SpvExecutionModelGLCompute = 5, - SpvExecutionModelKernel = 6, - SpvExecutionModelTaskNV = 5267, - SpvExecutionModelMeshNV = 5268, - SpvExecutionModelRayGenerationKHR = 5313, - SpvExecutionModelRayGenerationNV = 5313, - SpvExecutionModelIntersectionKHR = 5314, - SpvExecutionModelIntersectionNV = 5314, - SpvExecutionModelAnyHitKHR = 5315, - SpvExecutionModelAnyHitNV = 5315, - SpvExecutionModelClosestHitKHR = 5316, - SpvExecutionModelClosestHitNV = 5316, - SpvExecutionModelMissKHR = 5317, - SpvExecutionModelMissNV = 5317, - SpvExecutionModelCallableKHR = 5318, - SpvExecutionModelCallableNV = 5318, - SpvExecutionModelTaskEXT = 5364, - SpvExecutionModelMeshEXT = 5365, - SpvExecutionModelMax = 0x7fffffff, -} SpvExecutionModel; - -typedef enum SpvAddressingModel_ { - SpvAddressingModelLogical = 0, - SpvAddressingModelPhysical32 = 1, - SpvAddressingModelPhysical64 = 2, - SpvAddressingModelPhysicalStorageBuffer64 = 5348, - SpvAddressingModelPhysicalStorageBuffer64EXT = 5348, - SpvAddressingModelMax = 0x7fffffff, -} SpvAddressingModel; - -typedef enum SpvMemoryModel_ { - SpvMemoryModelSimple = 0, - SpvMemoryModelGLSL450 = 1, - SpvMemoryModelOpenCL = 2, - SpvMemoryModelVulkan = 3, - SpvMemoryModelVulkanKHR = 3, - SpvMemoryModelMax = 0x7fffffff, -} SpvMemoryModel; - -typedef enum SpvExecutionMode_ { - SpvExecutionModeInvocations = 0, - SpvExecutionModeSpacingEqual = 1, - SpvExecutionModeSpacingFractionalEven = 2, - SpvExecutionModeSpacingFractionalOdd = 3, - SpvExecutionModeVertexOrderCw = 4, - SpvExecutionModeVertexOrderCcw = 5, - SpvExecutionModePixelCenterInteger = 6, - SpvExecutionModeOriginUpperLeft = 7, - SpvExecutionModeOriginLowerLeft = 8, - SpvExecutionModeEarlyFragmentTests = 9, - SpvExecutionModePointMode = 10, - SpvExecutionModeXfb = 11, - SpvExecutionModeDepthReplacing = 12, - SpvExecutionModeDepthGreater = 14, - SpvExecutionModeDepthLess = 15, - SpvExecutionModeDepthUnchanged = 16, - SpvExecutionModeLocalSize = 17, - SpvExecutionModeLocalSizeHint = 18, - SpvExecutionModeInputPoints = 19, - SpvExecutionModeInputLines = 20, - SpvExecutionModeInputLinesAdjacency = 21, - SpvExecutionModeTriangles = 22, - SpvExecutionModeInputTrianglesAdjacency = 23, - SpvExecutionModeQuads = 24, - SpvExecutionModeIsolines = 25, - SpvExecutionModeOutputVertices = 26, - SpvExecutionModeOutputPoints = 27, - SpvExecutionModeOutputLineStrip = 28, - SpvExecutionModeOutputTriangleStrip = 29, - SpvExecutionModeVecTypeHint = 30, - SpvExecutionModeContractionOff = 31, - SpvExecutionModeInitializer = 33, - SpvExecutionModeFinalizer = 34, - SpvExecutionModeSubgroupSize = 35, - SpvExecutionModeSubgroupsPerWorkgroup = 36, - SpvExecutionModeSubgroupsPerWorkgroupId = 37, - SpvExecutionModeLocalSizeId = 38, - SpvExecutionModeLocalSizeHintId = 39, - SpvExecutionModeNonCoherentColorAttachmentReadEXT = 4169, - SpvExecutionModeNonCoherentDepthAttachmentReadEXT = 4170, - SpvExecutionModeNonCoherentStencilAttachmentReadEXT = 4171, - SpvExecutionModeSubgroupUniformControlFlowKHR = 4421, - SpvExecutionModePostDepthCoverage = 4446, - SpvExecutionModeDenormPreserve = 4459, - SpvExecutionModeDenormFlushToZero = 4460, - SpvExecutionModeSignedZeroInfNanPreserve = 4461, - SpvExecutionModeRoundingModeRTE = 4462, - SpvExecutionModeRoundingModeRTZ = 4463, - SpvExecutionModeEarlyAndLateFragmentTestsAMD = 5017, - SpvExecutionModeStencilRefReplacingEXT = 5027, - SpvExecutionModeStencilRefUnchangedFrontAMD = 5079, - SpvExecutionModeStencilRefGreaterFrontAMD = 5080, - SpvExecutionModeStencilRefLessFrontAMD = 5081, - SpvExecutionModeStencilRefUnchangedBackAMD = 5082, - SpvExecutionModeStencilRefGreaterBackAMD = 5083, - SpvExecutionModeStencilRefLessBackAMD = 5084, - SpvExecutionModeOutputLinesEXT = 5269, - SpvExecutionModeOutputLinesNV = 5269, - SpvExecutionModeOutputPrimitivesEXT = 5270, - SpvExecutionModeOutputPrimitivesNV = 5270, - SpvExecutionModeDerivativeGroupQuadsNV = 5289, - SpvExecutionModeDerivativeGroupLinearNV = 5290, - SpvExecutionModeOutputTrianglesEXT = 5298, - SpvExecutionModeOutputTrianglesNV = 5298, - SpvExecutionModePixelInterlockOrderedEXT = 5366, - SpvExecutionModePixelInterlockUnorderedEXT = 5367, - SpvExecutionModeSampleInterlockOrderedEXT = 5368, - 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, - SpvExecutionModeStreamingInterfaceINTEL = 6154, - SpvExecutionModeRegisterMapInterfaceINTEL = 6160, - SpvExecutionModeNamedBarrierCountINTEL = 6417, - SpvExecutionModeMax = 0x7fffffff, -} SpvExecutionMode; - -typedef enum SpvStorageClass_ { - SpvStorageClassUniformConstant = 0, - SpvStorageClassInput = 1, - SpvStorageClassUniform = 2, - SpvStorageClassOutput = 3, - SpvStorageClassWorkgroup = 4, - SpvStorageClassCrossWorkgroup = 5, - SpvStorageClassPrivate = 6, - SpvStorageClassFunction = 7, - SpvStorageClassGeneric = 8, - SpvStorageClassPushConstant = 9, - SpvStorageClassAtomicCounter = 10, - SpvStorageClassImage = 11, - SpvStorageClassStorageBuffer = 12, - SpvStorageClassTileImageEXT = 4172, - SpvStorageClassCallableDataKHR = 5328, - SpvStorageClassCallableDataNV = 5328, - SpvStorageClassIncomingCallableDataKHR = 5329, - SpvStorageClassIncomingCallableDataNV = 5329, - SpvStorageClassRayPayloadKHR = 5338, - SpvStorageClassRayPayloadNV = 5338, - SpvStorageClassHitAttributeKHR = 5339, - SpvStorageClassHitAttributeNV = 5339, - SpvStorageClassIncomingRayPayloadKHR = 5342, - SpvStorageClassIncomingRayPayloadNV = 5342, - SpvStorageClassShaderRecordBufferKHR = 5343, - SpvStorageClassShaderRecordBufferNV = 5343, - SpvStorageClassPhysicalStorageBuffer = 5349, - SpvStorageClassPhysicalStorageBufferEXT = 5349, - SpvStorageClassHitObjectAttributeNV = 5385, - SpvStorageClassTaskPayloadWorkgroupEXT = 5402, - SpvStorageClassCodeSectionINTEL = 5605, - SpvStorageClassDeviceOnlyINTEL = 5936, - SpvStorageClassHostOnlyINTEL = 5937, - SpvStorageClassMax = 0x7fffffff, -} SpvStorageClass; - -typedef enum SpvDim_ { - SpvDim1D = 0, - SpvDim2D = 1, - SpvDim3D = 2, - SpvDimCube = 3, - SpvDimRect = 4, - SpvDimBuffer = 5, - SpvDimSubpassData = 6, - SpvDimTileImageDataEXT = 4173, - SpvDimMax = 0x7fffffff, -} SpvDim; - -typedef enum SpvSamplerAddressingMode_ { - SpvSamplerAddressingModeNone = 0, - SpvSamplerAddressingModeClampToEdge = 1, - SpvSamplerAddressingModeClamp = 2, - SpvSamplerAddressingModeRepeat = 3, - SpvSamplerAddressingModeRepeatMirrored = 4, - SpvSamplerAddressingModeMax = 0x7fffffff, -} SpvSamplerAddressingMode; - -typedef enum SpvSamplerFilterMode_ { - SpvSamplerFilterModeNearest = 0, - SpvSamplerFilterModeLinear = 1, - SpvSamplerFilterModeMax = 0x7fffffff, -} SpvSamplerFilterMode; - -typedef enum SpvImageFormat_ { - SpvImageFormatUnknown = 0, - SpvImageFormatRgba32f = 1, - SpvImageFormatRgba16f = 2, - SpvImageFormatR32f = 3, - SpvImageFormatRgba8 = 4, - SpvImageFormatRgba8Snorm = 5, - SpvImageFormatRg32f = 6, - SpvImageFormatRg16f = 7, - SpvImageFormatR11fG11fB10f = 8, - SpvImageFormatR16f = 9, - SpvImageFormatRgba16 = 10, - SpvImageFormatRgb10A2 = 11, - SpvImageFormatRg16 = 12, - SpvImageFormatRg8 = 13, - SpvImageFormatR16 = 14, - SpvImageFormatR8 = 15, - SpvImageFormatRgba16Snorm = 16, - SpvImageFormatRg16Snorm = 17, - SpvImageFormatRg8Snorm = 18, - SpvImageFormatR16Snorm = 19, - SpvImageFormatR8Snorm = 20, - SpvImageFormatRgba32i = 21, - SpvImageFormatRgba16i = 22, - SpvImageFormatRgba8i = 23, - SpvImageFormatR32i = 24, - SpvImageFormatRg32i = 25, - SpvImageFormatRg16i = 26, - SpvImageFormatRg8i = 27, - SpvImageFormatR16i = 28, - SpvImageFormatR8i = 29, - SpvImageFormatRgba32ui = 30, - SpvImageFormatRgba16ui = 31, - SpvImageFormatRgba8ui = 32, - SpvImageFormatR32ui = 33, - SpvImageFormatRgb10a2ui = 34, - SpvImageFormatRg32ui = 35, - SpvImageFormatRg16ui = 36, - SpvImageFormatRg8ui = 37, - SpvImageFormatR16ui = 38, - SpvImageFormatR8ui = 39, - SpvImageFormatR64ui = 40, - SpvImageFormatR64i = 41, - SpvImageFormatMax = 0x7fffffff, -} SpvImageFormat; - -typedef enum SpvImageChannelOrder_ { - SpvImageChannelOrderR = 0, - SpvImageChannelOrderA = 1, - SpvImageChannelOrderRG = 2, - SpvImageChannelOrderRA = 3, - SpvImageChannelOrderRGB = 4, - SpvImageChannelOrderRGBA = 5, - SpvImageChannelOrderBGRA = 6, - SpvImageChannelOrderARGB = 7, - SpvImageChannelOrderIntensity = 8, - SpvImageChannelOrderLuminance = 9, - SpvImageChannelOrderRx = 10, - SpvImageChannelOrderRGx = 11, - SpvImageChannelOrderRGBx = 12, - SpvImageChannelOrderDepth = 13, - SpvImageChannelOrderDepthStencil = 14, - SpvImageChannelOrdersRGB = 15, - SpvImageChannelOrdersRGBx = 16, - SpvImageChannelOrdersRGBA = 17, - SpvImageChannelOrdersBGRA = 18, - SpvImageChannelOrderABGR = 19, - SpvImageChannelOrderMax = 0x7fffffff, -} SpvImageChannelOrder; - -typedef enum SpvImageChannelDataType_ { - SpvImageChannelDataTypeSnormInt8 = 0, - SpvImageChannelDataTypeSnormInt16 = 1, - SpvImageChannelDataTypeUnormInt8 = 2, - SpvImageChannelDataTypeUnormInt16 = 3, - SpvImageChannelDataTypeUnormShort565 = 4, - SpvImageChannelDataTypeUnormShort555 = 5, - SpvImageChannelDataTypeUnormInt101010 = 6, - SpvImageChannelDataTypeSignedInt8 = 7, - SpvImageChannelDataTypeSignedInt16 = 8, - SpvImageChannelDataTypeSignedInt32 = 9, - SpvImageChannelDataTypeUnsignedInt8 = 10, - SpvImageChannelDataTypeUnsignedInt16 = 11, - SpvImageChannelDataTypeUnsignedInt32 = 12, - SpvImageChannelDataTypeHalfFloat = 13, - SpvImageChannelDataTypeFloat = 14, - SpvImageChannelDataTypeUnormInt24 = 15, - SpvImageChannelDataTypeUnormInt101010_2 = 16, - SpvImageChannelDataTypeUnsignedIntRaw10EXT = 19, - SpvImageChannelDataTypeUnsignedIntRaw12EXT = 20, - SpvImageChannelDataTypeMax = 0x7fffffff, -} SpvImageChannelDataType; - -typedef enum SpvImageOperandsShift_ { - SpvImageOperandsBiasShift = 0, - SpvImageOperandsLodShift = 1, - SpvImageOperandsGradShift = 2, - SpvImageOperandsConstOffsetShift = 3, - SpvImageOperandsOffsetShift = 4, - SpvImageOperandsConstOffsetsShift = 5, - SpvImageOperandsSampleShift = 6, - SpvImageOperandsMinLodShift = 7, - SpvImageOperandsMakeTexelAvailableShift = 8, - SpvImageOperandsMakeTexelAvailableKHRShift = 8, - SpvImageOperandsMakeTexelVisibleShift = 9, - SpvImageOperandsMakeTexelVisibleKHRShift = 9, - SpvImageOperandsNonPrivateTexelShift = 10, - SpvImageOperandsNonPrivateTexelKHRShift = 10, - SpvImageOperandsVolatileTexelShift = 11, - SpvImageOperandsVolatileTexelKHRShift = 11, - SpvImageOperandsSignExtendShift = 12, - SpvImageOperandsZeroExtendShift = 13, - SpvImageOperandsNontemporalShift = 14, - SpvImageOperandsOffsetsShift = 16, - SpvImageOperandsMax = 0x7fffffff, -} SpvImageOperandsShift; - -typedef enum SpvImageOperandsMask_ { - SpvImageOperandsMaskNone = 0, - SpvImageOperandsBiasMask = 0x00000001, - SpvImageOperandsLodMask = 0x00000002, - SpvImageOperandsGradMask = 0x00000004, - SpvImageOperandsConstOffsetMask = 0x00000008, - SpvImageOperandsOffsetMask = 0x00000010, - SpvImageOperandsConstOffsetsMask = 0x00000020, - SpvImageOperandsSampleMask = 0x00000040, - SpvImageOperandsMinLodMask = 0x00000080, - SpvImageOperandsMakeTexelAvailableMask = 0x00000100, - SpvImageOperandsMakeTexelAvailableKHRMask = 0x00000100, - SpvImageOperandsMakeTexelVisibleMask = 0x00000200, - SpvImageOperandsMakeTexelVisibleKHRMask = 0x00000200, - SpvImageOperandsNonPrivateTexelMask = 0x00000400, - SpvImageOperandsNonPrivateTexelKHRMask = 0x00000400, - SpvImageOperandsVolatileTexelMask = 0x00000800, - SpvImageOperandsVolatileTexelKHRMask = 0x00000800, - SpvImageOperandsSignExtendMask = 0x00001000, - SpvImageOperandsZeroExtendMask = 0x00002000, - SpvImageOperandsNontemporalMask = 0x00004000, - SpvImageOperandsOffsetsMask = 0x00010000, -} SpvImageOperandsMask; - -typedef enum SpvFPFastMathModeShift_ { - SpvFPFastMathModeNotNaNShift = 0, - SpvFPFastMathModeNotInfShift = 1, - SpvFPFastMathModeNSZShift = 2, - SpvFPFastMathModeAllowRecipShift = 3, - SpvFPFastMathModeFastShift = 4, - SpvFPFastMathModeAllowContractFastINTELShift = 16, - SpvFPFastMathModeAllowReassocINTELShift = 17, - SpvFPFastMathModeMax = 0x7fffffff, -} SpvFPFastMathModeShift; - -typedef enum SpvFPFastMathModeMask_ { - SpvFPFastMathModeMaskNone = 0, - SpvFPFastMathModeNotNaNMask = 0x00000001, - SpvFPFastMathModeNotInfMask = 0x00000002, - SpvFPFastMathModeNSZMask = 0x00000004, - SpvFPFastMathModeAllowRecipMask = 0x00000008, - SpvFPFastMathModeFastMask = 0x00000010, - SpvFPFastMathModeAllowContractFastINTELMask = 0x00010000, - SpvFPFastMathModeAllowReassocINTELMask = 0x00020000, -} SpvFPFastMathModeMask; - -typedef enum SpvFPRoundingMode_ { - SpvFPRoundingModeRTE = 0, - SpvFPRoundingModeRTZ = 1, - SpvFPRoundingModeRTP = 2, - SpvFPRoundingModeRTN = 3, - SpvFPRoundingModeMax = 0x7fffffff, -} SpvFPRoundingMode; - -typedef enum SpvLinkageType_ { - SpvLinkageTypeExport = 0, - SpvLinkageTypeImport = 1, - SpvLinkageTypeLinkOnceODR = 2, - SpvLinkageTypeMax = 0x7fffffff, -} SpvLinkageType; - -typedef enum SpvAccessQualifier_ { - SpvAccessQualifierReadOnly = 0, - SpvAccessQualifierWriteOnly = 1, - SpvAccessQualifierReadWrite = 2, - SpvAccessQualifierMax = 0x7fffffff, -} SpvAccessQualifier; - -typedef enum SpvFunctionParameterAttribute_ { - SpvFunctionParameterAttributeZext = 0, - SpvFunctionParameterAttributeSext = 1, - SpvFunctionParameterAttributeByVal = 2, - SpvFunctionParameterAttributeSret = 3, - SpvFunctionParameterAttributeNoAlias = 4, - SpvFunctionParameterAttributeNoCapture = 5, - SpvFunctionParameterAttributeNoWrite = 6, - SpvFunctionParameterAttributeNoReadWrite = 7, - SpvFunctionParameterAttributeRuntimeAlignedINTEL = 5940, - SpvFunctionParameterAttributeMax = 0x7fffffff, -} SpvFunctionParameterAttribute; - -typedef enum SpvDecoration_ { - SpvDecorationRelaxedPrecision = 0, - SpvDecorationSpecId = 1, - SpvDecorationBlock = 2, - SpvDecorationBufferBlock = 3, - SpvDecorationRowMajor = 4, - SpvDecorationColMajor = 5, - SpvDecorationArrayStride = 6, - SpvDecorationMatrixStride = 7, - SpvDecorationGLSLShared = 8, - SpvDecorationGLSLPacked = 9, - SpvDecorationCPacked = 10, - SpvDecorationBuiltIn = 11, - SpvDecorationNoPerspective = 13, - SpvDecorationFlat = 14, - SpvDecorationPatch = 15, - SpvDecorationCentroid = 16, - SpvDecorationSample = 17, - SpvDecorationInvariant = 18, - SpvDecorationRestrict = 19, - SpvDecorationAliased = 20, - SpvDecorationVolatile = 21, - SpvDecorationConstant = 22, - SpvDecorationCoherent = 23, - SpvDecorationNonWritable = 24, - SpvDecorationNonReadable = 25, - SpvDecorationUniform = 26, - SpvDecorationUniformId = 27, - SpvDecorationSaturatedConversion = 28, - SpvDecorationStream = 29, - SpvDecorationLocation = 30, - SpvDecorationComponent = 31, - SpvDecorationIndex = 32, - SpvDecorationBinding = 33, - SpvDecorationDescriptorSet = 34, - SpvDecorationOffset = 35, - SpvDecorationXfbBuffer = 36, - SpvDecorationXfbStride = 37, - SpvDecorationFuncParamAttr = 38, - SpvDecorationFPRoundingMode = 39, - SpvDecorationFPFastMathMode = 40, - SpvDecorationLinkageAttributes = 41, - SpvDecorationNoContraction = 42, - SpvDecorationInputAttachmentIndex = 43, - SpvDecorationAlignment = 44, - SpvDecorationMaxByteOffset = 45, - SpvDecorationAlignmentId = 46, - SpvDecorationMaxByteOffsetId = 47, - SpvDecorationNoSignedWrap = 4469, - SpvDecorationNoUnsignedWrap = 4470, - SpvDecorationWeightTextureQCOM = 4487, - SpvDecorationBlockMatchTextureQCOM = 4488, - SpvDecorationExplicitInterpAMD = 4999, - SpvDecorationOverrideCoverageNV = 5248, - SpvDecorationPassthroughNV = 5250, - SpvDecorationViewportRelativeNV = 5252, - SpvDecorationSecondaryViewportRelativeNV = 5256, - SpvDecorationPerPrimitiveEXT = 5271, - SpvDecorationPerPrimitiveNV = 5271, - SpvDecorationPerViewNV = 5272, - SpvDecorationPerTaskNV = 5273, - SpvDecorationPerVertexKHR = 5285, - SpvDecorationPerVertexNV = 5285, - SpvDecorationNonUniform = 5300, - SpvDecorationNonUniformEXT = 5300, - SpvDecorationRestrictPointer = 5355, - SpvDecorationRestrictPointerEXT = 5355, - SpvDecorationAliasedPointer = 5356, - SpvDecorationAliasedPointerEXT = 5356, - SpvDecorationHitObjectShaderRecordBufferNV = 5386, - SpvDecorationBindlessSamplerNV = 5398, - SpvDecorationBindlessImageNV = 5399, - SpvDecorationBoundSamplerNV = 5400, - SpvDecorationBoundImageNV = 5401, - 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, - SpvDecorationMathOpDSPModeINTEL = 5909, - SpvDecorationAliasScopeINTEL = 5914, - SpvDecorationNoAliasINTEL = 5915, - SpvDecorationInitiationIntervalINTEL = 5917, - SpvDecorationMaxConcurrencyINTEL = 5918, - SpvDecorationPipelineEnableINTEL = 5919, - SpvDecorationBufferLocationINTEL = 5921, - SpvDecorationIOPipeStorageINTEL = 5944, - SpvDecorationFunctionFloatingPointModeINTEL = 6080, - SpvDecorationSingleElementVectorINTEL = 6085, - SpvDecorationVectorComputeCallableFunctionINTEL = 6087, - SpvDecorationMediaBlockIOINTEL = 6140, - SpvDecorationFPMaxErrorDecorationINTEL = 6170, - SpvDecorationLatencyControlLabelINTEL = 6172, - SpvDecorationLatencyControlConstraintINTEL = 6173, - SpvDecorationConduitKernelArgumentINTEL = 6175, - SpvDecorationRegisterMapKernelArgumentINTEL = 6176, - SpvDecorationMMHostInterfaceAddressWidthINTEL = 6177, - SpvDecorationMMHostInterfaceDataWidthINTEL = 6178, - SpvDecorationMMHostInterfaceLatencyINTEL = 6179, - SpvDecorationMMHostInterfaceReadWriteModeINTEL = 6180, - SpvDecorationMMHostInterfaceMaxBurstINTEL = 6181, - SpvDecorationMMHostInterfaceWaitRequestINTEL = 6182, - SpvDecorationStableKernelArgumentINTEL = 6183, - SpvDecorationMax = 0x7fffffff, -} SpvDecoration; - -typedef enum SpvBuiltIn_ { - SpvBuiltInPosition = 0, - SpvBuiltInPointSize = 1, - SpvBuiltInClipDistance = 3, - SpvBuiltInCullDistance = 4, - SpvBuiltInVertexId = 5, - SpvBuiltInInstanceId = 6, - SpvBuiltInPrimitiveId = 7, - SpvBuiltInInvocationId = 8, - SpvBuiltInLayer = 9, - SpvBuiltInViewportIndex = 10, - SpvBuiltInTessLevelOuter = 11, - SpvBuiltInTessLevelInner = 12, - SpvBuiltInTessCoord = 13, - SpvBuiltInPatchVertices = 14, - SpvBuiltInFragCoord = 15, - SpvBuiltInPointCoord = 16, - SpvBuiltInFrontFacing = 17, - SpvBuiltInSampleId = 18, - SpvBuiltInSamplePosition = 19, - SpvBuiltInSampleMask = 20, - SpvBuiltInFragDepth = 22, - SpvBuiltInHelperInvocation = 23, - SpvBuiltInNumWorkgroups = 24, - SpvBuiltInWorkgroupSize = 25, - SpvBuiltInWorkgroupId = 26, - SpvBuiltInLocalInvocationId = 27, - SpvBuiltInGlobalInvocationId = 28, - SpvBuiltInLocalInvocationIndex = 29, - SpvBuiltInWorkDim = 30, - SpvBuiltInGlobalSize = 31, - SpvBuiltInEnqueuedWorkgroupSize = 32, - SpvBuiltInGlobalOffset = 33, - SpvBuiltInGlobalLinearId = 34, - SpvBuiltInSubgroupSize = 36, - SpvBuiltInSubgroupMaxSize = 37, - SpvBuiltInNumSubgroups = 38, - SpvBuiltInNumEnqueuedSubgroups = 39, - SpvBuiltInSubgroupId = 40, - SpvBuiltInSubgroupLocalInvocationId = 41, - SpvBuiltInVertexIndex = 42, - SpvBuiltInInstanceIndex = 43, - SpvBuiltInCoreIDARM = 4160, - SpvBuiltInCoreCountARM = 4161, - SpvBuiltInCoreMaxIDARM = 4162, - SpvBuiltInWarpIDARM = 4163, - SpvBuiltInWarpMaxIDARM = 4164, - SpvBuiltInSubgroupEqMask = 4416, - SpvBuiltInSubgroupEqMaskKHR = 4416, - SpvBuiltInSubgroupGeMask = 4417, - SpvBuiltInSubgroupGeMaskKHR = 4417, - SpvBuiltInSubgroupGtMask = 4418, - SpvBuiltInSubgroupGtMaskKHR = 4418, - SpvBuiltInSubgroupLeMask = 4419, - SpvBuiltInSubgroupLeMaskKHR = 4419, - SpvBuiltInSubgroupLtMask = 4420, - SpvBuiltInSubgroupLtMaskKHR = 4420, - SpvBuiltInBaseVertex = 4424, - SpvBuiltInBaseInstance = 4425, - SpvBuiltInDrawIndex = 4426, - SpvBuiltInPrimitiveShadingRateKHR = 4432, - SpvBuiltInDeviceIndex = 4438, - SpvBuiltInViewIndex = 4440, - SpvBuiltInShadingRateKHR = 4444, - SpvBuiltInBaryCoordNoPerspAMD = 4992, - SpvBuiltInBaryCoordNoPerspCentroidAMD = 4993, - SpvBuiltInBaryCoordNoPerspSampleAMD = 4994, - SpvBuiltInBaryCoordSmoothAMD = 4995, - SpvBuiltInBaryCoordSmoothCentroidAMD = 4996, - SpvBuiltInBaryCoordSmoothSampleAMD = 4997, - SpvBuiltInBaryCoordPullModelAMD = 4998, - SpvBuiltInFragStencilRefEXT = 5014, - SpvBuiltInViewportMaskNV = 5253, - SpvBuiltInSecondaryPositionNV = 5257, - SpvBuiltInSecondaryViewportMaskNV = 5258, - SpvBuiltInPositionPerViewNV = 5261, - SpvBuiltInViewportMaskPerViewNV = 5262, - SpvBuiltInFullyCoveredEXT = 5264, - SpvBuiltInTaskCountNV = 5274, - SpvBuiltInPrimitiveCountNV = 5275, - SpvBuiltInPrimitiveIndicesNV = 5276, - SpvBuiltInClipDistancePerViewNV = 5277, - SpvBuiltInCullDistancePerViewNV = 5278, - SpvBuiltInLayerPerViewNV = 5279, - SpvBuiltInMeshViewCountNV = 5280, - SpvBuiltInMeshViewIndicesNV = 5281, - SpvBuiltInBaryCoordKHR = 5286, - SpvBuiltInBaryCoordNV = 5286, - SpvBuiltInBaryCoordNoPerspKHR = 5287, - SpvBuiltInBaryCoordNoPerspNV = 5287, - SpvBuiltInFragSizeEXT = 5292, - SpvBuiltInFragmentSizeNV = 5292, - SpvBuiltInFragInvocationCountEXT = 5293, - SpvBuiltInInvocationsPerPixelNV = 5293, - SpvBuiltInPrimitivePointIndicesEXT = 5294, - SpvBuiltInPrimitiveLineIndicesEXT = 5295, - SpvBuiltInPrimitiveTriangleIndicesEXT = 5296, - SpvBuiltInCullPrimitiveEXT = 5299, - SpvBuiltInLaunchIdKHR = 5319, - SpvBuiltInLaunchIdNV = 5319, - SpvBuiltInLaunchSizeKHR = 5320, - SpvBuiltInLaunchSizeNV = 5320, - SpvBuiltInWorldRayOriginKHR = 5321, - SpvBuiltInWorldRayOriginNV = 5321, - SpvBuiltInWorldRayDirectionKHR = 5322, - SpvBuiltInWorldRayDirectionNV = 5322, - SpvBuiltInObjectRayOriginKHR = 5323, - SpvBuiltInObjectRayOriginNV = 5323, - SpvBuiltInObjectRayDirectionKHR = 5324, - SpvBuiltInObjectRayDirectionNV = 5324, - SpvBuiltInRayTminKHR = 5325, - SpvBuiltInRayTminNV = 5325, - SpvBuiltInRayTmaxKHR = 5326, - SpvBuiltInRayTmaxNV = 5326, - SpvBuiltInInstanceCustomIndexKHR = 5327, - SpvBuiltInInstanceCustomIndexNV = 5327, - SpvBuiltInObjectToWorldKHR = 5330, - SpvBuiltInObjectToWorldNV = 5330, - SpvBuiltInWorldToObjectKHR = 5331, - SpvBuiltInWorldToObjectNV = 5331, - SpvBuiltInHitTNV = 5332, - SpvBuiltInHitKindKHR = 5333, - SpvBuiltInHitKindNV = 5333, - SpvBuiltInCurrentRayTimeNV = 5334, - SpvBuiltInHitTriangleVertexPositionsKHR = 5335, - SpvBuiltInIncomingRayFlagsKHR = 5351, - SpvBuiltInIncomingRayFlagsNV = 5351, - SpvBuiltInRayGeometryIndexKHR = 5352, - SpvBuiltInWarpsPerSMNV = 5374, - SpvBuiltInSMCountNV = 5375, - SpvBuiltInWarpIDNV = 5376, - SpvBuiltInSMIDNV = 5377, - SpvBuiltInCullMaskKHR = 6021, - SpvBuiltInMax = 0x7fffffff, -} SpvBuiltIn; - -typedef enum SpvSelectionControlShift_ { - SpvSelectionControlFlattenShift = 0, - SpvSelectionControlDontFlattenShift = 1, - SpvSelectionControlMax = 0x7fffffff, -} SpvSelectionControlShift; - -typedef enum SpvSelectionControlMask_ { - SpvSelectionControlMaskNone = 0, - SpvSelectionControlFlattenMask = 0x00000001, - SpvSelectionControlDontFlattenMask = 0x00000002, -} SpvSelectionControlMask; - -typedef enum SpvLoopControlShift_ { - SpvLoopControlUnrollShift = 0, - SpvLoopControlDontUnrollShift = 1, - SpvLoopControlDependencyInfiniteShift = 2, - SpvLoopControlDependencyLengthShift = 3, - SpvLoopControlMinIterationsShift = 4, - SpvLoopControlMaxIterationsShift = 5, - SpvLoopControlIterationMultipleShift = 6, - SpvLoopControlPeelCountShift = 7, - SpvLoopControlPartialCountShift = 8, - SpvLoopControlInitiationIntervalINTELShift = 16, - SpvLoopControlMaxConcurrencyINTELShift = 17, - SpvLoopControlDependencyArrayINTELShift = 18, - SpvLoopControlPipelineEnableINTELShift = 19, - SpvLoopControlLoopCoalesceINTELShift = 20, - SpvLoopControlMaxInterleavingINTELShift = 21, - SpvLoopControlSpeculatedIterationsINTELShift = 22, - SpvLoopControlNoFusionINTELShift = 23, - SpvLoopControlLoopCountINTELShift = 24, - SpvLoopControlMaxReinvocationDelayINTELShift = 25, - SpvLoopControlMax = 0x7fffffff, -} SpvLoopControlShift; - -typedef enum SpvLoopControlMask_ { - SpvLoopControlMaskNone = 0, - SpvLoopControlUnrollMask = 0x00000001, - SpvLoopControlDontUnrollMask = 0x00000002, - SpvLoopControlDependencyInfiniteMask = 0x00000004, - SpvLoopControlDependencyLengthMask = 0x00000008, - SpvLoopControlMinIterationsMask = 0x00000010, - SpvLoopControlMaxIterationsMask = 0x00000020, - SpvLoopControlIterationMultipleMask = 0x00000040, - SpvLoopControlPeelCountMask = 0x00000080, - SpvLoopControlPartialCountMask = 0x00000100, - SpvLoopControlInitiationIntervalINTELMask = 0x00010000, - SpvLoopControlMaxConcurrencyINTELMask = 0x00020000, - SpvLoopControlDependencyArrayINTELMask = 0x00040000, - SpvLoopControlPipelineEnableINTELMask = 0x00080000, - SpvLoopControlLoopCoalesceINTELMask = 0x00100000, - SpvLoopControlMaxInterleavingINTELMask = 0x00200000, - SpvLoopControlSpeculatedIterationsINTELMask = 0x00400000, - SpvLoopControlNoFusionINTELMask = 0x00800000, - SpvLoopControlLoopCountINTELMask = 0x01000000, - SpvLoopControlMaxReinvocationDelayINTELMask = 0x02000000, -} SpvLoopControlMask; - -typedef enum SpvFunctionControlShift_ { - SpvFunctionControlInlineShift = 0, - SpvFunctionControlDontInlineShift = 1, - SpvFunctionControlPureShift = 2, - SpvFunctionControlConstShift = 3, - SpvFunctionControlOptNoneINTELShift = 16, - SpvFunctionControlMax = 0x7fffffff, -} SpvFunctionControlShift; - -typedef enum SpvFunctionControlMask_ { - SpvFunctionControlMaskNone = 0, - SpvFunctionControlInlineMask = 0x00000001, - SpvFunctionControlDontInlineMask = 0x00000002, - SpvFunctionControlPureMask = 0x00000004, - SpvFunctionControlConstMask = 0x00000008, - SpvFunctionControlOptNoneINTELMask = 0x00010000, -} SpvFunctionControlMask; - -typedef enum SpvMemorySemanticsShift_ { - SpvMemorySemanticsAcquireShift = 1, - SpvMemorySemanticsReleaseShift = 2, - SpvMemorySemanticsAcquireReleaseShift = 3, - SpvMemorySemanticsSequentiallyConsistentShift = 4, - SpvMemorySemanticsUniformMemoryShift = 6, - SpvMemorySemanticsSubgroupMemoryShift = 7, - SpvMemorySemanticsWorkgroupMemoryShift = 8, - SpvMemorySemanticsCrossWorkgroupMemoryShift = 9, - SpvMemorySemanticsAtomicCounterMemoryShift = 10, - SpvMemorySemanticsImageMemoryShift = 11, - SpvMemorySemanticsOutputMemoryShift = 12, - SpvMemorySemanticsOutputMemoryKHRShift = 12, - SpvMemorySemanticsMakeAvailableShift = 13, - SpvMemorySemanticsMakeAvailableKHRShift = 13, - SpvMemorySemanticsMakeVisibleShift = 14, - SpvMemorySemanticsMakeVisibleKHRShift = 14, - SpvMemorySemanticsVolatileShift = 15, - SpvMemorySemanticsMax = 0x7fffffff, -} SpvMemorySemanticsShift; - -typedef enum SpvMemorySemanticsMask_ { - SpvMemorySemanticsMaskNone = 0, - SpvMemorySemanticsAcquireMask = 0x00000002, - SpvMemorySemanticsReleaseMask = 0x00000004, - SpvMemorySemanticsAcquireReleaseMask = 0x00000008, - SpvMemorySemanticsSequentiallyConsistentMask = 0x00000010, - SpvMemorySemanticsUniformMemoryMask = 0x00000040, - SpvMemorySemanticsSubgroupMemoryMask = 0x00000080, - SpvMemorySemanticsWorkgroupMemoryMask = 0x00000100, - SpvMemorySemanticsCrossWorkgroupMemoryMask = 0x00000200, - SpvMemorySemanticsAtomicCounterMemoryMask = 0x00000400, - SpvMemorySemanticsImageMemoryMask = 0x00000800, - SpvMemorySemanticsOutputMemoryMask = 0x00001000, - SpvMemorySemanticsOutputMemoryKHRMask = 0x00001000, - SpvMemorySemanticsMakeAvailableMask = 0x00002000, - SpvMemorySemanticsMakeAvailableKHRMask = 0x00002000, - SpvMemorySemanticsMakeVisibleMask = 0x00004000, - SpvMemorySemanticsMakeVisibleKHRMask = 0x00004000, - SpvMemorySemanticsVolatileMask = 0x00008000, -} SpvMemorySemanticsMask; - -typedef enum SpvMemoryAccessShift_ { - SpvMemoryAccessVolatileShift = 0, - SpvMemoryAccessAlignedShift = 1, - SpvMemoryAccessNontemporalShift = 2, - SpvMemoryAccessMakePointerAvailableShift = 3, - SpvMemoryAccessMakePointerAvailableKHRShift = 3, - SpvMemoryAccessMakePointerVisibleShift = 4, - SpvMemoryAccessMakePointerVisibleKHRShift = 4, - SpvMemoryAccessNonPrivatePointerShift = 5, - SpvMemoryAccessNonPrivatePointerKHRShift = 5, - SpvMemoryAccessAliasScopeINTELMaskShift = 16, - SpvMemoryAccessNoAliasINTELMaskShift = 17, - SpvMemoryAccessMax = 0x7fffffff, -} SpvMemoryAccessShift; - -typedef enum SpvMemoryAccessMask_ { - SpvMemoryAccessMaskNone = 0, - SpvMemoryAccessVolatileMask = 0x00000001, - SpvMemoryAccessAlignedMask = 0x00000002, - SpvMemoryAccessNontemporalMask = 0x00000004, - SpvMemoryAccessMakePointerAvailableMask = 0x00000008, - SpvMemoryAccessMakePointerAvailableKHRMask = 0x00000008, - SpvMemoryAccessMakePointerVisibleMask = 0x00000010, - SpvMemoryAccessMakePointerVisibleKHRMask = 0x00000010, - SpvMemoryAccessNonPrivatePointerMask = 0x00000020, - SpvMemoryAccessNonPrivatePointerKHRMask = 0x00000020, - SpvMemoryAccessAliasScopeINTELMaskMask = 0x00010000, - SpvMemoryAccessNoAliasINTELMaskMask = 0x00020000, -} SpvMemoryAccessMask; - -typedef enum SpvScope_ { - SpvScopeCrossDevice = 0, - SpvScopeDevice = 1, - SpvScopeWorkgroup = 2, - SpvScopeSubgroup = 3, - SpvScopeInvocation = 4, - SpvScopeQueueFamily = 5, - SpvScopeQueueFamilyKHR = 5, - SpvScopeShaderCallKHR = 6, - SpvScopeMax = 0x7fffffff, -} SpvScope; - -typedef enum SpvGroupOperation_ { - SpvGroupOperationReduce = 0, - SpvGroupOperationInclusiveScan = 1, - SpvGroupOperationExclusiveScan = 2, - SpvGroupOperationClusteredReduce = 3, - SpvGroupOperationPartitionedReduceNV = 6, - SpvGroupOperationPartitionedInclusiveScanNV = 7, - SpvGroupOperationPartitionedExclusiveScanNV = 8, - SpvGroupOperationMax = 0x7fffffff, -} SpvGroupOperation; - -typedef enum SpvKernelEnqueueFlags_ { - SpvKernelEnqueueFlagsNoWait = 0, - SpvKernelEnqueueFlagsWaitKernel = 1, - SpvKernelEnqueueFlagsWaitWorkGroup = 2, - SpvKernelEnqueueFlagsMax = 0x7fffffff, -} SpvKernelEnqueueFlags; - -typedef enum SpvKernelProfilingInfoShift_ { - SpvKernelProfilingInfoCmdExecTimeShift = 0, - SpvKernelProfilingInfoMax = 0x7fffffff, -} SpvKernelProfilingInfoShift; - -typedef enum SpvKernelProfilingInfoMask_ { - SpvKernelProfilingInfoMaskNone = 0, - SpvKernelProfilingInfoCmdExecTimeMask = 0x00000001, -} SpvKernelProfilingInfoMask; - -typedef enum SpvCapability_ { - SpvCapabilityMatrix = 0, - SpvCapabilityShader = 1, - SpvCapabilityGeometry = 2, - SpvCapabilityTessellation = 3, - SpvCapabilityAddresses = 4, - SpvCapabilityLinkage = 5, - SpvCapabilityKernel = 6, - SpvCapabilityVector16 = 7, - SpvCapabilityFloat16Buffer = 8, - SpvCapabilityFloat16 = 9, - SpvCapabilityFloat64 = 10, - SpvCapabilityInt64 = 11, - SpvCapabilityInt64Atomics = 12, - SpvCapabilityImageBasic = 13, - SpvCapabilityImageReadWrite = 14, - SpvCapabilityImageMipmap = 15, - SpvCapabilityPipes = 17, - SpvCapabilityGroups = 18, - SpvCapabilityDeviceEnqueue = 19, - SpvCapabilityLiteralSampler = 20, - SpvCapabilityAtomicStorage = 21, - SpvCapabilityInt16 = 22, - SpvCapabilityTessellationPointSize = 23, - SpvCapabilityGeometryPointSize = 24, - SpvCapabilityImageGatherExtended = 25, - SpvCapabilityStorageImageMultisample = 27, - SpvCapabilityUniformBufferArrayDynamicIndexing = 28, - SpvCapabilitySampledImageArrayDynamicIndexing = 29, - SpvCapabilityStorageBufferArrayDynamicIndexing = 30, - SpvCapabilityStorageImageArrayDynamicIndexing = 31, - SpvCapabilityClipDistance = 32, - SpvCapabilityCullDistance = 33, - SpvCapabilityImageCubeArray = 34, - SpvCapabilitySampleRateShading = 35, - SpvCapabilityImageRect = 36, - SpvCapabilitySampledRect = 37, - SpvCapabilityGenericPointer = 38, - SpvCapabilityInt8 = 39, - SpvCapabilityInputAttachment = 40, - SpvCapabilitySparseResidency = 41, - SpvCapabilityMinLod = 42, - SpvCapabilitySampled1D = 43, - SpvCapabilityImage1D = 44, - SpvCapabilitySampledCubeArray = 45, - SpvCapabilitySampledBuffer = 46, - SpvCapabilityImageBuffer = 47, - SpvCapabilityImageMSArray = 48, - SpvCapabilityStorageImageExtendedFormats = 49, - SpvCapabilityImageQuery = 50, - SpvCapabilityDerivativeControl = 51, - SpvCapabilityInterpolationFunction = 52, - SpvCapabilityTransformFeedback = 53, - SpvCapabilityGeometryStreams = 54, - SpvCapabilityStorageImageReadWithoutFormat = 55, - SpvCapabilityStorageImageWriteWithoutFormat = 56, - SpvCapabilityMultiViewport = 57, - SpvCapabilitySubgroupDispatch = 58, - SpvCapabilityNamedBarrier = 59, - SpvCapabilityPipeStorage = 60, - SpvCapabilityGroupNonUniform = 61, - SpvCapabilityGroupNonUniformVote = 62, - SpvCapabilityGroupNonUniformArithmetic = 63, - SpvCapabilityGroupNonUniformBallot = 64, - SpvCapabilityGroupNonUniformShuffle = 65, - SpvCapabilityGroupNonUniformShuffleRelative = 66, - SpvCapabilityGroupNonUniformClustered = 67, - SpvCapabilityGroupNonUniformQuad = 68, - SpvCapabilityShaderLayer = 69, - SpvCapabilityShaderViewportIndex = 70, - SpvCapabilityUniformDecoration = 71, - SpvCapabilityCoreBuiltinsARM = 4165, - SpvCapabilityTileImageColorReadAccessEXT = 4166, - SpvCapabilityTileImageDepthReadAccessEXT = 4167, - SpvCapabilityTileImageStencilReadAccessEXT = 4168, - SpvCapabilityFragmentShadingRateKHR = 4422, - SpvCapabilitySubgroupBallotKHR = 4423, - SpvCapabilityDrawParameters = 4427, - SpvCapabilityWorkgroupMemoryExplicitLayoutKHR = 4428, - SpvCapabilityWorkgroupMemoryExplicitLayout8BitAccessKHR = 4429, - SpvCapabilityWorkgroupMemoryExplicitLayout16BitAccessKHR = 4430, - SpvCapabilitySubgroupVoteKHR = 4431, - SpvCapabilityStorageBuffer16BitAccess = 4433, - SpvCapabilityStorageUniformBufferBlock16 = 4433, - SpvCapabilityStorageUniform16 = 4434, - SpvCapabilityUniformAndStorageBuffer16BitAccess = 4434, - SpvCapabilityStoragePushConstant16 = 4435, - SpvCapabilityStorageInputOutput16 = 4436, - SpvCapabilityDeviceGroup = 4437, - SpvCapabilityMultiView = 4439, - SpvCapabilityVariablePointersStorageBuffer = 4441, - SpvCapabilityVariablePointers = 4442, - SpvCapabilityAtomicStorageOps = 4445, - SpvCapabilitySampleMaskPostDepthCoverage = 4447, - SpvCapabilityStorageBuffer8BitAccess = 4448, - SpvCapabilityUniformAndStorageBuffer8BitAccess = 4449, - SpvCapabilityStoragePushConstant8 = 4450, - SpvCapabilityDenormPreserve = 4464, - SpvCapabilityDenormFlushToZero = 4465, - SpvCapabilitySignedZeroInfNanPreserve = 4466, - SpvCapabilityRoundingModeRTE = 4467, - SpvCapabilityRoundingModeRTZ = 4468, - SpvCapabilityRayQueryProvisionalKHR = 4471, - SpvCapabilityRayQueryKHR = 4472, - SpvCapabilityRayTraversalPrimitiveCullingKHR = 4478, - SpvCapabilityRayTracingKHR = 4479, - SpvCapabilityTextureSampleWeightedQCOM = 4484, - SpvCapabilityTextureBoxFilterQCOM = 4485, - SpvCapabilityTextureBlockMatchQCOM = 4486, - SpvCapabilityFloat16ImageAMD = 5008, - SpvCapabilityImageGatherBiasLodAMD = 5009, - SpvCapabilityFragmentMaskAMD = 5010, - SpvCapabilityStencilExportEXT = 5013, - SpvCapabilityImageReadWriteLodAMD = 5015, - SpvCapabilityInt64ImageEXT = 5016, - SpvCapabilityShaderClockKHR = 5055, - SpvCapabilitySampleMaskOverrideCoverageNV = 5249, - SpvCapabilityGeometryShaderPassthroughNV = 5251, - SpvCapabilityShaderViewportIndexLayerEXT = 5254, - SpvCapabilityShaderViewportIndexLayerNV = 5254, - SpvCapabilityShaderViewportMaskNV = 5255, - SpvCapabilityShaderStereoViewNV = 5259, - SpvCapabilityPerViewAttributesNV = 5260, - SpvCapabilityFragmentFullyCoveredEXT = 5265, - SpvCapabilityMeshShadingNV = 5266, - SpvCapabilityImageFootprintNV = 5282, - SpvCapabilityMeshShadingEXT = 5283, - SpvCapabilityFragmentBarycentricKHR = 5284, - SpvCapabilityFragmentBarycentricNV = 5284, - SpvCapabilityComputeDerivativeGroupQuadsNV = 5288, - SpvCapabilityFragmentDensityEXT = 5291, - SpvCapabilityShadingRateNV = 5291, - SpvCapabilityGroupNonUniformPartitionedNV = 5297, - SpvCapabilityShaderNonUniform = 5301, - SpvCapabilityShaderNonUniformEXT = 5301, - SpvCapabilityRuntimeDescriptorArray = 5302, - SpvCapabilityRuntimeDescriptorArrayEXT = 5302, - SpvCapabilityInputAttachmentArrayDynamicIndexing = 5303, - SpvCapabilityInputAttachmentArrayDynamicIndexingEXT = 5303, - SpvCapabilityUniformTexelBufferArrayDynamicIndexing = 5304, - SpvCapabilityUniformTexelBufferArrayDynamicIndexingEXT = 5304, - SpvCapabilityStorageTexelBufferArrayDynamicIndexing = 5305, - SpvCapabilityStorageTexelBufferArrayDynamicIndexingEXT = 5305, - SpvCapabilityUniformBufferArrayNonUniformIndexing = 5306, - SpvCapabilityUniformBufferArrayNonUniformIndexingEXT = 5306, - SpvCapabilitySampledImageArrayNonUniformIndexing = 5307, - SpvCapabilitySampledImageArrayNonUniformIndexingEXT = 5307, - SpvCapabilityStorageBufferArrayNonUniformIndexing = 5308, - SpvCapabilityStorageBufferArrayNonUniformIndexingEXT = 5308, - SpvCapabilityStorageImageArrayNonUniformIndexing = 5309, - SpvCapabilityStorageImageArrayNonUniformIndexingEXT = 5309, - SpvCapabilityInputAttachmentArrayNonUniformIndexing = 5310, - SpvCapabilityInputAttachmentArrayNonUniformIndexingEXT = 5310, - SpvCapabilityUniformTexelBufferArrayNonUniformIndexing = 5311, - SpvCapabilityUniformTexelBufferArrayNonUniformIndexingEXT = 5311, - SpvCapabilityStorageTexelBufferArrayNonUniformIndexing = 5312, - SpvCapabilityStorageTexelBufferArrayNonUniformIndexingEXT = 5312, - SpvCapabilityRayTracingPositionFetchKHR = 5336, - SpvCapabilityRayTracingNV = 5340, - SpvCapabilityRayTracingMotionBlurNV = 5341, - SpvCapabilityVulkanMemoryModel = 5345, - SpvCapabilityVulkanMemoryModelKHR = 5345, - SpvCapabilityVulkanMemoryModelDeviceScope = 5346, - SpvCapabilityVulkanMemoryModelDeviceScopeKHR = 5346, - SpvCapabilityPhysicalStorageBufferAddresses = 5347, - SpvCapabilityPhysicalStorageBufferAddressesEXT = 5347, - SpvCapabilityComputeDerivativeGroupLinearNV = 5350, - SpvCapabilityRayTracingProvisionalKHR = 5353, - SpvCapabilityCooperativeMatrixNV = 5357, - SpvCapabilityFragmentShaderSampleInterlockEXT = 5363, - SpvCapabilityFragmentShaderShadingRateInterlockEXT = 5372, - SpvCapabilityShaderSMBuiltinsNV = 5373, - SpvCapabilityFragmentShaderPixelInterlockEXT = 5378, - SpvCapabilityDemoteToHelperInvocation = 5379, - SpvCapabilityDemoteToHelperInvocationEXT = 5379, - SpvCapabilityRayTracingOpacityMicromapEXT = 5381, - SpvCapabilityShaderInvocationReorderNV = 5383, - SpvCapabilityBindlessTextureNV = 5390, - SpvCapabilityRayQueryPositionFetchKHR = 5391, - SpvCapabilitySubgroupShuffleINTEL = 5568, - 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, - SpvCapabilityFPGADSPControlINTEL = 5908, - SpvCapabilityMemoryAccessAliasingINTEL = 5910, - SpvCapabilityFPGAInvocationPipeliningAttributesINTEL = 5916, - SpvCapabilityFPGABufferLocationINTEL = 5920, - SpvCapabilityArbitraryPrecisionFixedPointINTEL = 5922, - SpvCapabilityUSMStorageClassesINTEL = 5935, - SpvCapabilityRuntimeAlignedAttributeINTEL = 5939, - SpvCapabilityIOPipesINTEL = 5943, - SpvCapabilityBlockingPipesINTEL = 5945, - SpvCapabilityFPGARegINTEL = 5948, - SpvCapabilityDotProductInputAll = 6016, - SpvCapabilityDotProductInputAllKHR = 6016, - SpvCapabilityDotProductInput4x8Bit = 6017, - SpvCapabilityDotProductInput4x8BitKHR = 6017, - SpvCapabilityDotProductInput4x8BitPacked = 6018, - SpvCapabilityDotProductInput4x8BitPackedKHR = 6018, - SpvCapabilityDotProduct = 6019, - SpvCapabilityDotProductKHR = 6019, - SpvCapabilityRayCullMaskKHR = 6020, - SpvCapabilityCooperativeMatrixKHR = 6022, - SpvCapabilityBitInstructions = 6025, - SpvCapabilityGroupNonUniformRotateKHR = 6026, - SpvCapabilityAtomicFloat32AddEXT = 6033, - SpvCapabilityAtomicFloat64AddEXT = 6034, - SpvCapabilityLongConstantCompositeINTEL = 6089, - SpvCapabilityOptNoneINTEL = 6094, - SpvCapabilityAtomicFloat16AddEXT = 6095, - SpvCapabilityDebugInfoModuleINTEL = 6114, - SpvCapabilityBFloat16ConversionINTEL = 6115, - SpvCapabilitySplitBarrierINTEL = 6141, - SpvCapabilityFPGAKernelAttributesv2INTEL = 6161, - SpvCapabilityFPMaxErrorINTEL = 6169, - SpvCapabilityFPGALatencyControlINTEL = 6171, - SpvCapabilityFPGAArgumentInterfacesINTEL = 6174, - SpvCapabilityGroupUniformArithmeticKHR = 6400, - SpvCapabilityMax = 0x7fffffff, -} SpvCapability; - -typedef enum SpvRayFlagsShift_ { - SpvRayFlagsOpaqueKHRShift = 0, - SpvRayFlagsNoOpaqueKHRShift = 1, - SpvRayFlagsTerminateOnFirstHitKHRShift = 2, - SpvRayFlagsSkipClosestHitShaderKHRShift = 3, - SpvRayFlagsCullBackFacingTrianglesKHRShift = 4, - SpvRayFlagsCullFrontFacingTrianglesKHRShift = 5, - SpvRayFlagsCullOpaqueKHRShift = 6, - SpvRayFlagsCullNoOpaqueKHRShift = 7, - SpvRayFlagsSkipTrianglesKHRShift = 8, - SpvRayFlagsSkipAABBsKHRShift = 9, - SpvRayFlagsForceOpacityMicromap2StateEXTShift = 10, - SpvRayFlagsMax = 0x7fffffff, -} SpvRayFlagsShift; - -typedef enum SpvRayFlagsMask_ { - SpvRayFlagsMaskNone = 0, - SpvRayFlagsOpaqueKHRMask = 0x00000001, - SpvRayFlagsNoOpaqueKHRMask = 0x00000002, - SpvRayFlagsTerminateOnFirstHitKHRMask = 0x00000004, - SpvRayFlagsSkipClosestHitShaderKHRMask = 0x00000008, - SpvRayFlagsCullBackFacingTrianglesKHRMask = 0x00000010, - SpvRayFlagsCullFrontFacingTrianglesKHRMask = 0x00000020, - SpvRayFlagsCullOpaqueKHRMask = 0x00000040, - SpvRayFlagsCullNoOpaqueKHRMask = 0x00000080, - SpvRayFlagsSkipTrianglesKHRMask = 0x00000100, - SpvRayFlagsSkipAABBsKHRMask = 0x00000200, - SpvRayFlagsForceOpacityMicromap2StateEXTMask = 0x00000400, -} SpvRayFlagsMask; - -typedef enum SpvRayQueryIntersection_ { - SpvRayQueryIntersectionRayQueryCandidateIntersectionKHR = 0, - SpvRayQueryIntersectionRayQueryCommittedIntersectionKHR = 1, - SpvRayQueryIntersectionMax = 0x7fffffff, -} SpvRayQueryIntersection; - -typedef enum SpvRayQueryCommittedIntersectionType_ { - SpvRayQueryCommittedIntersectionTypeRayQueryCommittedIntersectionNoneKHR = 0, - SpvRayQueryCommittedIntersectionTypeRayQueryCommittedIntersectionTriangleKHR = 1, - SpvRayQueryCommittedIntersectionTypeRayQueryCommittedIntersectionGeneratedKHR = 2, - SpvRayQueryCommittedIntersectionTypeMax = 0x7fffffff, -} SpvRayQueryCommittedIntersectionType; - -typedef enum SpvRayQueryCandidateIntersectionType_ { - SpvRayQueryCandidateIntersectionTypeRayQueryCandidateIntersectionTriangleKHR = 0, - SpvRayQueryCandidateIntersectionTypeRayQueryCandidateIntersectionAABBKHR = 1, - 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_ { - SpvPackedVectorFormatPackedVectorFormat4x8Bit = 0, - SpvPackedVectorFormatPackedVectorFormat4x8BitKHR = 0, - SpvPackedVectorFormatMax = 0x7fffffff, -} SpvPackedVectorFormat; - -typedef enum SpvCooperativeMatrixOperandsShift_ { - SpvCooperativeMatrixOperandsMatrixASignedComponentsKHRShift = 0, - SpvCooperativeMatrixOperandsMatrixBSignedComponentsKHRShift = 1, - SpvCooperativeMatrixOperandsMatrixCSignedComponentsKHRShift = 2, - SpvCooperativeMatrixOperandsMatrixResultSignedComponentsKHRShift = 3, - SpvCooperativeMatrixOperandsSaturatingAccumulationKHRShift = 4, - SpvCooperativeMatrixOperandsMax = 0x7fffffff, -} SpvCooperativeMatrixOperandsShift; - -typedef enum SpvCooperativeMatrixOperandsMask_ { - SpvCooperativeMatrixOperandsMaskNone = 0, - SpvCooperativeMatrixOperandsMatrixASignedComponentsKHRMask = 0x00000001, - SpvCooperativeMatrixOperandsMatrixBSignedComponentsKHRMask = 0x00000002, - SpvCooperativeMatrixOperandsMatrixCSignedComponentsKHRMask = 0x00000004, - SpvCooperativeMatrixOperandsMatrixResultSignedComponentsKHRMask = 0x00000008, - SpvCooperativeMatrixOperandsSaturatingAccumulationKHRMask = 0x00000010, -} SpvCooperativeMatrixOperandsMask; - -typedef enum SpvCooperativeMatrixLayout_ { - SpvCooperativeMatrixLayoutRowMajorKHR = 0, - SpvCooperativeMatrixLayoutColumnMajorKHR = 1, - SpvCooperativeMatrixLayoutMax = 0x7fffffff, -} SpvCooperativeMatrixLayout; - -typedef enum SpvCooperativeMatrixUse_ { - SpvCooperativeMatrixUseMatrixAKHR = 0, - SpvCooperativeMatrixUseMatrixBKHR = 1, - SpvCooperativeMatrixUseMatrixAccumulatorKHR = 2, - SpvCooperativeMatrixUseMax = 0x7fffffff, -} SpvCooperativeMatrixUse; - -typedef enum SpvOp_ { - SpvOpNop = 0, - SpvOpUndef = 1, - SpvOpSourceContinued = 2, - SpvOpSource = 3, - SpvOpSourceExtension = 4, - SpvOpName = 5, - SpvOpMemberName = 6, - SpvOpString = 7, - SpvOpLine = 8, - SpvOpExtension = 10, - SpvOpExtInstImport = 11, - SpvOpExtInst = 12, - SpvOpMemoryModel = 14, - SpvOpEntryPoint = 15, - SpvOpExecutionMode = 16, - SpvOpCapability = 17, - SpvOpTypeVoid = 19, - SpvOpTypeBool = 20, - SpvOpTypeInt = 21, - SpvOpTypeFloat = 22, - SpvOpTypeVector = 23, - SpvOpTypeMatrix = 24, - SpvOpTypeImage = 25, - SpvOpTypeSampler = 26, - SpvOpTypeSampledImage = 27, - SpvOpTypeArray = 28, - SpvOpTypeRuntimeArray = 29, - SpvOpTypeStruct = 30, - SpvOpTypeOpaque = 31, - SpvOpTypePointer = 32, - SpvOpTypeFunction = 33, - SpvOpTypeEvent = 34, - SpvOpTypeDeviceEvent = 35, - SpvOpTypeReserveId = 36, - SpvOpTypeQueue = 37, - SpvOpTypePipe = 38, - SpvOpTypeForwardPointer = 39, - SpvOpConstantTrue = 41, - SpvOpConstantFalse = 42, - SpvOpConstant = 43, - SpvOpConstantComposite = 44, - SpvOpConstantSampler = 45, - SpvOpConstantNull = 46, - SpvOpSpecConstantTrue = 48, - SpvOpSpecConstantFalse = 49, - SpvOpSpecConstant = 50, - SpvOpSpecConstantComposite = 51, - SpvOpSpecConstantOp = 52, - SpvOpFunction = 54, - SpvOpFunctionParameter = 55, - SpvOpFunctionEnd = 56, - SpvOpFunctionCall = 57, - SpvOpVariable = 59, - SpvOpImageTexelPointer = 60, - SpvOpLoad = 61, - SpvOpStore = 62, - SpvOpCopyMemory = 63, - SpvOpCopyMemorySized = 64, - SpvOpAccessChain = 65, - SpvOpInBoundsAccessChain = 66, - SpvOpPtrAccessChain = 67, - SpvOpArrayLength = 68, - SpvOpGenericPtrMemSemantics = 69, - SpvOpInBoundsPtrAccessChain = 70, - SpvOpDecorate = 71, - SpvOpMemberDecorate = 72, - SpvOpDecorationGroup = 73, - SpvOpGroupDecorate = 74, - SpvOpGroupMemberDecorate = 75, - SpvOpVectorExtractDynamic = 77, - SpvOpVectorInsertDynamic = 78, - SpvOpVectorShuffle = 79, - SpvOpCompositeConstruct = 80, - SpvOpCompositeExtract = 81, - SpvOpCompositeInsert = 82, - SpvOpCopyObject = 83, - SpvOpTranspose = 84, - SpvOpSampledImage = 86, - SpvOpImageSampleImplicitLod = 87, - SpvOpImageSampleExplicitLod = 88, - SpvOpImageSampleDrefImplicitLod = 89, - SpvOpImageSampleDrefExplicitLod = 90, - SpvOpImageSampleProjImplicitLod = 91, - SpvOpImageSampleProjExplicitLod = 92, - SpvOpImageSampleProjDrefImplicitLod = 93, - SpvOpImageSampleProjDrefExplicitLod = 94, - SpvOpImageFetch = 95, - SpvOpImageGather = 96, - SpvOpImageDrefGather = 97, - SpvOpImageRead = 98, - SpvOpImageWrite = 99, - SpvOpImage = 100, - SpvOpImageQueryFormat = 101, - SpvOpImageQueryOrder = 102, - SpvOpImageQuerySizeLod = 103, - SpvOpImageQuerySize = 104, - SpvOpImageQueryLod = 105, - SpvOpImageQueryLevels = 106, - SpvOpImageQuerySamples = 107, - SpvOpConvertFToU = 109, - SpvOpConvertFToS = 110, - SpvOpConvertSToF = 111, - SpvOpConvertUToF = 112, - SpvOpUConvert = 113, - SpvOpSConvert = 114, - SpvOpFConvert = 115, - SpvOpQuantizeToF16 = 116, - SpvOpConvertPtrToU = 117, - SpvOpSatConvertSToU = 118, - SpvOpSatConvertUToS = 119, - SpvOpConvertUToPtr = 120, - SpvOpPtrCastToGeneric = 121, - SpvOpGenericCastToPtr = 122, - SpvOpGenericCastToPtrExplicit = 123, - SpvOpBitcast = 124, - SpvOpSNegate = 126, - SpvOpFNegate = 127, - SpvOpIAdd = 128, - SpvOpFAdd = 129, - SpvOpISub = 130, - SpvOpFSub = 131, - SpvOpIMul = 132, - SpvOpFMul = 133, - SpvOpUDiv = 134, - SpvOpSDiv = 135, - SpvOpFDiv = 136, - SpvOpUMod = 137, - SpvOpSRem = 138, - SpvOpSMod = 139, - SpvOpFRem = 140, - SpvOpFMod = 141, - SpvOpVectorTimesScalar = 142, - SpvOpMatrixTimesScalar = 143, - SpvOpVectorTimesMatrix = 144, - SpvOpMatrixTimesVector = 145, - SpvOpMatrixTimesMatrix = 146, - SpvOpOuterProduct = 147, - SpvOpDot = 148, - SpvOpIAddCarry = 149, - SpvOpISubBorrow = 150, - SpvOpUMulExtended = 151, - SpvOpSMulExtended = 152, - SpvOpAny = 154, - SpvOpAll = 155, - SpvOpIsNan = 156, - SpvOpIsInf = 157, - SpvOpIsFinite = 158, - SpvOpIsNormal = 159, - SpvOpSignBitSet = 160, - SpvOpLessOrGreater = 161, - SpvOpOrdered = 162, - SpvOpUnordered = 163, - SpvOpLogicalEqual = 164, - SpvOpLogicalNotEqual = 165, - SpvOpLogicalOr = 166, - SpvOpLogicalAnd = 167, - SpvOpLogicalNot = 168, - SpvOpSelect = 169, - SpvOpIEqual = 170, - SpvOpINotEqual = 171, - SpvOpUGreaterThan = 172, - SpvOpSGreaterThan = 173, - SpvOpUGreaterThanEqual = 174, - SpvOpSGreaterThanEqual = 175, - SpvOpULessThan = 176, - SpvOpSLessThan = 177, - SpvOpULessThanEqual = 178, - SpvOpSLessThanEqual = 179, - SpvOpFOrdEqual = 180, - SpvOpFUnordEqual = 181, - SpvOpFOrdNotEqual = 182, - SpvOpFUnordNotEqual = 183, - SpvOpFOrdLessThan = 184, - SpvOpFUnordLessThan = 185, - SpvOpFOrdGreaterThan = 186, - SpvOpFUnordGreaterThan = 187, - SpvOpFOrdLessThanEqual = 188, - SpvOpFUnordLessThanEqual = 189, - SpvOpFOrdGreaterThanEqual = 190, - SpvOpFUnordGreaterThanEqual = 191, - SpvOpShiftRightLogical = 194, - SpvOpShiftRightArithmetic = 195, - SpvOpShiftLeftLogical = 196, - SpvOpBitwiseOr = 197, - SpvOpBitwiseXor = 198, - SpvOpBitwiseAnd = 199, - SpvOpNot = 200, - SpvOpBitFieldInsert = 201, - SpvOpBitFieldSExtract = 202, - SpvOpBitFieldUExtract = 203, - SpvOpBitReverse = 204, - SpvOpBitCount = 205, - SpvOpDPdx = 207, - SpvOpDPdy = 208, - SpvOpFwidth = 209, - SpvOpDPdxFine = 210, - SpvOpDPdyFine = 211, - SpvOpFwidthFine = 212, - SpvOpDPdxCoarse = 213, - SpvOpDPdyCoarse = 214, - SpvOpFwidthCoarse = 215, - SpvOpEmitVertex = 218, - SpvOpEndPrimitive = 219, - SpvOpEmitStreamVertex = 220, - SpvOpEndStreamPrimitive = 221, - SpvOpControlBarrier = 224, - SpvOpMemoryBarrier = 225, - SpvOpAtomicLoad = 227, - SpvOpAtomicStore = 228, - SpvOpAtomicExchange = 229, - SpvOpAtomicCompareExchange = 230, - SpvOpAtomicCompareExchangeWeak = 231, - SpvOpAtomicIIncrement = 232, - SpvOpAtomicIDecrement = 233, - SpvOpAtomicIAdd = 234, - SpvOpAtomicISub = 235, - SpvOpAtomicSMin = 236, - SpvOpAtomicUMin = 237, - SpvOpAtomicSMax = 238, - SpvOpAtomicUMax = 239, - SpvOpAtomicAnd = 240, - SpvOpAtomicOr = 241, - SpvOpAtomicXor = 242, - SpvOpPhi = 245, - SpvOpLoopMerge = 246, - SpvOpSelectionMerge = 247, - SpvOpLabel = 248, - SpvOpBranch = 249, - SpvOpBranchConditional = 250, - SpvOpSwitch = 251, - SpvOpKill = 252, - SpvOpReturn = 253, - SpvOpReturnValue = 254, - SpvOpUnreachable = 255, - SpvOpLifetimeStart = 256, - SpvOpLifetimeStop = 257, - SpvOpGroupAsyncCopy = 259, - SpvOpGroupWaitEvents = 260, - SpvOpGroupAll = 261, - SpvOpGroupAny = 262, - SpvOpGroupBroadcast = 263, - SpvOpGroupIAdd = 264, - SpvOpGroupFAdd = 265, - SpvOpGroupFMin = 266, - SpvOpGroupUMin = 267, - SpvOpGroupSMin = 268, - SpvOpGroupFMax = 269, - SpvOpGroupUMax = 270, - SpvOpGroupSMax = 271, - SpvOpReadPipe = 274, - SpvOpWritePipe = 275, - SpvOpReservedReadPipe = 276, - SpvOpReservedWritePipe = 277, - SpvOpReserveReadPipePackets = 278, - SpvOpReserveWritePipePackets = 279, - SpvOpCommitReadPipe = 280, - SpvOpCommitWritePipe = 281, - SpvOpIsValidReserveId = 282, - SpvOpGetNumPipePackets = 283, - SpvOpGetMaxPipePackets = 284, - SpvOpGroupReserveReadPipePackets = 285, - SpvOpGroupReserveWritePipePackets = 286, - SpvOpGroupCommitReadPipe = 287, - SpvOpGroupCommitWritePipe = 288, - SpvOpEnqueueMarker = 291, - SpvOpEnqueueKernel = 292, - SpvOpGetKernelNDrangeSubGroupCount = 293, - SpvOpGetKernelNDrangeMaxSubGroupSize = 294, - SpvOpGetKernelWorkGroupSize = 295, - SpvOpGetKernelPreferredWorkGroupSizeMultiple = 296, - SpvOpRetainEvent = 297, - SpvOpReleaseEvent = 298, - SpvOpCreateUserEvent = 299, - SpvOpIsValidEvent = 300, - SpvOpSetUserEventStatus = 301, - SpvOpCaptureEventProfilingInfo = 302, - SpvOpGetDefaultQueue = 303, - SpvOpBuildNDRange = 304, - SpvOpImageSparseSampleImplicitLod = 305, - SpvOpImageSparseSampleExplicitLod = 306, - SpvOpImageSparseSampleDrefImplicitLod = 307, - SpvOpImageSparseSampleDrefExplicitLod = 308, - SpvOpImageSparseSampleProjImplicitLod = 309, - SpvOpImageSparseSampleProjExplicitLod = 310, - SpvOpImageSparseSampleProjDrefImplicitLod = 311, - SpvOpImageSparseSampleProjDrefExplicitLod = 312, - SpvOpImageSparseFetch = 313, - SpvOpImageSparseGather = 314, - SpvOpImageSparseDrefGather = 315, - SpvOpImageSparseTexelsResident = 316, - SpvOpNoLine = 317, - SpvOpAtomicFlagTestAndSet = 318, - SpvOpAtomicFlagClear = 319, - SpvOpImageSparseRead = 320, - SpvOpSizeOf = 321, - SpvOpTypePipeStorage = 322, - SpvOpConstantPipeStorage = 323, - SpvOpCreatePipeFromPipeStorage = 324, - SpvOpGetKernelLocalSizeForSubgroupCount = 325, - SpvOpGetKernelMaxNumSubgroups = 326, - SpvOpTypeNamedBarrier = 327, - SpvOpNamedBarrierInitialize = 328, - SpvOpMemoryNamedBarrier = 329, - SpvOpModuleProcessed = 330, - SpvOpExecutionModeId = 331, - SpvOpDecorateId = 332, - SpvOpGroupNonUniformElect = 333, - SpvOpGroupNonUniformAll = 334, - SpvOpGroupNonUniformAny = 335, - SpvOpGroupNonUniformAllEqual = 336, - SpvOpGroupNonUniformBroadcast = 337, - SpvOpGroupNonUniformBroadcastFirst = 338, - SpvOpGroupNonUniformBallot = 339, - SpvOpGroupNonUniformInverseBallot = 340, - SpvOpGroupNonUniformBallotBitExtract = 341, - SpvOpGroupNonUniformBallotBitCount = 342, - SpvOpGroupNonUniformBallotFindLSB = 343, - SpvOpGroupNonUniformBallotFindMSB = 344, - SpvOpGroupNonUniformShuffle = 345, - SpvOpGroupNonUniformShuffleXor = 346, - SpvOpGroupNonUniformShuffleUp = 347, - SpvOpGroupNonUniformShuffleDown = 348, - SpvOpGroupNonUniformIAdd = 349, - SpvOpGroupNonUniformFAdd = 350, - SpvOpGroupNonUniformIMul = 351, - SpvOpGroupNonUniformFMul = 352, - SpvOpGroupNonUniformSMin = 353, - SpvOpGroupNonUniformUMin = 354, - SpvOpGroupNonUniformFMin = 355, - SpvOpGroupNonUniformSMax = 356, - SpvOpGroupNonUniformUMax = 357, - SpvOpGroupNonUniformFMax = 358, - SpvOpGroupNonUniformBitwiseAnd = 359, - SpvOpGroupNonUniformBitwiseOr = 360, - SpvOpGroupNonUniformBitwiseXor = 361, - SpvOpGroupNonUniformLogicalAnd = 362, - SpvOpGroupNonUniformLogicalOr = 363, - SpvOpGroupNonUniformLogicalXor = 364, - SpvOpGroupNonUniformQuadBroadcast = 365, - SpvOpGroupNonUniformQuadSwap = 366, - SpvOpCopyLogical = 400, - SpvOpPtrEqual = 401, - SpvOpPtrNotEqual = 402, - SpvOpPtrDiff = 403, - SpvOpColorAttachmentReadEXT = 4160, - SpvOpDepthAttachmentReadEXT = 4161, - SpvOpStencilAttachmentReadEXT = 4162, - SpvOpTerminateInvocation = 4416, - SpvOpSubgroupBallotKHR = 4421, - SpvOpSubgroupFirstInvocationKHR = 4422, - SpvOpSubgroupAllKHR = 4428, - SpvOpSubgroupAnyKHR = 4429, - SpvOpSubgroupAllEqualKHR = 4430, - SpvOpGroupNonUniformRotateKHR = 4431, - SpvOpSubgroupReadInvocationKHR = 4432, - SpvOpTraceRayKHR = 4445, - SpvOpExecuteCallableKHR = 4446, - SpvOpConvertUToAccelerationStructureKHR = 4447, - SpvOpIgnoreIntersectionKHR = 4448, - SpvOpTerminateRayKHR = 4449, - SpvOpSDot = 4450, - SpvOpSDotKHR = 4450, - SpvOpUDot = 4451, - SpvOpUDotKHR = 4451, - SpvOpSUDot = 4452, - SpvOpSUDotKHR = 4452, - SpvOpSDotAccSat = 4453, - SpvOpSDotAccSatKHR = 4453, - SpvOpUDotAccSat = 4454, - SpvOpUDotAccSatKHR = 4454, - SpvOpSUDotAccSat = 4455, - SpvOpSUDotAccSatKHR = 4455, - SpvOpTypeCooperativeMatrixKHR = 4456, - SpvOpCooperativeMatrixLoadKHR = 4457, - SpvOpCooperativeMatrixStoreKHR = 4458, - SpvOpCooperativeMatrixMulAddKHR = 4459, - SpvOpCooperativeMatrixLengthKHR = 4460, - SpvOpTypeRayQueryKHR = 4472, - SpvOpRayQueryInitializeKHR = 4473, - SpvOpRayQueryTerminateKHR = 4474, - SpvOpRayQueryGenerateIntersectionKHR = 4475, - SpvOpRayQueryConfirmIntersectionKHR = 4476, - SpvOpRayQueryProceedKHR = 4477, - SpvOpRayQueryGetIntersectionTypeKHR = 4479, - SpvOpImageSampleWeightedQCOM = 4480, - SpvOpImageBoxFilterQCOM = 4481, - SpvOpImageBlockMatchSSDQCOM = 4482, - SpvOpImageBlockMatchSADQCOM = 4483, - SpvOpGroupIAddNonUniformAMD = 5000, - SpvOpGroupFAddNonUniformAMD = 5001, - SpvOpGroupFMinNonUniformAMD = 5002, - SpvOpGroupUMinNonUniformAMD = 5003, - SpvOpGroupSMinNonUniformAMD = 5004, - SpvOpGroupFMaxNonUniformAMD = 5005, - SpvOpGroupUMaxNonUniformAMD = 5006, - SpvOpGroupSMaxNonUniformAMD = 5007, - SpvOpFragmentMaskFetchAMD = 5011, - SpvOpFragmentFetchAMD = 5012, - SpvOpReadClockKHR = 5056, - SpvOpHitObjectRecordHitMotionNV = 5249, - SpvOpHitObjectRecordHitWithIndexMotionNV = 5250, - SpvOpHitObjectRecordMissMotionNV = 5251, - SpvOpHitObjectGetWorldToObjectNV = 5252, - SpvOpHitObjectGetObjectToWorldNV = 5253, - SpvOpHitObjectGetObjectRayDirectionNV = 5254, - SpvOpHitObjectGetObjectRayOriginNV = 5255, - SpvOpHitObjectTraceRayMotionNV = 5256, - SpvOpHitObjectGetShaderRecordBufferHandleNV = 5257, - SpvOpHitObjectGetShaderBindingTableRecordIndexNV = 5258, - SpvOpHitObjectRecordEmptyNV = 5259, - SpvOpHitObjectTraceRayNV = 5260, - SpvOpHitObjectRecordHitNV = 5261, - SpvOpHitObjectRecordHitWithIndexNV = 5262, - SpvOpHitObjectRecordMissNV = 5263, - SpvOpHitObjectExecuteShaderNV = 5264, - SpvOpHitObjectGetCurrentTimeNV = 5265, - SpvOpHitObjectGetAttributesNV = 5266, - SpvOpHitObjectGetHitKindNV = 5267, - SpvOpHitObjectGetPrimitiveIndexNV = 5268, - SpvOpHitObjectGetGeometryIndexNV = 5269, - SpvOpHitObjectGetInstanceIdNV = 5270, - SpvOpHitObjectGetInstanceCustomIndexNV = 5271, - SpvOpHitObjectGetWorldRayDirectionNV = 5272, - SpvOpHitObjectGetWorldRayOriginNV = 5273, - SpvOpHitObjectGetRayTMaxNV = 5274, - SpvOpHitObjectGetRayTMinNV = 5275, - SpvOpHitObjectIsEmptyNV = 5276, - SpvOpHitObjectIsHitNV = 5277, - SpvOpHitObjectIsMissNV = 5278, - SpvOpReorderThreadWithHitObjectNV = 5279, - SpvOpReorderThreadWithHintNV = 5280, - SpvOpTypeHitObjectNV = 5281, - SpvOpImageSampleFootprintNV = 5283, - SpvOpEmitMeshTasksEXT = 5294, - SpvOpSetMeshOutputsEXT = 5295, - SpvOpGroupNonUniformPartitionNV = 5296, - SpvOpWritePackedPrimitiveIndices4x8NV = 5299, - SpvOpReportIntersectionKHR = 5334, - SpvOpReportIntersectionNV = 5334, - SpvOpIgnoreIntersectionNV = 5335, - SpvOpTerminateRayNV = 5336, - SpvOpTraceNV = 5337, - SpvOpTraceMotionNV = 5338, - SpvOpTraceRayMotionNV = 5339, - SpvOpRayQueryGetIntersectionTriangleVertexPositionsKHR = 5340, - SpvOpTypeAccelerationStructureKHR = 5341, - SpvOpTypeAccelerationStructureNV = 5341, - SpvOpExecuteCallableNV = 5344, - SpvOpTypeCooperativeMatrixNV = 5358, - SpvOpCooperativeMatrixLoadNV = 5359, - SpvOpCooperativeMatrixStoreNV = 5360, - SpvOpCooperativeMatrixMulAddNV = 5361, - SpvOpCooperativeMatrixLengthNV = 5362, - SpvOpBeginInvocationInterlockEXT = 5364, - SpvOpEndInvocationInterlockEXT = 5365, - SpvOpDemoteToHelperInvocation = 5380, - SpvOpDemoteToHelperInvocationEXT = 5380, - SpvOpIsHelperInvocationEXT = 5381, - SpvOpConvertUToImageNV = 5391, - SpvOpConvertUToSamplerNV = 5392, - SpvOpConvertImageToUNV = 5393, - SpvOpConvertSamplerToUNV = 5394, - SpvOpConvertUToSampledImageNV = 5395, - SpvOpConvertSampledImageToUNV = 5396, - SpvOpSamplerImageAddressingModeNV = 5397, - SpvOpSubgroupShuffleINTEL = 5571, - SpvOpSubgroupShuffleDownINTEL = 5572, - SpvOpSubgroupShuffleUpINTEL = 5573, - SpvOpSubgroupShuffleXorINTEL = 5574, - SpvOpSubgroupBlockReadINTEL = 5575, - SpvOpSubgroupBlockWriteINTEL = 5576, - SpvOpSubgroupImageBlockReadINTEL = 5577, - SpvOpSubgroupImageBlockWriteINTEL = 5578, - SpvOpSubgroupImageMediaBlockReadINTEL = 5580, - SpvOpSubgroupImageMediaBlockWriteINTEL = 5581, - SpvOpUCountLeadingZerosINTEL = 5585, - SpvOpUCountTrailingZerosINTEL = 5586, - SpvOpAbsISubINTEL = 5587, - SpvOpAbsUSubINTEL = 5588, - SpvOpIAddSatINTEL = 5589, - SpvOpUAddSatINTEL = 5590, - SpvOpIAverageINTEL = 5591, - SpvOpUAverageINTEL = 5592, - SpvOpIAverageRoundedINTEL = 5593, - SpvOpUAverageRoundedINTEL = 5594, - SpvOpISubSatINTEL = 5595, - SpvOpUSubSatINTEL = 5596, - SpvOpIMul32x16INTEL = 5597, - SpvOpUMul32x16INTEL = 5598, - SpvOpConstantFunctionPointerINTEL = 5600, - SpvOpFunctionPointerCallINTEL = 5601, - SpvOpAsmTargetINTEL = 5609, - SpvOpAsmINTEL = 5610, - SpvOpAsmCallINTEL = 5611, - SpvOpAtomicFMinEXT = 5614, - SpvOpAtomicFMaxEXT = 5615, - SpvOpAssumeTrueKHR = 5630, - SpvOpExpectKHR = 5631, - SpvOpDecorateString = 5632, - SpvOpDecorateStringGOOGLE = 5632, - SpvOpMemberDecorateString = 5633, - SpvOpMemberDecorateStringGOOGLE = 5633, - SpvOpVmeImageINTEL = 5699, - SpvOpTypeVmeImageINTEL = 5700, - SpvOpTypeAvcImePayloadINTEL = 5701, - SpvOpTypeAvcRefPayloadINTEL = 5702, - SpvOpTypeAvcSicPayloadINTEL = 5703, - SpvOpTypeAvcMcePayloadINTEL = 5704, - SpvOpTypeAvcMceResultINTEL = 5705, - SpvOpTypeAvcImeResultINTEL = 5706, - SpvOpTypeAvcImeResultSingleReferenceStreamoutINTEL = 5707, - SpvOpTypeAvcImeResultDualReferenceStreamoutINTEL = 5708, - SpvOpTypeAvcImeSingleReferenceStreaminINTEL = 5709, - SpvOpTypeAvcImeDualReferenceStreaminINTEL = 5710, - SpvOpTypeAvcRefResultINTEL = 5711, - SpvOpTypeAvcSicResultINTEL = 5712, - SpvOpSubgroupAvcMceGetDefaultInterBaseMultiReferencePenaltyINTEL = 5713, - SpvOpSubgroupAvcMceSetInterBaseMultiReferencePenaltyINTEL = 5714, - SpvOpSubgroupAvcMceGetDefaultInterShapePenaltyINTEL = 5715, - SpvOpSubgroupAvcMceSetInterShapePenaltyINTEL = 5716, - SpvOpSubgroupAvcMceGetDefaultInterDirectionPenaltyINTEL = 5717, - SpvOpSubgroupAvcMceSetInterDirectionPenaltyINTEL = 5718, - SpvOpSubgroupAvcMceGetDefaultIntraLumaShapePenaltyINTEL = 5719, - SpvOpSubgroupAvcMceGetDefaultInterMotionVectorCostTableINTEL = 5720, - SpvOpSubgroupAvcMceGetDefaultHighPenaltyCostTableINTEL = 5721, - SpvOpSubgroupAvcMceGetDefaultMediumPenaltyCostTableINTEL = 5722, - SpvOpSubgroupAvcMceGetDefaultLowPenaltyCostTableINTEL = 5723, - SpvOpSubgroupAvcMceSetMotionVectorCostFunctionINTEL = 5724, - SpvOpSubgroupAvcMceGetDefaultIntraLumaModePenaltyINTEL = 5725, - SpvOpSubgroupAvcMceGetDefaultNonDcLumaIntraPenaltyINTEL = 5726, - SpvOpSubgroupAvcMceGetDefaultIntraChromaModeBasePenaltyINTEL = 5727, - SpvOpSubgroupAvcMceSetAcOnlyHaarINTEL = 5728, - SpvOpSubgroupAvcMceSetSourceInterlacedFieldPolarityINTEL = 5729, - SpvOpSubgroupAvcMceSetSingleReferenceInterlacedFieldPolarityINTEL = 5730, - SpvOpSubgroupAvcMceSetDualReferenceInterlacedFieldPolaritiesINTEL = 5731, - SpvOpSubgroupAvcMceConvertToImePayloadINTEL = 5732, - SpvOpSubgroupAvcMceConvertToImeResultINTEL = 5733, - SpvOpSubgroupAvcMceConvertToRefPayloadINTEL = 5734, - SpvOpSubgroupAvcMceConvertToRefResultINTEL = 5735, - SpvOpSubgroupAvcMceConvertToSicPayloadINTEL = 5736, - SpvOpSubgroupAvcMceConvertToSicResultINTEL = 5737, - SpvOpSubgroupAvcMceGetMotionVectorsINTEL = 5738, - SpvOpSubgroupAvcMceGetInterDistortionsINTEL = 5739, - SpvOpSubgroupAvcMceGetBestInterDistortionsINTEL = 5740, - SpvOpSubgroupAvcMceGetInterMajorShapeINTEL = 5741, - SpvOpSubgroupAvcMceGetInterMinorShapeINTEL = 5742, - SpvOpSubgroupAvcMceGetInterDirectionsINTEL = 5743, - SpvOpSubgroupAvcMceGetInterMotionVectorCountINTEL = 5744, - SpvOpSubgroupAvcMceGetInterReferenceIdsINTEL = 5745, - SpvOpSubgroupAvcMceGetInterReferenceInterlacedFieldPolaritiesINTEL = 5746, - SpvOpSubgroupAvcImeInitializeINTEL = 5747, - SpvOpSubgroupAvcImeSetSingleReferenceINTEL = 5748, - SpvOpSubgroupAvcImeSetDualReferenceINTEL = 5749, - SpvOpSubgroupAvcImeRefWindowSizeINTEL = 5750, - SpvOpSubgroupAvcImeAdjustRefOffsetINTEL = 5751, - SpvOpSubgroupAvcImeConvertToMcePayloadINTEL = 5752, - SpvOpSubgroupAvcImeSetMaxMotionVectorCountINTEL = 5753, - SpvOpSubgroupAvcImeSetUnidirectionalMixDisableINTEL = 5754, - SpvOpSubgroupAvcImeSetEarlySearchTerminationThresholdINTEL = 5755, - SpvOpSubgroupAvcImeSetWeightedSadINTEL = 5756, - SpvOpSubgroupAvcImeEvaluateWithSingleReferenceINTEL = 5757, - SpvOpSubgroupAvcImeEvaluateWithDualReferenceINTEL = 5758, - SpvOpSubgroupAvcImeEvaluateWithSingleReferenceStreaminINTEL = 5759, - SpvOpSubgroupAvcImeEvaluateWithDualReferenceStreaminINTEL = 5760, - SpvOpSubgroupAvcImeEvaluateWithSingleReferenceStreamoutINTEL = 5761, - SpvOpSubgroupAvcImeEvaluateWithDualReferenceStreamoutINTEL = 5762, - SpvOpSubgroupAvcImeEvaluateWithSingleReferenceStreaminoutINTEL = 5763, - SpvOpSubgroupAvcImeEvaluateWithDualReferenceStreaminoutINTEL = 5764, - SpvOpSubgroupAvcImeConvertToMceResultINTEL = 5765, - SpvOpSubgroupAvcImeGetSingleReferenceStreaminINTEL = 5766, - SpvOpSubgroupAvcImeGetDualReferenceStreaminINTEL = 5767, - SpvOpSubgroupAvcImeStripSingleReferenceStreamoutINTEL = 5768, - SpvOpSubgroupAvcImeStripDualReferenceStreamoutINTEL = 5769, - SpvOpSubgroupAvcImeGetStreamoutSingleReferenceMajorShapeMotionVectorsINTEL = 5770, - SpvOpSubgroupAvcImeGetStreamoutSingleReferenceMajorShapeDistortionsINTEL = 5771, - SpvOpSubgroupAvcImeGetStreamoutSingleReferenceMajorShapeReferenceIdsINTEL = 5772, - SpvOpSubgroupAvcImeGetStreamoutDualReferenceMajorShapeMotionVectorsINTEL = 5773, - SpvOpSubgroupAvcImeGetStreamoutDualReferenceMajorShapeDistortionsINTEL = 5774, - SpvOpSubgroupAvcImeGetStreamoutDualReferenceMajorShapeReferenceIdsINTEL = 5775, - SpvOpSubgroupAvcImeGetBorderReachedINTEL = 5776, - SpvOpSubgroupAvcImeGetTruncatedSearchIndicationINTEL = 5777, - SpvOpSubgroupAvcImeGetUnidirectionalEarlySearchTerminationINTEL = 5778, - SpvOpSubgroupAvcImeGetWeightingPatternMinimumMotionVectorINTEL = 5779, - SpvOpSubgroupAvcImeGetWeightingPatternMinimumDistortionINTEL = 5780, - SpvOpSubgroupAvcFmeInitializeINTEL = 5781, - SpvOpSubgroupAvcBmeInitializeINTEL = 5782, - SpvOpSubgroupAvcRefConvertToMcePayloadINTEL = 5783, - SpvOpSubgroupAvcRefSetBidirectionalMixDisableINTEL = 5784, - SpvOpSubgroupAvcRefSetBilinearFilterEnableINTEL = 5785, - SpvOpSubgroupAvcRefEvaluateWithSingleReferenceINTEL = 5786, - SpvOpSubgroupAvcRefEvaluateWithDualReferenceINTEL = 5787, - SpvOpSubgroupAvcRefEvaluateWithMultiReferenceINTEL = 5788, - SpvOpSubgroupAvcRefEvaluateWithMultiReferenceInterlacedINTEL = 5789, - SpvOpSubgroupAvcRefConvertToMceResultINTEL = 5790, - SpvOpSubgroupAvcSicInitializeINTEL = 5791, - SpvOpSubgroupAvcSicConfigureSkcINTEL = 5792, - SpvOpSubgroupAvcSicConfigureIpeLumaINTEL = 5793, - SpvOpSubgroupAvcSicConfigureIpeLumaChromaINTEL = 5794, - SpvOpSubgroupAvcSicGetMotionVectorMaskINTEL = 5795, - SpvOpSubgroupAvcSicConvertToMcePayloadINTEL = 5796, - SpvOpSubgroupAvcSicSetIntraLumaShapePenaltyINTEL = 5797, - SpvOpSubgroupAvcSicSetIntraLumaModeCostFunctionINTEL = 5798, - SpvOpSubgroupAvcSicSetIntraChromaModeCostFunctionINTEL = 5799, - SpvOpSubgroupAvcSicSetBilinearFilterEnableINTEL = 5800, - SpvOpSubgroupAvcSicSetSkcForwardTransformEnableINTEL = 5801, - SpvOpSubgroupAvcSicSetBlockBasedRawSkipSadINTEL = 5802, - SpvOpSubgroupAvcSicEvaluateIpeINTEL = 5803, - SpvOpSubgroupAvcSicEvaluateWithSingleReferenceINTEL = 5804, - SpvOpSubgroupAvcSicEvaluateWithDualReferenceINTEL = 5805, - SpvOpSubgroupAvcSicEvaluateWithMultiReferenceINTEL = 5806, - SpvOpSubgroupAvcSicEvaluateWithMultiReferenceInterlacedINTEL = 5807, - SpvOpSubgroupAvcSicConvertToMceResultINTEL = 5808, - SpvOpSubgroupAvcSicGetIpeLumaShapeINTEL = 5809, - SpvOpSubgroupAvcSicGetBestIpeLumaDistortionINTEL = 5810, - SpvOpSubgroupAvcSicGetBestIpeChromaDistortionINTEL = 5811, - SpvOpSubgroupAvcSicGetPackedIpeLumaModesINTEL = 5812, - SpvOpSubgroupAvcSicGetIpeChromaModeINTEL = 5813, - 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, - SpvOpAliasDomainDeclINTEL = 5911, - SpvOpAliasScopeDeclINTEL = 5912, - SpvOpAliasScopeListDeclINTEL = 5913, - 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, - SpvOpRayQueryGetIntersectionInstanceCustomIndexKHR = 6019, - SpvOpRayQueryGetIntersectionInstanceIdKHR = 6020, - SpvOpRayQueryGetIntersectionInstanceShaderBindingTableRecordOffsetKHR = 6021, - SpvOpRayQueryGetIntersectionGeometryIndexKHR = 6022, - SpvOpRayQueryGetIntersectionPrimitiveIndexKHR = 6023, - SpvOpRayQueryGetIntersectionBarycentricsKHR = 6024, - SpvOpRayQueryGetIntersectionFrontFaceKHR = 6025, - SpvOpRayQueryGetIntersectionCandidateAABBOpaqueKHR = 6026, - SpvOpRayQueryGetIntersectionObjectRayDirectionKHR = 6027, - SpvOpRayQueryGetIntersectionObjectRayOriginKHR = 6028, - SpvOpRayQueryGetWorldRayDirectionKHR = 6029, - SpvOpRayQueryGetWorldRayOriginKHR = 6030, - SpvOpRayQueryGetIntersectionObjectToWorldKHR = 6031, - SpvOpRayQueryGetIntersectionWorldToObjectKHR = 6032, - SpvOpAtomicFAddEXT = 6035, - SpvOpTypeBufferSurfaceINTEL = 6086, - SpvOpTypeStructContinuedINTEL = 6090, - SpvOpConstantCompositeContinuedINTEL = 6091, - SpvOpSpecConstantCompositeContinuedINTEL = 6092, - SpvOpConvertFToBF16INTEL = 6116, - SpvOpConvertBF16ToFINTEL = 6117, - SpvOpControlBarrierArriveINTEL = 6142, - SpvOpControlBarrierWaitINTEL = 6143, - SpvOpGroupIMulKHR = 6401, - SpvOpGroupFMulKHR = 6402, - SpvOpGroupBitwiseAndKHR = 6403, - SpvOpGroupBitwiseOrKHR = 6404, - SpvOpGroupBitwiseXorKHR = 6405, - SpvOpGroupLogicalAndKHR = 6406, - SpvOpGroupLogicalOrKHR = 6407, - SpvOpGroupLogicalXorKHR = 6408, - SpvOpMax = 0x7fffffff, -} SpvOp; - -#ifdef SPV_ENABLE_UTILITY_CODE -#ifndef __cplusplus -#include -#endif -inline void SpvHasResultAndType(SpvOp opcode, bool *hasResult, bool *hasResultType) { - *hasResult = *hasResultType = false; - switch (opcode) { - default: /* unknown opcode */ break; - case SpvOpNop: *hasResult = false; *hasResultType = false; break; - case SpvOpUndef: *hasResult = true; *hasResultType = true; break; - case SpvOpSourceContinued: *hasResult = false; *hasResultType = false; break; - case SpvOpSource: *hasResult = false; *hasResultType = false; break; - case SpvOpSourceExtension: *hasResult = false; *hasResultType = false; break; - case SpvOpName: *hasResult = false; *hasResultType = false; break; - case SpvOpMemberName: *hasResult = false; *hasResultType = false; break; - case SpvOpString: *hasResult = true; *hasResultType = false; break; - case SpvOpLine: *hasResult = false; *hasResultType = false; break; - case SpvOpExtension: *hasResult = false; *hasResultType = false; break; - case SpvOpExtInstImport: *hasResult = true; *hasResultType = false; break; - case SpvOpExtInst: *hasResult = true; *hasResultType = true; break; - case SpvOpMemoryModel: *hasResult = false; *hasResultType = false; break; - case SpvOpEntryPoint: *hasResult = false; *hasResultType = false; break; - case SpvOpExecutionMode: *hasResult = false; *hasResultType = false; break; - case SpvOpCapability: *hasResult = false; *hasResultType = false; break; - case SpvOpTypeVoid: *hasResult = true; *hasResultType = false; break; - case SpvOpTypeBool: *hasResult = true; *hasResultType = false; break; - case SpvOpTypeInt: *hasResult = true; *hasResultType = false; break; - case SpvOpTypeFloat: *hasResult = true; *hasResultType = false; break; - case SpvOpTypeVector: *hasResult = true; *hasResultType = false; break; - case SpvOpTypeMatrix: *hasResult = true; *hasResultType = false; break; - case SpvOpTypeImage: *hasResult = true; *hasResultType = false; break; - case SpvOpTypeSampler: *hasResult = true; *hasResultType = false; break; - case SpvOpTypeSampledImage: *hasResult = true; *hasResultType = false; break; - case SpvOpTypeArray: *hasResult = true; *hasResultType = false; break; - case SpvOpTypeRuntimeArray: *hasResult = true; *hasResultType = false; break; - case SpvOpTypeStruct: *hasResult = true; *hasResultType = false; break; - case SpvOpTypeOpaque: *hasResult = true; *hasResultType = false; break; - case SpvOpTypePointer: *hasResult = true; *hasResultType = false; break; - case SpvOpTypeFunction: *hasResult = true; *hasResultType = false; break; - case SpvOpTypeEvent: *hasResult = true; *hasResultType = false; break; - case SpvOpTypeDeviceEvent: *hasResult = true; *hasResultType = false; break; - case SpvOpTypeReserveId: *hasResult = true; *hasResultType = false; break; - case SpvOpTypeQueue: *hasResult = true; *hasResultType = false; break; - case SpvOpTypePipe: *hasResult = true; *hasResultType = false; break; - case SpvOpTypeForwardPointer: *hasResult = false; *hasResultType = false; break; - case SpvOpConstantTrue: *hasResult = true; *hasResultType = true; break; - case SpvOpConstantFalse: *hasResult = true; *hasResultType = true; break; - case SpvOpConstant: *hasResult = true; *hasResultType = true; break; - case SpvOpConstantComposite: *hasResult = true; *hasResultType = true; break; - case SpvOpConstantSampler: *hasResult = true; *hasResultType = true; break; - case SpvOpConstantNull: *hasResult = true; *hasResultType = true; break; - case SpvOpSpecConstantTrue: *hasResult = true; *hasResultType = true; break; - case SpvOpSpecConstantFalse: *hasResult = true; *hasResultType = true; break; - case SpvOpSpecConstant: *hasResult = true; *hasResultType = true; break; - case SpvOpSpecConstantComposite: *hasResult = true; *hasResultType = true; break; - case SpvOpSpecConstantOp: *hasResult = true; *hasResultType = true; break; - case SpvOpFunction: *hasResult = true; *hasResultType = true; break; - case SpvOpFunctionParameter: *hasResult = true; *hasResultType = true; break; - case SpvOpFunctionEnd: *hasResult = false; *hasResultType = false; break; - case SpvOpFunctionCall: *hasResult = true; *hasResultType = true; break; - case SpvOpVariable: *hasResult = true; *hasResultType = true; break; - case SpvOpImageTexelPointer: *hasResult = true; *hasResultType = true; break; - case SpvOpLoad: *hasResult = true; *hasResultType = true; break; - case SpvOpStore: *hasResult = false; *hasResultType = false; break; - case SpvOpCopyMemory: *hasResult = false; *hasResultType = false; break; - case SpvOpCopyMemorySized: *hasResult = false; *hasResultType = false; break; - case SpvOpAccessChain: *hasResult = true; *hasResultType = true; break; - case SpvOpInBoundsAccessChain: *hasResult = true; *hasResultType = true; break; - case SpvOpPtrAccessChain: *hasResult = true; *hasResultType = true; break; - case SpvOpArrayLength: *hasResult = true; *hasResultType = true; break; - case SpvOpGenericPtrMemSemantics: *hasResult = true; *hasResultType = true; break; - case SpvOpInBoundsPtrAccessChain: *hasResult = true; *hasResultType = true; break; - case SpvOpDecorate: *hasResult = false; *hasResultType = false; break; - case SpvOpMemberDecorate: *hasResult = false; *hasResultType = false; break; - case SpvOpDecorationGroup: *hasResult = true; *hasResultType = false; break; - case SpvOpGroupDecorate: *hasResult = false; *hasResultType = false; break; - case SpvOpGroupMemberDecorate: *hasResult = false; *hasResultType = false; break; - case SpvOpVectorExtractDynamic: *hasResult = true; *hasResultType = true; break; - case SpvOpVectorInsertDynamic: *hasResult = true; *hasResultType = true; break; - case SpvOpVectorShuffle: *hasResult = true; *hasResultType = true; break; - case SpvOpCompositeConstruct: *hasResult = true; *hasResultType = true; break; - case SpvOpCompositeExtract: *hasResult = true; *hasResultType = true; break; - case SpvOpCompositeInsert: *hasResult = true; *hasResultType = true; break; - case SpvOpCopyObject: *hasResult = true; *hasResultType = true; break; - case SpvOpTranspose: *hasResult = true; *hasResultType = true; break; - case SpvOpSampledImage: *hasResult = true; *hasResultType = true; break; - case SpvOpImageSampleImplicitLod: *hasResult = true; *hasResultType = true; break; - case SpvOpImageSampleExplicitLod: *hasResult = true; *hasResultType = true; break; - case SpvOpImageSampleDrefImplicitLod: *hasResult = true; *hasResultType = true; break; - case SpvOpImageSampleDrefExplicitLod: *hasResult = true; *hasResultType = true; break; - case SpvOpImageSampleProjImplicitLod: *hasResult = true; *hasResultType = true; break; - case SpvOpImageSampleProjExplicitLod: *hasResult = true; *hasResultType = true; break; - case SpvOpImageSampleProjDrefImplicitLod: *hasResult = true; *hasResultType = true; break; - case SpvOpImageSampleProjDrefExplicitLod: *hasResult = true; *hasResultType = true; break; - case SpvOpImageFetch: *hasResult = true; *hasResultType = true; break; - case SpvOpImageGather: *hasResult = true; *hasResultType = true; break; - case SpvOpImageDrefGather: *hasResult = true; *hasResultType = true; break; - case SpvOpImageRead: *hasResult = true; *hasResultType = true; break; - case SpvOpImageWrite: *hasResult = false; *hasResultType = false; break; - case SpvOpImage: *hasResult = true; *hasResultType = true; break; - case SpvOpImageQueryFormat: *hasResult = true; *hasResultType = true; break; - case SpvOpImageQueryOrder: *hasResult = true; *hasResultType = true; break; - case SpvOpImageQuerySizeLod: *hasResult = true; *hasResultType = true; break; - case SpvOpImageQuerySize: *hasResult = true; *hasResultType = true; break; - case SpvOpImageQueryLod: *hasResult = true; *hasResultType = true; break; - case SpvOpImageQueryLevels: *hasResult = true; *hasResultType = true; break; - case SpvOpImageQuerySamples: *hasResult = true; *hasResultType = true; break; - case SpvOpConvertFToU: *hasResult = true; *hasResultType = true; break; - case SpvOpConvertFToS: *hasResult = true; *hasResultType = true; break; - case SpvOpConvertSToF: *hasResult = true; *hasResultType = true; break; - case SpvOpConvertUToF: *hasResult = true; *hasResultType = true; break; - case SpvOpUConvert: *hasResult = true; *hasResultType = true; break; - case SpvOpSConvert: *hasResult = true; *hasResultType = true; break; - case SpvOpFConvert: *hasResult = true; *hasResultType = true; break; - case SpvOpQuantizeToF16: *hasResult = true; *hasResultType = true; break; - case SpvOpConvertPtrToU: *hasResult = true; *hasResultType = true; break; - case SpvOpSatConvertSToU: *hasResult = true; *hasResultType = true; break; - case SpvOpSatConvertUToS: *hasResult = true; *hasResultType = true; break; - case SpvOpConvertUToPtr: *hasResult = true; *hasResultType = true; break; - case SpvOpPtrCastToGeneric: *hasResult = true; *hasResultType = true; break; - case SpvOpGenericCastToPtr: *hasResult = true; *hasResultType = true; break; - case SpvOpGenericCastToPtrExplicit: *hasResult = true; *hasResultType = true; break; - case SpvOpBitcast: *hasResult = true; *hasResultType = true; break; - case SpvOpSNegate: *hasResult = true; *hasResultType = true; break; - case SpvOpFNegate: *hasResult = true; *hasResultType = true; break; - case SpvOpIAdd: *hasResult = true; *hasResultType = true; break; - case SpvOpFAdd: *hasResult = true; *hasResultType = true; break; - case SpvOpISub: *hasResult = true; *hasResultType = true; break; - case SpvOpFSub: *hasResult = true; *hasResultType = true; break; - case SpvOpIMul: *hasResult = true; *hasResultType = true; break; - case SpvOpFMul: *hasResult = true; *hasResultType = true; break; - case SpvOpUDiv: *hasResult = true; *hasResultType = true; break; - case SpvOpSDiv: *hasResult = true; *hasResultType = true; break; - case SpvOpFDiv: *hasResult = true; *hasResultType = true; break; - case SpvOpUMod: *hasResult = true; *hasResultType = true; break; - case SpvOpSRem: *hasResult = true; *hasResultType = true; break; - case SpvOpSMod: *hasResult = true; *hasResultType = true; break; - case SpvOpFRem: *hasResult = true; *hasResultType = true; break; - case SpvOpFMod: *hasResult = true; *hasResultType = true; break; - case SpvOpVectorTimesScalar: *hasResult = true; *hasResultType = true; break; - case SpvOpMatrixTimesScalar: *hasResult = true; *hasResultType = true; break; - case SpvOpVectorTimesMatrix: *hasResult = true; *hasResultType = true; break; - case SpvOpMatrixTimesVector: *hasResult = true; *hasResultType = true; break; - case SpvOpMatrixTimesMatrix: *hasResult = true; *hasResultType = true; break; - case SpvOpOuterProduct: *hasResult = true; *hasResultType = true; break; - case SpvOpDot: *hasResult = true; *hasResultType = true; break; - case SpvOpIAddCarry: *hasResult = true; *hasResultType = true; break; - case SpvOpISubBorrow: *hasResult = true; *hasResultType = true; break; - case SpvOpUMulExtended: *hasResult = true; *hasResultType = true; break; - case SpvOpSMulExtended: *hasResult = true; *hasResultType = true; break; - case SpvOpAny: *hasResult = true; *hasResultType = true; break; - case SpvOpAll: *hasResult = true; *hasResultType = true; break; - case SpvOpIsNan: *hasResult = true; *hasResultType = true; break; - case SpvOpIsInf: *hasResult = true; *hasResultType = true; break; - case SpvOpIsFinite: *hasResult = true; *hasResultType = true; break; - case SpvOpIsNormal: *hasResult = true; *hasResultType = true; break; - case SpvOpSignBitSet: *hasResult = true; *hasResultType = true; break; - case SpvOpLessOrGreater: *hasResult = true; *hasResultType = true; break; - case SpvOpOrdered: *hasResult = true; *hasResultType = true; break; - case SpvOpUnordered: *hasResult = true; *hasResultType = true; break; - case SpvOpLogicalEqual: *hasResult = true; *hasResultType = true; break; - case SpvOpLogicalNotEqual: *hasResult = true; *hasResultType = true; break; - case SpvOpLogicalOr: *hasResult = true; *hasResultType = true; break; - case SpvOpLogicalAnd: *hasResult = true; *hasResultType = true; break; - case SpvOpLogicalNot: *hasResult = true; *hasResultType = true; break; - case SpvOpSelect: *hasResult = true; *hasResultType = true; break; - case SpvOpIEqual: *hasResult = true; *hasResultType = true; break; - case SpvOpINotEqual: *hasResult = true; *hasResultType = true; break; - case SpvOpUGreaterThan: *hasResult = true; *hasResultType = true; break; - case SpvOpSGreaterThan: *hasResult = true; *hasResultType = true; break; - case SpvOpUGreaterThanEqual: *hasResult = true; *hasResultType = true; break; - case SpvOpSGreaterThanEqual: *hasResult = true; *hasResultType = true; break; - case SpvOpULessThan: *hasResult = true; *hasResultType = true; break; - case SpvOpSLessThan: *hasResult = true; *hasResultType = true; break; - case SpvOpULessThanEqual: *hasResult = true; *hasResultType = true; break; - case SpvOpSLessThanEqual: *hasResult = true; *hasResultType = true; break; - case SpvOpFOrdEqual: *hasResult = true; *hasResultType = true; break; - case SpvOpFUnordEqual: *hasResult = true; *hasResultType = true; break; - case SpvOpFOrdNotEqual: *hasResult = true; *hasResultType = true; break; - case SpvOpFUnordNotEqual: *hasResult = true; *hasResultType = true; break; - case SpvOpFOrdLessThan: *hasResult = true; *hasResultType = true; break; - case SpvOpFUnordLessThan: *hasResult = true; *hasResultType = true; break; - case SpvOpFOrdGreaterThan: *hasResult = true; *hasResultType = true; break; - case SpvOpFUnordGreaterThan: *hasResult = true; *hasResultType = true; break; - case SpvOpFOrdLessThanEqual: *hasResult = true; *hasResultType = true; break; - case SpvOpFUnordLessThanEqual: *hasResult = true; *hasResultType = true; break; - case SpvOpFOrdGreaterThanEqual: *hasResult = true; *hasResultType = true; break; - case SpvOpFUnordGreaterThanEqual: *hasResult = true; *hasResultType = true; break; - case SpvOpShiftRightLogical: *hasResult = true; *hasResultType = true; break; - case SpvOpShiftRightArithmetic: *hasResult = true; *hasResultType = true; break; - case SpvOpShiftLeftLogical: *hasResult = true; *hasResultType = true; break; - case SpvOpBitwiseOr: *hasResult = true; *hasResultType = true; break; - case SpvOpBitwiseXor: *hasResult = true; *hasResultType = true; break; - case SpvOpBitwiseAnd: *hasResult = true; *hasResultType = true; break; - case SpvOpNot: *hasResult = true; *hasResultType = true; break; - case SpvOpBitFieldInsert: *hasResult = true; *hasResultType = true; break; - case SpvOpBitFieldSExtract: *hasResult = true; *hasResultType = true; break; - case SpvOpBitFieldUExtract: *hasResult = true; *hasResultType = true; break; - case SpvOpBitReverse: *hasResult = true; *hasResultType = true; break; - case SpvOpBitCount: *hasResult = true; *hasResultType = true; break; - case SpvOpDPdx: *hasResult = true; *hasResultType = true; break; - case SpvOpDPdy: *hasResult = true; *hasResultType = true; break; - case SpvOpFwidth: *hasResult = true; *hasResultType = true; break; - case SpvOpDPdxFine: *hasResult = true; *hasResultType = true; break; - case SpvOpDPdyFine: *hasResult = true; *hasResultType = true; break; - case SpvOpFwidthFine: *hasResult = true; *hasResultType = true; break; - case SpvOpDPdxCoarse: *hasResult = true; *hasResultType = true; break; - case SpvOpDPdyCoarse: *hasResult = true; *hasResultType = true; break; - case SpvOpFwidthCoarse: *hasResult = true; *hasResultType = true; break; - case SpvOpEmitVertex: *hasResult = false; *hasResultType = false; break; - case SpvOpEndPrimitive: *hasResult = false; *hasResultType = false; break; - case SpvOpEmitStreamVertex: *hasResult = false; *hasResultType = false; break; - case SpvOpEndStreamPrimitive: *hasResult = false; *hasResultType = false; break; - case SpvOpControlBarrier: *hasResult = false; *hasResultType = false; break; - case SpvOpMemoryBarrier: *hasResult = false; *hasResultType = false; break; - case SpvOpAtomicLoad: *hasResult = true; *hasResultType = true; break; - case SpvOpAtomicStore: *hasResult = false; *hasResultType = false; break; - case SpvOpAtomicExchange: *hasResult = true; *hasResultType = true; break; - case SpvOpAtomicCompareExchange: *hasResult = true; *hasResultType = true; break; - case SpvOpAtomicCompareExchangeWeak: *hasResult = true; *hasResultType = true; break; - case SpvOpAtomicIIncrement: *hasResult = true; *hasResultType = true; break; - case SpvOpAtomicIDecrement: *hasResult = true; *hasResultType = true; break; - case SpvOpAtomicIAdd: *hasResult = true; *hasResultType = true; break; - case SpvOpAtomicISub: *hasResult = true; *hasResultType = true; break; - case SpvOpAtomicSMin: *hasResult = true; *hasResultType = true; break; - case SpvOpAtomicUMin: *hasResult = true; *hasResultType = true; break; - case SpvOpAtomicSMax: *hasResult = true; *hasResultType = true; break; - case SpvOpAtomicUMax: *hasResult = true; *hasResultType = true; break; - case SpvOpAtomicAnd: *hasResult = true; *hasResultType = true; break; - case SpvOpAtomicOr: *hasResult = true; *hasResultType = true; break; - case SpvOpAtomicXor: *hasResult = true; *hasResultType = true; break; - case SpvOpPhi: *hasResult = true; *hasResultType = true; break; - case SpvOpLoopMerge: *hasResult = false; *hasResultType = false; break; - case SpvOpSelectionMerge: *hasResult = false; *hasResultType = false; break; - case SpvOpLabel: *hasResult = true; *hasResultType = false; break; - case SpvOpBranch: *hasResult = false; *hasResultType = false; break; - case SpvOpBranchConditional: *hasResult = false; *hasResultType = false; break; - case SpvOpSwitch: *hasResult = false; *hasResultType = false; break; - case SpvOpKill: *hasResult = false; *hasResultType = false; break; - case SpvOpReturn: *hasResult = false; *hasResultType = false; break; - case SpvOpReturnValue: *hasResult = false; *hasResultType = false; break; - case SpvOpUnreachable: *hasResult = false; *hasResultType = false; break; - case SpvOpLifetimeStart: *hasResult = false; *hasResultType = false; break; - case SpvOpLifetimeStop: *hasResult = false; *hasResultType = false; break; - case SpvOpGroupAsyncCopy: *hasResult = true; *hasResultType = true; break; - case SpvOpGroupWaitEvents: *hasResult = false; *hasResultType = false; break; - case SpvOpGroupAll: *hasResult = true; *hasResultType = true; break; - case SpvOpGroupAny: *hasResult = true; *hasResultType = true; break; - case SpvOpGroupBroadcast: *hasResult = true; *hasResultType = true; break; - case SpvOpGroupIAdd: *hasResult = true; *hasResultType = true; break; - case SpvOpGroupFAdd: *hasResult = true; *hasResultType = true; break; - case SpvOpGroupFMin: *hasResult = true; *hasResultType = true; break; - case SpvOpGroupUMin: *hasResult = true; *hasResultType = true; break; - case SpvOpGroupSMin: *hasResult = true; *hasResultType = true; break; - case SpvOpGroupFMax: *hasResult = true; *hasResultType = true; break; - case SpvOpGroupUMax: *hasResult = true; *hasResultType = true; break; - case SpvOpGroupSMax: *hasResult = true; *hasResultType = true; break; - case SpvOpReadPipe: *hasResult = true; *hasResultType = true; break; - case SpvOpWritePipe: *hasResult = true; *hasResultType = true; break; - case SpvOpReservedReadPipe: *hasResult = true; *hasResultType = true; break; - case SpvOpReservedWritePipe: *hasResult = true; *hasResultType = true; break; - case SpvOpReserveReadPipePackets: *hasResult = true; *hasResultType = true; break; - case SpvOpReserveWritePipePackets: *hasResult = true; *hasResultType = true; break; - case SpvOpCommitReadPipe: *hasResult = false; *hasResultType = false; break; - case SpvOpCommitWritePipe: *hasResult = false; *hasResultType = false; break; - case SpvOpIsValidReserveId: *hasResult = true; *hasResultType = true; break; - case SpvOpGetNumPipePackets: *hasResult = true; *hasResultType = true; break; - case SpvOpGetMaxPipePackets: *hasResult = true; *hasResultType = true; break; - case SpvOpGroupReserveReadPipePackets: *hasResult = true; *hasResultType = true; break; - case SpvOpGroupReserveWritePipePackets: *hasResult = true; *hasResultType = true; break; - case SpvOpGroupCommitReadPipe: *hasResult = false; *hasResultType = false; break; - case SpvOpGroupCommitWritePipe: *hasResult = false; *hasResultType = false; break; - case SpvOpEnqueueMarker: *hasResult = true; *hasResultType = true; break; - case SpvOpEnqueueKernel: *hasResult = true; *hasResultType = true; break; - case SpvOpGetKernelNDrangeSubGroupCount: *hasResult = true; *hasResultType = true; break; - case SpvOpGetKernelNDrangeMaxSubGroupSize: *hasResult = true; *hasResultType = true; break; - case SpvOpGetKernelWorkGroupSize: *hasResult = true; *hasResultType = true; break; - case SpvOpGetKernelPreferredWorkGroupSizeMultiple: *hasResult = true; *hasResultType = true; break; - case SpvOpRetainEvent: *hasResult = false; *hasResultType = false; break; - case SpvOpReleaseEvent: *hasResult = false; *hasResultType = false; break; - case SpvOpCreateUserEvent: *hasResult = true; *hasResultType = true; break; - case SpvOpIsValidEvent: *hasResult = true; *hasResultType = true; break; - case SpvOpSetUserEventStatus: *hasResult = false; *hasResultType = false; break; - case SpvOpCaptureEventProfilingInfo: *hasResult = false; *hasResultType = false; break; - case SpvOpGetDefaultQueue: *hasResult = true; *hasResultType = true; break; - case SpvOpBuildNDRange: *hasResult = true; *hasResultType = true; break; - case SpvOpImageSparseSampleImplicitLod: *hasResult = true; *hasResultType = true; break; - case SpvOpImageSparseSampleExplicitLod: *hasResult = true; *hasResultType = true; break; - case SpvOpImageSparseSampleDrefImplicitLod: *hasResult = true; *hasResultType = true; break; - case SpvOpImageSparseSampleDrefExplicitLod: *hasResult = true; *hasResultType = true; break; - case SpvOpImageSparseSampleProjImplicitLod: *hasResult = true; *hasResultType = true; break; - case SpvOpImageSparseSampleProjExplicitLod: *hasResult = true; *hasResultType = true; break; - case SpvOpImageSparseSampleProjDrefImplicitLod: *hasResult = true; *hasResultType = true; break; - case SpvOpImageSparseSampleProjDrefExplicitLod: *hasResult = true; *hasResultType = true; break; - case SpvOpImageSparseFetch: *hasResult = true; *hasResultType = true; break; - case SpvOpImageSparseGather: *hasResult = true; *hasResultType = true; break; - case SpvOpImageSparseDrefGather: *hasResult = true; *hasResultType = true; break; - case SpvOpImageSparseTexelsResident: *hasResult = true; *hasResultType = true; break; - case SpvOpNoLine: *hasResult = false; *hasResultType = false; break; - case SpvOpAtomicFlagTestAndSet: *hasResult = true; *hasResultType = true; break; - case SpvOpAtomicFlagClear: *hasResult = false; *hasResultType = false; break; - case SpvOpImageSparseRead: *hasResult = true; *hasResultType = true; break; - case SpvOpSizeOf: *hasResult = true; *hasResultType = true; break; - case SpvOpTypePipeStorage: *hasResult = true; *hasResultType = false; break; - case SpvOpConstantPipeStorage: *hasResult = true; *hasResultType = true; break; - case SpvOpCreatePipeFromPipeStorage: *hasResult = true; *hasResultType = true; break; - case SpvOpGetKernelLocalSizeForSubgroupCount: *hasResult = true; *hasResultType = true; break; - case SpvOpGetKernelMaxNumSubgroups: *hasResult = true; *hasResultType = true; break; - case SpvOpTypeNamedBarrier: *hasResult = true; *hasResultType = false; break; - case SpvOpNamedBarrierInitialize: *hasResult = true; *hasResultType = true; break; - case SpvOpMemoryNamedBarrier: *hasResult = false; *hasResultType = false; break; - case SpvOpModuleProcessed: *hasResult = false; *hasResultType = false; break; - case SpvOpExecutionModeId: *hasResult = false; *hasResultType = false; break; - case SpvOpDecorateId: *hasResult = false; *hasResultType = false; break; - case SpvOpGroupNonUniformElect: *hasResult = true; *hasResultType = true; break; - case SpvOpGroupNonUniformAll: *hasResult = true; *hasResultType = true; break; - case SpvOpGroupNonUniformAny: *hasResult = true; *hasResultType = true; break; - case SpvOpGroupNonUniformAllEqual: *hasResult = true; *hasResultType = true; break; - case SpvOpGroupNonUniformBroadcast: *hasResult = true; *hasResultType = true; break; - case SpvOpGroupNonUniformBroadcastFirst: *hasResult = true; *hasResultType = true; break; - case SpvOpGroupNonUniformBallot: *hasResult = true; *hasResultType = true; break; - case SpvOpGroupNonUniformInverseBallot: *hasResult = true; *hasResultType = true; break; - case SpvOpGroupNonUniformBallotBitExtract: *hasResult = true; *hasResultType = true; break; - case SpvOpGroupNonUniformBallotBitCount: *hasResult = true; *hasResultType = true; break; - case SpvOpGroupNonUniformBallotFindLSB: *hasResult = true; *hasResultType = true; break; - case SpvOpGroupNonUniformBallotFindMSB: *hasResult = true; *hasResultType = true; break; - case SpvOpGroupNonUniformShuffle: *hasResult = true; *hasResultType = true; break; - case SpvOpGroupNonUniformShuffleXor: *hasResult = true; *hasResultType = true; break; - case SpvOpGroupNonUniformShuffleUp: *hasResult = true; *hasResultType = true; break; - case SpvOpGroupNonUniformShuffleDown: *hasResult = true; *hasResultType = true; break; - case SpvOpGroupNonUniformIAdd: *hasResult = true; *hasResultType = true; break; - case SpvOpGroupNonUniformFAdd: *hasResult = true; *hasResultType = true; break; - case SpvOpGroupNonUniformIMul: *hasResult = true; *hasResultType = true; break; - case SpvOpGroupNonUniformFMul: *hasResult = true; *hasResultType = true; break; - case SpvOpGroupNonUniformSMin: *hasResult = true; *hasResultType = true; break; - case SpvOpGroupNonUniformUMin: *hasResult = true; *hasResultType = true; break; - case SpvOpGroupNonUniformFMin: *hasResult = true; *hasResultType = true; break; - case SpvOpGroupNonUniformSMax: *hasResult = true; *hasResultType = true; break; - case SpvOpGroupNonUniformUMax: *hasResult = true; *hasResultType = true; break; - case SpvOpGroupNonUniformFMax: *hasResult = true; *hasResultType = true; break; - case SpvOpGroupNonUniformBitwiseAnd: *hasResult = true; *hasResultType = true; break; - case SpvOpGroupNonUniformBitwiseOr: *hasResult = true; *hasResultType = true; break; - case SpvOpGroupNonUniformBitwiseXor: *hasResult = true; *hasResultType = true; break; - case SpvOpGroupNonUniformLogicalAnd: *hasResult = true; *hasResultType = true; break; - case SpvOpGroupNonUniformLogicalOr: *hasResult = true; *hasResultType = true; break; - case SpvOpGroupNonUniformLogicalXor: *hasResult = true; *hasResultType = true; break; - case SpvOpGroupNonUniformQuadBroadcast: *hasResult = true; *hasResultType = true; break; - case SpvOpGroupNonUniformQuadSwap: *hasResult = true; *hasResultType = true; break; - case SpvOpCopyLogical: *hasResult = true; *hasResultType = true; break; - case SpvOpPtrEqual: *hasResult = true; *hasResultType = true; break; - case SpvOpPtrNotEqual: *hasResult = true; *hasResultType = true; break; - case SpvOpPtrDiff: *hasResult = true; *hasResultType = true; break; - case SpvOpColorAttachmentReadEXT: *hasResult = true; *hasResultType = true; break; - case SpvOpDepthAttachmentReadEXT: *hasResult = true; *hasResultType = true; break; - case SpvOpStencilAttachmentReadEXT: *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 SpvOpGroupNonUniformRotateKHR: *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 SpvOpSDot: *hasResult = true; *hasResultType = true; break; - case SpvOpUDot: *hasResult = true; *hasResultType = true; break; - case SpvOpSUDot: *hasResult = true; *hasResultType = true; break; - case SpvOpSDotAccSat: *hasResult = true; *hasResultType = true; break; - case SpvOpUDotAccSat: *hasResult = true; *hasResultType = true; break; - case SpvOpSUDotAccSat: *hasResult = true; *hasResultType = true; break; - case SpvOpTypeCooperativeMatrixKHR: *hasResult = true; *hasResultType = false; break; - case SpvOpCooperativeMatrixLoadKHR: *hasResult = true; *hasResultType = true; break; - case SpvOpCooperativeMatrixStoreKHR: *hasResult = false; *hasResultType = false; break; - case SpvOpCooperativeMatrixMulAddKHR: *hasResult = true; *hasResultType = true; break; - case SpvOpCooperativeMatrixLengthKHR: *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 SpvOpImageSampleWeightedQCOM: *hasResult = true; *hasResultType = true; break; - case SpvOpImageBoxFilterQCOM: *hasResult = true; *hasResultType = true; break; - case SpvOpImageBlockMatchSSDQCOM: *hasResult = true; *hasResultType = true; break; - case SpvOpImageBlockMatchSADQCOM: *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; - case SpvOpGroupUMinNonUniformAMD: *hasResult = true; *hasResultType = true; break; - case SpvOpGroupSMinNonUniformAMD: *hasResult = true; *hasResultType = true; break; - case SpvOpGroupFMaxNonUniformAMD: *hasResult = true; *hasResultType = true; break; - case SpvOpGroupUMaxNonUniformAMD: *hasResult = true; *hasResultType = true; break; - case SpvOpGroupSMaxNonUniformAMD: *hasResult = true; *hasResultType = true; break; - case SpvOpFragmentMaskFetchAMD: *hasResult = true; *hasResultType = true; break; - case SpvOpFragmentFetchAMD: *hasResult = true; *hasResultType = true; break; - case SpvOpReadClockKHR: *hasResult = true; *hasResultType = true; break; - case SpvOpHitObjectRecordHitMotionNV: *hasResult = false; *hasResultType = false; break; - case SpvOpHitObjectRecordHitWithIndexMotionNV: *hasResult = false; *hasResultType = false; break; - case SpvOpHitObjectRecordMissMotionNV: *hasResult = false; *hasResultType = false; break; - case SpvOpHitObjectGetWorldToObjectNV: *hasResult = true; *hasResultType = true; break; - case SpvOpHitObjectGetObjectToWorldNV: *hasResult = true; *hasResultType = true; break; - case SpvOpHitObjectGetObjectRayDirectionNV: *hasResult = true; *hasResultType = true; break; - case SpvOpHitObjectGetObjectRayOriginNV: *hasResult = true; *hasResultType = true; break; - case SpvOpHitObjectTraceRayMotionNV: *hasResult = false; *hasResultType = false; break; - case SpvOpHitObjectGetShaderRecordBufferHandleNV: *hasResult = true; *hasResultType = true; break; - case SpvOpHitObjectGetShaderBindingTableRecordIndexNV: *hasResult = true; *hasResultType = true; break; - case SpvOpHitObjectRecordEmptyNV: *hasResult = false; *hasResultType = false; break; - case SpvOpHitObjectTraceRayNV: *hasResult = false; *hasResultType = false; break; - case SpvOpHitObjectRecordHitNV: *hasResult = false; *hasResultType = false; break; - case SpvOpHitObjectRecordHitWithIndexNV: *hasResult = false; *hasResultType = false; break; - case SpvOpHitObjectRecordMissNV: *hasResult = false; *hasResultType = false; break; - case SpvOpHitObjectExecuteShaderNV: *hasResult = false; *hasResultType = false; break; - case SpvOpHitObjectGetCurrentTimeNV: *hasResult = true; *hasResultType = true; break; - case SpvOpHitObjectGetAttributesNV: *hasResult = false; *hasResultType = false; break; - case SpvOpHitObjectGetHitKindNV: *hasResult = true; *hasResultType = true; break; - case SpvOpHitObjectGetPrimitiveIndexNV: *hasResult = true; *hasResultType = true; break; - case SpvOpHitObjectGetGeometryIndexNV: *hasResult = true; *hasResultType = true; break; - case SpvOpHitObjectGetInstanceIdNV: *hasResult = true; *hasResultType = true; break; - case SpvOpHitObjectGetInstanceCustomIndexNV: *hasResult = true; *hasResultType = true; break; - case SpvOpHitObjectGetWorldRayDirectionNV: *hasResult = true; *hasResultType = true; break; - case SpvOpHitObjectGetWorldRayOriginNV: *hasResult = true; *hasResultType = true; break; - case SpvOpHitObjectGetRayTMaxNV: *hasResult = true; *hasResultType = true; break; - case SpvOpHitObjectGetRayTMinNV: *hasResult = true; *hasResultType = true; break; - case SpvOpHitObjectIsEmptyNV: *hasResult = true; *hasResultType = true; break; - case SpvOpHitObjectIsHitNV: *hasResult = true; *hasResultType = true; break; - case SpvOpHitObjectIsMissNV: *hasResult = true; *hasResultType = true; break; - case SpvOpReorderThreadWithHitObjectNV: *hasResult = false; *hasResultType = false; break; - case SpvOpReorderThreadWithHintNV: *hasResult = false; *hasResultType = false; break; - case SpvOpTypeHitObjectNV: *hasResult = true; *hasResultType = false; break; - case SpvOpImageSampleFootprintNV: *hasResult = true; *hasResultType = true; break; - case SpvOpEmitMeshTasksEXT: *hasResult = false; *hasResultType = false; break; - case SpvOpSetMeshOutputsEXT: *hasResult = false; *hasResultType = false; break; - case SpvOpGroupNonUniformPartitionNV: *hasResult = true; *hasResultType = true; break; - case SpvOpWritePackedPrimitiveIndices4x8NV: *hasResult = false; *hasResultType = false; break; - case SpvOpReportIntersectionNV: *hasResult = true; *hasResultType = true; break; - 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 SpvOpRayQueryGetIntersectionTriangleVertexPositionsKHR: *hasResult = true; *hasResultType = true; break; - case SpvOpTypeAccelerationStructureNV: *hasResult = true; *hasResultType = false; break; - case SpvOpExecuteCallableNV: *hasResult = false; *hasResultType = false; break; - case SpvOpTypeCooperativeMatrixNV: *hasResult = true; *hasResultType = false; break; - case SpvOpCooperativeMatrixLoadNV: *hasResult = true; *hasResultType = true; break; - case SpvOpCooperativeMatrixStoreNV: *hasResult = false; *hasResultType = false; break; - case SpvOpCooperativeMatrixMulAddNV: *hasResult = true; *hasResultType = true; break; - case SpvOpCooperativeMatrixLengthNV: *hasResult = true; *hasResultType = true; break; - case SpvOpBeginInvocationInterlockEXT: *hasResult = false; *hasResultType = false; break; - case SpvOpEndInvocationInterlockEXT: *hasResult = false; *hasResultType = false; break; - case SpvOpDemoteToHelperInvocation: *hasResult = false; *hasResultType = false; break; - case SpvOpIsHelperInvocationEXT: *hasResult = true; *hasResultType = true; break; - case SpvOpConvertUToImageNV: *hasResult = true; *hasResultType = true; break; - case SpvOpConvertUToSamplerNV: *hasResult = true; *hasResultType = true; break; - case SpvOpConvertImageToUNV: *hasResult = true; *hasResultType = true; break; - case SpvOpConvertSamplerToUNV: *hasResult = true; *hasResultType = true; break; - case SpvOpConvertUToSampledImageNV: *hasResult = true; *hasResultType = true; break; - case SpvOpConvertSampledImageToUNV: *hasResult = true; *hasResultType = true; break; - case SpvOpSamplerImageAddressingModeNV: *hasResult = false; *hasResultType = false; break; - case SpvOpSubgroupShuffleINTEL: *hasResult = true; *hasResultType = true; break; - case SpvOpSubgroupShuffleDownINTEL: *hasResult = true; *hasResultType = true; break; - case SpvOpSubgroupShuffleUpINTEL: *hasResult = true; *hasResultType = true; break; - case SpvOpSubgroupShuffleXorINTEL: *hasResult = true; *hasResultType = true; break; - case SpvOpSubgroupBlockReadINTEL: *hasResult = true; *hasResultType = true; break; - case SpvOpSubgroupBlockWriteINTEL: *hasResult = false; *hasResultType = false; break; - case SpvOpSubgroupImageBlockReadINTEL: *hasResult = true; *hasResultType = true; break; - case SpvOpSubgroupImageBlockWriteINTEL: *hasResult = false; *hasResultType = false; break; - case SpvOpSubgroupImageMediaBlockReadINTEL: *hasResult = true; *hasResultType = true; break; - case SpvOpSubgroupImageMediaBlockWriteINTEL: *hasResult = false; *hasResultType = false; break; - case SpvOpUCountLeadingZerosINTEL: *hasResult = true; *hasResultType = true; break; - case SpvOpUCountTrailingZerosINTEL: *hasResult = true; *hasResultType = true; break; - case SpvOpAbsISubINTEL: *hasResult = true; *hasResultType = true; break; - case SpvOpAbsUSubINTEL: *hasResult = true; *hasResultType = true; break; - case SpvOpIAddSatINTEL: *hasResult = true; *hasResultType = true; break; - case SpvOpUAddSatINTEL: *hasResult = true; *hasResultType = true; break; - case SpvOpIAverageINTEL: *hasResult = true; *hasResultType = true; break; - case SpvOpUAverageINTEL: *hasResult = true; *hasResultType = true; break; - case SpvOpIAverageRoundedINTEL: *hasResult = true; *hasResultType = true; break; - case SpvOpUAverageRoundedINTEL: *hasResult = true; *hasResultType = true; break; - case SpvOpISubSatINTEL: *hasResult = true; *hasResultType = true; break; - case SpvOpUSubSatINTEL: *hasResult = true; *hasResultType = true; break; - case SpvOpIMul32x16INTEL: *hasResult = true; *hasResultType = true; break; - case SpvOpUMul32x16INTEL: *hasResult = true; *hasResultType = true; break; - case SpvOpConstantFunctionPointerINTEL: *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; - case SpvOpTypeVmeImageINTEL: *hasResult = true; *hasResultType = false; break; - case SpvOpTypeAvcImePayloadINTEL: *hasResult = true; *hasResultType = false; break; - case SpvOpTypeAvcRefPayloadINTEL: *hasResult = true; *hasResultType = false; break; - case SpvOpTypeAvcSicPayloadINTEL: *hasResult = true; *hasResultType = false; break; - case SpvOpTypeAvcMcePayloadINTEL: *hasResult = true; *hasResultType = false; break; - case SpvOpTypeAvcMceResultINTEL: *hasResult = true; *hasResultType = false; break; - case SpvOpTypeAvcImeResultINTEL: *hasResult = true; *hasResultType = false; break; - case SpvOpTypeAvcImeResultSingleReferenceStreamoutINTEL: *hasResult = true; *hasResultType = false; break; - case SpvOpTypeAvcImeResultDualReferenceStreamoutINTEL: *hasResult = true; *hasResultType = false; break; - case SpvOpTypeAvcImeSingleReferenceStreaminINTEL: *hasResult = true; *hasResultType = false; break; - case SpvOpTypeAvcImeDualReferenceStreaminINTEL: *hasResult = true; *hasResultType = false; break; - case SpvOpTypeAvcRefResultINTEL: *hasResult = true; *hasResultType = false; break; - case SpvOpTypeAvcSicResultINTEL: *hasResult = true; *hasResultType = false; break; - case SpvOpSubgroupAvcMceGetDefaultInterBaseMultiReferencePenaltyINTEL: *hasResult = true; *hasResultType = true; break; - case SpvOpSubgroupAvcMceSetInterBaseMultiReferencePenaltyINTEL: *hasResult = true; *hasResultType = true; break; - case SpvOpSubgroupAvcMceGetDefaultInterShapePenaltyINTEL: *hasResult = true; *hasResultType = true; break; - case SpvOpSubgroupAvcMceSetInterShapePenaltyINTEL: *hasResult = true; *hasResultType = true; break; - case SpvOpSubgroupAvcMceGetDefaultInterDirectionPenaltyINTEL: *hasResult = true; *hasResultType = true; break; - case SpvOpSubgroupAvcMceSetInterDirectionPenaltyINTEL: *hasResult = true; *hasResultType = true; break; - case SpvOpSubgroupAvcMceGetDefaultIntraLumaShapePenaltyINTEL: *hasResult = true; *hasResultType = true; break; - case SpvOpSubgroupAvcMceGetDefaultInterMotionVectorCostTableINTEL: *hasResult = true; *hasResultType = true; break; - case SpvOpSubgroupAvcMceGetDefaultHighPenaltyCostTableINTEL: *hasResult = true; *hasResultType = true; break; - case SpvOpSubgroupAvcMceGetDefaultMediumPenaltyCostTableINTEL: *hasResult = true; *hasResultType = true; break; - case SpvOpSubgroupAvcMceGetDefaultLowPenaltyCostTableINTEL: *hasResult = true; *hasResultType = true; break; - case SpvOpSubgroupAvcMceSetMotionVectorCostFunctionINTEL: *hasResult = true; *hasResultType = true; break; - case SpvOpSubgroupAvcMceGetDefaultIntraLumaModePenaltyINTEL: *hasResult = true; *hasResultType = true; break; - case SpvOpSubgroupAvcMceGetDefaultNonDcLumaIntraPenaltyINTEL: *hasResult = true; *hasResultType = true; break; - case SpvOpSubgroupAvcMceGetDefaultIntraChromaModeBasePenaltyINTEL: *hasResult = true; *hasResultType = true; break; - case SpvOpSubgroupAvcMceSetAcOnlyHaarINTEL: *hasResult = true; *hasResultType = true; break; - case SpvOpSubgroupAvcMceSetSourceInterlacedFieldPolarityINTEL: *hasResult = true; *hasResultType = true; break; - case SpvOpSubgroupAvcMceSetSingleReferenceInterlacedFieldPolarityINTEL: *hasResult = true; *hasResultType = true; break; - case SpvOpSubgroupAvcMceSetDualReferenceInterlacedFieldPolaritiesINTEL: *hasResult = true; *hasResultType = true; break; - case SpvOpSubgroupAvcMceConvertToImePayloadINTEL: *hasResult = true; *hasResultType = true; break; - case SpvOpSubgroupAvcMceConvertToImeResultINTEL: *hasResult = true; *hasResultType = true; break; - case SpvOpSubgroupAvcMceConvertToRefPayloadINTEL: *hasResult = true; *hasResultType = true; break; - case SpvOpSubgroupAvcMceConvertToRefResultINTEL: *hasResult = true; *hasResultType = true; break; - case SpvOpSubgroupAvcMceConvertToSicPayloadINTEL: *hasResult = true; *hasResultType = true; break; - case SpvOpSubgroupAvcMceConvertToSicResultINTEL: *hasResult = true; *hasResultType = true; break; - case SpvOpSubgroupAvcMceGetMotionVectorsINTEL: *hasResult = true; *hasResultType = true; break; - case SpvOpSubgroupAvcMceGetInterDistortionsINTEL: *hasResult = true; *hasResultType = true; break; - case SpvOpSubgroupAvcMceGetBestInterDistortionsINTEL: *hasResult = true; *hasResultType = true; break; - case SpvOpSubgroupAvcMceGetInterMajorShapeINTEL: *hasResult = true; *hasResultType = true; break; - case SpvOpSubgroupAvcMceGetInterMinorShapeINTEL: *hasResult = true; *hasResultType = true; break; - case SpvOpSubgroupAvcMceGetInterDirectionsINTEL: *hasResult = true; *hasResultType = true; break; - case SpvOpSubgroupAvcMceGetInterMotionVectorCountINTEL: *hasResult = true; *hasResultType = true; break; - case SpvOpSubgroupAvcMceGetInterReferenceIdsINTEL: *hasResult = true; *hasResultType = true; break; - case SpvOpSubgroupAvcMceGetInterReferenceInterlacedFieldPolaritiesINTEL: *hasResult = true; *hasResultType = true; break; - case SpvOpSubgroupAvcImeInitializeINTEL: *hasResult = true; *hasResultType = true; break; - case SpvOpSubgroupAvcImeSetSingleReferenceINTEL: *hasResult = true; *hasResultType = true; break; - case SpvOpSubgroupAvcImeSetDualReferenceINTEL: *hasResult = true; *hasResultType = true; break; - case SpvOpSubgroupAvcImeRefWindowSizeINTEL: *hasResult = true; *hasResultType = true; break; - case SpvOpSubgroupAvcImeAdjustRefOffsetINTEL: *hasResult = true; *hasResultType = true; break; - case SpvOpSubgroupAvcImeConvertToMcePayloadINTEL: *hasResult = true; *hasResultType = true; break; - case SpvOpSubgroupAvcImeSetMaxMotionVectorCountINTEL: *hasResult = true; *hasResultType = true; break; - case SpvOpSubgroupAvcImeSetUnidirectionalMixDisableINTEL: *hasResult = true; *hasResultType = true; break; - case SpvOpSubgroupAvcImeSetEarlySearchTerminationThresholdINTEL: *hasResult = true; *hasResultType = true; break; - case SpvOpSubgroupAvcImeSetWeightedSadINTEL: *hasResult = true; *hasResultType = true; break; - case SpvOpSubgroupAvcImeEvaluateWithSingleReferenceINTEL: *hasResult = true; *hasResultType = true; break; - case SpvOpSubgroupAvcImeEvaluateWithDualReferenceINTEL: *hasResult = true; *hasResultType = true; break; - case SpvOpSubgroupAvcImeEvaluateWithSingleReferenceStreaminINTEL: *hasResult = true; *hasResultType = true; break; - case SpvOpSubgroupAvcImeEvaluateWithDualReferenceStreaminINTEL: *hasResult = true; *hasResultType = true; break; - case SpvOpSubgroupAvcImeEvaluateWithSingleReferenceStreamoutINTEL: *hasResult = true; *hasResultType = true; break; - case SpvOpSubgroupAvcImeEvaluateWithDualReferenceStreamoutINTEL: *hasResult = true; *hasResultType = true; break; - case SpvOpSubgroupAvcImeEvaluateWithSingleReferenceStreaminoutINTEL: *hasResult = true; *hasResultType = true; break; - case SpvOpSubgroupAvcImeEvaluateWithDualReferenceStreaminoutINTEL: *hasResult = true; *hasResultType = true; break; - case SpvOpSubgroupAvcImeConvertToMceResultINTEL: *hasResult = true; *hasResultType = true; break; - case SpvOpSubgroupAvcImeGetSingleReferenceStreaminINTEL: *hasResult = true; *hasResultType = true; break; - case SpvOpSubgroupAvcImeGetDualReferenceStreaminINTEL: *hasResult = true; *hasResultType = true; break; - case SpvOpSubgroupAvcImeStripSingleReferenceStreamoutINTEL: *hasResult = true; *hasResultType = true; break; - case SpvOpSubgroupAvcImeStripDualReferenceStreamoutINTEL: *hasResult = true; *hasResultType = true; break; - case SpvOpSubgroupAvcImeGetStreamoutSingleReferenceMajorShapeMotionVectorsINTEL: *hasResult = true; *hasResultType = true; break; - case SpvOpSubgroupAvcImeGetStreamoutSingleReferenceMajorShapeDistortionsINTEL: *hasResult = true; *hasResultType = true; break; - case SpvOpSubgroupAvcImeGetStreamoutSingleReferenceMajorShapeReferenceIdsINTEL: *hasResult = true; *hasResultType = true; break; - case SpvOpSubgroupAvcImeGetStreamoutDualReferenceMajorShapeMotionVectorsINTEL: *hasResult = true; *hasResultType = true; break; - case SpvOpSubgroupAvcImeGetStreamoutDualReferenceMajorShapeDistortionsINTEL: *hasResult = true; *hasResultType = true; break; - case SpvOpSubgroupAvcImeGetStreamoutDualReferenceMajorShapeReferenceIdsINTEL: *hasResult = true; *hasResultType = true; break; - case SpvOpSubgroupAvcImeGetBorderReachedINTEL: *hasResult = true; *hasResultType = true; break; - case SpvOpSubgroupAvcImeGetTruncatedSearchIndicationINTEL: *hasResult = true; *hasResultType = true; break; - case SpvOpSubgroupAvcImeGetUnidirectionalEarlySearchTerminationINTEL: *hasResult = true; *hasResultType = true; break; - case SpvOpSubgroupAvcImeGetWeightingPatternMinimumMotionVectorINTEL: *hasResult = true; *hasResultType = true; break; - case SpvOpSubgroupAvcImeGetWeightingPatternMinimumDistortionINTEL: *hasResult = true; *hasResultType = true; break; - case SpvOpSubgroupAvcFmeInitializeINTEL: *hasResult = true; *hasResultType = true; break; - case SpvOpSubgroupAvcBmeInitializeINTEL: *hasResult = true; *hasResultType = true; break; - case SpvOpSubgroupAvcRefConvertToMcePayloadINTEL: *hasResult = true; *hasResultType = true; break; - case SpvOpSubgroupAvcRefSetBidirectionalMixDisableINTEL: *hasResult = true; *hasResultType = true; break; - case SpvOpSubgroupAvcRefSetBilinearFilterEnableINTEL: *hasResult = true; *hasResultType = true; break; - case SpvOpSubgroupAvcRefEvaluateWithSingleReferenceINTEL: *hasResult = true; *hasResultType = true; break; - case SpvOpSubgroupAvcRefEvaluateWithDualReferenceINTEL: *hasResult = true; *hasResultType = true; break; - case SpvOpSubgroupAvcRefEvaluateWithMultiReferenceINTEL: *hasResult = true; *hasResultType = true; break; - case SpvOpSubgroupAvcRefEvaluateWithMultiReferenceInterlacedINTEL: *hasResult = true; *hasResultType = true; break; - case SpvOpSubgroupAvcRefConvertToMceResultINTEL: *hasResult = true; *hasResultType = true; break; - case SpvOpSubgroupAvcSicInitializeINTEL: *hasResult = true; *hasResultType = true; break; - case SpvOpSubgroupAvcSicConfigureSkcINTEL: *hasResult = true; *hasResultType = true; break; - case SpvOpSubgroupAvcSicConfigureIpeLumaINTEL: *hasResult = true; *hasResultType = true; break; - case SpvOpSubgroupAvcSicConfigureIpeLumaChromaINTEL: *hasResult = true; *hasResultType = true; break; - case SpvOpSubgroupAvcSicGetMotionVectorMaskINTEL: *hasResult = true; *hasResultType = true; break; - case SpvOpSubgroupAvcSicConvertToMcePayloadINTEL: *hasResult = true; *hasResultType = true; break; - case SpvOpSubgroupAvcSicSetIntraLumaShapePenaltyINTEL: *hasResult = true; *hasResultType = true; break; - case SpvOpSubgroupAvcSicSetIntraLumaModeCostFunctionINTEL: *hasResult = true; *hasResultType = true; break; - case SpvOpSubgroupAvcSicSetIntraChromaModeCostFunctionINTEL: *hasResult = true; *hasResultType = true; break; - case SpvOpSubgroupAvcSicSetBilinearFilterEnableINTEL: *hasResult = true; *hasResultType = true; break; - case SpvOpSubgroupAvcSicSetSkcForwardTransformEnableINTEL: *hasResult = true; *hasResultType = true; break; - case SpvOpSubgroupAvcSicSetBlockBasedRawSkipSadINTEL: *hasResult = true; *hasResultType = true; break; - case SpvOpSubgroupAvcSicEvaluateIpeINTEL: *hasResult = true; *hasResultType = true; break; - case SpvOpSubgroupAvcSicEvaluateWithSingleReferenceINTEL: *hasResult = true; *hasResultType = true; break; - case SpvOpSubgroupAvcSicEvaluateWithDualReferenceINTEL: *hasResult = true; *hasResultType = true; break; - case SpvOpSubgroupAvcSicEvaluateWithMultiReferenceINTEL: *hasResult = true; *hasResultType = true; break; - case SpvOpSubgroupAvcSicEvaluateWithMultiReferenceInterlacedINTEL: *hasResult = true; *hasResultType = true; break; - case SpvOpSubgroupAvcSicConvertToMceResultINTEL: *hasResult = true; *hasResultType = true; break; - case SpvOpSubgroupAvcSicGetIpeLumaShapeINTEL: *hasResult = true; *hasResultType = true; break; - case SpvOpSubgroupAvcSicGetBestIpeLumaDistortionINTEL: *hasResult = true; *hasResultType = true; break; - case SpvOpSubgroupAvcSicGetBestIpeChromaDistortionINTEL: *hasResult = true; *hasResultType = true; break; - case SpvOpSubgroupAvcSicGetPackedIpeLumaModesINTEL: *hasResult = true; *hasResultType = true; break; - case SpvOpSubgroupAvcSicGetIpeChromaModeINTEL: *hasResult = true; *hasResultType = true; break; - 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 SpvOpAliasDomainDeclINTEL: *hasResult = true; *hasResultType = false; break; - case SpvOpAliasScopeDeclINTEL: *hasResult = true; *hasResultType = false; break; - case SpvOpAliasScopeListDeclINTEL: *hasResult = true; *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; - case SpvOpConvertFToBF16INTEL: *hasResult = true; *hasResultType = true; break; - case SpvOpConvertBF16ToFINTEL: *hasResult = true; *hasResultType = true; break; - case SpvOpControlBarrierArriveINTEL: *hasResult = false; *hasResultType = false; break; - case SpvOpControlBarrierWaitINTEL: *hasResult = false; *hasResultType = false; break; - case SpvOpGroupIMulKHR: *hasResult = true; *hasResultType = true; break; - case SpvOpGroupFMulKHR: *hasResult = true; *hasResultType = true; break; - case SpvOpGroupBitwiseAndKHR: *hasResult = true; *hasResultType = true; break; - case SpvOpGroupBitwiseOrKHR: *hasResult = true; *hasResultType = true; break; - case SpvOpGroupBitwiseXorKHR: *hasResult = true; *hasResultType = true; break; - case SpvOpGroupLogicalAndKHR: *hasResult = true; *hasResultType = true; break; - case SpvOpGroupLogicalOrKHR: *hasResult = true; *hasResultType = true; break; - case SpvOpGroupLogicalXorKHR: *hasResult = true; *hasResultType = true; break; - } -} -#endif /* SPV_ENABLE_UTILITY_CODE */ - -#endif - diff --git a/Extern/3rdParty/shaderc/shaderc/include/spirv/unified1/spirv.hpp b/Extern/3rdParty/shaderc/shaderc/include/spirv/unified1/spirv.hpp deleted file mode 100644 index 0b9fa16..0000000 --- a/Extern/3rdParty/shaderc/shaderc/include/spirv/unified1/spirv.hpp +++ /dev/null @@ -1,2805 +0,0 @@ -// Copyright (c) 2014-2020 The Khronos Group Inc. -// -// Permission is hereby granted, free of charge, to any person obtaining a copy -// of this software and/or associated documentation files (the "Materials"), -// 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. - -// This header is automatically generated by the same tool that creates -// the Binary Section of the SPIR-V specification. - -// Enumeration tokens for SPIR-V, in various styles: -// C, C++, C++11, JSON, Lua, Python, C#, D, Beef -// -// - C will have tokens with a "Spv" prefix, e.g.: SpvSourceLanguageGLSL -// - C++ will have tokens in the "spv" name space, e.g.: spv::SourceLanguageGLSL -// - C++11 will use enum classes in the spv namespace, e.g.: spv::SourceLanguage::GLSL -// - Lua will use tables, e.g.: spv.SourceLanguage.GLSL -// - Python will use dictionaries, e.g.: spv['SourceLanguage']['GLSL'] -// - C# will use enum classes in the Specification class located in the "Spv" namespace, -// e.g.: Spv.Specification.SourceLanguage.GLSL -// - D will have tokens under the "spv" module, e.g: spv.SourceLanguage.GLSL -// - Beef will use enum classes in the Specification class located in the "Spv" namespace, -// e.g.: Spv.Specification.SourceLanguage.GLSL -// -// Some tokens act like mask values, which can be OR'd together, -// while others are mutually exclusive. The mask-like ones have -// "Mask" in their name, and a parallel enum that has the shift -// amount (1 << x) for each corresponding enumerant. - -#ifndef spirv_HPP -#define spirv_HPP - -namespace spv { - -typedef unsigned int Id; - -#define SPV_VERSION 0x10600 -#define SPV_REVISION 1 - -static const unsigned int MagicNumber = 0x07230203; -static const unsigned int Version = 0x00010600; -static const unsigned int Revision = 1; -static const unsigned int OpCodeMask = 0xffff; -static const unsigned int WordCountShift = 16; - -enum SourceLanguage { - SourceLanguageUnknown = 0, - SourceLanguageESSL = 1, - SourceLanguageGLSL = 2, - SourceLanguageOpenCL_C = 3, - SourceLanguageOpenCL_CPP = 4, - SourceLanguageHLSL = 5, - SourceLanguageCPP_for_OpenCL = 6, - SourceLanguageSYCL = 7, - SourceLanguageHERO_C = 8, - SourceLanguageNZSL = 9, - SourceLanguageWGSL = 10, - SourceLanguageMax = 0x7fffffff, -}; - -enum ExecutionModel { - ExecutionModelVertex = 0, - ExecutionModelTessellationControl = 1, - ExecutionModelTessellationEvaluation = 2, - ExecutionModelGeometry = 3, - ExecutionModelFragment = 4, - ExecutionModelGLCompute = 5, - ExecutionModelKernel = 6, - ExecutionModelTaskNV = 5267, - ExecutionModelMeshNV = 5268, - ExecutionModelRayGenerationKHR = 5313, - ExecutionModelRayGenerationNV = 5313, - ExecutionModelIntersectionKHR = 5314, - ExecutionModelIntersectionNV = 5314, - ExecutionModelAnyHitKHR = 5315, - ExecutionModelAnyHitNV = 5315, - ExecutionModelClosestHitKHR = 5316, - ExecutionModelClosestHitNV = 5316, - ExecutionModelMissKHR = 5317, - ExecutionModelMissNV = 5317, - ExecutionModelCallableKHR = 5318, - ExecutionModelCallableNV = 5318, - ExecutionModelTaskEXT = 5364, - ExecutionModelMeshEXT = 5365, - ExecutionModelMax = 0x7fffffff, -}; - -enum AddressingModel { - AddressingModelLogical = 0, - AddressingModelPhysical32 = 1, - AddressingModelPhysical64 = 2, - AddressingModelPhysicalStorageBuffer64 = 5348, - AddressingModelPhysicalStorageBuffer64EXT = 5348, - AddressingModelMax = 0x7fffffff, -}; - -enum MemoryModel { - MemoryModelSimple = 0, - MemoryModelGLSL450 = 1, - MemoryModelOpenCL = 2, - MemoryModelVulkan = 3, - MemoryModelVulkanKHR = 3, - MemoryModelMax = 0x7fffffff, -}; - -enum ExecutionMode { - ExecutionModeInvocations = 0, - ExecutionModeSpacingEqual = 1, - ExecutionModeSpacingFractionalEven = 2, - ExecutionModeSpacingFractionalOdd = 3, - ExecutionModeVertexOrderCw = 4, - ExecutionModeVertexOrderCcw = 5, - ExecutionModePixelCenterInteger = 6, - ExecutionModeOriginUpperLeft = 7, - ExecutionModeOriginLowerLeft = 8, - ExecutionModeEarlyFragmentTests = 9, - ExecutionModePointMode = 10, - ExecutionModeXfb = 11, - ExecutionModeDepthReplacing = 12, - ExecutionModeDepthGreater = 14, - ExecutionModeDepthLess = 15, - ExecutionModeDepthUnchanged = 16, - ExecutionModeLocalSize = 17, - ExecutionModeLocalSizeHint = 18, - ExecutionModeInputPoints = 19, - ExecutionModeInputLines = 20, - ExecutionModeInputLinesAdjacency = 21, - ExecutionModeTriangles = 22, - ExecutionModeInputTrianglesAdjacency = 23, - ExecutionModeQuads = 24, - ExecutionModeIsolines = 25, - ExecutionModeOutputVertices = 26, - ExecutionModeOutputPoints = 27, - ExecutionModeOutputLineStrip = 28, - ExecutionModeOutputTriangleStrip = 29, - ExecutionModeVecTypeHint = 30, - ExecutionModeContractionOff = 31, - ExecutionModeInitializer = 33, - ExecutionModeFinalizer = 34, - ExecutionModeSubgroupSize = 35, - ExecutionModeSubgroupsPerWorkgroup = 36, - ExecutionModeSubgroupsPerWorkgroupId = 37, - ExecutionModeLocalSizeId = 38, - ExecutionModeLocalSizeHintId = 39, - ExecutionModeNonCoherentColorAttachmentReadEXT = 4169, - ExecutionModeNonCoherentDepthAttachmentReadEXT = 4170, - ExecutionModeNonCoherentStencilAttachmentReadEXT = 4171, - ExecutionModeSubgroupUniformControlFlowKHR = 4421, - ExecutionModePostDepthCoverage = 4446, - ExecutionModeDenormPreserve = 4459, - ExecutionModeDenormFlushToZero = 4460, - ExecutionModeSignedZeroInfNanPreserve = 4461, - ExecutionModeRoundingModeRTE = 4462, - ExecutionModeRoundingModeRTZ = 4463, - ExecutionModeEarlyAndLateFragmentTestsAMD = 5017, - ExecutionModeStencilRefReplacingEXT = 5027, - ExecutionModeStencilRefUnchangedFrontAMD = 5079, - ExecutionModeStencilRefGreaterFrontAMD = 5080, - ExecutionModeStencilRefLessFrontAMD = 5081, - ExecutionModeStencilRefUnchangedBackAMD = 5082, - ExecutionModeStencilRefGreaterBackAMD = 5083, - ExecutionModeStencilRefLessBackAMD = 5084, - ExecutionModeOutputLinesEXT = 5269, - ExecutionModeOutputLinesNV = 5269, - ExecutionModeOutputPrimitivesEXT = 5270, - ExecutionModeOutputPrimitivesNV = 5270, - ExecutionModeDerivativeGroupQuadsNV = 5289, - ExecutionModeDerivativeGroupLinearNV = 5290, - ExecutionModeOutputTrianglesEXT = 5298, - ExecutionModeOutputTrianglesNV = 5298, - ExecutionModePixelInterlockOrderedEXT = 5366, - ExecutionModePixelInterlockUnorderedEXT = 5367, - ExecutionModeSampleInterlockOrderedEXT = 5368, - 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, - ExecutionModeStreamingInterfaceINTEL = 6154, - ExecutionModeRegisterMapInterfaceINTEL = 6160, - ExecutionModeNamedBarrierCountINTEL = 6417, - ExecutionModeMax = 0x7fffffff, -}; - -enum StorageClass { - StorageClassUniformConstant = 0, - StorageClassInput = 1, - StorageClassUniform = 2, - StorageClassOutput = 3, - StorageClassWorkgroup = 4, - StorageClassCrossWorkgroup = 5, - StorageClassPrivate = 6, - StorageClassFunction = 7, - StorageClassGeneric = 8, - StorageClassPushConstant = 9, - StorageClassAtomicCounter = 10, - StorageClassImage = 11, - StorageClassStorageBuffer = 12, - StorageClassTileImageEXT = 4172, - StorageClassCallableDataKHR = 5328, - StorageClassCallableDataNV = 5328, - StorageClassIncomingCallableDataKHR = 5329, - StorageClassIncomingCallableDataNV = 5329, - StorageClassRayPayloadKHR = 5338, - StorageClassRayPayloadNV = 5338, - StorageClassHitAttributeKHR = 5339, - StorageClassHitAttributeNV = 5339, - StorageClassIncomingRayPayloadKHR = 5342, - StorageClassIncomingRayPayloadNV = 5342, - StorageClassShaderRecordBufferKHR = 5343, - StorageClassShaderRecordBufferNV = 5343, - StorageClassPhysicalStorageBuffer = 5349, - StorageClassPhysicalStorageBufferEXT = 5349, - StorageClassHitObjectAttributeNV = 5385, - StorageClassTaskPayloadWorkgroupEXT = 5402, - StorageClassCodeSectionINTEL = 5605, - StorageClassDeviceOnlyINTEL = 5936, - StorageClassHostOnlyINTEL = 5937, - StorageClassMax = 0x7fffffff, -}; - -enum Dim { - Dim1D = 0, - Dim2D = 1, - Dim3D = 2, - DimCube = 3, - DimRect = 4, - DimBuffer = 5, - DimSubpassData = 6, - DimTileImageDataEXT = 4173, - DimMax = 0x7fffffff, -}; - -enum SamplerAddressingMode { - SamplerAddressingModeNone = 0, - SamplerAddressingModeClampToEdge = 1, - SamplerAddressingModeClamp = 2, - SamplerAddressingModeRepeat = 3, - SamplerAddressingModeRepeatMirrored = 4, - SamplerAddressingModeMax = 0x7fffffff, -}; - -enum SamplerFilterMode { - SamplerFilterModeNearest = 0, - SamplerFilterModeLinear = 1, - SamplerFilterModeMax = 0x7fffffff, -}; - -enum ImageFormat { - ImageFormatUnknown = 0, - ImageFormatRgba32f = 1, - ImageFormatRgba16f = 2, - ImageFormatR32f = 3, - ImageFormatRgba8 = 4, - ImageFormatRgba8Snorm = 5, - ImageFormatRg32f = 6, - ImageFormatRg16f = 7, - ImageFormatR11fG11fB10f = 8, - ImageFormatR16f = 9, - ImageFormatRgba16 = 10, - ImageFormatRgb10A2 = 11, - ImageFormatRg16 = 12, - ImageFormatRg8 = 13, - ImageFormatR16 = 14, - ImageFormatR8 = 15, - ImageFormatRgba16Snorm = 16, - ImageFormatRg16Snorm = 17, - ImageFormatRg8Snorm = 18, - ImageFormatR16Snorm = 19, - ImageFormatR8Snorm = 20, - ImageFormatRgba32i = 21, - ImageFormatRgba16i = 22, - ImageFormatRgba8i = 23, - ImageFormatR32i = 24, - ImageFormatRg32i = 25, - ImageFormatRg16i = 26, - ImageFormatRg8i = 27, - ImageFormatR16i = 28, - ImageFormatR8i = 29, - ImageFormatRgba32ui = 30, - ImageFormatRgba16ui = 31, - ImageFormatRgba8ui = 32, - ImageFormatR32ui = 33, - ImageFormatRgb10a2ui = 34, - ImageFormatRg32ui = 35, - ImageFormatRg16ui = 36, - ImageFormatRg8ui = 37, - ImageFormatR16ui = 38, - ImageFormatR8ui = 39, - ImageFormatR64ui = 40, - ImageFormatR64i = 41, - ImageFormatMax = 0x7fffffff, -}; - -enum ImageChannelOrder { - ImageChannelOrderR = 0, - ImageChannelOrderA = 1, - ImageChannelOrderRG = 2, - ImageChannelOrderRA = 3, - ImageChannelOrderRGB = 4, - ImageChannelOrderRGBA = 5, - ImageChannelOrderBGRA = 6, - ImageChannelOrderARGB = 7, - ImageChannelOrderIntensity = 8, - ImageChannelOrderLuminance = 9, - ImageChannelOrderRx = 10, - ImageChannelOrderRGx = 11, - ImageChannelOrderRGBx = 12, - ImageChannelOrderDepth = 13, - ImageChannelOrderDepthStencil = 14, - ImageChannelOrdersRGB = 15, - ImageChannelOrdersRGBx = 16, - ImageChannelOrdersRGBA = 17, - ImageChannelOrdersBGRA = 18, - ImageChannelOrderABGR = 19, - ImageChannelOrderMax = 0x7fffffff, -}; - -enum ImageChannelDataType { - ImageChannelDataTypeSnormInt8 = 0, - ImageChannelDataTypeSnormInt16 = 1, - ImageChannelDataTypeUnormInt8 = 2, - ImageChannelDataTypeUnormInt16 = 3, - ImageChannelDataTypeUnormShort565 = 4, - ImageChannelDataTypeUnormShort555 = 5, - ImageChannelDataTypeUnormInt101010 = 6, - ImageChannelDataTypeSignedInt8 = 7, - ImageChannelDataTypeSignedInt16 = 8, - ImageChannelDataTypeSignedInt32 = 9, - ImageChannelDataTypeUnsignedInt8 = 10, - ImageChannelDataTypeUnsignedInt16 = 11, - ImageChannelDataTypeUnsignedInt32 = 12, - ImageChannelDataTypeHalfFloat = 13, - ImageChannelDataTypeFloat = 14, - ImageChannelDataTypeUnormInt24 = 15, - ImageChannelDataTypeUnormInt101010_2 = 16, - ImageChannelDataTypeUnsignedIntRaw10EXT = 19, - ImageChannelDataTypeUnsignedIntRaw12EXT = 20, - ImageChannelDataTypeMax = 0x7fffffff, -}; - -enum ImageOperandsShift { - ImageOperandsBiasShift = 0, - ImageOperandsLodShift = 1, - ImageOperandsGradShift = 2, - ImageOperandsConstOffsetShift = 3, - ImageOperandsOffsetShift = 4, - ImageOperandsConstOffsetsShift = 5, - ImageOperandsSampleShift = 6, - ImageOperandsMinLodShift = 7, - ImageOperandsMakeTexelAvailableShift = 8, - ImageOperandsMakeTexelAvailableKHRShift = 8, - ImageOperandsMakeTexelVisibleShift = 9, - ImageOperandsMakeTexelVisibleKHRShift = 9, - ImageOperandsNonPrivateTexelShift = 10, - ImageOperandsNonPrivateTexelKHRShift = 10, - ImageOperandsVolatileTexelShift = 11, - ImageOperandsVolatileTexelKHRShift = 11, - ImageOperandsSignExtendShift = 12, - ImageOperandsZeroExtendShift = 13, - ImageOperandsNontemporalShift = 14, - ImageOperandsOffsetsShift = 16, - ImageOperandsMax = 0x7fffffff, -}; - -enum ImageOperandsMask { - ImageOperandsMaskNone = 0, - ImageOperandsBiasMask = 0x00000001, - ImageOperandsLodMask = 0x00000002, - ImageOperandsGradMask = 0x00000004, - ImageOperandsConstOffsetMask = 0x00000008, - ImageOperandsOffsetMask = 0x00000010, - ImageOperandsConstOffsetsMask = 0x00000020, - ImageOperandsSampleMask = 0x00000040, - ImageOperandsMinLodMask = 0x00000080, - ImageOperandsMakeTexelAvailableMask = 0x00000100, - ImageOperandsMakeTexelAvailableKHRMask = 0x00000100, - ImageOperandsMakeTexelVisibleMask = 0x00000200, - ImageOperandsMakeTexelVisibleKHRMask = 0x00000200, - ImageOperandsNonPrivateTexelMask = 0x00000400, - ImageOperandsNonPrivateTexelKHRMask = 0x00000400, - ImageOperandsVolatileTexelMask = 0x00000800, - ImageOperandsVolatileTexelKHRMask = 0x00000800, - ImageOperandsSignExtendMask = 0x00001000, - ImageOperandsZeroExtendMask = 0x00002000, - ImageOperandsNontemporalMask = 0x00004000, - ImageOperandsOffsetsMask = 0x00010000, -}; - -enum FPFastMathModeShift { - FPFastMathModeNotNaNShift = 0, - FPFastMathModeNotInfShift = 1, - FPFastMathModeNSZShift = 2, - FPFastMathModeAllowRecipShift = 3, - FPFastMathModeFastShift = 4, - FPFastMathModeAllowContractFastINTELShift = 16, - FPFastMathModeAllowReassocINTELShift = 17, - FPFastMathModeMax = 0x7fffffff, -}; - -enum FPFastMathModeMask { - FPFastMathModeMaskNone = 0, - FPFastMathModeNotNaNMask = 0x00000001, - FPFastMathModeNotInfMask = 0x00000002, - FPFastMathModeNSZMask = 0x00000004, - FPFastMathModeAllowRecipMask = 0x00000008, - FPFastMathModeFastMask = 0x00000010, - FPFastMathModeAllowContractFastINTELMask = 0x00010000, - FPFastMathModeAllowReassocINTELMask = 0x00020000, -}; - -enum FPRoundingMode { - FPRoundingModeRTE = 0, - FPRoundingModeRTZ = 1, - FPRoundingModeRTP = 2, - FPRoundingModeRTN = 3, - FPRoundingModeMax = 0x7fffffff, -}; - -enum LinkageType { - LinkageTypeExport = 0, - LinkageTypeImport = 1, - LinkageTypeLinkOnceODR = 2, - LinkageTypeMax = 0x7fffffff, -}; - -enum AccessQualifier { - AccessQualifierReadOnly = 0, - AccessQualifierWriteOnly = 1, - AccessQualifierReadWrite = 2, - AccessQualifierMax = 0x7fffffff, -}; - -enum FunctionParameterAttribute { - FunctionParameterAttributeZext = 0, - FunctionParameterAttributeSext = 1, - FunctionParameterAttributeByVal = 2, - FunctionParameterAttributeSret = 3, - FunctionParameterAttributeNoAlias = 4, - FunctionParameterAttributeNoCapture = 5, - FunctionParameterAttributeNoWrite = 6, - FunctionParameterAttributeNoReadWrite = 7, - FunctionParameterAttributeRuntimeAlignedINTEL = 5940, - FunctionParameterAttributeMax = 0x7fffffff, -}; - -enum Decoration { - DecorationRelaxedPrecision = 0, - DecorationSpecId = 1, - DecorationBlock = 2, - DecorationBufferBlock = 3, - DecorationRowMajor = 4, - DecorationColMajor = 5, - DecorationArrayStride = 6, - DecorationMatrixStride = 7, - DecorationGLSLShared = 8, - DecorationGLSLPacked = 9, - DecorationCPacked = 10, - DecorationBuiltIn = 11, - DecorationNoPerspective = 13, - DecorationFlat = 14, - DecorationPatch = 15, - DecorationCentroid = 16, - DecorationSample = 17, - DecorationInvariant = 18, - DecorationRestrict = 19, - DecorationAliased = 20, - DecorationVolatile = 21, - DecorationConstant = 22, - DecorationCoherent = 23, - DecorationNonWritable = 24, - DecorationNonReadable = 25, - DecorationUniform = 26, - DecorationUniformId = 27, - DecorationSaturatedConversion = 28, - DecorationStream = 29, - DecorationLocation = 30, - DecorationComponent = 31, - DecorationIndex = 32, - DecorationBinding = 33, - DecorationDescriptorSet = 34, - DecorationOffset = 35, - DecorationXfbBuffer = 36, - DecorationXfbStride = 37, - DecorationFuncParamAttr = 38, - DecorationFPRoundingMode = 39, - DecorationFPFastMathMode = 40, - DecorationLinkageAttributes = 41, - DecorationNoContraction = 42, - DecorationInputAttachmentIndex = 43, - DecorationAlignment = 44, - DecorationMaxByteOffset = 45, - DecorationAlignmentId = 46, - DecorationMaxByteOffsetId = 47, - DecorationNoSignedWrap = 4469, - DecorationNoUnsignedWrap = 4470, - DecorationWeightTextureQCOM = 4487, - DecorationBlockMatchTextureQCOM = 4488, - DecorationExplicitInterpAMD = 4999, - DecorationOverrideCoverageNV = 5248, - DecorationPassthroughNV = 5250, - DecorationViewportRelativeNV = 5252, - DecorationSecondaryViewportRelativeNV = 5256, - DecorationPerPrimitiveEXT = 5271, - DecorationPerPrimitiveNV = 5271, - DecorationPerViewNV = 5272, - DecorationPerTaskNV = 5273, - DecorationPerVertexKHR = 5285, - DecorationPerVertexNV = 5285, - DecorationNonUniform = 5300, - DecorationNonUniformEXT = 5300, - DecorationRestrictPointer = 5355, - DecorationRestrictPointerEXT = 5355, - DecorationAliasedPointer = 5356, - DecorationAliasedPointerEXT = 5356, - DecorationHitObjectShaderRecordBufferNV = 5386, - DecorationBindlessSamplerNV = 5398, - DecorationBindlessImageNV = 5399, - DecorationBoundSamplerNV = 5400, - DecorationBoundImageNV = 5401, - 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, - DecorationMathOpDSPModeINTEL = 5909, - DecorationAliasScopeINTEL = 5914, - DecorationNoAliasINTEL = 5915, - DecorationInitiationIntervalINTEL = 5917, - DecorationMaxConcurrencyINTEL = 5918, - DecorationPipelineEnableINTEL = 5919, - DecorationBufferLocationINTEL = 5921, - DecorationIOPipeStorageINTEL = 5944, - DecorationFunctionFloatingPointModeINTEL = 6080, - DecorationSingleElementVectorINTEL = 6085, - DecorationVectorComputeCallableFunctionINTEL = 6087, - DecorationMediaBlockIOINTEL = 6140, - DecorationFPMaxErrorDecorationINTEL = 6170, - DecorationLatencyControlLabelINTEL = 6172, - DecorationLatencyControlConstraintINTEL = 6173, - DecorationConduitKernelArgumentINTEL = 6175, - DecorationRegisterMapKernelArgumentINTEL = 6176, - DecorationMMHostInterfaceAddressWidthINTEL = 6177, - DecorationMMHostInterfaceDataWidthINTEL = 6178, - DecorationMMHostInterfaceLatencyINTEL = 6179, - DecorationMMHostInterfaceReadWriteModeINTEL = 6180, - DecorationMMHostInterfaceMaxBurstINTEL = 6181, - DecorationMMHostInterfaceWaitRequestINTEL = 6182, - DecorationStableKernelArgumentINTEL = 6183, - DecorationMax = 0x7fffffff, -}; - -enum BuiltIn { - BuiltInPosition = 0, - BuiltInPointSize = 1, - BuiltInClipDistance = 3, - BuiltInCullDistance = 4, - BuiltInVertexId = 5, - BuiltInInstanceId = 6, - BuiltInPrimitiveId = 7, - BuiltInInvocationId = 8, - BuiltInLayer = 9, - BuiltInViewportIndex = 10, - BuiltInTessLevelOuter = 11, - BuiltInTessLevelInner = 12, - BuiltInTessCoord = 13, - BuiltInPatchVertices = 14, - BuiltInFragCoord = 15, - BuiltInPointCoord = 16, - BuiltInFrontFacing = 17, - BuiltInSampleId = 18, - BuiltInSamplePosition = 19, - BuiltInSampleMask = 20, - BuiltInFragDepth = 22, - BuiltInHelperInvocation = 23, - BuiltInNumWorkgroups = 24, - BuiltInWorkgroupSize = 25, - BuiltInWorkgroupId = 26, - BuiltInLocalInvocationId = 27, - BuiltInGlobalInvocationId = 28, - BuiltInLocalInvocationIndex = 29, - BuiltInWorkDim = 30, - BuiltInGlobalSize = 31, - BuiltInEnqueuedWorkgroupSize = 32, - BuiltInGlobalOffset = 33, - BuiltInGlobalLinearId = 34, - BuiltInSubgroupSize = 36, - BuiltInSubgroupMaxSize = 37, - BuiltInNumSubgroups = 38, - BuiltInNumEnqueuedSubgroups = 39, - BuiltInSubgroupId = 40, - BuiltInSubgroupLocalInvocationId = 41, - BuiltInVertexIndex = 42, - BuiltInInstanceIndex = 43, - BuiltInCoreIDARM = 4160, - BuiltInCoreCountARM = 4161, - BuiltInCoreMaxIDARM = 4162, - BuiltInWarpIDARM = 4163, - BuiltInWarpMaxIDARM = 4164, - BuiltInSubgroupEqMask = 4416, - BuiltInSubgroupEqMaskKHR = 4416, - BuiltInSubgroupGeMask = 4417, - BuiltInSubgroupGeMaskKHR = 4417, - BuiltInSubgroupGtMask = 4418, - BuiltInSubgroupGtMaskKHR = 4418, - BuiltInSubgroupLeMask = 4419, - BuiltInSubgroupLeMaskKHR = 4419, - BuiltInSubgroupLtMask = 4420, - BuiltInSubgroupLtMaskKHR = 4420, - BuiltInBaseVertex = 4424, - BuiltInBaseInstance = 4425, - BuiltInDrawIndex = 4426, - BuiltInPrimitiveShadingRateKHR = 4432, - BuiltInDeviceIndex = 4438, - BuiltInViewIndex = 4440, - BuiltInShadingRateKHR = 4444, - BuiltInBaryCoordNoPerspAMD = 4992, - BuiltInBaryCoordNoPerspCentroidAMD = 4993, - BuiltInBaryCoordNoPerspSampleAMD = 4994, - BuiltInBaryCoordSmoothAMD = 4995, - BuiltInBaryCoordSmoothCentroidAMD = 4996, - BuiltInBaryCoordSmoothSampleAMD = 4997, - BuiltInBaryCoordPullModelAMD = 4998, - BuiltInFragStencilRefEXT = 5014, - BuiltInViewportMaskNV = 5253, - BuiltInSecondaryPositionNV = 5257, - BuiltInSecondaryViewportMaskNV = 5258, - BuiltInPositionPerViewNV = 5261, - BuiltInViewportMaskPerViewNV = 5262, - BuiltInFullyCoveredEXT = 5264, - BuiltInTaskCountNV = 5274, - BuiltInPrimitiveCountNV = 5275, - BuiltInPrimitiveIndicesNV = 5276, - BuiltInClipDistancePerViewNV = 5277, - BuiltInCullDistancePerViewNV = 5278, - BuiltInLayerPerViewNV = 5279, - BuiltInMeshViewCountNV = 5280, - BuiltInMeshViewIndicesNV = 5281, - BuiltInBaryCoordKHR = 5286, - BuiltInBaryCoordNV = 5286, - BuiltInBaryCoordNoPerspKHR = 5287, - BuiltInBaryCoordNoPerspNV = 5287, - BuiltInFragSizeEXT = 5292, - BuiltInFragmentSizeNV = 5292, - BuiltInFragInvocationCountEXT = 5293, - BuiltInInvocationsPerPixelNV = 5293, - BuiltInPrimitivePointIndicesEXT = 5294, - BuiltInPrimitiveLineIndicesEXT = 5295, - BuiltInPrimitiveTriangleIndicesEXT = 5296, - BuiltInCullPrimitiveEXT = 5299, - BuiltInLaunchIdKHR = 5319, - BuiltInLaunchIdNV = 5319, - BuiltInLaunchSizeKHR = 5320, - BuiltInLaunchSizeNV = 5320, - BuiltInWorldRayOriginKHR = 5321, - BuiltInWorldRayOriginNV = 5321, - BuiltInWorldRayDirectionKHR = 5322, - BuiltInWorldRayDirectionNV = 5322, - BuiltInObjectRayOriginKHR = 5323, - BuiltInObjectRayOriginNV = 5323, - BuiltInObjectRayDirectionKHR = 5324, - BuiltInObjectRayDirectionNV = 5324, - BuiltInRayTminKHR = 5325, - BuiltInRayTminNV = 5325, - BuiltInRayTmaxKHR = 5326, - BuiltInRayTmaxNV = 5326, - BuiltInInstanceCustomIndexKHR = 5327, - BuiltInInstanceCustomIndexNV = 5327, - BuiltInObjectToWorldKHR = 5330, - BuiltInObjectToWorldNV = 5330, - BuiltInWorldToObjectKHR = 5331, - BuiltInWorldToObjectNV = 5331, - BuiltInHitTNV = 5332, - BuiltInHitKindKHR = 5333, - BuiltInHitKindNV = 5333, - BuiltInCurrentRayTimeNV = 5334, - BuiltInHitTriangleVertexPositionsKHR = 5335, - BuiltInIncomingRayFlagsKHR = 5351, - BuiltInIncomingRayFlagsNV = 5351, - BuiltInRayGeometryIndexKHR = 5352, - BuiltInWarpsPerSMNV = 5374, - BuiltInSMCountNV = 5375, - BuiltInWarpIDNV = 5376, - BuiltInSMIDNV = 5377, - BuiltInCullMaskKHR = 6021, - BuiltInMax = 0x7fffffff, -}; - -enum SelectionControlShift { - SelectionControlFlattenShift = 0, - SelectionControlDontFlattenShift = 1, - SelectionControlMax = 0x7fffffff, -}; - -enum SelectionControlMask { - SelectionControlMaskNone = 0, - SelectionControlFlattenMask = 0x00000001, - SelectionControlDontFlattenMask = 0x00000002, -}; - -enum LoopControlShift { - LoopControlUnrollShift = 0, - LoopControlDontUnrollShift = 1, - LoopControlDependencyInfiniteShift = 2, - LoopControlDependencyLengthShift = 3, - LoopControlMinIterationsShift = 4, - LoopControlMaxIterationsShift = 5, - LoopControlIterationMultipleShift = 6, - LoopControlPeelCountShift = 7, - LoopControlPartialCountShift = 8, - LoopControlInitiationIntervalINTELShift = 16, - LoopControlMaxConcurrencyINTELShift = 17, - LoopControlDependencyArrayINTELShift = 18, - LoopControlPipelineEnableINTELShift = 19, - LoopControlLoopCoalesceINTELShift = 20, - LoopControlMaxInterleavingINTELShift = 21, - LoopControlSpeculatedIterationsINTELShift = 22, - LoopControlNoFusionINTELShift = 23, - LoopControlLoopCountINTELShift = 24, - LoopControlMaxReinvocationDelayINTELShift = 25, - LoopControlMax = 0x7fffffff, -}; - -enum LoopControlMask { - LoopControlMaskNone = 0, - LoopControlUnrollMask = 0x00000001, - LoopControlDontUnrollMask = 0x00000002, - LoopControlDependencyInfiniteMask = 0x00000004, - LoopControlDependencyLengthMask = 0x00000008, - LoopControlMinIterationsMask = 0x00000010, - LoopControlMaxIterationsMask = 0x00000020, - LoopControlIterationMultipleMask = 0x00000040, - LoopControlPeelCountMask = 0x00000080, - LoopControlPartialCountMask = 0x00000100, - LoopControlInitiationIntervalINTELMask = 0x00010000, - LoopControlMaxConcurrencyINTELMask = 0x00020000, - LoopControlDependencyArrayINTELMask = 0x00040000, - LoopControlPipelineEnableINTELMask = 0x00080000, - LoopControlLoopCoalesceINTELMask = 0x00100000, - LoopControlMaxInterleavingINTELMask = 0x00200000, - LoopControlSpeculatedIterationsINTELMask = 0x00400000, - LoopControlNoFusionINTELMask = 0x00800000, - LoopControlLoopCountINTELMask = 0x01000000, - LoopControlMaxReinvocationDelayINTELMask = 0x02000000, -}; - -enum FunctionControlShift { - FunctionControlInlineShift = 0, - FunctionControlDontInlineShift = 1, - FunctionControlPureShift = 2, - FunctionControlConstShift = 3, - FunctionControlOptNoneINTELShift = 16, - FunctionControlMax = 0x7fffffff, -}; - -enum FunctionControlMask { - FunctionControlMaskNone = 0, - FunctionControlInlineMask = 0x00000001, - FunctionControlDontInlineMask = 0x00000002, - FunctionControlPureMask = 0x00000004, - FunctionControlConstMask = 0x00000008, - FunctionControlOptNoneINTELMask = 0x00010000, -}; - -enum MemorySemanticsShift { - MemorySemanticsAcquireShift = 1, - MemorySemanticsReleaseShift = 2, - MemorySemanticsAcquireReleaseShift = 3, - MemorySemanticsSequentiallyConsistentShift = 4, - MemorySemanticsUniformMemoryShift = 6, - MemorySemanticsSubgroupMemoryShift = 7, - MemorySemanticsWorkgroupMemoryShift = 8, - MemorySemanticsCrossWorkgroupMemoryShift = 9, - MemorySemanticsAtomicCounterMemoryShift = 10, - MemorySemanticsImageMemoryShift = 11, - MemorySemanticsOutputMemoryShift = 12, - MemorySemanticsOutputMemoryKHRShift = 12, - MemorySemanticsMakeAvailableShift = 13, - MemorySemanticsMakeAvailableKHRShift = 13, - MemorySemanticsMakeVisibleShift = 14, - MemorySemanticsMakeVisibleKHRShift = 14, - MemorySemanticsVolatileShift = 15, - MemorySemanticsMax = 0x7fffffff, -}; - -enum MemorySemanticsMask { - MemorySemanticsMaskNone = 0, - MemorySemanticsAcquireMask = 0x00000002, - MemorySemanticsReleaseMask = 0x00000004, - MemorySemanticsAcquireReleaseMask = 0x00000008, - MemorySemanticsSequentiallyConsistentMask = 0x00000010, - MemorySemanticsUniformMemoryMask = 0x00000040, - MemorySemanticsSubgroupMemoryMask = 0x00000080, - MemorySemanticsWorkgroupMemoryMask = 0x00000100, - MemorySemanticsCrossWorkgroupMemoryMask = 0x00000200, - MemorySemanticsAtomicCounterMemoryMask = 0x00000400, - MemorySemanticsImageMemoryMask = 0x00000800, - MemorySemanticsOutputMemoryMask = 0x00001000, - MemorySemanticsOutputMemoryKHRMask = 0x00001000, - MemorySemanticsMakeAvailableMask = 0x00002000, - MemorySemanticsMakeAvailableKHRMask = 0x00002000, - MemorySemanticsMakeVisibleMask = 0x00004000, - MemorySemanticsMakeVisibleKHRMask = 0x00004000, - MemorySemanticsVolatileMask = 0x00008000, -}; - -enum MemoryAccessShift { - MemoryAccessVolatileShift = 0, - MemoryAccessAlignedShift = 1, - MemoryAccessNontemporalShift = 2, - MemoryAccessMakePointerAvailableShift = 3, - MemoryAccessMakePointerAvailableKHRShift = 3, - MemoryAccessMakePointerVisibleShift = 4, - MemoryAccessMakePointerVisibleKHRShift = 4, - MemoryAccessNonPrivatePointerShift = 5, - MemoryAccessNonPrivatePointerKHRShift = 5, - MemoryAccessAliasScopeINTELMaskShift = 16, - MemoryAccessNoAliasINTELMaskShift = 17, - MemoryAccessMax = 0x7fffffff, -}; - -enum MemoryAccessMask { - MemoryAccessMaskNone = 0, - MemoryAccessVolatileMask = 0x00000001, - MemoryAccessAlignedMask = 0x00000002, - MemoryAccessNontemporalMask = 0x00000004, - MemoryAccessMakePointerAvailableMask = 0x00000008, - MemoryAccessMakePointerAvailableKHRMask = 0x00000008, - MemoryAccessMakePointerVisibleMask = 0x00000010, - MemoryAccessMakePointerVisibleKHRMask = 0x00000010, - MemoryAccessNonPrivatePointerMask = 0x00000020, - MemoryAccessNonPrivatePointerKHRMask = 0x00000020, - MemoryAccessAliasScopeINTELMaskMask = 0x00010000, - MemoryAccessNoAliasINTELMaskMask = 0x00020000, -}; - -enum Scope { - ScopeCrossDevice = 0, - ScopeDevice = 1, - ScopeWorkgroup = 2, - ScopeSubgroup = 3, - ScopeInvocation = 4, - ScopeQueueFamily = 5, - ScopeQueueFamilyKHR = 5, - ScopeShaderCallKHR = 6, - ScopeMax = 0x7fffffff, -}; - -enum GroupOperation { - GroupOperationReduce = 0, - GroupOperationInclusiveScan = 1, - GroupOperationExclusiveScan = 2, - GroupOperationClusteredReduce = 3, - GroupOperationPartitionedReduceNV = 6, - GroupOperationPartitionedInclusiveScanNV = 7, - GroupOperationPartitionedExclusiveScanNV = 8, - GroupOperationMax = 0x7fffffff, -}; - -enum KernelEnqueueFlags { - KernelEnqueueFlagsNoWait = 0, - KernelEnqueueFlagsWaitKernel = 1, - KernelEnqueueFlagsWaitWorkGroup = 2, - KernelEnqueueFlagsMax = 0x7fffffff, -}; - -enum KernelProfilingInfoShift { - KernelProfilingInfoCmdExecTimeShift = 0, - KernelProfilingInfoMax = 0x7fffffff, -}; - -enum KernelProfilingInfoMask { - KernelProfilingInfoMaskNone = 0, - KernelProfilingInfoCmdExecTimeMask = 0x00000001, -}; - -enum Capability { - CapabilityMatrix = 0, - CapabilityShader = 1, - CapabilityGeometry = 2, - CapabilityTessellation = 3, - CapabilityAddresses = 4, - CapabilityLinkage = 5, - CapabilityKernel = 6, - CapabilityVector16 = 7, - CapabilityFloat16Buffer = 8, - CapabilityFloat16 = 9, - CapabilityFloat64 = 10, - CapabilityInt64 = 11, - CapabilityInt64Atomics = 12, - CapabilityImageBasic = 13, - CapabilityImageReadWrite = 14, - CapabilityImageMipmap = 15, - CapabilityPipes = 17, - CapabilityGroups = 18, - CapabilityDeviceEnqueue = 19, - CapabilityLiteralSampler = 20, - CapabilityAtomicStorage = 21, - CapabilityInt16 = 22, - CapabilityTessellationPointSize = 23, - CapabilityGeometryPointSize = 24, - CapabilityImageGatherExtended = 25, - CapabilityStorageImageMultisample = 27, - CapabilityUniformBufferArrayDynamicIndexing = 28, - CapabilitySampledImageArrayDynamicIndexing = 29, - CapabilityStorageBufferArrayDynamicIndexing = 30, - CapabilityStorageImageArrayDynamicIndexing = 31, - CapabilityClipDistance = 32, - CapabilityCullDistance = 33, - CapabilityImageCubeArray = 34, - CapabilitySampleRateShading = 35, - CapabilityImageRect = 36, - CapabilitySampledRect = 37, - CapabilityGenericPointer = 38, - CapabilityInt8 = 39, - CapabilityInputAttachment = 40, - CapabilitySparseResidency = 41, - CapabilityMinLod = 42, - CapabilitySampled1D = 43, - CapabilityImage1D = 44, - CapabilitySampledCubeArray = 45, - CapabilitySampledBuffer = 46, - CapabilityImageBuffer = 47, - CapabilityImageMSArray = 48, - CapabilityStorageImageExtendedFormats = 49, - CapabilityImageQuery = 50, - CapabilityDerivativeControl = 51, - CapabilityInterpolationFunction = 52, - CapabilityTransformFeedback = 53, - CapabilityGeometryStreams = 54, - CapabilityStorageImageReadWithoutFormat = 55, - CapabilityStorageImageWriteWithoutFormat = 56, - CapabilityMultiViewport = 57, - CapabilitySubgroupDispatch = 58, - CapabilityNamedBarrier = 59, - CapabilityPipeStorage = 60, - CapabilityGroupNonUniform = 61, - CapabilityGroupNonUniformVote = 62, - CapabilityGroupNonUniformArithmetic = 63, - CapabilityGroupNonUniformBallot = 64, - CapabilityGroupNonUniformShuffle = 65, - CapabilityGroupNonUniformShuffleRelative = 66, - CapabilityGroupNonUniformClustered = 67, - CapabilityGroupNonUniformQuad = 68, - CapabilityShaderLayer = 69, - CapabilityShaderViewportIndex = 70, - CapabilityUniformDecoration = 71, - CapabilityCoreBuiltinsARM = 4165, - CapabilityTileImageColorReadAccessEXT = 4166, - CapabilityTileImageDepthReadAccessEXT = 4167, - CapabilityTileImageStencilReadAccessEXT = 4168, - CapabilityFragmentShadingRateKHR = 4422, - CapabilitySubgroupBallotKHR = 4423, - CapabilityDrawParameters = 4427, - CapabilityWorkgroupMemoryExplicitLayoutKHR = 4428, - CapabilityWorkgroupMemoryExplicitLayout8BitAccessKHR = 4429, - CapabilityWorkgroupMemoryExplicitLayout16BitAccessKHR = 4430, - CapabilitySubgroupVoteKHR = 4431, - CapabilityStorageBuffer16BitAccess = 4433, - CapabilityStorageUniformBufferBlock16 = 4433, - CapabilityStorageUniform16 = 4434, - CapabilityUniformAndStorageBuffer16BitAccess = 4434, - CapabilityStoragePushConstant16 = 4435, - CapabilityStorageInputOutput16 = 4436, - CapabilityDeviceGroup = 4437, - CapabilityMultiView = 4439, - CapabilityVariablePointersStorageBuffer = 4441, - CapabilityVariablePointers = 4442, - CapabilityAtomicStorageOps = 4445, - CapabilitySampleMaskPostDepthCoverage = 4447, - CapabilityStorageBuffer8BitAccess = 4448, - CapabilityUniformAndStorageBuffer8BitAccess = 4449, - CapabilityStoragePushConstant8 = 4450, - CapabilityDenormPreserve = 4464, - CapabilityDenormFlushToZero = 4465, - CapabilitySignedZeroInfNanPreserve = 4466, - CapabilityRoundingModeRTE = 4467, - CapabilityRoundingModeRTZ = 4468, - CapabilityRayQueryProvisionalKHR = 4471, - CapabilityRayQueryKHR = 4472, - CapabilityRayTraversalPrimitiveCullingKHR = 4478, - CapabilityRayTracingKHR = 4479, - CapabilityTextureSampleWeightedQCOM = 4484, - CapabilityTextureBoxFilterQCOM = 4485, - CapabilityTextureBlockMatchQCOM = 4486, - CapabilityFloat16ImageAMD = 5008, - CapabilityImageGatherBiasLodAMD = 5009, - CapabilityFragmentMaskAMD = 5010, - CapabilityStencilExportEXT = 5013, - CapabilityImageReadWriteLodAMD = 5015, - CapabilityInt64ImageEXT = 5016, - CapabilityShaderClockKHR = 5055, - CapabilitySampleMaskOverrideCoverageNV = 5249, - CapabilityGeometryShaderPassthroughNV = 5251, - CapabilityShaderViewportIndexLayerEXT = 5254, - CapabilityShaderViewportIndexLayerNV = 5254, - CapabilityShaderViewportMaskNV = 5255, - CapabilityShaderStereoViewNV = 5259, - CapabilityPerViewAttributesNV = 5260, - CapabilityFragmentFullyCoveredEXT = 5265, - CapabilityMeshShadingNV = 5266, - CapabilityImageFootprintNV = 5282, - CapabilityMeshShadingEXT = 5283, - CapabilityFragmentBarycentricKHR = 5284, - CapabilityFragmentBarycentricNV = 5284, - CapabilityComputeDerivativeGroupQuadsNV = 5288, - CapabilityFragmentDensityEXT = 5291, - CapabilityShadingRateNV = 5291, - CapabilityGroupNonUniformPartitionedNV = 5297, - CapabilityShaderNonUniform = 5301, - CapabilityShaderNonUniformEXT = 5301, - CapabilityRuntimeDescriptorArray = 5302, - CapabilityRuntimeDescriptorArrayEXT = 5302, - CapabilityInputAttachmentArrayDynamicIndexing = 5303, - CapabilityInputAttachmentArrayDynamicIndexingEXT = 5303, - CapabilityUniformTexelBufferArrayDynamicIndexing = 5304, - CapabilityUniformTexelBufferArrayDynamicIndexingEXT = 5304, - CapabilityStorageTexelBufferArrayDynamicIndexing = 5305, - CapabilityStorageTexelBufferArrayDynamicIndexingEXT = 5305, - CapabilityUniformBufferArrayNonUniformIndexing = 5306, - CapabilityUniformBufferArrayNonUniformIndexingEXT = 5306, - CapabilitySampledImageArrayNonUniformIndexing = 5307, - CapabilitySampledImageArrayNonUniformIndexingEXT = 5307, - CapabilityStorageBufferArrayNonUniformIndexing = 5308, - CapabilityStorageBufferArrayNonUniformIndexingEXT = 5308, - CapabilityStorageImageArrayNonUniformIndexing = 5309, - CapabilityStorageImageArrayNonUniformIndexingEXT = 5309, - CapabilityInputAttachmentArrayNonUniformIndexing = 5310, - CapabilityInputAttachmentArrayNonUniformIndexingEXT = 5310, - CapabilityUniformTexelBufferArrayNonUniformIndexing = 5311, - CapabilityUniformTexelBufferArrayNonUniformIndexingEXT = 5311, - CapabilityStorageTexelBufferArrayNonUniformIndexing = 5312, - CapabilityStorageTexelBufferArrayNonUniformIndexingEXT = 5312, - CapabilityRayTracingPositionFetchKHR = 5336, - CapabilityRayTracingNV = 5340, - CapabilityRayTracingMotionBlurNV = 5341, - CapabilityVulkanMemoryModel = 5345, - CapabilityVulkanMemoryModelKHR = 5345, - CapabilityVulkanMemoryModelDeviceScope = 5346, - CapabilityVulkanMemoryModelDeviceScopeKHR = 5346, - CapabilityPhysicalStorageBufferAddresses = 5347, - CapabilityPhysicalStorageBufferAddressesEXT = 5347, - CapabilityComputeDerivativeGroupLinearNV = 5350, - CapabilityRayTracingProvisionalKHR = 5353, - CapabilityCooperativeMatrixNV = 5357, - CapabilityFragmentShaderSampleInterlockEXT = 5363, - CapabilityFragmentShaderShadingRateInterlockEXT = 5372, - CapabilityShaderSMBuiltinsNV = 5373, - CapabilityFragmentShaderPixelInterlockEXT = 5378, - CapabilityDemoteToHelperInvocation = 5379, - CapabilityDemoteToHelperInvocationEXT = 5379, - CapabilityRayTracingOpacityMicromapEXT = 5381, - CapabilityShaderInvocationReorderNV = 5383, - CapabilityBindlessTextureNV = 5390, - CapabilityRayQueryPositionFetchKHR = 5391, - CapabilitySubgroupShuffleINTEL = 5568, - 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, - CapabilityFPGADSPControlINTEL = 5908, - CapabilityMemoryAccessAliasingINTEL = 5910, - CapabilityFPGAInvocationPipeliningAttributesINTEL = 5916, - CapabilityFPGABufferLocationINTEL = 5920, - CapabilityArbitraryPrecisionFixedPointINTEL = 5922, - CapabilityUSMStorageClassesINTEL = 5935, - CapabilityRuntimeAlignedAttributeINTEL = 5939, - CapabilityIOPipesINTEL = 5943, - CapabilityBlockingPipesINTEL = 5945, - CapabilityFPGARegINTEL = 5948, - CapabilityDotProductInputAll = 6016, - CapabilityDotProductInputAllKHR = 6016, - CapabilityDotProductInput4x8Bit = 6017, - CapabilityDotProductInput4x8BitKHR = 6017, - CapabilityDotProductInput4x8BitPacked = 6018, - CapabilityDotProductInput4x8BitPackedKHR = 6018, - CapabilityDotProduct = 6019, - CapabilityDotProductKHR = 6019, - CapabilityRayCullMaskKHR = 6020, - CapabilityCooperativeMatrixKHR = 6022, - CapabilityBitInstructions = 6025, - CapabilityGroupNonUniformRotateKHR = 6026, - CapabilityAtomicFloat32AddEXT = 6033, - CapabilityAtomicFloat64AddEXT = 6034, - CapabilityLongConstantCompositeINTEL = 6089, - CapabilityOptNoneINTEL = 6094, - CapabilityAtomicFloat16AddEXT = 6095, - CapabilityDebugInfoModuleINTEL = 6114, - CapabilityBFloat16ConversionINTEL = 6115, - CapabilitySplitBarrierINTEL = 6141, - CapabilityFPGAKernelAttributesv2INTEL = 6161, - CapabilityFPMaxErrorINTEL = 6169, - CapabilityFPGALatencyControlINTEL = 6171, - CapabilityFPGAArgumentInterfacesINTEL = 6174, - CapabilityGroupUniformArithmeticKHR = 6400, - CapabilityMax = 0x7fffffff, -}; - -enum RayFlagsShift { - RayFlagsOpaqueKHRShift = 0, - RayFlagsNoOpaqueKHRShift = 1, - RayFlagsTerminateOnFirstHitKHRShift = 2, - RayFlagsSkipClosestHitShaderKHRShift = 3, - RayFlagsCullBackFacingTrianglesKHRShift = 4, - RayFlagsCullFrontFacingTrianglesKHRShift = 5, - RayFlagsCullOpaqueKHRShift = 6, - RayFlagsCullNoOpaqueKHRShift = 7, - RayFlagsSkipTrianglesKHRShift = 8, - RayFlagsSkipAABBsKHRShift = 9, - RayFlagsForceOpacityMicromap2StateEXTShift = 10, - RayFlagsMax = 0x7fffffff, -}; - -enum RayFlagsMask { - RayFlagsMaskNone = 0, - RayFlagsOpaqueKHRMask = 0x00000001, - RayFlagsNoOpaqueKHRMask = 0x00000002, - RayFlagsTerminateOnFirstHitKHRMask = 0x00000004, - RayFlagsSkipClosestHitShaderKHRMask = 0x00000008, - RayFlagsCullBackFacingTrianglesKHRMask = 0x00000010, - RayFlagsCullFrontFacingTrianglesKHRMask = 0x00000020, - RayFlagsCullOpaqueKHRMask = 0x00000040, - RayFlagsCullNoOpaqueKHRMask = 0x00000080, - RayFlagsSkipTrianglesKHRMask = 0x00000100, - RayFlagsSkipAABBsKHRMask = 0x00000200, - RayFlagsForceOpacityMicromap2StateEXTMask = 0x00000400, -}; - -enum RayQueryIntersection { - RayQueryIntersectionRayQueryCandidateIntersectionKHR = 0, - RayQueryIntersectionRayQueryCommittedIntersectionKHR = 1, - RayQueryIntersectionMax = 0x7fffffff, -}; - -enum RayQueryCommittedIntersectionType { - RayQueryCommittedIntersectionTypeRayQueryCommittedIntersectionNoneKHR = 0, - RayQueryCommittedIntersectionTypeRayQueryCommittedIntersectionTriangleKHR = 1, - RayQueryCommittedIntersectionTypeRayQueryCommittedIntersectionGeneratedKHR = 2, - RayQueryCommittedIntersectionTypeMax = 0x7fffffff, -}; - -enum RayQueryCandidateIntersectionType { - RayQueryCandidateIntersectionTypeRayQueryCandidateIntersectionTriangleKHR = 0, - RayQueryCandidateIntersectionTypeRayQueryCandidateIntersectionAABBKHR = 1, - 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 { - PackedVectorFormatPackedVectorFormat4x8Bit = 0, - PackedVectorFormatPackedVectorFormat4x8BitKHR = 0, - PackedVectorFormatMax = 0x7fffffff, -}; - -enum CooperativeMatrixOperandsShift { - CooperativeMatrixOperandsMatrixASignedComponentsKHRShift = 0, - CooperativeMatrixOperandsMatrixBSignedComponentsKHRShift = 1, - CooperativeMatrixOperandsMatrixCSignedComponentsKHRShift = 2, - CooperativeMatrixOperandsMatrixResultSignedComponentsKHRShift = 3, - CooperativeMatrixOperandsSaturatingAccumulationKHRShift = 4, - CooperativeMatrixOperandsMax = 0x7fffffff, -}; - -enum CooperativeMatrixOperandsMask { - CooperativeMatrixOperandsMaskNone = 0, - CooperativeMatrixOperandsMatrixASignedComponentsKHRMask = 0x00000001, - CooperativeMatrixOperandsMatrixBSignedComponentsKHRMask = 0x00000002, - CooperativeMatrixOperandsMatrixCSignedComponentsKHRMask = 0x00000004, - CooperativeMatrixOperandsMatrixResultSignedComponentsKHRMask = 0x00000008, - CooperativeMatrixOperandsSaturatingAccumulationKHRMask = 0x00000010, -}; - -enum CooperativeMatrixLayout { - CooperativeMatrixLayoutRowMajorKHR = 0, - CooperativeMatrixLayoutColumnMajorKHR = 1, - CooperativeMatrixLayoutMax = 0x7fffffff, -}; - -enum CooperativeMatrixUse { - CooperativeMatrixUseMatrixAKHR = 0, - CooperativeMatrixUseMatrixBKHR = 1, - CooperativeMatrixUseMatrixAccumulatorKHR = 2, - CooperativeMatrixUseMax = 0x7fffffff, -}; - -enum Op { - OpNop = 0, - OpUndef = 1, - OpSourceContinued = 2, - OpSource = 3, - OpSourceExtension = 4, - OpName = 5, - OpMemberName = 6, - OpString = 7, - OpLine = 8, - OpExtension = 10, - OpExtInstImport = 11, - OpExtInst = 12, - OpMemoryModel = 14, - OpEntryPoint = 15, - OpExecutionMode = 16, - OpCapability = 17, - OpTypeVoid = 19, - OpTypeBool = 20, - OpTypeInt = 21, - OpTypeFloat = 22, - OpTypeVector = 23, - OpTypeMatrix = 24, - OpTypeImage = 25, - OpTypeSampler = 26, - OpTypeSampledImage = 27, - OpTypeArray = 28, - OpTypeRuntimeArray = 29, - OpTypeStruct = 30, - OpTypeOpaque = 31, - OpTypePointer = 32, - OpTypeFunction = 33, - OpTypeEvent = 34, - OpTypeDeviceEvent = 35, - OpTypeReserveId = 36, - OpTypeQueue = 37, - OpTypePipe = 38, - OpTypeForwardPointer = 39, - OpConstantTrue = 41, - OpConstantFalse = 42, - OpConstant = 43, - OpConstantComposite = 44, - OpConstantSampler = 45, - OpConstantNull = 46, - OpSpecConstantTrue = 48, - OpSpecConstantFalse = 49, - OpSpecConstant = 50, - OpSpecConstantComposite = 51, - OpSpecConstantOp = 52, - OpFunction = 54, - OpFunctionParameter = 55, - OpFunctionEnd = 56, - OpFunctionCall = 57, - OpVariable = 59, - OpImageTexelPointer = 60, - OpLoad = 61, - OpStore = 62, - OpCopyMemory = 63, - OpCopyMemorySized = 64, - OpAccessChain = 65, - OpInBoundsAccessChain = 66, - OpPtrAccessChain = 67, - OpArrayLength = 68, - OpGenericPtrMemSemantics = 69, - OpInBoundsPtrAccessChain = 70, - OpDecorate = 71, - OpMemberDecorate = 72, - OpDecorationGroup = 73, - OpGroupDecorate = 74, - OpGroupMemberDecorate = 75, - OpVectorExtractDynamic = 77, - OpVectorInsertDynamic = 78, - OpVectorShuffle = 79, - OpCompositeConstruct = 80, - OpCompositeExtract = 81, - OpCompositeInsert = 82, - OpCopyObject = 83, - OpTranspose = 84, - OpSampledImage = 86, - OpImageSampleImplicitLod = 87, - OpImageSampleExplicitLod = 88, - OpImageSampleDrefImplicitLod = 89, - OpImageSampleDrefExplicitLod = 90, - OpImageSampleProjImplicitLod = 91, - OpImageSampleProjExplicitLod = 92, - OpImageSampleProjDrefImplicitLod = 93, - OpImageSampleProjDrefExplicitLod = 94, - OpImageFetch = 95, - OpImageGather = 96, - OpImageDrefGather = 97, - OpImageRead = 98, - OpImageWrite = 99, - OpImage = 100, - OpImageQueryFormat = 101, - OpImageQueryOrder = 102, - OpImageQuerySizeLod = 103, - OpImageQuerySize = 104, - OpImageQueryLod = 105, - OpImageQueryLevels = 106, - OpImageQuerySamples = 107, - OpConvertFToU = 109, - OpConvertFToS = 110, - OpConvertSToF = 111, - OpConvertUToF = 112, - OpUConvert = 113, - OpSConvert = 114, - OpFConvert = 115, - OpQuantizeToF16 = 116, - OpConvertPtrToU = 117, - OpSatConvertSToU = 118, - OpSatConvertUToS = 119, - OpConvertUToPtr = 120, - OpPtrCastToGeneric = 121, - OpGenericCastToPtr = 122, - OpGenericCastToPtrExplicit = 123, - OpBitcast = 124, - OpSNegate = 126, - OpFNegate = 127, - OpIAdd = 128, - OpFAdd = 129, - OpISub = 130, - OpFSub = 131, - OpIMul = 132, - OpFMul = 133, - OpUDiv = 134, - OpSDiv = 135, - OpFDiv = 136, - OpUMod = 137, - OpSRem = 138, - OpSMod = 139, - OpFRem = 140, - OpFMod = 141, - OpVectorTimesScalar = 142, - OpMatrixTimesScalar = 143, - OpVectorTimesMatrix = 144, - OpMatrixTimesVector = 145, - OpMatrixTimesMatrix = 146, - OpOuterProduct = 147, - OpDot = 148, - OpIAddCarry = 149, - OpISubBorrow = 150, - OpUMulExtended = 151, - OpSMulExtended = 152, - OpAny = 154, - OpAll = 155, - OpIsNan = 156, - OpIsInf = 157, - OpIsFinite = 158, - OpIsNormal = 159, - OpSignBitSet = 160, - OpLessOrGreater = 161, - OpOrdered = 162, - OpUnordered = 163, - OpLogicalEqual = 164, - OpLogicalNotEqual = 165, - OpLogicalOr = 166, - OpLogicalAnd = 167, - OpLogicalNot = 168, - OpSelect = 169, - OpIEqual = 170, - OpINotEqual = 171, - OpUGreaterThan = 172, - OpSGreaterThan = 173, - OpUGreaterThanEqual = 174, - OpSGreaterThanEqual = 175, - OpULessThan = 176, - OpSLessThan = 177, - OpULessThanEqual = 178, - OpSLessThanEqual = 179, - OpFOrdEqual = 180, - OpFUnordEqual = 181, - OpFOrdNotEqual = 182, - OpFUnordNotEqual = 183, - OpFOrdLessThan = 184, - OpFUnordLessThan = 185, - OpFOrdGreaterThan = 186, - OpFUnordGreaterThan = 187, - OpFOrdLessThanEqual = 188, - OpFUnordLessThanEqual = 189, - OpFOrdGreaterThanEqual = 190, - OpFUnordGreaterThanEqual = 191, - OpShiftRightLogical = 194, - OpShiftRightArithmetic = 195, - OpShiftLeftLogical = 196, - OpBitwiseOr = 197, - OpBitwiseXor = 198, - OpBitwiseAnd = 199, - OpNot = 200, - OpBitFieldInsert = 201, - OpBitFieldSExtract = 202, - OpBitFieldUExtract = 203, - OpBitReverse = 204, - OpBitCount = 205, - OpDPdx = 207, - OpDPdy = 208, - OpFwidth = 209, - OpDPdxFine = 210, - OpDPdyFine = 211, - OpFwidthFine = 212, - OpDPdxCoarse = 213, - OpDPdyCoarse = 214, - OpFwidthCoarse = 215, - OpEmitVertex = 218, - OpEndPrimitive = 219, - OpEmitStreamVertex = 220, - OpEndStreamPrimitive = 221, - OpControlBarrier = 224, - OpMemoryBarrier = 225, - OpAtomicLoad = 227, - OpAtomicStore = 228, - OpAtomicExchange = 229, - OpAtomicCompareExchange = 230, - OpAtomicCompareExchangeWeak = 231, - OpAtomicIIncrement = 232, - OpAtomicIDecrement = 233, - OpAtomicIAdd = 234, - OpAtomicISub = 235, - OpAtomicSMin = 236, - OpAtomicUMin = 237, - OpAtomicSMax = 238, - OpAtomicUMax = 239, - OpAtomicAnd = 240, - OpAtomicOr = 241, - OpAtomicXor = 242, - OpPhi = 245, - OpLoopMerge = 246, - OpSelectionMerge = 247, - OpLabel = 248, - OpBranch = 249, - OpBranchConditional = 250, - OpSwitch = 251, - OpKill = 252, - OpReturn = 253, - OpReturnValue = 254, - OpUnreachable = 255, - OpLifetimeStart = 256, - OpLifetimeStop = 257, - OpGroupAsyncCopy = 259, - OpGroupWaitEvents = 260, - OpGroupAll = 261, - OpGroupAny = 262, - OpGroupBroadcast = 263, - OpGroupIAdd = 264, - OpGroupFAdd = 265, - OpGroupFMin = 266, - OpGroupUMin = 267, - OpGroupSMin = 268, - OpGroupFMax = 269, - OpGroupUMax = 270, - OpGroupSMax = 271, - OpReadPipe = 274, - OpWritePipe = 275, - OpReservedReadPipe = 276, - OpReservedWritePipe = 277, - OpReserveReadPipePackets = 278, - OpReserveWritePipePackets = 279, - OpCommitReadPipe = 280, - OpCommitWritePipe = 281, - OpIsValidReserveId = 282, - OpGetNumPipePackets = 283, - OpGetMaxPipePackets = 284, - OpGroupReserveReadPipePackets = 285, - OpGroupReserveWritePipePackets = 286, - OpGroupCommitReadPipe = 287, - OpGroupCommitWritePipe = 288, - OpEnqueueMarker = 291, - OpEnqueueKernel = 292, - OpGetKernelNDrangeSubGroupCount = 293, - OpGetKernelNDrangeMaxSubGroupSize = 294, - OpGetKernelWorkGroupSize = 295, - OpGetKernelPreferredWorkGroupSizeMultiple = 296, - OpRetainEvent = 297, - OpReleaseEvent = 298, - OpCreateUserEvent = 299, - OpIsValidEvent = 300, - OpSetUserEventStatus = 301, - OpCaptureEventProfilingInfo = 302, - OpGetDefaultQueue = 303, - OpBuildNDRange = 304, - OpImageSparseSampleImplicitLod = 305, - OpImageSparseSampleExplicitLod = 306, - OpImageSparseSampleDrefImplicitLod = 307, - OpImageSparseSampleDrefExplicitLod = 308, - OpImageSparseSampleProjImplicitLod = 309, - OpImageSparseSampleProjExplicitLod = 310, - OpImageSparseSampleProjDrefImplicitLod = 311, - OpImageSparseSampleProjDrefExplicitLod = 312, - OpImageSparseFetch = 313, - OpImageSparseGather = 314, - OpImageSparseDrefGather = 315, - OpImageSparseTexelsResident = 316, - OpNoLine = 317, - OpAtomicFlagTestAndSet = 318, - OpAtomicFlagClear = 319, - OpImageSparseRead = 320, - OpSizeOf = 321, - OpTypePipeStorage = 322, - OpConstantPipeStorage = 323, - OpCreatePipeFromPipeStorage = 324, - OpGetKernelLocalSizeForSubgroupCount = 325, - OpGetKernelMaxNumSubgroups = 326, - OpTypeNamedBarrier = 327, - OpNamedBarrierInitialize = 328, - OpMemoryNamedBarrier = 329, - OpModuleProcessed = 330, - OpExecutionModeId = 331, - OpDecorateId = 332, - OpGroupNonUniformElect = 333, - OpGroupNonUniformAll = 334, - OpGroupNonUniformAny = 335, - OpGroupNonUniformAllEqual = 336, - OpGroupNonUniformBroadcast = 337, - OpGroupNonUniformBroadcastFirst = 338, - OpGroupNonUniformBallot = 339, - OpGroupNonUniformInverseBallot = 340, - OpGroupNonUniformBallotBitExtract = 341, - OpGroupNonUniformBallotBitCount = 342, - OpGroupNonUniformBallotFindLSB = 343, - OpGroupNonUniformBallotFindMSB = 344, - OpGroupNonUniformShuffle = 345, - OpGroupNonUniformShuffleXor = 346, - OpGroupNonUniformShuffleUp = 347, - OpGroupNonUniformShuffleDown = 348, - OpGroupNonUniformIAdd = 349, - OpGroupNonUniformFAdd = 350, - OpGroupNonUniformIMul = 351, - OpGroupNonUniformFMul = 352, - OpGroupNonUniformSMin = 353, - OpGroupNonUniformUMin = 354, - OpGroupNonUniformFMin = 355, - OpGroupNonUniformSMax = 356, - OpGroupNonUniformUMax = 357, - OpGroupNonUniformFMax = 358, - OpGroupNonUniformBitwiseAnd = 359, - OpGroupNonUniformBitwiseOr = 360, - OpGroupNonUniformBitwiseXor = 361, - OpGroupNonUniformLogicalAnd = 362, - OpGroupNonUniformLogicalOr = 363, - OpGroupNonUniformLogicalXor = 364, - OpGroupNonUniformQuadBroadcast = 365, - OpGroupNonUniformQuadSwap = 366, - OpCopyLogical = 400, - OpPtrEqual = 401, - OpPtrNotEqual = 402, - OpPtrDiff = 403, - OpColorAttachmentReadEXT = 4160, - OpDepthAttachmentReadEXT = 4161, - OpStencilAttachmentReadEXT = 4162, - OpTerminateInvocation = 4416, - OpSubgroupBallotKHR = 4421, - OpSubgroupFirstInvocationKHR = 4422, - OpSubgroupAllKHR = 4428, - OpSubgroupAnyKHR = 4429, - OpSubgroupAllEqualKHR = 4430, - OpGroupNonUniformRotateKHR = 4431, - OpSubgroupReadInvocationKHR = 4432, - OpTraceRayKHR = 4445, - OpExecuteCallableKHR = 4446, - OpConvertUToAccelerationStructureKHR = 4447, - OpIgnoreIntersectionKHR = 4448, - OpTerminateRayKHR = 4449, - OpSDot = 4450, - OpSDotKHR = 4450, - OpUDot = 4451, - OpUDotKHR = 4451, - OpSUDot = 4452, - OpSUDotKHR = 4452, - OpSDotAccSat = 4453, - OpSDotAccSatKHR = 4453, - OpUDotAccSat = 4454, - OpUDotAccSatKHR = 4454, - OpSUDotAccSat = 4455, - OpSUDotAccSatKHR = 4455, - OpTypeCooperativeMatrixKHR = 4456, - OpCooperativeMatrixLoadKHR = 4457, - OpCooperativeMatrixStoreKHR = 4458, - OpCooperativeMatrixMulAddKHR = 4459, - OpCooperativeMatrixLengthKHR = 4460, - OpTypeRayQueryKHR = 4472, - OpRayQueryInitializeKHR = 4473, - OpRayQueryTerminateKHR = 4474, - OpRayQueryGenerateIntersectionKHR = 4475, - OpRayQueryConfirmIntersectionKHR = 4476, - OpRayQueryProceedKHR = 4477, - OpRayQueryGetIntersectionTypeKHR = 4479, - OpImageSampleWeightedQCOM = 4480, - OpImageBoxFilterQCOM = 4481, - OpImageBlockMatchSSDQCOM = 4482, - OpImageBlockMatchSADQCOM = 4483, - OpGroupIAddNonUniformAMD = 5000, - OpGroupFAddNonUniformAMD = 5001, - OpGroupFMinNonUniformAMD = 5002, - OpGroupUMinNonUniformAMD = 5003, - OpGroupSMinNonUniformAMD = 5004, - OpGroupFMaxNonUniformAMD = 5005, - OpGroupUMaxNonUniformAMD = 5006, - OpGroupSMaxNonUniformAMD = 5007, - OpFragmentMaskFetchAMD = 5011, - OpFragmentFetchAMD = 5012, - OpReadClockKHR = 5056, - OpHitObjectRecordHitMotionNV = 5249, - OpHitObjectRecordHitWithIndexMotionNV = 5250, - OpHitObjectRecordMissMotionNV = 5251, - OpHitObjectGetWorldToObjectNV = 5252, - OpHitObjectGetObjectToWorldNV = 5253, - OpHitObjectGetObjectRayDirectionNV = 5254, - OpHitObjectGetObjectRayOriginNV = 5255, - OpHitObjectTraceRayMotionNV = 5256, - OpHitObjectGetShaderRecordBufferHandleNV = 5257, - OpHitObjectGetShaderBindingTableRecordIndexNV = 5258, - OpHitObjectRecordEmptyNV = 5259, - OpHitObjectTraceRayNV = 5260, - OpHitObjectRecordHitNV = 5261, - OpHitObjectRecordHitWithIndexNV = 5262, - OpHitObjectRecordMissNV = 5263, - OpHitObjectExecuteShaderNV = 5264, - OpHitObjectGetCurrentTimeNV = 5265, - OpHitObjectGetAttributesNV = 5266, - OpHitObjectGetHitKindNV = 5267, - OpHitObjectGetPrimitiveIndexNV = 5268, - OpHitObjectGetGeometryIndexNV = 5269, - OpHitObjectGetInstanceIdNV = 5270, - OpHitObjectGetInstanceCustomIndexNV = 5271, - OpHitObjectGetWorldRayDirectionNV = 5272, - OpHitObjectGetWorldRayOriginNV = 5273, - OpHitObjectGetRayTMaxNV = 5274, - OpHitObjectGetRayTMinNV = 5275, - OpHitObjectIsEmptyNV = 5276, - OpHitObjectIsHitNV = 5277, - OpHitObjectIsMissNV = 5278, - OpReorderThreadWithHitObjectNV = 5279, - OpReorderThreadWithHintNV = 5280, - OpTypeHitObjectNV = 5281, - OpImageSampleFootprintNV = 5283, - OpEmitMeshTasksEXT = 5294, - OpSetMeshOutputsEXT = 5295, - OpGroupNonUniformPartitionNV = 5296, - OpWritePackedPrimitiveIndices4x8NV = 5299, - OpReportIntersectionKHR = 5334, - OpReportIntersectionNV = 5334, - OpIgnoreIntersectionNV = 5335, - OpTerminateRayNV = 5336, - OpTraceNV = 5337, - OpTraceMotionNV = 5338, - OpTraceRayMotionNV = 5339, - OpRayQueryGetIntersectionTriangleVertexPositionsKHR = 5340, - OpTypeAccelerationStructureKHR = 5341, - OpTypeAccelerationStructureNV = 5341, - OpExecuteCallableNV = 5344, - OpTypeCooperativeMatrixNV = 5358, - OpCooperativeMatrixLoadNV = 5359, - OpCooperativeMatrixStoreNV = 5360, - OpCooperativeMatrixMulAddNV = 5361, - OpCooperativeMatrixLengthNV = 5362, - OpBeginInvocationInterlockEXT = 5364, - OpEndInvocationInterlockEXT = 5365, - OpDemoteToHelperInvocation = 5380, - OpDemoteToHelperInvocationEXT = 5380, - OpIsHelperInvocationEXT = 5381, - OpConvertUToImageNV = 5391, - OpConvertUToSamplerNV = 5392, - OpConvertImageToUNV = 5393, - OpConvertSamplerToUNV = 5394, - OpConvertUToSampledImageNV = 5395, - OpConvertSampledImageToUNV = 5396, - OpSamplerImageAddressingModeNV = 5397, - OpSubgroupShuffleINTEL = 5571, - OpSubgroupShuffleDownINTEL = 5572, - OpSubgroupShuffleUpINTEL = 5573, - OpSubgroupShuffleXorINTEL = 5574, - OpSubgroupBlockReadINTEL = 5575, - OpSubgroupBlockWriteINTEL = 5576, - OpSubgroupImageBlockReadINTEL = 5577, - OpSubgroupImageBlockWriteINTEL = 5578, - OpSubgroupImageMediaBlockReadINTEL = 5580, - OpSubgroupImageMediaBlockWriteINTEL = 5581, - OpUCountLeadingZerosINTEL = 5585, - OpUCountTrailingZerosINTEL = 5586, - OpAbsISubINTEL = 5587, - OpAbsUSubINTEL = 5588, - OpIAddSatINTEL = 5589, - OpUAddSatINTEL = 5590, - OpIAverageINTEL = 5591, - OpUAverageINTEL = 5592, - OpIAverageRoundedINTEL = 5593, - OpUAverageRoundedINTEL = 5594, - OpISubSatINTEL = 5595, - OpUSubSatINTEL = 5596, - OpIMul32x16INTEL = 5597, - OpUMul32x16INTEL = 5598, - OpConstantFunctionPointerINTEL = 5600, - OpFunctionPointerCallINTEL = 5601, - OpAsmTargetINTEL = 5609, - OpAsmINTEL = 5610, - OpAsmCallINTEL = 5611, - OpAtomicFMinEXT = 5614, - OpAtomicFMaxEXT = 5615, - OpAssumeTrueKHR = 5630, - OpExpectKHR = 5631, - OpDecorateString = 5632, - OpDecorateStringGOOGLE = 5632, - OpMemberDecorateString = 5633, - OpMemberDecorateStringGOOGLE = 5633, - OpVmeImageINTEL = 5699, - OpTypeVmeImageINTEL = 5700, - OpTypeAvcImePayloadINTEL = 5701, - OpTypeAvcRefPayloadINTEL = 5702, - OpTypeAvcSicPayloadINTEL = 5703, - OpTypeAvcMcePayloadINTEL = 5704, - OpTypeAvcMceResultINTEL = 5705, - OpTypeAvcImeResultINTEL = 5706, - OpTypeAvcImeResultSingleReferenceStreamoutINTEL = 5707, - OpTypeAvcImeResultDualReferenceStreamoutINTEL = 5708, - OpTypeAvcImeSingleReferenceStreaminINTEL = 5709, - OpTypeAvcImeDualReferenceStreaminINTEL = 5710, - OpTypeAvcRefResultINTEL = 5711, - OpTypeAvcSicResultINTEL = 5712, - OpSubgroupAvcMceGetDefaultInterBaseMultiReferencePenaltyINTEL = 5713, - OpSubgroupAvcMceSetInterBaseMultiReferencePenaltyINTEL = 5714, - OpSubgroupAvcMceGetDefaultInterShapePenaltyINTEL = 5715, - OpSubgroupAvcMceSetInterShapePenaltyINTEL = 5716, - OpSubgroupAvcMceGetDefaultInterDirectionPenaltyINTEL = 5717, - OpSubgroupAvcMceSetInterDirectionPenaltyINTEL = 5718, - OpSubgroupAvcMceGetDefaultIntraLumaShapePenaltyINTEL = 5719, - OpSubgroupAvcMceGetDefaultInterMotionVectorCostTableINTEL = 5720, - OpSubgroupAvcMceGetDefaultHighPenaltyCostTableINTEL = 5721, - OpSubgroupAvcMceGetDefaultMediumPenaltyCostTableINTEL = 5722, - OpSubgroupAvcMceGetDefaultLowPenaltyCostTableINTEL = 5723, - OpSubgroupAvcMceSetMotionVectorCostFunctionINTEL = 5724, - OpSubgroupAvcMceGetDefaultIntraLumaModePenaltyINTEL = 5725, - OpSubgroupAvcMceGetDefaultNonDcLumaIntraPenaltyINTEL = 5726, - OpSubgroupAvcMceGetDefaultIntraChromaModeBasePenaltyINTEL = 5727, - OpSubgroupAvcMceSetAcOnlyHaarINTEL = 5728, - OpSubgroupAvcMceSetSourceInterlacedFieldPolarityINTEL = 5729, - OpSubgroupAvcMceSetSingleReferenceInterlacedFieldPolarityINTEL = 5730, - OpSubgroupAvcMceSetDualReferenceInterlacedFieldPolaritiesINTEL = 5731, - OpSubgroupAvcMceConvertToImePayloadINTEL = 5732, - OpSubgroupAvcMceConvertToImeResultINTEL = 5733, - OpSubgroupAvcMceConvertToRefPayloadINTEL = 5734, - OpSubgroupAvcMceConvertToRefResultINTEL = 5735, - OpSubgroupAvcMceConvertToSicPayloadINTEL = 5736, - OpSubgroupAvcMceConvertToSicResultINTEL = 5737, - OpSubgroupAvcMceGetMotionVectorsINTEL = 5738, - OpSubgroupAvcMceGetInterDistortionsINTEL = 5739, - OpSubgroupAvcMceGetBestInterDistortionsINTEL = 5740, - OpSubgroupAvcMceGetInterMajorShapeINTEL = 5741, - OpSubgroupAvcMceGetInterMinorShapeINTEL = 5742, - OpSubgroupAvcMceGetInterDirectionsINTEL = 5743, - OpSubgroupAvcMceGetInterMotionVectorCountINTEL = 5744, - OpSubgroupAvcMceGetInterReferenceIdsINTEL = 5745, - OpSubgroupAvcMceGetInterReferenceInterlacedFieldPolaritiesINTEL = 5746, - OpSubgroupAvcImeInitializeINTEL = 5747, - OpSubgroupAvcImeSetSingleReferenceINTEL = 5748, - OpSubgroupAvcImeSetDualReferenceINTEL = 5749, - OpSubgroupAvcImeRefWindowSizeINTEL = 5750, - OpSubgroupAvcImeAdjustRefOffsetINTEL = 5751, - OpSubgroupAvcImeConvertToMcePayloadINTEL = 5752, - OpSubgroupAvcImeSetMaxMotionVectorCountINTEL = 5753, - OpSubgroupAvcImeSetUnidirectionalMixDisableINTEL = 5754, - OpSubgroupAvcImeSetEarlySearchTerminationThresholdINTEL = 5755, - OpSubgroupAvcImeSetWeightedSadINTEL = 5756, - OpSubgroupAvcImeEvaluateWithSingleReferenceINTEL = 5757, - OpSubgroupAvcImeEvaluateWithDualReferenceINTEL = 5758, - OpSubgroupAvcImeEvaluateWithSingleReferenceStreaminINTEL = 5759, - OpSubgroupAvcImeEvaluateWithDualReferenceStreaminINTEL = 5760, - OpSubgroupAvcImeEvaluateWithSingleReferenceStreamoutINTEL = 5761, - OpSubgroupAvcImeEvaluateWithDualReferenceStreamoutINTEL = 5762, - OpSubgroupAvcImeEvaluateWithSingleReferenceStreaminoutINTEL = 5763, - OpSubgroupAvcImeEvaluateWithDualReferenceStreaminoutINTEL = 5764, - OpSubgroupAvcImeConvertToMceResultINTEL = 5765, - OpSubgroupAvcImeGetSingleReferenceStreaminINTEL = 5766, - OpSubgroupAvcImeGetDualReferenceStreaminINTEL = 5767, - OpSubgroupAvcImeStripSingleReferenceStreamoutINTEL = 5768, - OpSubgroupAvcImeStripDualReferenceStreamoutINTEL = 5769, - OpSubgroupAvcImeGetStreamoutSingleReferenceMajorShapeMotionVectorsINTEL = 5770, - OpSubgroupAvcImeGetStreamoutSingleReferenceMajorShapeDistortionsINTEL = 5771, - OpSubgroupAvcImeGetStreamoutSingleReferenceMajorShapeReferenceIdsINTEL = 5772, - OpSubgroupAvcImeGetStreamoutDualReferenceMajorShapeMotionVectorsINTEL = 5773, - OpSubgroupAvcImeGetStreamoutDualReferenceMajorShapeDistortionsINTEL = 5774, - OpSubgroupAvcImeGetStreamoutDualReferenceMajorShapeReferenceIdsINTEL = 5775, - OpSubgroupAvcImeGetBorderReachedINTEL = 5776, - OpSubgroupAvcImeGetTruncatedSearchIndicationINTEL = 5777, - OpSubgroupAvcImeGetUnidirectionalEarlySearchTerminationINTEL = 5778, - OpSubgroupAvcImeGetWeightingPatternMinimumMotionVectorINTEL = 5779, - OpSubgroupAvcImeGetWeightingPatternMinimumDistortionINTEL = 5780, - OpSubgroupAvcFmeInitializeINTEL = 5781, - OpSubgroupAvcBmeInitializeINTEL = 5782, - OpSubgroupAvcRefConvertToMcePayloadINTEL = 5783, - OpSubgroupAvcRefSetBidirectionalMixDisableINTEL = 5784, - OpSubgroupAvcRefSetBilinearFilterEnableINTEL = 5785, - OpSubgroupAvcRefEvaluateWithSingleReferenceINTEL = 5786, - OpSubgroupAvcRefEvaluateWithDualReferenceINTEL = 5787, - OpSubgroupAvcRefEvaluateWithMultiReferenceINTEL = 5788, - OpSubgroupAvcRefEvaluateWithMultiReferenceInterlacedINTEL = 5789, - OpSubgroupAvcRefConvertToMceResultINTEL = 5790, - OpSubgroupAvcSicInitializeINTEL = 5791, - OpSubgroupAvcSicConfigureSkcINTEL = 5792, - OpSubgroupAvcSicConfigureIpeLumaINTEL = 5793, - OpSubgroupAvcSicConfigureIpeLumaChromaINTEL = 5794, - OpSubgroupAvcSicGetMotionVectorMaskINTEL = 5795, - OpSubgroupAvcSicConvertToMcePayloadINTEL = 5796, - OpSubgroupAvcSicSetIntraLumaShapePenaltyINTEL = 5797, - OpSubgroupAvcSicSetIntraLumaModeCostFunctionINTEL = 5798, - OpSubgroupAvcSicSetIntraChromaModeCostFunctionINTEL = 5799, - OpSubgroupAvcSicSetBilinearFilterEnableINTEL = 5800, - OpSubgroupAvcSicSetSkcForwardTransformEnableINTEL = 5801, - OpSubgroupAvcSicSetBlockBasedRawSkipSadINTEL = 5802, - OpSubgroupAvcSicEvaluateIpeINTEL = 5803, - OpSubgroupAvcSicEvaluateWithSingleReferenceINTEL = 5804, - OpSubgroupAvcSicEvaluateWithDualReferenceINTEL = 5805, - OpSubgroupAvcSicEvaluateWithMultiReferenceINTEL = 5806, - OpSubgroupAvcSicEvaluateWithMultiReferenceInterlacedINTEL = 5807, - OpSubgroupAvcSicConvertToMceResultINTEL = 5808, - OpSubgroupAvcSicGetIpeLumaShapeINTEL = 5809, - OpSubgroupAvcSicGetBestIpeLumaDistortionINTEL = 5810, - OpSubgroupAvcSicGetBestIpeChromaDistortionINTEL = 5811, - OpSubgroupAvcSicGetPackedIpeLumaModesINTEL = 5812, - OpSubgroupAvcSicGetIpeChromaModeINTEL = 5813, - 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, - OpAliasDomainDeclINTEL = 5911, - OpAliasScopeDeclINTEL = 5912, - OpAliasScopeListDeclINTEL = 5913, - 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, - OpRayQueryGetIntersectionInstanceCustomIndexKHR = 6019, - OpRayQueryGetIntersectionInstanceIdKHR = 6020, - OpRayQueryGetIntersectionInstanceShaderBindingTableRecordOffsetKHR = 6021, - OpRayQueryGetIntersectionGeometryIndexKHR = 6022, - OpRayQueryGetIntersectionPrimitiveIndexKHR = 6023, - OpRayQueryGetIntersectionBarycentricsKHR = 6024, - OpRayQueryGetIntersectionFrontFaceKHR = 6025, - OpRayQueryGetIntersectionCandidateAABBOpaqueKHR = 6026, - OpRayQueryGetIntersectionObjectRayDirectionKHR = 6027, - OpRayQueryGetIntersectionObjectRayOriginKHR = 6028, - OpRayQueryGetWorldRayDirectionKHR = 6029, - OpRayQueryGetWorldRayOriginKHR = 6030, - OpRayQueryGetIntersectionObjectToWorldKHR = 6031, - OpRayQueryGetIntersectionWorldToObjectKHR = 6032, - OpAtomicFAddEXT = 6035, - OpTypeBufferSurfaceINTEL = 6086, - OpTypeStructContinuedINTEL = 6090, - OpConstantCompositeContinuedINTEL = 6091, - OpSpecConstantCompositeContinuedINTEL = 6092, - OpConvertFToBF16INTEL = 6116, - OpConvertBF16ToFINTEL = 6117, - OpControlBarrierArriveINTEL = 6142, - OpControlBarrierWaitINTEL = 6143, - OpGroupIMulKHR = 6401, - OpGroupFMulKHR = 6402, - OpGroupBitwiseAndKHR = 6403, - OpGroupBitwiseOrKHR = 6404, - OpGroupBitwiseXorKHR = 6405, - OpGroupLogicalAndKHR = 6406, - OpGroupLogicalOrKHR = 6407, - OpGroupLogicalXorKHR = 6408, - OpMax = 0x7fffffff, -}; - -#ifdef SPV_ENABLE_UTILITY_CODE -#ifndef __cplusplus -#include -#endif -inline void HasResultAndType(Op opcode, bool *hasResult, bool *hasResultType) { - *hasResult = *hasResultType = false; - switch (opcode) { - default: /* unknown opcode */ break; - case OpNop: *hasResult = false; *hasResultType = false; break; - case OpUndef: *hasResult = true; *hasResultType = true; break; - case OpSourceContinued: *hasResult = false; *hasResultType = false; break; - case OpSource: *hasResult = false; *hasResultType = false; break; - case OpSourceExtension: *hasResult = false; *hasResultType = false; break; - case OpName: *hasResult = false; *hasResultType = false; break; - case OpMemberName: *hasResult = false; *hasResultType = false; break; - case OpString: *hasResult = true; *hasResultType = false; break; - case OpLine: *hasResult = false; *hasResultType = false; break; - case OpExtension: *hasResult = false; *hasResultType = false; break; - case OpExtInstImport: *hasResult = true; *hasResultType = false; break; - case OpExtInst: *hasResult = true; *hasResultType = true; break; - case OpMemoryModel: *hasResult = false; *hasResultType = false; break; - case OpEntryPoint: *hasResult = false; *hasResultType = false; break; - case OpExecutionMode: *hasResult = false; *hasResultType = false; break; - case OpCapability: *hasResult = false; *hasResultType = false; break; - case OpTypeVoid: *hasResult = true; *hasResultType = false; break; - case OpTypeBool: *hasResult = true; *hasResultType = false; break; - case OpTypeInt: *hasResult = true; *hasResultType = false; break; - case OpTypeFloat: *hasResult = true; *hasResultType = false; break; - case OpTypeVector: *hasResult = true; *hasResultType = false; break; - case OpTypeMatrix: *hasResult = true; *hasResultType = false; break; - case OpTypeImage: *hasResult = true; *hasResultType = false; break; - case OpTypeSampler: *hasResult = true; *hasResultType = false; break; - case OpTypeSampledImage: *hasResult = true; *hasResultType = false; break; - case OpTypeArray: *hasResult = true; *hasResultType = false; break; - case OpTypeRuntimeArray: *hasResult = true; *hasResultType = false; break; - case OpTypeStruct: *hasResult = true; *hasResultType = false; break; - case OpTypeOpaque: *hasResult = true; *hasResultType = false; break; - case OpTypePointer: *hasResult = true; *hasResultType = false; break; - case OpTypeFunction: *hasResult = true; *hasResultType = false; break; - case OpTypeEvent: *hasResult = true; *hasResultType = false; break; - case OpTypeDeviceEvent: *hasResult = true; *hasResultType = false; break; - case OpTypeReserveId: *hasResult = true; *hasResultType = false; break; - case OpTypeQueue: *hasResult = true; *hasResultType = false; break; - case OpTypePipe: *hasResult = true; *hasResultType = false; break; - case OpTypeForwardPointer: *hasResult = false; *hasResultType = false; break; - case OpConstantTrue: *hasResult = true; *hasResultType = true; break; - case OpConstantFalse: *hasResult = true; *hasResultType = true; break; - case OpConstant: *hasResult = true; *hasResultType = true; break; - case OpConstantComposite: *hasResult = true; *hasResultType = true; break; - case OpConstantSampler: *hasResult = true; *hasResultType = true; break; - case OpConstantNull: *hasResult = true; *hasResultType = true; break; - case OpSpecConstantTrue: *hasResult = true; *hasResultType = true; break; - case OpSpecConstantFalse: *hasResult = true; *hasResultType = true; break; - case OpSpecConstant: *hasResult = true; *hasResultType = true; break; - case OpSpecConstantComposite: *hasResult = true; *hasResultType = true; break; - case OpSpecConstantOp: *hasResult = true; *hasResultType = true; break; - case OpFunction: *hasResult = true; *hasResultType = true; break; - case OpFunctionParameter: *hasResult = true; *hasResultType = true; break; - case OpFunctionEnd: *hasResult = false; *hasResultType = false; break; - case OpFunctionCall: *hasResult = true; *hasResultType = true; break; - case OpVariable: *hasResult = true; *hasResultType = true; break; - case OpImageTexelPointer: *hasResult = true; *hasResultType = true; break; - case OpLoad: *hasResult = true; *hasResultType = true; break; - case OpStore: *hasResult = false; *hasResultType = false; break; - case OpCopyMemory: *hasResult = false; *hasResultType = false; break; - case OpCopyMemorySized: *hasResult = false; *hasResultType = false; break; - case OpAccessChain: *hasResult = true; *hasResultType = true; break; - case OpInBoundsAccessChain: *hasResult = true; *hasResultType = true; break; - case OpPtrAccessChain: *hasResult = true; *hasResultType = true; break; - case OpArrayLength: *hasResult = true; *hasResultType = true; break; - case OpGenericPtrMemSemantics: *hasResult = true; *hasResultType = true; break; - case OpInBoundsPtrAccessChain: *hasResult = true; *hasResultType = true; break; - case OpDecorate: *hasResult = false; *hasResultType = false; break; - case OpMemberDecorate: *hasResult = false; *hasResultType = false; break; - case OpDecorationGroup: *hasResult = true; *hasResultType = false; break; - case OpGroupDecorate: *hasResult = false; *hasResultType = false; break; - case OpGroupMemberDecorate: *hasResult = false; *hasResultType = false; break; - case OpVectorExtractDynamic: *hasResult = true; *hasResultType = true; break; - case OpVectorInsertDynamic: *hasResult = true; *hasResultType = true; break; - case OpVectorShuffle: *hasResult = true; *hasResultType = true; break; - case OpCompositeConstruct: *hasResult = true; *hasResultType = true; break; - case OpCompositeExtract: *hasResult = true; *hasResultType = true; break; - case OpCompositeInsert: *hasResult = true; *hasResultType = true; break; - case OpCopyObject: *hasResult = true; *hasResultType = true; break; - case OpTranspose: *hasResult = true; *hasResultType = true; break; - case OpSampledImage: *hasResult = true; *hasResultType = true; break; - case OpImageSampleImplicitLod: *hasResult = true; *hasResultType = true; break; - case OpImageSampleExplicitLod: *hasResult = true; *hasResultType = true; break; - case OpImageSampleDrefImplicitLod: *hasResult = true; *hasResultType = true; break; - case OpImageSampleDrefExplicitLod: *hasResult = true; *hasResultType = true; break; - case OpImageSampleProjImplicitLod: *hasResult = true; *hasResultType = true; break; - case OpImageSampleProjExplicitLod: *hasResult = true; *hasResultType = true; break; - case OpImageSampleProjDrefImplicitLod: *hasResult = true; *hasResultType = true; break; - case OpImageSampleProjDrefExplicitLod: *hasResult = true; *hasResultType = true; break; - case OpImageFetch: *hasResult = true; *hasResultType = true; break; - case OpImageGather: *hasResult = true; *hasResultType = true; break; - case OpImageDrefGather: *hasResult = true; *hasResultType = true; break; - case OpImageRead: *hasResult = true; *hasResultType = true; break; - case OpImageWrite: *hasResult = false; *hasResultType = false; break; - case OpImage: *hasResult = true; *hasResultType = true; break; - case OpImageQueryFormat: *hasResult = true; *hasResultType = true; break; - case OpImageQueryOrder: *hasResult = true; *hasResultType = true; break; - case OpImageQuerySizeLod: *hasResult = true; *hasResultType = true; break; - case OpImageQuerySize: *hasResult = true; *hasResultType = true; break; - case OpImageQueryLod: *hasResult = true; *hasResultType = true; break; - case OpImageQueryLevels: *hasResult = true; *hasResultType = true; break; - case OpImageQuerySamples: *hasResult = true; *hasResultType = true; break; - case OpConvertFToU: *hasResult = true; *hasResultType = true; break; - case OpConvertFToS: *hasResult = true; *hasResultType = true; break; - case OpConvertSToF: *hasResult = true; *hasResultType = true; break; - case OpConvertUToF: *hasResult = true; *hasResultType = true; break; - case OpUConvert: *hasResult = true; *hasResultType = true; break; - case OpSConvert: *hasResult = true; *hasResultType = true; break; - case OpFConvert: *hasResult = true; *hasResultType = true; break; - case OpQuantizeToF16: *hasResult = true; *hasResultType = true; break; - case OpConvertPtrToU: *hasResult = true; *hasResultType = true; break; - case OpSatConvertSToU: *hasResult = true; *hasResultType = true; break; - case OpSatConvertUToS: *hasResult = true; *hasResultType = true; break; - case OpConvertUToPtr: *hasResult = true; *hasResultType = true; break; - case OpPtrCastToGeneric: *hasResult = true; *hasResultType = true; break; - case OpGenericCastToPtr: *hasResult = true; *hasResultType = true; break; - case OpGenericCastToPtrExplicit: *hasResult = true; *hasResultType = true; break; - case OpBitcast: *hasResult = true; *hasResultType = true; break; - case OpSNegate: *hasResult = true; *hasResultType = true; break; - case OpFNegate: *hasResult = true; *hasResultType = true; break; - case OpIAdd: *hasResult = true; *hasResultType = true; break; - case OpFAdd: *hasResult = true; *hasResultType = true; break; - case OpISub: *hasResult = true; *hasResultType = true; break; - case OpFSub: *hasResult = true; *hasResultType = true; break; - case OpIMul: *hasResult = true; *hasResultType = true; break; - case OpFMul: *hasResult = true; *hasResultType = true; break; - case OpUDiv: *hasResult = true; *hasResultType = true; break; - case OpSDiv: *hasResult = true; *hasResultType = true; break; - case OpFDiv: *hasResult = true; *hasResultType = true; break; - case OpUMod: *hasResult = true; *hasResultType = true; break; - case OpSRem: *hasResult = true; *hasResultType = true; break; - case OpSMod: *hasResult = true; *hasResultType = true; break; - case OpFRem: *hasResult = true; *hasResultType = true; break; - case OpFMod: *hasResult = true; *hasResultType = true; break; - case OpVectorTimesScalar: *hasResult = true; *hasResultType = true; break; - case OpMatrixTimesScalar: *hasResult = true; *hasResultType = true; break; - case OpVectorTimesMatrix: *hasResult = true; *hasResultType = true; break; - case OpMatrixTimesVector: *hasResult = true; *hasResultType = true; break; - case OpMatrixTimesMatrix: *hasResult = true; *hasResultType = true; break; - case OpOuterProduct: *hasResult = true; *hasResultType = true; break; - case OpDot: *hasResult = true; *hasResultType = true; break; - case OpIAddCarry: *hasResult = true; *hasResultType = true; break; - case OpISubBorrow: *hasResult = true; *hasResultType = true; break; - case OpUMulExtended: *hasResult = true; *hasResultType = true; break; - case OpSMulExtended: *hasResult = true; *hasResultType = true; break; - case OpAny: *hasResult = true; *hasResultType = true; break; - case OpAll: *hasResult = true; *hasResultType = true; break; - case OpIsNan: *hasResult = true; *hasResultType = true; break; - case OpIsInf: *hasResult = true; *hasResultType = true; break; - case OpIsFinite: *hasResult = true; *hasResultType = true; break; - case OpIsNormal: *hasResult = true; *hasResultType = true; break; - case OpSignBitSet: *hasResult = true; *hasResultType = true; break; - case OpLessOrGreater: *hasResult = true; *hasResultType = true; break; - case OpOrdered: *hasResult = true; *hasResultType = true; break; - case OpUnordered: *hasResult = true; *hasResultType = true; break; - case OpLogicalEqual: *hasResult = true; *hasResultType = true; break; - case OpLogicalNotEqual: *hasResult = true; *hasResultType = true; break; - case OpLogicalOr: *hasResult = true; *hasResultType = true; break; - case OpLogicalAnd: *hasResult = true; *hasResultType = true; break; - case OpLogicalNot: *hasResult = true; *hasResultType = true; break; - case OpSelect: *hasResult = true; *hasResultType = true; break; - case OpIEqual: *hasResult = true; *hasResultType = true; break; - case OpINotEqual: *hasResult = true; *hasResultType = true; break; - case OpUGreaterThan: *hasResult = true; *hasResultType = true; break; - case OpSGreaterThan: *hasResult = true; *hasResultType = true; break; - case OpUGreaterThanEqual: *hasResult = true; *hasResultType = true; break; - case OpSGreaterThanEqual: *hasResult = true; *hasResultType = true; break; - case OpULessThan: *hasResult = true; *hasResultType = true; break; - case OpSLessThan: *hasResult = true; *hasResultType = true; break; - case OpULessThanEqual: *hasResult = true; *hasResultType = true; break; - case OpSLessThanEqual: *hasResult = true; *hasResultType = true; break; - case OpFOrdEqual: *hasResult = true; *hasResultType = true; break; - case OpFUnordEqual: *hasResult = true; *hasResultType = true; break; - case OpFOrdNotEqual: *hasResult = true; *hasResultType = true; break; - case OpFUnordNotEqual: *hasResult = true; *hasResultType = true; break; - case OpFOrdLessThan: *hasResult = true; *hasResultType = true; break; - case OpFUnordLessThan: *hasResult = true; *hasResultType = true; break; - case OpFOrdGreaterThan: *hasResult = true; *hasResultType = true; break; - case OpFUnordGreaterThan: *hasResult = true; *hasResultType = true; break; - case OpFOrdLessThanEqual: *hasResult = true; *hasResultType = true; break; - case OpFUnordLessThanEqual: *hasResult = true; *hasResultType = true; break; - case OpFOrdGreaterThanEqual: *hasResult = true; *hasResultType = true; break; - case OpFUnordGreaterThanEqual: *hasResult = true; *hasResultType = true; break; - case OpShiftRightLogical: *hasResult = true; *hasResultType = true; break; - case OpShiftRightArithmetic: *hasResult = true; *hasResultType = true; break; - case OpShiftLeftLogical: *hasResult = true; *hasResultType = true; break; - case OpBitwiseOr: *hasResult = true; *hasResultType = true; break; - case OpBitwiseXor: *hasResult = true; *hasResultType = true; break; - case OpBitwiseAnd: *hasResult = true; *hasResultType = true; break; - case OpNot: *hasResult = true; *hasResultType = true; break; - case OpBitFieldInsert: *hasResult = true; *hasResultType = true; break; - case OpBitFieldSExtract: *hasResult = true; *hasResultType = true; break; - case OpBitFieldUExtract: *hasResult = true; *hasResultType = true; break; - case OpBitReverse: *hasResult = true; *hasResultType = true; break; - case OpBitCount: *hasResult = true; *hasResultType = true; break; - case OpDPdx: *hasResult = true; *hasResultType = true; break; - case OpDPdy: *hasResult = true; *hasResultType = true; break; - case OpFwidth: *hasResult = true; *hasResultType = true; break; - case OpDPdxFine: *hasResult = true; *hasResultType = true; break; - case OpDPdyFine: *hasResult = true; *hasResultType = true; break; - case OpFwidthFine: *hasResult = true; *hasResultType = true; break; - case OpDPdxCoarse: *hasResult = true; *hasResultType = true; break; - case OpDPdyCoarse: *hasResult = true; *hasResultType = true; break; - case OpFwidthCoarse: *hasResult = true; *hasResultType = true; break; - case OpEmitVertex: *hasResult = false; *hasResultType = false; break; - case OpEndPrimitive: *hasResult = false; *hasResultType = false; break; - case OpEmitStreamVertex: *hasResult = false; *hasResultType = false; break; - case OpEndStreamPrimitive: *hasResult = false; *hasResultType = false; break; - case OpControlBarrier: *hasResult = false; *hasResultType = false; break; - case OpMemoryBarrier: *hasResult = false; *hasResultType = false; break; - case OpAtomicLoad: *hasResult = true; *hasResultType = true; break; - case OpAtomicStore: *hasResult = false; *hasResultType = false; break; - case OpAtomicExchange: *hasResult = true; *hasResultType = true; break; - case OpAtomicCompareExchange: *hasResult = true; *hasResultType = true; break; - case OpAtomicCompareExchangeWeak: *hasResult = true; *hasResultType = true; break; - case OpAtomicIIncrement: *hasResult = true; *hasResultType = true; break; - case OpAtomicIDecrement: *hasResult = true; *hasResultType = true; break; - case OpAtomicIAdd: *hasResult = true; *hasResultType = true; break; - case OpAtomicISub: *hasResult = true; *hasResultType = true; break; - case OpAtomicSMin: *hasResult = true; *hasResultType = true; break; - case OpAtomicUMin: *hasResult = true; *hasResultType = true; break; - case OpAtomicSMax: *hasResult = true; *hasResultType = true; break; - case OpAtomicUMax: *hasResult = true; *hasResultType = true; break; - case OpAtomicAnd: *hasResult = true; *hasResultType = true; break; - case OpAtomicOr: *hasResult = true; *hasResultType = true; break; - case OpAtomicXor: *hasResult = true; *hasResultType = true; break; - case OpPhi: *hasResult = true; *hasResultType = true; break; - case OpLoopMerge: *hasResult = false; *hasResultType = false; break; - case OpSelectionMerge: *hasResult = false; *hasResultType = false; break; - case OpLabel: *hasResult = true; *hasResultType = false; break; - case OpBranch: *hasResult = false; *hasResultType = false; break; - case OpBranchConditional: *hasResult = false; *hasResultType = false; break; - case OpSwitch: *hasResult = false; *hasResultType = false; break; - case OpKill: *hasResult = false; *hasResultType = false; break; - case OpReturn: *hasResult = false; *hasResultType = false; break; - case OpReturnValue: *hasResult = false; *hasResultType = false; break; - case OpUnreachable: *hasResult = false; *hasResultType = false; break; - case OpLifetimeStart: *hasResult = false; *hasResultType = false; break; - case OpLifetimeStop: *hasResult = false; *hasResultType = false; break; - case OpGroupAsyncCopy: *hasResult = true; *hasResultType = true; break; - case OpGroupWaitEvents: *hasResult = false; *hasResultType = false; break; - case OpGroupAll: *hasResult = true; *hasResultType = true; break; - case OpGroupAny: *hasResult = true; *hasResultType = true; break; - case OpGroupBroadcast: *hasResult = true; *hasResultType = true; break; - case OpGroupIAdd: *hasResult = true; *hasResultType = true; break; - case OpGroupFAdd: *hasResult = true; *hasResultType = true; break; - case OpGroupFMin: *hasResult = true; *hasResultType = true; break; - case OpGroupUMin: *hasResult = true; *hasResultType = true; break; - case OpGroupSMin: *hasResult = true; *hasResultType = true; break; - case OpGroupFMax: *hasResult = true; *hasResultType = true; break; - case OpGroupUMax: *hasResult = true; *hasResultType = true; break; - case OpGroupSMax: *hasResult = true; *hasResultType = true; break; - case OpReadPipe: *hasResult = true; *hasResultType = true; break; - case OpWritePipe: *hasResult = true; *hasResultType = true; break; - case OpReservedReadPipe: *hasResult = true; *hasResultType = true; break; - case OpReservedWritePipe: *hasResult = true; *hasResultType = true; break; - case OpReserveReadPipePackets: *hasResult = true; *hasResultType = true; break; - case OpReserveWritePipePackets: *hasResult = true; *hasResultType = true; break; - case OpCommitReadPipe: *hasResult = false; *hasResultType = false; break; - case OpCommitWritePipe: *hasResult = false; *hasResultType = false; break; - case OpIsValidReserveId: *hasResult = true; *hasResultType = true; break; - case OpGetNumPipePackets: *hasResult = true; *hasResultType = true; break; - case OpGetMaxPipePackets: *hasResult = true; *hasResultType = true; break; - case OpGroupReserveReadPipePackets: *hasResult = true; *hasResultType = true; break; - case OpGroupReserveWritePipePackets: *hasResult = true; *hasResultType = true; break; - case OpGroupCommitReadPipe: *hasResult = false; *hasResultType = false; break; - case OpGroupCommitWritePipe: *hasResult = false; *hasResultType = false; break; - case OpEnqueueMarker: *hasResult = true; *hasResultType = true; break; - case OpEnqueueKernel: *hasResult = true; *hasResultType = true; break; - case OpGetKernelNDrangeSubGroupCount: *hasResult = true; *hasResultType = true; break; - case OpGetKernelNDrangeMaxSubGroupSize: *hasResult = true; *hasResultType = true; break; - case OpGetKernelWorkGroupSize: *hasResult = true; *hasResultType = true; break; - case OpGetKernelPreferredWorkGroupSizeMultiple: *hasResult = true; *hasResultType = true; break; - case OpRetainEvent: *hasResult = false; *hasResultType = false; break; - case OpReleaseEvent: *hasResult = false; *hasResultType = false; break; - case OpCreateUserEvent: *hasResult = true; *hasResultType = true; break; - case OpIsValidEvent: *hasResult = true; *hasResultType = true; break; - case OpSetUserEventStatus: *hasResult = false; *hasResultType = false; break; - case OpCaptureEventProfilingInfo: *hasResult = false; *hasResultType = false; break; - case OpGetDefaultQueue: *hasResult = true; *hasResultType = true; break; - case OpBuildNDRange: *hasResult = true; *hasResultType = true; break; - case OpImageSparseSampleImplicitLod: *hasResult = true; *hasResultType = true; break; - case OpImageSparseSampleExplicitLod: *hasResult = true; *hasResultType = true; break; - case OpImageSparseSampleDrefImplicitLod: *hasResult = true; *hasResultType = true; break; - case OpImageSparseSampleDrefExplicitLod: *hasResult = true; *hasResultType = true; break; - case OpImageSparseSampleProjImplicitLod: *hasResult = true; *hasResultType = true; break; - case OpImageSparseSampleProjExplicitLod: *hasResult = true; *hasResultType = true; break; - case OpImageSparseSampleProjDrefImplicitLod: *hasResult = true; *hasResultType = true; break; - case OpImageSparseSampleProjDrefExplicitLod: *hasResult = true; *hasResultType = true; break; - case OpImageSparseFetch: *hasResult = true; *hasResultType = true; break; - case OpImageSparseGather: *hasResult = true; *hasResultType = true; break; - case OpImageSparseDrefGather: *hasResult = true; *hasResultType = true; break; - case OpImageSparseTexelsResident: *hasResult = true; *hasResultType = true; break; - case OpNoLine: *hasResult = false; *hasResultType = false; break; - case OpAtomicFlagTestAndSet: *hasResult = true; *hasResultType = true; break; - case OpAtomicFlagClear: *hasResult = false; *hasResultType = false; break; - case OpImageSparseRead: *hasResult = true; *hasResultType = true; break; - case OpSizeOf: *hasResult = true; *hasResultType = true; break; - case OpTypePipeStorage: *hasResult = true; *hasResultType = false; break; - case OpConstantPipeStorage: *hasResult = true; *hasResultType = true; break; - case OpCreatePipeFromPipeStorage: *hasResult = true; *hasResultType = true; break; - case OpGetKernelLocalSizeForSubgroupCount: *hasResult = true; *hasResultType = true; break; - case OpGetKernelMaxNumSubgroups: *hasResult = true; *hasResultType = true; break; - case OpTypeNamedBarrier: *hasResult = true; *hasResultType = false; break; - case OpNamedBarrierInitialize: *hasResult = true; *hasResultType = true; break; - case OpMemoryNamedBarrier: *hasResult = false; *hasResultType = false; break; - case OpModuleProcessed: *hasResult = false; *hasResultType = false; break; - case OpExecutionModeId: *hasResult = false; *hasResultType = false; break; - case OpDecorateId: *hasResult = false; *hasResultType = false; break; - case OpGroupNonUniformElect: *hasResult = true; *hasResultType = true; break; - case OpGroupNonUniformAll: *hasResult = true; *hasResultType = true; break; - case OpGroupNonUniformAny: *hasResult = true; *hasResultType = true; break; - case OpGroupNonUniformAllEqual: *hasResult = true; *hasResultType = true; break; - case OpGroupNonUniformBroadcast: *hasResult = true; *hasResultType = true; break; - case OpGroupNonUniformBroadcastFirst: *hasResult = true; *hasResultType = true; break; - case OpGroupNonUniformBallot: *hasResult = true; *hasResultType = true; break; - case OpGroupNonUniformInverseBallot: *hasResult = true; *hasResultType = true; break; - case OpGroupNonUniformBallotBitExtract: *hasResult = true; *hasResultType = true; break; - case OpGroupNonUniformBallotBitCount: *hasResult = true; *hasResultType = true; break; - case OpGroupNonUniformBallotFindLSB: *hasResult = true; *hasResultType = true; break; - case OpGroupNonUniformBallotFindMSB: *hasResult = true; *hasResultType = true; break; - case OpGroupNonUniformShuffle: *hasResult = true; *hasResultType = true; break; - case OpGroupNonUniformShuffleXor: *hasResult = true; *hasResultType = true; break; - case OpGroupNonUniformShuffleUp: *hasResult = true; *hasResultType = true; break; - case OpGroupNonUniformShuffleDown: *hasResult = true; *hasResultType = true; break; - case OpGroupNonUniformIAdd: *hasResult = true; *hasResultType = true; break; - case OpGroupNonUniformFAdd: *hasResult = true; *hasResultType = true; break; - case OpGroupNonUniformIMul: *hasResult = true; *hasResultType = true; break; - case OpGroupNonUniformFMul: *hasResult = true; *hasResultType = true; break; - case OpGroupNonUniformSMin: *hasResult = true; *hasResultType = true; break; - case OpGroupNonUniformUMin: *hasResult = true; *hasResultType = true; break; - case OpGroupNonUniformFMin: *hasResult = true; *hasResultType = true; break; - case OpGroupNonUniformSMax: *hasResult = true; *hasResultType = true; break; - case OpGroupNonUniformUMax: *hasResult = true; *hasResultType = true; break; - case OpGroupNonUniformFMax: *hasResult = true; *hasResultType = true; break; - case OpGroupNonUniformBitwiseAnd: *hasResult = true; *hasResultType = true; break; - case OpGroupNonUniformBitwiseOr: *hasResult = true; *hasResultType = true; break; - case OpGroupNonUniformBitwiseXor: *hasResult = true; *hasResultType = true; break; - case OpGroupNonUniformLogicalAnd: *hasResult = true; *hasResultType = true; break; - case OpGroupNonUniformLogicalOr: *hasResult = true; *hasResultType = true; break; - case OpGroupNonUniformLogicalXor: *hasResult = true; *hasResultType = true; break; - case OpGroupNonUniformQuadBroadcast: *hasResult = true; *hasResultType = true; break; - case OpGroupNonUniformQuadSwap: *hasResult = true; *hasResultType = true; break; - case OpCopyLogical: *hasResult = true; *hasResultType = true; break; - case OpPtrEqual: *hasResult = true; *hasResultType = true; break; - case OpPtrNotEqual: *hasResult = true; *hasResultType = true; break; - case OpPtrDiff: *hasResult = true; *hasResultType = true; break; - case OpColorAttachmentReadEXT: *hasResult = true; *hasResultType = true; break; - case OpDepthAttachmentReadEXT: *hasResult = true; *hasResultType = true; break; - case OpStencilAttachmentReadEXT: *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 OpGroupNonUniformRotateKHR: *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 OpSDot: *hasResult = true; *hasResultType = true; break; - case OpUDot: *hasResult = true; *hasResultType = true; break; - case OpSUDot: *hasResult = true; *hasResultType = true; break; - case OpSDotAccSat: *hasResult = true; *hasResultType = true; break; - case OpUDotAccSat: *hasResult = true; *hasResultType = true; break; - case OpSUDotAccSat: *hasResult = true; *hasResultType = true; break; - case OpTypeCooperativeMatrixKHR: *hasResult = true; *hasResultType = false; break; - case OpCooperativeMatrixLoadKHR: *hasResult = true; *hasResultType = true; break; - case OpCooperativeMatrixStoreKHR: *hasResult = false; *hasResultType = false; break; - case OpCooperativeMatrixMulAddKHR: *hasResult = true; *hasResultType = true; break; - case OpCooperativeMatrixLengthKHR: *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 OpImageSampleWeightedQCOM: *hasResult = true; *hasResultType = true; break; - case OpImageBoxFilterQCOM: *hasResult = true; *hasResultType = true; break; - case OpImageBlockMatchSSDQCOM: *hasResult = true; *hasResultType = true; break; - case OpImageBlockMatchSADQCOM: *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; - case OpGroupUMinNonUniformAMD: *hasResult = true; *hasResultType = true; break; - case OpGroupSMinNonUniformAMD: *hasResult = true; *hasResultType = true; break; - case OpGroupFMaxNonUniformAMD: *hasResult = true; *hasResultType = true; break; - case OpGroupUMaxNonUniformAMD: *hasResult = true; *hasResultType = true; break; - case OpGroupSMaxNonUniformAMD: *hasResult = true; *hasResultType = true; break; - case OpFragmentMaskFetchAMD: *hasResult = true; *hasResultType = true; break; - case OpFragmentFetchAMD: *hasResult = true; *hasResultType = true; break; - case OpReadClockKHR: *hasResult = true; *hasResultType = true; break; - case OpHitObjectRecordHitMotionNV: *hasResult = false; *hasResultType = false; break; - case OpHitObjectRecordHitWithIndexMotionNV: *hasResult = false; *hasResultType = false; break; - case OpHitObjectRecordMissMotionNV: *hasResult = false; *hasResultType = false; break; - case OpHitObjectGetWorldToObjectNV: *hasResult = true; *hasResultType = true; break; - case OpHitObjectGetObjectToWorldNV: *hasResult = true; *hasResultType = true; break; - case OpHitObjectGetObjectRayDirectionNV: *hasResult = true; *hasResultType = true; break; - case OpHitObjectGetObjectRayOriginNV: *hasResult = true; *hasResultType = true; break; - case OpHitObjectTraceRayMotionNV: *hasResult = false; *hasResultType = false; break; - case OpHitObjectGetShaderRecordBufferHandleNV: *hasResult = true; *hasResultType = true; break; - case OpHitObjectGetShaderBindingTableRecordIndexNV: *hasResult = true; *hasResultType = true; break; - case OpHitObjectRecordEmptyNV: *hasResult = false; *hasResultType = false; break; - case OpHitObjectTraceRayNV: *hasResult = false; *hasResultType = false; break; - case OpHitObjectRecordHitNV: *hasResult = false; *hasResultType = false; break; - case OpHitObjectRecordHitWithIndexNV: *hasResult = false; *hasResultType = false; break; - case OpHitObjectRecordMissNV: *hasResult = false; *hasResultType = false; break; - case OpHitObjectExecuteShaderNV: *hasResult = false; *hasResultType = false; break; - case OpHitObjectGetCurrentTimeNV: *hasResult = true; *hasResultType = true; break; - case OpHitObjectGetAttributesNV: *hasResult = false; *hasResultType = false; break; - case OpHitObjectGetHitKindNV: *hasResult = true; *hasResultType = true; break; - case OpHitObjectGetPrimitiveIndexNV: *hasResult = true; *hasResultType = true; break; - case OpHitObjectGetGeometryIndexNV: *hasResult = true; *hasResultType = true; break; - case OpHitObjectGetInstanceIdNV: *hasResult = true; *hasResultType = true; break; - case OpHitObjectGetInstanceCustomIndexNV: *hasResult = true; *hasResultType = true; break; - case OpHitObjectGetWorldRayDirectionNV: *hasResult = true; *hasResultType = true; break; - case OpHitObjectGetWorldRayOriginNV: *hasResult = true; *hasResultType = true; break; - case OpHitObjectGetRayTMaxNV: *hasResult = true; *hasResultType = true; break; - case OpHitObjectGetRayTMinNV: *hasResult = true; *hasResultType = true; break; - case OpHitObjectIsEmptyNV: *hasResult = true; *hasResultType = true; break; - case OpHitObjectIsHitNV: *hasResult = true; *hasResultType = true; break; - case OpHitObjectIsMissNV: *hasResult = true; *hasResultType = true; break; - case OpReorderThreadWithHitObjectNV: *hasResult = false; *hasResultType = false; break; - case OpReorderThreadWithHintNV: *hasResult = false; *hasResultType = false; break; - case OpTypeHitObjectNV: *hasResult = true; *hasResultType = false; break; - case OpImageSampleFootprintNV: *hasResult = true; *hasResultType = true; break; - case OpEmitMeshTasksEXT: *hasResult = false; *hasResultType = false; break; - case OpSetMeshOutputsEXT: *hasResult = false; *hasResultType = false; break; - case OpGroupNonUniformPartitionNV: *hasResult = true; *hasResultType = true; break; - case OpWritePackedPrimitiveIndices4x8NV: *hasResult = false; *hasResultType = false; break; - case OpReportIntersectionNV: *hasResult = true; *hasResultType = true; break; - 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 OpRayQueryGetIntersectionTriangleVertexPositionsKHR: *hasResult = true; *hasResultType = true; break; - case OpTypeAccelerationStructureNV: *hasResult = true; *hasResultType = false; break; - case OpExecuteCallableNV: *hasResult = false; *hasResultType = false; break; - case OpTypeCooperativeMatrixNV: *hasResult = true; *hasResultType = false; break; - case OpCooperativeMatrixLoadNV: *hasResult = true; *hasResultType = true; break; - case OpCooperativeMatrixStoreNV: *hasResult = false; *hasResultType = false; break; - case OpCooperativeMatrixMulAddNV: *hasResult = true; *hasResultType = true; break; - case OpCooperativeMatrixLengthNV: *hasResult = true; *hasResultType = true; break; - case OpBeginInvocationInterlockEXT: *hasResult = false; *hasResultType = false; break; - case OpEndInvocationInterlockEXT: *hasResult = false; *hasResultType = false; break; - case OpDemoteToHelperInvocation: *hasResult = false; *hasResultType = false; break; - case OpIsHelperInvocationEXT: *hasResult = true; *hasResultType = true; break; - case OpConvertUToImageNV: *hasResult = true; *hasResultType = true; break; - case OpConvertUToSamplerNV: *hasResult = true; *hasResultType = true; break; - case OpConvertImageToUNV: *hasResult = true; *hasResultType = true; break; - case OpConvertSamplerToUNV: *hasResult = true; *hasResultType = true; break; - case OpConvertUToSampledImageNV: *hasResult = true; *hasResultType = true; break; - case OpConvertSampledImageToUNV: *hasResult = true; *hasResultType = true; break; - case OpSamplerImageAddressingModeNV: *hasResult = false; *hasResultType = false; break; - case OpSubgroupShuffleINTEL: *hasResult = true; *hasResultType = true; break; - case OpSubgroupShuffleDownINTEL: *hasResult = true; *hasResultType = true; break; - case OpSubgroupShuffleUpINTEL: *hasResult = true; *hasResultType = true; break; - case OpSubgroupShuffleXorINTEL: *hasResult = true; *hasResultType = true; break; - case OpSubgroupBlockReadINTEL: *hasResult = true; *hasResultType = true; break; - case OpSubgroupBlockWriteINTEL: *hasResult = false; *hasResultType = false; break; - case OpSubgroupImageBlockReadINTEL: *hasResult = true; *hasResultType = true; break; - case OpSubgroupImageBlockWriteINTEL: *hasResult = false; *hasResultType = false; break; - case OpSubgroupImageMediaBlockReadINTEL: *hasResult = true; *hasResultType = true; break; - case OpSubgroupImageMediaBlockWriteINTEL: *hasResult = false; *hasResultType = false; break; - case OpUCountLeadingZerosINTEL: *hasResult = true; *hasResultType = true; break; - case OpUCountTrailingZerosINTEL: *hasResult = true; *hasResultType = true; break; - case OpAbsISubINTEL: *hasResult = true; *hasResultType = true; break; - case OpAbsUSubINTEL: *hasResult = true; *hasResultType = true; break; - case OpIAddSatINTEL: *hasResult = true; *hasResultType = true; break; - case OpUAddSatINTEL: *hasResult = true; *hasResultType = true; break; - case OpIAverageINTEL: *hasResult = true; *hasResultType = true; break; - case OpUAverageINTEL: *hasResult = true; *hasResultType = true; break; - case OpIAverageRoundedINTEL: *hasResult = true; *hasResultType = true; break; - case OpUAverageRoundedINTEL: *hasResult = true; *hasResultType = true; break; - case OpISubSatINTEL: *hasResult = true; *hasResultType = true; break; - case OpUSubSatINTEL: *hasResult = true; *hasResultType = true; break; - case OpIMul32x16INTEL: *hasResult = true; *hasResultType = true; break; - case OpUMul32x16INTEL: *hasResult = true; *hasResultType = true; break; - case OpConstantFunctionPointerINTEL: *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; - case OpTypeVmeImageINTEL: *hasResult = true; *hasResultType = false; break; - case OpTypeAvcImePayloadINTEL: *hasResult = true; *hasResultType = false; break; - case OpTypeAvcRefPayloadINTEL: *hasResult = true; *hasResultType = false; break; - case OpTypeAvcSicPayloadINTEL: *hasResult = true; *hasResultType = false; break; - case OpTypeAvcMcePayloadINTEL: *hasResult = true; *hasResultType = false; break; - case OpTypeAvcMceResultINTEL: *hasResult = true; *hasResultType = false; break; - case OpTypeAvcImeResultINTEL: *hasResult = true; *hasResultType = false; break; - case OpTypeAvcImeResultSingleReferenceStreamoutINTEL: *hasResult = true; *hasResultType = false; break; - case OpTypeAvcImeResultDualReferenceStreamoutINTEL: *hasResult = true; *hasResultType = false; break; - case OpTypeAvcImeSingleReferenceStreaminINTEL: *hasResult = true; *hasResultType = false; break; - case OpTypeAvcImeDualReferenceStreaminINTEL: *hasResult = true; *hasResultType = false; break; - case OpTypeAvcRefResultINTEL: *hasResult = true; *hasResultType = false; break; - case OpTypeAvcSicResultINTEL: *hasResult = true; *hasResultType = false; break; - case OpSubgroupAvcMceGetDefaultInterBaseMultiReferencePenaltyINTEL: *hasResult = true; *hasResultType = true; break; - case OpSubgroupAvcMceSetInterBaseMultiReferencePenaltyINTEL: *hasResult = true; *hasResultType = true; break; - case OpSubgroupAvcMceGetDefaultInterShapePenaltyINTEL: *hasResult = true; *hasResultType = true; break; - case OpSubgroupAvcMceSetInterShapePenaltyINTEL: *hasResult = true; *hasResultType = true; break; - case OpSubgroupAvcMceGetDefaultInterDirectionPenaltyINTEL: *hasResult = true; *hasResultType = true; break; - case OpSubgroupAvcMceSetInterDirectionPenaltyINTEL: *hasResult = true; *hasResultType = true; break; - case OpSubgroupAvcMceGetDefaultIntraLumaShapePenaltyINTEL: *hasResult = true; *hasResultType = true; break; - case OpSubgroupAvcMceGetDefaultInterMotionVectorCostTableINTEL: *hasResult = true; *hasResultType = true; break; - case OpSubgroupAvcMceGetDefaultHighPenaltyCostTableINTEL: *hasResult = true; *hasResultType = true; break; - case OpSubgroupAvcMceGetDefaultMediumPenaltyCostTableINTEL: *hasResult = true; *hasResultType = true; break; - case OpSubgroupAvcMceGetDefaultLowPenaltyCostTableINTEL: *hasResult = true; *hasResultType = true; break; - case OpSubgroupAvcMceSetMotionVectorCostFunctionINTEL: *hasResult = true; *hasResultType = true; break; - case OpSubgroupAvcMceGetDefaultIntraLumaModePenaltyINTEL: *hasResult = true; *hasResultType = true; break; - case OpSubgroupAvcMceGetDefaultNonDcLumaIntraPenaltyINTEL: *hasResult = true; *hasResultType = true; break; - case OpSubgroupAvcMceGetDefaultIntraChromaModeBasePenaltyINTEL: *hasResult = true; *hasResultType = true; break; - case OpSubgroupAvcMceSetAcOnlyHaarINTEL: *hasResult = true; *hasResultType = true; break; - case OpSubgroupAvcMceSetSourceInterlacedFieldPolarityINTEL: *hasResult = true; *hasResultType = true; break; - case OpSubgroupAvcMceSetSingleReferenceInterlacedFieldPolarityINTEL: *hasResult = true; *hasResultType = true; break; - case OpSubgroupAvcMceSetDualReferenceInterlacedFieldPolaritiesINTEL: *hasResult = true; *hasResultType = true; break; - case OpSubgroupAvcMceConvertToImePayloadINTEL: *hasResult = true; *hasResultType = true; break; - case OpSubgroupAvcMceConvertToImeResultINTEL: *hasResult = true; *hasResultType = true; break; - case OpSubgroupAvcMceConvertToRefPayloadINTEL: *hasResult = true; *hasResultType = true; break; - case OpSubgroupAvcMceConvertToRefResultINTEL: *hasResult = true; *hasResultType = true; break; - case OpSubgroupAvcMceConvertToSicPayloadINTEL: *hasResult = true; *hasResultType = true; break; - case OpSubgroupAvcMceConvertToSicResultINTEL: *hasResult = true; *hasResultType = true; break; - case OpSubgroupAvcMceGetMotionVectorsINTEL: *hasResult = true; *hasResultType = true; break; - case OpSubgroupAvcMceGetInterDistortionsINTEL: *hasResult = true; *hasResultType = true; break; - case OpSubgroupAvcMceGetBestInterDistortionsINTEL: *hasResult = true; *hasResultType = true; break; - case OpSubgroupAvcMceGetInterMajorShapeINTEL: *hasResult = true; *hasResultType = true; break; - case OpSubgroupAvcMceGetInterMinorShapeINTEL: *hasResult = true; *hasResultType = true; break; - case OpSubgroupAvcMceGetInterDirectionsINTEL: *hasResult = true; *hasResultType = true; break; - case OpSubgroupAvcMceGetInterMotionVectorCountINTEL: *hasResult = true; *hasResultType = true; break; - case OpSubgroupAvcMceGetInterReferenceIdsINTEL: *hasResult = true; *hasResultType = true; break; - case OpSubgroupAvcMceGetInterReferenceInterlacedFieldPolaritiesINTEL: *hasResult = true; *hasResultType = true; break; - case OpSubgroupAvcImeInitializeINTEL: *hasResult = true; *hasResultType = true; break; - case OpSubgroupAvcImeSetSingleReferenceINTEL: *hasResult = true; *hasResultType = true; break; - case OpSubgroupAvcImeSetDualReferenceINTEL: *hasResult = true; *hasResultType = true; break; - case OpSubgroupAvcImeRefWindowSizeINTEL: *hasResult = true; *hasResultType = true; break; - case OpSubgroupAvcImeAdjustRefOffsetINTEL: *hasResult = true; *hasResultType = true; break; - case OpSubgroupAvcImeConvertToMcePayloadINTEL: *hasResult = true; *hasResultType = true; break; - case OpSubgroupAvcImeSetMaxMotionVectorCountINTEL: *hasResult = true; *hasResultType = true; break; - case OpSubgroupAvcImeSetUnidirectionalMixDisableINTEL: *hasResult = true; *hasResultType = true; break; - case OpSubgroupAvcImeSetEarlySearchTerminationThresholdINTEL: *hasResult = true; *hasResultType = true; break; - case OpSubgroupAvcImeSetWeightedSadINTEL: *hasResult = true; *hasResultType = true; break; - case OpSubgroupAvcImeEvaluateWithSingleReferenceINTEL: *hasResult = true; *hasResultType = true; break; - case OpSubgroupAvcImeEvaluateWithDualReferenceINTEL: *hasResult = true; *hasResultType = true; break; - case OpSubgroupAvcImeEvaluateWithSingleReferenceStreaminINTEL: *hasResult = true; *hasResultType = true; break; - case OpSubgroupAvcImeEvaluateWithDualReferenceStreaminINTEL: *hasResult = true; *hasResultType = true; break; - case OpSubgroupAvcImeEvaluateWithSingleReferenceStreamoutINTEL: *hasResult = true; *hasResultType = true; break; - case OpSubgroupAvcImeEvaluateWithDualReferenceStreamoutINTEL: *hasResult = true; *hasResultType = true; break; - case OpSubgroupAvcImeEvaluateWithSingleReferenceStreaminoutINTEL: *hasResult = true; *hasResultType = true; break; - case OpSubgroupAvcImeEvaluateWithDualReferenceStreaminoutINTEL: *hasResult = true; *hasResultType = true; break; - case OpSubgroupAvcImeConvertToMceResultINTEL: *hasResult = true; *hasResultType = true; break; - case OpSubgroupAvcImeGetSingleReferenceStreaminINTEL: *hasResult = true; *hasResultType = true; break; - case OpSubgroupAvcImeGetDualReferenceStreaminINTEL: *hasResult = true; *hasResultType = true; break; - case OpSubgroupAvcImeStripSingleReferenceStreamoutINTEL: *hasResult = true; *hasResultType = true; break; - case OpSubgroupAvcImeStripDualReferenceStreamoutINTEL: *hasResult = true; *hasResultType = true; break; - case OpSubgroupAvcImeGetStreamoutSingleReferenceMajorShapeMotionVectorsINTEL: *hasResult = true; *hasResultType = true; break; - case OpSubgroupAvcImeGetStreamoutSingleReferenceMajorShapeDistortionsINTEL: *hasResult = true; *hasResultType = true; break; - case OpSubgroupAvcImeGetStreamoutSingleReferenceMajorShapeReferenceIdsINTEL: *hasResult = true; *hasResultType = true; break; - case OpSubgroupAvcImeGetStreamoutDualReferenceMajorShapeMotionVectorsINTEL: *hasResult = true; *hasResultType = true; break; - case OpSubgroupAvcImeGetStreamoutDualReferenceMajorShapeDistortionsINTEL: *hasResult = true; *hasResultType = true; break; - case OpSubgroupAvcImeGetStreamoutDualReferenceMajorShapeReferenceIdsINTEL: *hasResult = true; *hasResultType = true; break; - case OpSubgroupAvcImeGetBorderReachedINTEL: *hasResult = true; *hasResultType = true; break; - case OpSubgroupAvcImeGetTruncatedSearchIndicationINTEL: *hasResult = true; *hasResultType = true; break; - case OpSubgroupAvcImeGetUnidirectionalEarlySearchTerminationINTEL: *hasResult = true; *hasResultType = true; break; - case OpSubgroupAvcImeGetWeightingPatternMinimumMotionVectorINTEL: *hasResult = true; *hasResultType = true; break; - case OpSubgroupAvcImeGetWeightingPatternMinimumDistortionINTEL: *hasResult = true; *hasResultType = true; break; - case OpSubgroupAvcFmeInitializeINTEL: *hasResult = true; *hasResultType = true; break; - case OpSubgroupAvcBmeInitializeINTEL: *hasResult = true; *hasResultType = true; break; - case OpSubgroupAvcRefConvertToMcePayloadINTEL: *hasResult = true; *hasResultType = true; break; - case OpSubgroupAvcRefSetBidirectionalMixDisableINTEL: *hasResult = true; *hasResultType = true; break; - case OpSubgroupAvcRefSetBilinearFilterEnableINTEL: *hasResult = true; *hasResultType = true; break; - case OpSubgroupAvcRefEvaluateWithSingleReferenceINTEL: *hasResult = true; *hasResultType = true; break; - case OpSubgroupAvcRefEvaluateWithDualReferenceINTEL: *hasResult = true; *hasResultType = true; break; - case OpSubgroupAvcRefEvaluateWithMultiReferenceINTEL: *hasResult = true; *hasResultType = true; break; - case OpSubgroupAvcRefEvaluateWithMultiReferenceInterlacedINTEL: *hasResult = true; *hasResultType = true; break; - case OpSubgroupAvcRefConvertToMceResultINTEL: *hasResult = true; *hasResultType = true; break; - case OpSubgroupAvcSicInitializeINTEL: *hasResult = true; *hasResultType = true; break; - case OpSubgroupAvcSicConfigureSkcINTEL: *hasResult = true; *hasResultType = true; break; - case OpSubgroupAvcSicConfigureIpeLumaINTEL: *hasResult = true; *hasResultType = true; break; - case OpSubgroupAvcSicConfigureIpeLumaChromaINTEL: *hasResult = true; *hasResultType = true; break; - case OpSubgroupAvcSicGetMotionVectorMaskINTEL: *hasResult = true; *hasResultType = true; break; - case OpSubgroupAvcSicConvertToMcePayloadINTEL: *hasResult = true; *hasResultType = true; break; - case OpSubgroupAvcSicSetIntraLumaShapePenaltyINTEL: *hasResult = true; *hasResultType = true; break; - case OpSubgroupAvcSicSetIntraLumaModeCostFunctionINTEL: *hasResult = true; *hasResultType = true; break; - case OpSubgroupAvcSicSetIntraChromaModeCostFunctionINTEL: *hasResult = true; *hasResultType = true; break; - case OpSubgroupAvcSicSetBilinearFilterEnableINTEL: *hasResult = true; *hasResultType = true; break; - case OpSubgroupAvcSicSetSkcForwardTransformEnableINTEL: *hasResult = true; *hasResultType = true; break; - case OpSubgroupAvcSicSetBlockBasedRawSkipSadINTEL: *hasResult = true; *hasResultType = true; break; - case OpSubgroupAvcSicEvaluateIpeINTEL: *hasResult = true; *hasResultType = true; break; - case OpSubgroupAvcSicEvaluateWithSingleReferenceINTEL: *hasResult = true; *hasResultType = true; break; - case OpSubgroupAvcSicEvaluateWithDualReferenceINTEL: *hasResult = true; *hasResultType = true; break; - case OpSubgroupAvcSicEvaluateWithMultiReferenceINTEL: *hasResult = true; *hasResultType = true; break; - case OpSubgroupAvcSicEvaluateWithMultiReferenceInterlacedINTEL: *hasResult = true; *hasResultType = true; break; - case OpSubgroupAvcSicConvertToMceResultINTEL: *hasResult = true; *hasResultType = true; break; - case OpSubgroupAvcSicGetIpeLumaShapeINTEL: *hasResult = true; *hasResultType = true; break; - case OpSubgroupAvcSicGetBestIpeLumaDistortionINTEL: *hasResult = true; *hasResultType = true; break; - case OpSubgroupAvcSicGetBestIpeChromaDistortionINTEL: *hasResult = true; *hasResultType = true; break; - case OpSubgroupAvcSicGetPackedIpeLumaModesINTEL: *hasResult = true; *hasResultType = true; break; - case OpSubgroupAvcSicGetIpeChromaModeINTEL: *hasResult = true; *hasResultType = true; break; - 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 OpAliasDomainDeclINTEL: *hasResult = true; *hasResultType = false; break; - case OpAliasScopeDeclINTEL: *hasResult = true; *hasResultType = false; break; - case OpAliasScopeListDeclINTEL: *hasResult = true; *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; - case OpConvertFToBF16INTEL: *hasResult = true; *hasResultType = true; break; - case OpConvertBF16ToFINTEL: *hasResult = true; *hasResultType = true; break; - case OpControlBarrierArriveINTEL: *hasResult = false; *hasResultType = false; break; - case OpControlBarrierWaitINTEL: *hasResult = false; *hasResultType = false; break; - case OpGroupIMulKHR: *hasResult = true; *hasResultType = true; break; - case OpGroupFMulKHR: *hasResult = true; *hasResultType = true; break; - case OpGroupBitwiseAndKHR: *hasResult = true; *hasResultType = true; break; - case OpGroupBitwiseOrKHR: *hasResult = true; *hasResultType = true; break; - case OpGroupBitwiseXorKHR: *hasResult = true; *hasResultType = true; break; - case OpGroupLogicalAndKHR: *hasResult = true; *hasResultType = true; break; - case OpGroupLogicalOrKHR: *hasResult = true; *hasResultType = true; break; - case OpGroupLogicalXorKHR: *hasResult = true; *hasResultType = true; break; - } -} -#endif /* SPV_ENABLE_UTILITY_CODE */ - -// Overload bitwise operators for mask bit combining - -inline ImageOperandsMask operator|(ImageOperandsMask a, ImageOperandsMask b) { return ImageOperandsMask(unsigned(a) | unsigned(b)); } -inline ImageOperandsMask operator&(ImageOperandsMask a, ImageOperandsMask b) { return ImageOperandsMask(unsigned(a) & unsigned(b)); } -inline ImageOperandsMask operator^(ImageOperandsMask a, ImageOperandsMask b) { return ImageOperandsMask(unsigned(a) ^ unsigned(b)); } -inline ImageOperandsMask operator~(ImageOperandsMask a) { return ImageOperandsMask(~unsigned(a)); } -inline FPFastMathModeMask operator|(FPFastMathModeMask a, FPFastMathModeMask b) { return FPFastMathModeMask(unsigned(a) | unsigned(b)); } -inline FPFastMathModeMask operator&(FPFastMathModeMask a, FPFastMathModeMask b) { return FPFastMathModeMask(unsigned(a) & unsigned(b)); } -inline FPFastMathModeMask operator^(FPFastMathModeMask a, FPFastMathModeMask b) { return FPFastMathModeMask(unsigned(a) ^ unsigned(b)); } -inline FPFastMathModeMask operator~(FPFastMathModeMask a) { return FPFastMathModeMask(~unsigned(a)); } -inline SelectionControlMask operator|(SelectionControlMask a, SelectionControlMask b) { return SelectionControlMask(unsigned(a) | unsigned(b)); } -inline SelectionControlMask operator&(SelectionControlMask a, SelectionControlMask b) { return SelectionControlMask(unsigned(a) & unsigned(b)); } -inline SelectionControlMask operator^(SelectionControlMask a, SelectionControlMask b) { return SelectionControlMask(unsigned(a) ^ unsigned(b)); } -inline SelectionControlMask operator~(SelectionControlMask a) { return SelectionControlMask(~unsigned(a)); } -inline LoopControlMask operator|(LoopControlMask a, LoopControlMask b) { return LoopControlMask(unsigned(a) | unsigned(b)); } -inline LoopControlMask operator&(LoopControlMask a, LoopControlMask b) { return LoopControlMask(unsigned(a) & unsigned(b)); } -inline LoopControlMask operator^(LoopControlMask a, LoopControlMask b) { return LoopControlMask(unsigned(a) ^ unsigned(b)); } -inline LoopControlMask operator~(LoopControlMask a) { return LoopControlMask(~unsigned(a)); } -inline FunctionControlMask operator|(FunctionControlMask a, FunctionControlMask b) { return FunctionControlMask(unsigned(a) | unsigned(b)); } -inline FunctionControlMask operator&(FunctionControlMask a, FunctionControlMask b) { return FunctionControlMask(unsigned(a) & unsigned(b)); } -inline FunctionControlMask operator^(FunctionControlMask a, FunctionControlMask b) { return FunctionControlMask(unsigned(a) ^ unsigned(b)); } -inline FunctionControlMask operator~(FunctionControlMask a) { return FunctionControlMask(~unsigned(a)); } -inline MemorySemanticsMask operator|(MemorySemanticsMask a, MemorySemanticsMask b) { return MemorySemanticsMask(unsigned(a) | unsigned(b)); } -inline MemorySemanticsMask operator&(MemorySemanticsMask a, MemorySemanticsMask b) { return MemorySemanticsMask(unsigned(a) & unsigned(b)); } -inline MemorySemanticsMask operator^(MemorySemanticsMask a, MemorySemanticsMask b) { return MemorySemanticsMask(unsigned(a) ^ unsigned(b)); } -inline MemorySemanticsMask operator~(MemorySemanticsMask a) { return MemorySemanticsMask(~unsigned(a)); } -inline MemoryAccessMask operator|(MemoryAccessMask a, MemoryAccessMask b) { return MemoryAccessMask(unsigned(a) | unsigned(b)); } -inline MemoryAccessMask operator&(MemoryAccessMask a, MemoryAccessMask b) { return MemoryAccessMask(unsigned(a) & unsigned(b)); } -inline MemoryAccessMask operator^(MemoryAccessMask a, MemoryAccessMask b) { return MemoryAccessMask(unsigned(a) ^ unsigned(b)); } -inline MemoryAccessMask operator~(MemoryAccessMask a) { return MemoryAccessMask(~unsigned(a)); } -inline KernelProfilingInfoMask operator|(KernelProfilingInfoMask a, KernelProfilingInfoMask b) { return KernelProfilingInfoMask(unsigned(a) | unsigned(b)); } -inline KernelProfilingInfoMask operator&(KernelProfilingInfoMask a, KernelProfilingInfoMask b) { return KernelProfilingInfoMask(unsigned(a) & unsigned(b)); } -inline KernelProfilingInfoMask operator^(KernelProfilingInfoMask a, KernelProfilingInfoMask b) { return KernelProfilingInfoMask(unsigned(a) ^ unsigned(b)); } -inline KernelProfilingInfoMask operator~(KernelProfilingInfoMask a) { return KernelProfilingInfoMask(~unsigned(a)); } -inline RayFlagsMask operator|(RayFlagsMask a, RayFlagsMask b) { return RayFlagsMask(unsigned(a) | unsigned(b)); } -inline RayFlagsMask operator&(RayFlagsMask a, RayFlagsMask b) { return RayFlagsMask(unsigned(a) & unsigned(b)); } -inline RayFlagsMask operator^(RayFlagsMask a, RayFlagsMask b) { return RayFlagsMask(unsigned(a) ^ unsigned(b)); } -inline RayFlagsMask operator~(RayFlagsMask a) { return RayFlagsMask(~unsigned(a)); } -inline FragmentShadingRateMask operator|(FragmentShadingRateMask a, FragmentShadingRateMask b) { return FragmentShadingRateMask(unsigned(a) | unsigned(b)); } -inline FragmentShadingRateMask operator&(FragmentShadingRateMask a, FragmentShadingRateMask b) { return FragmentShadingRateMask(unsigned(a) & unsigned(b)); } -inline FragmentShadingRateMask operator^(FragmentShadingRateMask a, FragmentShadingRateMask b) { return FragmentShadingRateMask(unsigned(a) ^ unsigned(b)); } -inline FragmentShadingRateMask operator~(FragmentShadingRateMask a) { return FragmentShadingRateMask(~unsigned(a)); } -inline CooperativeMatrixOperandsMask operator|(CooperativeMatrixOperandsMask a, CooperativeMatrixOperandsMask b) { return CooperativeMatrixOperandsMask(unsigned(a) | unsigned(b)); } -inline CooperativeMatrixOperandsMask operator&(CooperativeMatrixOperandsMask a, CooperativeMatrixOperandsMask b) { return CooperativeMatrixOperandsMask(unsigned(a) & unsigned(b)); } -inline CooperativeMatrixOperandsMask operator^(CooperativeMatrixOperandsMask a, CooperativeMatrixOperandsMask b) { return CooperativeMatrixOperandsMask(unsigned(a) ^ unsigned(b)); } -inline CooperativeMatrixOperandsMask operator~(CooperativeMatrixOperandsMask a) { return CooperativeMatrixOperandsMask(~unsigned(a)); } - -} // end namespace spv - -#endif // #ifndef spirv_HPP - diff --git a/Extern/3rdParty/shaderc/shaderc/include/spirv/unified1/spirv.hpp11 b/Extern/3rdParty/shaderc/shaderc/include/spirv/unified1/spirv.hpp11 deleted file mode 100644 index f610092..0000000 --- a/Extern/3rdParty/shaderc/shaderc/include/spirv/unified1/spirv.hpp11 +++ /dev/null @@ -1,2805 +0,0 @@ -// Copyright (c) 2014-2020 The Khronos Group Inc. -// -// Permission is hereby granted, free of charge, to any person obtaining a copy -// of this software and/or associated documentation files (the "Materials"), -// 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. - -// This header is automatically generated by the same tool that creates -// the Binary Section of the SPIR-V specification. - -// Enumeration tokens for SPIR-V, in various styles: -// C, C++, C++11, JSON, Lua, Python, C#, D, Beef -// -// - C will have tokens with a "Spv" prefix, e.g.: SpvSourceLanguageGLSL -// - C++ will have tokens in the "spv" name space, e.g.: spv::SourceLanguageGLSL -// - C++11 will use enum classes in the spv namespace, e.g.: spv::SourceLanguage::GLSL -// - Lua will use tables, e.g.: spv.SourceLanguage.GLSL -// - Python will use dictionaries, e.g.: spv['SourceLanguage']['GLSL'] -// - C# will use enum classes in the Specification class located in the "Spv" namespace, -// e.g.: Spv.Specification.SourceLanguage.GLSL -// - D will have tokens under the "spv" module, e.g: spv.SourceLanguage.GLSL -// - Beef will use enum classes in the Specification class located in the "Spv" namespace, -// e.g.: Spv.Specification.SourceLanguage.GLSL -// -// Some tokens act like mask values, which can be OR'd together, -// while others are mutually exclusive. The mask-like ones have -// "Mask" in their name, and a parallel enum that has the shift -// amount (1 << x) for each corresponding enumerant. - -#ifndef spirv_HPP -#define spirv_HPP - -namespace spv { - -typedef unsigned int Id; - -#define SPV_VERSION 0x10600 -#define SPV_REVISION 1 - -static const unsigned int MagicNumber = 0x07230203; -static const unsigned int Version = 0x00010600; -static const unsigned int Revision = 1; -static const unsigned int OpCodeMask = 0xffff; -static const unsigned int WordCountShift = 16; - -enum class SourceLanguage : unsigned { - Unknown = 0, - ESSL = 1, - GLSL = 2, - OpenCL_C = 3, - OpenCL_CPP = 4, - HLSL = 5, - CPP_for_OpenCL = 6, - SYCL = 7, - HERO_C = 8, - NZSL = 9, - WGSL = 10, - Max = 0x7fffffff, -}; - -enum class ExecutionModel : unsigned { - Vertex = 0, - TessellationControl = 1, - TessellationEvaluation = 2, - Geometry = 3, - Fragment = 4, - GLCompute = 5, - Kernel = 6, - TaskNV = 5267, - MeshNV = 5268, - RayGenerationKHR = 5313, - RayGenerationNV = 5313, - IntersectionKHR = 5314, - IntersectionNV = 5314, - AnyHitKHR = 5315, - AnyHitNV = 5315, - ClosestHitKHR = 5316, - ClosestHitNV = 5316, - MissKHR = 5317, - MissNV = 5317, - CallableKHR = 5318, - CallableNV = 5318, - TaskEXT = 5364, - MeshEXT = 5365, - Max = 0x7fffffff, -}; - -enum class AddressingModel : unsigned { - Logical = 0, - Physical32 = 1, - Physical64 = 2, - PhysicalStorageBuffer64 = 5348, - PhysicalStorageBuffer64EXT = 5348, - Max = 0x7fffffff, -}; - -enum class MemoryModel : unsigned { - Simple = 0, - GLSL450 = 1, - OpenCL = 2, - Vulkan = 3, - VulkanKHR = 3, - Max = 0x7fffffff, -}; - -enum class ExecutionMode : unsigned { - Invocations = 0, - SpacingEqual = 1, - SpacingFractionalEven = 2, - SpacingFractionalOdd = 3, - VertexOrderCw = 4, - VertexOrderCcw = 5, - PixelCenterInteger = 6, - OriginUpperLeft = 7, - OriginLowerLeft = 8, - EarlyFragmentTests = 9, - PointMode = 10, - Xfb = 11, - DepthReplacing = 12, - DepthGreater = 14, - DepthLess = 15, - DepthUnchanged = 16, - LocalSize = 17, - LocalSizeHint = 18, - InputPoints = 19, - InputLines = 20, - InputLinesAdjacency = 21, - Triangles = 22, - InputTrianglesAdjacency = 23, - Quads = 24, - Isolines = 25, - OutputVertices = 26, - OutputPoints = 27, - OutputLineStrip = 28, - OutputTriangleStrip = 29, - VecTypeHint = 30, - ContractionOff = 31, - Initializer = 33, - Finalizer = 34, - SubgroupSize = 35, - SubgroupsPerWorkgroup = 36, - SubgroupsPerWorkgroupId = 37, - LocalSizeId = 38, - LocalSizeHintId = 39, - NonCoherentColorAttachmentReadEXT = 4169, - NonCoherentDepthAttachmentReadEXT = 4170, - NonCoherentStencilAttachmentReadEXT = 4171, - SubgroupUniformControlFlowKHR = 4421, - PostDepthCoverage = 4446, - DenormPreserve = 4459, - DenormFlushToZero = 4460, - SignedZeroInfNanPreserve = 4461, - RoundingModeRTE = 4462, - RoundingModeRTZ = 4463, - EarlyAndLateFragmentTestsAMD = 5017, - StencilRefReplacingEXT = 5027, - StencilRefUnchangedFrontAMD = 5079, - StencilRefGreaterFrontAMD = 5080, - StencilRefLessFrontAMD = 5081, - StencilRefUnchangedBackAMD = 5082, - StencilRefGreaterBackAMD = 5083, - StencilRefLessBackAMD = 5084, - OutputLinesEXT = 5269, - OutputLinesNV = 5269, - OutputPrimitivesEXT = 5270, - OutputPrimitivesNV = 5270, - DerivativeGroupQuadsNV = 5289, - DerivativeGroupLinearNV = 5290, - OutputTrianglesEXT = 5298, - OutputTrianglesNV = 5298, - PixelInterlockOrderedEXT = 5366, - PixelInterlockUnorderedEXT = 5367, - SampleInterlockOrderedEXT = 5368, - SampleInterlockUnorderedEXT = 5369, - ShadingRateInterlockOrderedEXT = 5370, - ShadingRateInterlockUnorderedEXT = 5371, - SharedLocalMemorySizeINTEL = 5618, - RoundingModeRTPINTEL = 5620, - RoundingModeRTNINTEL = 5621, - FloatingPointModeALTINTEL = 5622, - FloatingPointModeIEEEINTEL = 5623, - MaxWorkgroupSizeINTEL = 5893, - MaxWorkDimINTEL = 5894, - NoGlobalOffsetINTEL = 5895, - NumSIMDWorkitemsINTEL = 5896, - SchedulerTargetFmaxMhzINTEL = 5903, - StreamingInterfaceINTEL = 6154, - RegisterMapInterfaceINTEL = 6160, - NamedBarrierCountINTEL = 6417, - Max = 0x7fffffff, -}; - -enum class StorageClass : unsigned { - UniformConstant = 0, - Input = 1, - Uniform = 2, - Output = 3, - Workgroup = 4, - CrossWorkgroup = 5, - Private = 6, - Function = 7, - Generic = 8, - PushConstant = 9, - AtomicCounter = 10, - Image = 11, - StorageBuffer = 12, - TileImageEXT = 4172, - CallableDataKHR = 5328, - CallableDataNV = 5328, - IncomingCallableDataKHR = 5329, - IncomingCallableDataNV = 5329, - RayPayloadKHR = 5338, - RayPayloadNV = 5338, - HitAttributeKHR = 5339, - HitAttributeNV = 5339, - IncomingRayPayloadKHR = 5342, - IncomingRayPayloadNV = 5342, - ShaderRecordBufferKHR = 5343, - ShaderRecordBufferNV = 5343, - PhysicalStorageBuffer = 5349, - PhysicalStorageBufferEXT = 5349, - HitObjectAttributeNV = 5385, - TaskPayloadWorkgroupEXT = 5402, - CodeSectionINTEL = 5605, - DeviceOnlyINTEL = 5936, - HostOnlyINTEL = 5937, - Max = 0x7fffffff, -}; - -enum class Dim : unsigned { - Dim1D = 0, - Dim2D = 1, - Dim3D = 2, - Cube = 3, - Rect = 4, - Buffer = 5, - SubpassData = 6, - TileImageDataEXT = 4173, - Max = 0x7fffffff, -}; - -enum class SamplerAddressingMode : unsigned { - None = 0, - ClampToEdge = 1, - Clamp = 2, - Repeat = 3, - RepeatMirrored = 4, - Max = 0x7fffffff, -}; - -enum class SamplerFilterMode : unsigned { - Nearest = 0, - Linear = 1, - Max = 0x7fffffff, -}; - -enum class ImageFormat : unsigned { - Unknown = 0, - Rgba32f = 1, - Rgba16f = 2, - R32f = 3, - Rgba8 = 4, - Rgba8Snorm = 5, - Rg32f = 6, - Rg16f = 7, - R11fG11fB10f = 8, - R16f = 9, - Rgba16 = 10, - Rgb10A2 = 11, - Rg16 = 12, - Rg8 = 13, - R16 = 14, - R8 = 15, - Rgba16Snorm = 16, - Rg16Snorm = 17, - Rg8Snorm = 18, - R16Snorm = 19, - R8Snorm = 20, - Rgba32i = 21, - Rgba16i = 22, - Rgba8i = 23, - R32i = 24, - Rg32i = 25, - Rg16i = 26, - Rg8i = 27, - R16i = 28, - R8i = 29, - Rgba32ui = 30, - Rgba16ui = 31, - Rgba8ui = 32, - R32ui = 33, - Rgb10a2ui = 34, - Rg32ui = 35, - Rg16ui = 36, - Rg8ui = 37, - R16ui = 38, - R8ui = 39, - R64ui = 40, - R64i = 41, - Max = 0x7fffffff, -}; - -enum class ImageChannelOrder : unsigned { - R = 0, - A = 1, - RG = 2, - RA = 3, - RGB = 4, - RGBA = 5, - BGRA = 6, - ARGB = 7, - Intensity = 8, - Luminance = 9, - Rx = 10, - RGx = 11, - RGBx = 12, - Depth = 13, - DepthStencil = 14, - sRGB = 15, - sRGBx = 16, - sRGBA = 17, - sBGRA = 18, - ABGR = 19, - Max = 0x7fffffff, -}; - -enum class ImageChannelDataType : unsigned { - SnormInt8 = 0, - SnormInt16 = 1, - UnormInt8 = 2, - UnormInt16 = 3, - UnormShort565 = 4, - UnormShort555 = 5, - UnormInt101010 = 6, - SignedInt8 = 7, - SignedInt16 = 8, - SignedInt32 = 9, - UnsignedInt8 = 10, - UnsignedInt16 = 11, - UnsignedInt32 = 12, - HalfFloat = 13, - Float = 14, - UnormInt24 = 15, - UnormInt101010_2 = 16, - UnsignedIntRaw10EXT = 19, - UnsignedIntRaw12EXT = 20, - Max = 0x7fffffff, -}; - -enum class ImageOperandsShift : unsigned { - Bias = 0, - Lod = 1, - Grad = 2, - ConstOffset = 3, - Offset = 4, - ConstOffsets = 5, - Sample = 6, - MinLod = 7, - MakeTexelAvailable = 8, - MakeTexelAvailableKHR = 8, - MakeTexelVisible = 9, - MakeTexelVisibleKHR = 9, - NonPrivateTexel = 10, - NonPrivateTexelKHR = 10, - VolatileTexel = 11, - VolatileTexelKHR = 11, - SignExtend = 12, - ZeroExtend = 13, - Nontemporal = 14, - Offsets = 16, - Max = 0x7fffffff, -}; - -enum class ImageOperandsMask : unsigned { - MaskNone = 0, - Bias = 0x00000001, - Lod = 0x00000002, - Grad = 0x00000004, - ConstOffset = 0x00000008, - Offset = 0x00000010, - ConstOffsets = 0x00000020, - Sample = 0x00000040, - MinLod = 0x00000080, - MakeTexelAvailable = 0x00000100, - MakeTexelAvailableKHR = 0x00000100, - MakeTexelVisible = 0x00000200, - MakeTexelVisibleKHR = 0x00000200, - NonPrivateTexel = 0x00000400, - NonPrivateTexelKHR = 0x00000400, - VolatileTexel = 0x00000800, - VolatileTexelKHR = 0x00000800, - SignExtend = 0x00001000, - ZeroExtend = 0x00002000, - Nontemporal = 0x00004000, - Offsets = 0x00010000, -}; - -enum class FPFastMathModeShift : unsigned { - NotNaN = 0, - NotInf = 1, - NSZ = 2, - AllowRecip = 3, - Fast = 4, - AllowContractFastINTEL = 16, - AllowReassocINTEL = 17, - Max = 0x7fffffff, -}; - -enum class FPFastMathModeMask : unsigned { - MaskNone = 0, - NotNaN = 0x00000001, - NotInf = 0x00000002, - NSZ = 0x00000004, - AllowRecip = 0x00000008, - Fast = 0x00000010, - AllowContractFastINTEL = 0x00010000, - AllowReassocINTEL = 0x00020000, -}; - -enum class FPRoundingMode : unsigned { - RTE = 0, - RTZ = 1, - RTP = 2, - RTN = 3, - Max = 0x7fffffff, -}; - -enum class LinkageType : unsigned { - Export = 0, - Import = 1, - LinkOnceODR = 2, - Max = 0x7fffffff, -}; - -enum class AccessQualifier : unsigned { - ReadOnly = 0, - WriteOnly = 1, - ReadWrite = 2, - Max = 0x7fffffff, -}; - -enum class FunctionParameterAttribute : unsigned { - Zext = 0, - Sext = 1, - ByVal = 2, - Sret = 3, - NoAlias = 4, - NoCapture = 5, - NoWrite = 6, - NoReadWrite = 7, - RuntimeAlignedINTEL = 5940, - Max = 0x7fffffff, -}; - -enum class Decoration : unsigned { - RelaxedPrecision = 0, - SpecId = 1, - Block = 2, - BufferBlock = 3, - RowMajor = 4, - ColMajor = 5, - ArrayStride = 6, - MatrixStride = 7, - GLSLShared = 8, - GLSLPacked = 9, - CPacked = 10, - BuiltIn = 11, - NoPerspective = 13, - Flat = 14, - Patch = 15, - Centroid = 16, - Sample = 17, - Invariant = 18, - Restrict = 19, - Aliased = 20, - Volatile = 21, - Constant = 22, - Coherent = 23, - NonWritable = 24, - NonReadable = 25, - Uniform = 26, - UniformId = 27, - SaturatedConversion = 28, - Stream = 29, - Location = 30, - Component = 31, - Index = 32, - Binding = 33, - DescriptorSet = 34, - Offset = 35, - XfbBuffer = 36, - XfbStride = 37, - FuncParamAttr = 38, - FPRoundingMode = 39, - FPFastMathMode = 40, - LinkageAttributes = 41, - NoContraction = 42, - InputAttachmentIndex = 43, - Alignment = 44, - MaxByteOffset = 45, - AlignmentId = 46, - MaxByteOffsetId = 47, - NoSignedWrap = 4469, - NoUnsignedWrap = 4470, - WeightTextureQCOM = 4487, - BlockMatchTextureQCOM = 4488, - ExplicitInterpAMD = 4999, - OverrideCoverageNV = 5248, - PassthroughNV = 5250, - ViewportRelativeNV = 5252, - SecondaryViewportRelativeNV = 5256, - PerPrimitiveEXT = 5271, - PerPrimitiveNV = 5271, - PerViewNV = 5272, - PerTaskNV = 5273, - PerVertexKHR = 5285, - PerVertexNV = 5285, - NonUniform = 5300, - NonUniformEXT = 5300, - RestrictPointer = 5355, - RestrictPointerEXT = 5355, - AliasedPointer = 5356, - AliasedPointerEXT = 5356, - HitObjectShaderRecordBufferNV = 5386, - BindlessSamplerNV = 5398, - BindlessImageNV = 5399, - BoundSamplerNV = 5400, - BoundImageNV = 5401, - SIMTCallINTEL = 5599, - ReferencedIndirectlyINTEL = 5602, - ClobberINTEL = 5607, - SideEffectsINTEL = 5608, - VectorComputeVariableINTEL = 5624, - FuncParamIOKindINTEL = 5625, - VectorComputeFunctionINTEL = 5626, - StackCallINTEL = 5627, - GlobalVariableOffsetINTEL = 5628, - CounterBuffer = 5634, - 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, - MathOpDSPModeINTEL = 5909, - AliasScopeINTEL = 5914, - NoAliasINTEL = 5915, - InitiationIntervalINTEL = 5917, - MaxConcurrencyINTEL = 5918, - PipelineEnableINTEL = 5919, - BufferLocationINTEL = 5921, - IOPipeStorageINTEL = 5944, - FunctionFloatingPointModeINTEL = 6080, - SingleElementVectorINTEL = 6085, - VectorComputeCallableFunctionINTEL = 6087, - MediaBlockIOINTEL = 6140, - FPMaxErrorDecorationINTEL = 6170, - LatencyControlLabelINTEL = 6172, - LatencyControlConstraintINTEL = 6173, - ConduitKernelArgumentINTEL = 6175, - RegisterMapKernelArgumentINTEL = 6176, - MMHostInterfaceAddressWidthINTEL = 6177, - MMHostInterfaceDataWidthINTEL = 6178, - MMHostInterfaceLatencyINTEL = 6179, - MMHostInterfaceReadWriteModeINTEL = 6180, - MMHostInterfaceMaxBurstINTEL = 6181, - MMHostInterfaceWaitRequestINTEL = 6182, - StableKernelArgumentINTEL = 6183, - Max = 0x7fffffff, -}; - -enum class BuiltIn : unsigned { - Position = 0, - PointSize = 1, - ClipDistance = 3, - CullDistance = 4, - VertexId = 5, - InstanceId = 6, - PrimitiveId = 7, - InvocationId = 8, - Layer = 9, - ViewportIndex = 10, - TessLevelOuter = 11, - TessLevelInner = 12, - TessCoord = 13, - PatchVertices = 14, - FragCoord = 15, - PointCoord = 16, - FrontFacing = 17, - SampleId = 18, - SamplePosition = 19, - SampleMask = 20, - FragDepth = 22, - HelperInvocation = 23, - NumWorkgroups = 24, - WorkgroupSize = 25, - WorkgroupId = 26, - LocalInvocationId = 27, - GlobalInvocationId = 28, - LocalInvocationIndex = 29, - WorkDim = 30, - GlobalSize = 31, - EnqueuedWorkgroupSize = 32, - GlobalOffset = 33, - GlobalLinearId = 34, - SubgroupSize = 36, - SubgroupMaxSize = 37, - NumSubgroups = 38, - NumEnqueuedSubgroups = 39, - SubgroupId = 40, - SubgroupLocalInvocationId = 41, - VertexIndex = 42, - InstanceIndex = 43, - CoreIDARM = 4160, - CoreCountARM = 4161, - CoreMaxIDARM = 4162, - WarpIDARM = 4163, - WarpMaxIDARM = 4164, - SubgroupEqMask = 4416, - SubgroupEqMaskKHR = 4416, - SubgroupGeMask = 4417, - SubgroupGeMaskKHR = 4417, - SubgroupGtMask = 4418, - SubgroupGtMaskKHR = 4418, - SubgroupLeMask = 4419, - SubgroupLeMaskKHR = 4419, - SubgroupLtMask = 4420, - SubgroupLtMaskKHR = 4420, - BaseVertex = 4424, - BaseInstance = 4425, - DrawIndex = 4426, - PrimitiveShadingRateKHR = 4432, - DeviceIndex = 4438, - ViewIndex = 4440, - ShadingRateKHR = 4444, - BaryCoordNoPerspAMD = 4992, - BaryCoordNoPerspCentroidAMD = 4993, - BaryCoordNoPerspSampleAMD = 4994, - BaryCoordSmoothAMD = 4995, - BaryCoordSmoothCentroidAMD = 4996, - BaryCoordSmoothSampleAMD = 4997, - BaryCoordPullModelAMD = 4998, - FragStencilRefEXT = 5014, - ViewportMaskNV = 5253, - SecondaryPositionNV = 5257, - SecondaryViewportMaskNV = 5258, - PositionPerViewNV = 5261, - ViewportMaskPerViewNV = 5262, - FullyCoveredEXT = 5264, - TaskCountNV = 5274, - PrimitiveCountNV = 5275, - PrimitiveIndicesNV = 5276, - ClipDistancePerViewNV = 5277, - CullDistancePerViewNV = 5278, - LayerPerViewNV = 5279, - MeshViewCountNV = 5280, - MeshViewIndicesNV = 5281, - BaryCoordKHR = 5286, - BaryCoordNV = 5286, - BaryCoordNoPerspKHR = 5287, - BaryCoordNoPerspNV = 5287, - FragSizeEXT = 5292, - FragmentSizeNV = 5292, - FragInvocationCountEXT = 5293, - InvocationsPerPixelNV = 5293, - PrimitivePointIndicesEXT = 5294, - PrimitiveLineIndicesEXT = 5295, - PrimitiveTriangleIndicesEXT = 5296, - CullPrimitiveEXT = 5299, - LaunchIdKHR = 5319, - LaunchIdNV = 5319, - LaunchSizeKHR = 5320, - LaunchSizeNV = 5320, - WorldRayOriginKHR = 5321, - WorldRayOriginNV = 5321, - WorldRayDirectionKHR = 5322, - WorldRayDirectionNV = 5322, - ObjectRayOriginKHR = 5323, - ObjectRayOriginNV = 5323, - ObjectRayDirectionKHR = 5324, - ObjectRayDirectionNV = 5324, - RayTminKHR = 5325, - RayTminNV = 5325, - RayTmaxKHR = 5326, - RayTmaxNV = 5326, - InstanceCustomIndexKHR = 5327, - InstanceCustomIndexNV = 5327, - ObjectToWorldKHR = 5330, - ObjectToWorldNV = 5330, - WorldToObjectKHR = 5331, - WorldToObjectNV = 5331, - HitTNV = 5332, - HitKindKHR = 5333, - HitKindNV = 5333, - CurrentRayTimeNV = 5334, - HitTriangleVertexPositionsKHR = 5335, - IncomingRayFlagsKHR = 5351, - IncomingRayFlagsNV = 5351, - RayGeometryIndexKHR = 5352, - WarpsPerSMNV = 5374, - SMCountNV = 5375, - WarpIDNV = 5376, - SMIDNV = 5377, - CullMaskKHR = 6021, - Max = 0x7fffffff, -}; - -enum class SelectionControlShift : unsigned { - Flatten = 0, - DontFlatten = 1, - Max = 0x7fffffff, -}; - -enum class SelectionControlMask : unsigned { - MaskNone = 0, - Flatten = 0x00000001, - DontFlatten = 0x00000002, -}; - -enum class LoopControlShift : unsigned { - Unroll = 0, - DontUnroll = 1, - DependencyInfinite = 2, - DependencyLength = 3, - MinIterations = 4, - MaxIterations = 5, - IterationMultiple = 6, - PeelCount = 7, - PartialCount = 8, - InitiationIntervalINTEL = 16, - MaxConcurrencyINTEL = 17, - DependencyArrayINTEL = 18, - PipelineEnableINTEL = 19, - LoopCoalesceINTEL = 20, - MaxInterleavingINTEL = 21, - SpeculatedIterationsINTEL = 22, - NoFusionINTEL = 23, - LoopCountINTEL = 24, - MaxReinvocationDelayINTEL = 25, - Max = 0x7fffffff, -}; - -enum class LoopControlMask : unsigned { - MaskNone = 0, - Unroll = 0x00000001, - DontUnroll = 0x00000002, - DependencyInfinite = 0x00000004, - DependencyLength = 0x00000008, - MinIterations = 0x00000010, - MaxIterations = 0x00000020, - IterationMultiple = 0x00000040, - PeelCount = 0x00000080, - PartialCount = 0x00000100, - InitiationIntervalINTEL = 0x00010000, - MaxConcurrencyINTEL = 0x00020000, - DependencyArrayINTEL = 0x00040000, - PipelineEnableINTEL = 0x00080000, - LoopCoalesceINTEL = 0x00100000, - MaxInterleavingINTEL = 0x00200000, - SpeculatedIterationsINTEL = 0x00400000, - NoFusionINTEL = 0x00800000, - LoopCountINTEL = 0x01000000, - MaxReinvocationDelayINTEL = 0x02000000, -}; - -enum class FunctionControlShift : unsigned { - Inline = 0, - DontInline = 1, - Pure = 2, - Const = 3, - OptNoneINTEL = 16, - Max = 0x7fffffff, -}; - -enum class FunctionControlMask : unsigned { - MaskNone = 0, - Inline = 0x00000001, - DontInline = 0x00000002, - Pure = 0x00000004, - Const = 0x00000008, - OptNoneINTEL = 0x00010000, -}; - -enum class MemorySemanticsShift : unsigned { - Acquire = 1, - Release = 2, - AcquireRelease = 3, - SequentiallyConsistent = 4, - UniformMemory = 6, - SubgroupMemory = 7, - WorkgroupMemory = 8, - CrossWorkgroupMemory = 9, - AtomicCounterMemory = 10, - ImageMemory = 11, - OutputMemory = 12, - OutputMemoryKHR = 12, - MakeAvailable = 13, - MakeAvailableKHR = 13, - MakeVisible = 14, - MakeVisibleKHR = 14, - Volatile = 15, - Max = 0x7fffffff, -}; - -enum class MemorySemanticsMask : unsigned { - MaskNone = 0, - Acquire = 0x00000002, - Release = 0x00000004, - AcquireRelease = 0x00000008, - SequentiallyConsistent = 0x00000010, - UniformMemory = 0x00000040, - SubgroupMemory = 0x00000080, - WorkgroupMemory = 0x00000100, - CrossWorkgroupMemory = 0x00000200, - AtomicCounterMemory = 0x00000400, - ImageMemory = 0x00000800, - OutputMemory = 0x00001000, - OutputMemoryKHR = 0x00001000, - MakeAvailable = 0x00002000, - MakeAvailableKHR = 0x00002000, - MakeVisible = 0x00004000, - MakeVisibleKHR = 0x00004000, - Volatile = 0x00008000, -}; - -enum class MemoryAccessShift : unsigned { - Volatile = 0, - Aligned = 1, - Nontemporal = 2, - MakePointerAvailable = 3, - MakePointerAvailableKHR = 3, - MakePointerVisible = 4, - MakePointerVisibleKHR = 4, - NonPrivatePointer = 5, - NonPrivatePointerKHR = 5, - AliasScopeINTELMask = 16, - NoAliasINTELMask = 17, - Max = 0x7fffffff, -}; - -enum class MemoryAccessMask : unsigned { - MaskNone = 0, - Volatile = 0x00000001, - Aligned = 0x00000002, - Nontemporal = 0x00000004, - MakePointerAvailable = 0x00000008, - MakePointerAvailableKHR = 0x00000008, - MakePointerVisible = 0x00000010, - MakePointerVisibleKHR = 0x00000010, - NonPrivatePointer = 0x00000020, - NonPrivatePointerKHR = 0x00000020, - AliasScopeINTELMask = 0x00010000, - NoAliasINTELMask = 0x00020000, -}; - -enum class Scope : unsigned { - CrossDevice = 0, - Device = 1, - Workgroup = 2, - Subgroup = 3, - Invocation = 4, - QueueFamily = 5, - QueueFamilyKHR = 5, - ShaderCallKHR = 6, - Max = 0x7fffffff, -}; - -enum class GroupOperation : unsigned { - Reduce = 0, - InclusiveScan = 1, - ExclusiveScan = 2, - ClusteredReduce = 3, - PartitionedReduceNV = 6, - PartitionedInclusiveScanNV = 7, - PartitionedExclusiveScanNV = 8, - Max = 0x7fffffff, -}; - -enum class KernelEnqueueFlags : unsigned { - NoWait = 0, - WaitKernel = 1, - WaitWorkGroup = 2, - Max = 0x7fffffff, -}; - -enum class KernelProfilingInfoShift : unsigned { - CmdExecTime = 0, - Max = 0x7fffffff, -}; - -enum class KernelProfilingInfoMask : unsigned { - MaskNone = 0, - CmdExecTime = 0x00000001, -}; - -enum class Capability : unsigned { - Matrix = 0, - Shader = 1, - Geometry = 2, - Tessellation = 3, - Addresses = 4, - Linkage = 5, - Kernel = 6, - Vector16 = 7, - Float16Buffer = 8, - Float16 = 9, - Float64 = 10, - Int64 = 11, - Int64Atomics = 12, - ImageBasic = 13, - ImageReadWrite = 14, - ImageMipmap = 15, - Pipes = 17, - Groups = 18, - DeviceEnqueue = 19, - LiteralSampler = 20, - AtomicStorage = 21, - Int16 = 22, - TessellationPointSize = 23, - GeometryPointSize = 24, - ImageGatherExtended = 25, - StorageImageMultisample = 27, - UniformBufferArrayDynamicIndexing = 28, - SampledImageArrayDynamicIndexing = 29, - StorageBufferArrayDynamicIndexing = 30, - StorageImageArrayDynamicIndexing = 31, - ClipDistance = 32, - CullDistance = 33, - ImageCubeArray = 34, - SampleRateShading = 35, - ImageRect = 36, - SampledRect = 37, - GenericPointer = 38, - Int8 = 39, - InputAttachment = 40, - SparseResidency = 41, - MinLod = 42, - Sampled1D = 43, - Image1D = 44, - SampledCubeArray = 45, - SampledBuffer = 46, - ImageBuffer = 47, - ImageMSArray = 48, - StorageImageExtendedFormats = 49, - ImageQuery = 50, - DerivativeControl = 51, - InterpolationFunction = 52, - TransformFeedback = 53, - GeometryStreams = 54, - StorageImageReadWithoutFormat = 55, - StorageImageWriteWithoutFormat = 56, - MultiViewport = 57, - SubgroupDispatch = 58, - NamedBarrier = 59, - PipeStorage = 60, - GroupNonUniform = 61, - GroupNonUniformVote = 62, - GroupNonUniformArithmetic = 63, - GroupNonUniformBallot = 64, - GroupNonUniformShuffle = 65, - GroupNonUniformShuffleRelative = 66, - GroupNonUniformClustered = 67, - GroupNonUniformQuad = 68, - ShaderLayer = 69, - ShaderViewportIndex = 70, - UniformDecoration = 71, - CoreBuiltinsARM = 4165, - TileImageColorReadAccessEXT = 4166, - TileImageDepthReadAccessEXT = 4167, - TileImageStencilReadAccessEXT = 4168, - FragmentShadingRateKHR = 4422, - SubgroupBallotKHR = 4423, - DrawParameters = 4427, - WorkgroupMemoryExplicitLayoutKHR = 4428, - WorkgroupMemoryExplicitLayout8BitAccessKHR = 4429, - WorkgroupMemoryExplicitLayout16BitAccessKHR = 4430, - SubgroupVoteKHR = 4431, - StorageBuffer16BitAccess = 4433, - StorageUniformBufferBlock16 = 4433, - StorageUniform16 = 4434, - UniformAndStorageBuffer16BitAccess = 4434, - StoragePushConstant16 = 4435, - StorageInputOutput16 = 4436, - DeviceGroup = 4437, - MultiView = 4439, - VariablePointersStorageBuffer = 4441, - VariablePointers = 4442, - AtomicStorageOps = 4445, - SampleMaskPostDepthCoverage = 4447, - StorageBuffer8BitAccess = 4448, - UniformAndStorageBuffer8BitAccess = 4449, - StoragePushConstant8 = 4450, - DenormPreserve = 4464, - DenormFlushToZero = 4465, - SignedZeroInfNanPreserve = 4466, - RoundingModeRTE = 4467, - RoundingModeRTZ = 4468, - RayQueryProvisionalKHR = 4471, - RayQueryKHR = 4472, - RayTraversalPrimitiveCullingKHR = 4478, - RayTracingKHR = 4479, - TextureSampleWeightedQCOM = 4484, - TextureBoxFilterQCOM = 4485, - TextureBlockMatchQCOM = 4486, - Float16ImageAMD = 5008, - ImageGatherBiasLodAMD = 5009, - FragmentMaskAMD = 5010, - StencilExportEXT = 5013, - ImageReadWriteLodAMD = 5015, - Int64ImageEXT = 5016, - ShaderClockKHR = 5055, - SampleMaskOverrideCoverageNV = 5249, - GeometryShaderPassthroughNV = 5251, - ShaderViewportIndexLayerEXT = 5254, - ShaderViewportIndexLayerNV = 5254, - ShaderViewportMaskNV = 5255, - ShaderStereoViewNV = 5259, - PerViewAttributesNV = 5260, - FragmentFullyCoveredEXT = 5265, - MeshShadingNV = 5266, - ImageFootprintNV = 5282, - MeshShadingEXT = 5283, - FragmentBarycentricKHR = 5284, - FragmentBarycentricNV = 5284, - ComputeDerivativeGroupQuadsNV = 5288, - FragmentDensityEXT = 5291, - ShadingRateNV = 5291, - GroupNonUniformPartitionedNV = 5297, - ShaderNonUniform = 5301, - ShaderNonUniformEXT = 5301, - RuntimeDescriptorArray = 5302, - RuntimeDescriptorArrayEXT = 5302, - InputAttachmentArrayDynamicIndexing = 5303, - InputAttachmentArrayDynamicIndexingEXT = 5303, - UniformTexelBufferArrayDynamicIndexing = 5304, - UniformTexelBufferArrayDynamicIndexingEXT = 5304, - StorageTexelBufferArrayDynamicIndexing = 5305, - StorageTexelBufferArrayDynamicIndexingEXT = 5305, - UniformBufferArrayNonUniformIndexing = 5306, - UniformBufferArrayNonUniformIndexingEXT = 5306, - SampledImageArrayNonUniformIndexing = 5307, - SampledImageArrayNonUniformIndexingEXT = 5307, - StorageBufferArrayNonUniformIndexing = 5308, - StorageBufferArrayNonUniformIndexingEXT = 5308, - StorageImageArrayNonUniformIndexing = 5309, - StorageImageArrayNonUniformIndexingEXT = 5309, - InputAttachmentArrayNonUniformIndexing = 5310, - InputAttachmentArrayNonUniformIndexingEXT = 5310, - UniformTexelBufferArrayNonUniformIndexing = 5311, - UniformTexelBufferArrayNonUniformIndexingEXT = 5311, - StorageTexelBufferArrayNonUniformIndexing = 5312, - StorageTexelBufferArrayNonUniformIndexingEXT = 5312, - RayTracingPositionFetchKHR = 5336, - RayTracingNV = 5340, - RayTracingMotionBlurNV = 5341, - VulkanMemoryModel = 5345, - VulkanMemoryModelKHR = 5345, - VulkanMemoryModelDeviceScope = 5346, - VulkanMemoryModelDeviceScopeKHR = 5346, - PhysicalStorageBufferAddresses = 5347, - PhysicalStorageBufferAddressesEXT = 5347, - ComputeDerivativeGroupLinearNV = 5350, - RayTracingProvisionalKHR = 5353, - CooperativeMatrixNV = 5357, - FragmentShaderSampleInterlockEXT = 5363, - FragmentShaderShadingRateInterlockEXT = 5372, - ShaderSMBuiltinsNV = 5373, - FragmentShaderPixelInterlockEXT = 5378, - DemoteToHelperInvocation = 5379, - DemoteToHelperInvocationEXT = 5379, - RayTracingOpacityMicromapEXT = 5381, - ShaderInvocationReorderNV = 5383, - BindlessTextureNV = 5390, - RayQueryPositionFetchKHR = 5391, - SubgroupShuffleINTEL = 5568, - SubgroupBufferBlockIOINTEL = 5569, - SubgroupImageBlockIOINTEL = 5570, - SubgroupImageMediaBlockIOINTEL = 5579, - RoundToInfinityINTEL = 5582, - FloatingPointModeINTEL = 5583, - IntegerFunctions2INTEL = 5584, - FunctionPointersINTEL = 5603, - IndirectReferencesINTEL = 5604, - AsmINTEL = 5606, - AtomicFloat32MinMaxEXT = 5612, - AtomicFloat64MinMaxEXT = 5613, - AtomicFloat16MinMaxEXT = 5616, - VectorComputeINTEL = 5617, - VectorAnyINTEL = 5619, - ExpectAssumeKHR = 5629, - SubgroupAvcMotionEstimationINTEL = 5696, - SubgroupAvcMotionEstimationIntraINTEL = 5697, - SubgroupAvcMotionEstimationChromaINTEL = 5698, - VariableLengthArrayINTEL = 5817, - FunctionFloatControlINTEL = 5821, - FPGAMemoryAttributesINTEL = 5824, - FPFastMathModeINTEL = 5837, - ArbitraryPrecisionIntegersINTEL = 5844, - ArbitraryPrecisionFloatingPointINTEL = 5845, - UnstructuredLoopControlsINTEL = 5886, - FPGALoopControlsINTEL = 5888, - KernelAttributesINTEL = 5892, - FPGAKernelAttributesINTEL = 5897, - FPGAMemoryAccessesINTEL = 5898, - FPGAClusterAttributesINTEL = 5904, - LoopFuseINTEL = 5906, - FPGADSPControlINTEL = 5908, - MemoryAccessAliasingINTEL = 5910, - FPGAInvocationPipeliningAttributesINTEL = 5916, - FPGABufferLocationINTEL = 5920, - ArbitraryPrecisionFixedPointINTEL = 5922, - USMStorageClassesINTEL = 5935, - RuntimeAlignedAttributeINTEL = 5939, - IOPipesINTEL = 5943, - BlockingPipesINTEL = 5945, - FPGARegINTEL = 5948, - DotProductInputAll = 6016, - DotProductInputAllKHR = 6016, - DotProductInput4x8Bit = 6017, - DotProductInput4x8BitKHR = 6017, - DotProductInput4x8BitPacked = 6018, - DotProductInput4x8BitPackedKHR = 6018, - DotProduct = 6019, - DotProductKHR = 6019, - RayCullMaskKHR = 6020, - CooperativeMatrixKHR = 6022, - BitInstructions = 6025, - GroupNonUniformRotateKHR = 6026, - AtomicFloat32AddEXT = 6033, - AtomicFloat64AddEXT = 6034, - LongConstantCompositeINTEL = 6089, - OptNoneINTEL = 6094, - AtomicFloat16AddEXT = 6095, - DebugInfoModuleINTEL = 6114, - BFloat16ConversionINTEL = 6115, - SplitBarrierINTEL = 6141, - FPGAKernelAttributesv2INTEL = 6161, - FPMaxErrorINTEL = 6169, - FPGALatencyControlINTEL = 6171, - FPGAArgumentInterfacesINTEL = 6174, - GroupUniformArithmeticKHR = 6400, - Max = 0x7fffffff, -}; - -enum class RayFlagsShift : unsigned { - OpaqueKHR = 0, - NoOpaqueKHR = 1, - TerminateOnFirstHitKHR = 2, - SkipClosestHitShaderKHR = 3, - CullBackFacingTrianglesKHR = 4, - CullFrontFacingTrianglesKHR = 5, - CullOpaqueKHR = 6, - CullNoOpaqueKHR = 7, - SkipTrianglesKHR = 8, - SkipAABBsKHR = 9, - ForceOpacityMicromap2StateEXT = 10, - Max = 0x7fffffff, -}; - -enum class RayFlagsMask : unsigned { - MaskNone = 0, - OpaqueKHR = 0x00000001, - NoOpaqueKHR = 0x00000002, - TerminateOnFirstHitKHR = 0x00000004, - SkipClosestHitShaderKHR = 0x00000008, - CullBackFacingTrianglesKHR = 0x00000010, - CullFrontFacingTrianglesKHR = 0x00000020, - CullOpaqueKHR = 0x00000040, - CullNoOpaqueKHR = 0x00000080, - SkipTrianglesKHR = 0x00000100, - SkipAABBsKHR = 0x00000200, - ForceOpacityMicromap2StateEXT = 0x00000400, -}; - -enum class RayQueryIntersection : unsigned { - RayQueryCandidateIntersectionKHR = 0, - RayQueryCommittedIntersectionKHR = 1, - Max = 0x7fffffff, -}; - -enum class RayQueryCommittedIntersectionType : unsigned { - RayQueryCommittedIntersectionNoneKHR = 0, - RayQueryCommittedIntersectionTriangleKHR = 1, - RayQueryCommittedIntersectionGeneratedKHR = 2, - Max = 0x7fffffff, -}; - -enum class RayQueryCandidateIntersectionType : unsigned { - RayQueryCandidateIntersectionTriangleKHR = 0, - RayQueryCandidateIntersectionAABBKHR = 1, - 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 { - PackedVectorFormat4x8Bit = 0, - PackedVectorFormat4x8BitKHR = 0, - Max = 0x7fffffff, -}; - -enum class CooperativeMatrixOperandsShift : unsigned { - MatrixASignedComponentsKHR = 0, - MatrixBSignedComponentsKHR = 1, - MatrixCSignedComponentsKHR = 2, - MatrixResultSignedComponentsKHR = 3, - SaturatingAccumulationKHR = 4, - Max = 0x7fffffff, -}; - -enum class CooperativeMatrixOperandsMask : unsigned { - MaskNone = 0, - MatrixASignedComponentsKHR = 0x00000001, - MatrixBSignedComponentsKHR = 0x00000002, - MatrixCSignedComponentsKHR = 0x00000004, - MatrixResultSignedComponentsKHR = 0x00000008, - SaturatingAccumulationKHR = 0x00000010, -}; - -enum class CooperativeMatrixLayout : unsigned { - RowMajorKHR = 0, - ColumnMajorKHR = 1, - Max = 0x7fffffff, -}; - -enum class CooperativeMatrixUse : unsigned { - MatrixAKHR = 0, - MatrixBKHR = 1, - MatrixAccumulatorKHR = 2, - Max = 0x7fffffff, -}; - -enum class Op : unsigned { - OpNop = 0, - OpUndef = 1, - OpSourceContinued = 2, - OpSource = 3, - OpSourceExtension = 4, - OpName = 5, - OpMemberName = 6, - OpString = 7, - OpLine = 8, - OpExtension = 10, - OpExtInstImport = 11, - OpExtInst = 12, - OpMemoryModel = 14, - OpEntryPoint = 15, - OpExecutionMode = 16, - OpCapability = 17, - OpTypeVoid = 19, - OpTypeBool = 20, - OpTypeInt = 21, - OpTypeFloat = 22, - OpTypeVector = 23, - OpTypeMatrix = 24, - OpTypeImage = 25, - OpTypeSampler = 26, - OpTypeSampledImage = 27, - OpTypeArray = 28, - OpTypeRuntimeArray = 29, - OpTypeStruct = 30, - OpTypeOpaque = 31, - OpTypePointer = 32, - OpTypeFunction = 33, - OpTypeEvent = 34, - OpTypeDeviceEvent = 35, - OpTypeReserveId = 36, - OpTypeQueue = 37, - OpTypePipe = 38, - OpTypeForwardPointer = 39, - OpConstantTrue = 41, - OpConstantFalse = 42, - OpConstant = 43, - OpConstantComposite = 44, - OpConstantSampler = 45, - OpConstantNull = 46, - OpSpecConstantTrue = 48, - OpSpecConstantFalse = 49, - OpSpecConstant = 50, - OpSpecConstantComposite = 51, - OpSpecConstantOp = 52, - OpFunction = 54, - OpFunctionParameter = 55, - OpFunctionEnd = 56, - OpFunctionCall = 57, - OpVariable = 59, - OpImageTexelPointer = 60, - OpLoad = 61, - OpStore = 62, - OpCopyMemory = 63, - OpCopyMemorySized = 64, - OpAccessChain = 65, - OpInBoundsAccessChain = 66, - OpPtrAccessChain = 67, - OpArrayLength = 68, - OpGenericPtrMemSemantics = 69, - OpInBoundsPtrAccessChain = 70, - OpDecorate = 71, - OpMemberDecorate = 72, - OpDecorationGroup = 73, - OpGroupDecorate = 74, - OpGroupMemberDecorate = 75, - OpVectorExtractDynamic = 77, - OpVectorInsertDynamic = 78, - OpVectorShuffle = 79, - OpCompositeConstruct = 80, - OpCompositeExtract = 81, - OpCompositeInsert = 82, - OpCopyObject = 83, - OpTranspose = 84, - OpSampledImage = 86, - OpImageSampleImplicitLod = 87, - OpImageSampleExplicitLod = 88, - OpImageSampleDrefImplicitLod = 89, - OpImageSampleDrefExplicitLod = 90, - OpImageSampleProjImplicitLod = 91, - OpImageSampleProjExplicitLod = 92, - OpImageSampleProjDrefImplicitLod = 93, - OpImageSampleProjDrefExplicitLod = 94, - OpImageFetch = 95, - OpImageGather = 96, - OpImageDrefGather = 97, - OpImageRead = 98, - OpImageWrite = 99, - OpImage = 100, - OpImageQueryFormat = 101, - OpImageQueryOrder = 102, - OpImageQuerySizeLod = 103, - OpImageQuerySize = 104, - OpImageQueryLod = 105, - OpImageQueryLevels = 106, - OpImageQuerySamples = 107, - OpConvertFToU = 109, - OpConvertFToS = 110, - OpConvertSToF = 111, - OpConvertUToF = 112, - OpUConvert = 113, - OpSConvert = 114, - OpFConvert = 115, - OpQuantizeToF16 = 116, - OpConvertPtrToU = 117, - OpSatConvertSToU = 118, - OpSatConvertUToS = 119, - OpConvertUToPtr = 120, - OpPtrCastToGeneric = 121, - OpGenericCastToPtr = 122, - OpGenericCastToPtrExplicit = 123, - OpBitcast = 124, - OpSNegate = 126, - OpFNegate = 127, - OpIAdd = 128, - OpFAdd = 129, - OpISub = 130, - OpFSub = 131, - OpIMul = 132, - OpFMul = 133, - OpUDiv = 134, - OpSDiv = 135, - OpFDiv = 136, - OpUMod = 137, - OpSRem = 138, - OpSMod = 139, - OpFRem = 140, - OpFMod = 141, - OpVectorTimesScalar = 142, - OpMatrixTimesScalar = 143, - OpVectorTimesMatrix = 144, - OpMatrixTimesVector = 145, - OpMatrixTimesMatrix = 146, - OpOuterProduct = 147, - OpDot = 148, - OpIAddCarry = 149, - OpISubBorrow = 150, - OpUMulExtended = 151, - OpSMulExtended = 152, - OpAny = 154, - OpAll = 155, - OpIsNan = 156, - OpIsInf = 157, - OpIsFinite = 158, - OpIsNormal = 159, - OpSignBitSet = 160, - OpLessOrGreater = 161, - OpOrdered = 162, - OpUnordered = 163, - OpLogicalEqual = 164, - OpLogicalNotEqual = 165, - OpLogicalOr = 166, - OpLogicalAnd = 167, - OpLogicalNot = 168, - OpSelect = 169, - OpIEqual = 170, - OpINotEqual = 171, - OpUGreaterThan = 172, - OpSGreaterThan = 173, - OpUGreaterThanEqual = 174, - OpSGreaterThanEqual = 175, - OpULessThan = 176, - OpSLessThan = 177, - OpULessThanEqual = 178, - OpSLessThanEqual = 179, - OpFOrdEqual = 180, - OpFUnordEqual = 181, - OpFOrdNotEqual = 182, - OpFUnordNotEqual = 183, - OpFOrdLessThan = 184, - OpFUnordLessThan = 185, - OpFOrdGreaterThan = 186, - OpFUnordGreaterThan = 187, - OpFOrdLessThanEqual = 188, - OpFUnordLessThanEqual = 189, - OpFOrdGreaterThanEqual = 190, - OpFUnordGreaterThanEqual = 191, - OpShiftRightLogical = 194, - OpShiftRightArithmetic = 195, - OpShiftLeftLogical = 196, - OpBitwiseOr = 197, - OpBitwiseXor = 198, - OpBitwiseAnd = 199, - OpNot = 200, - OpBitFieldInsert = 201, - OpBitFieldSExtract = 202, - OpBitFieldUExtract = 203, - OpBitReverse = 204, - OpBitCount = 205, - OpDPdx = 207, - OpDPdy = 208, - OpFwidth = 209, - OpDPdxFine = 210, - OpDPdyFine = 211, - OpFwidthFine = 212, - OpDPdxCoarse = 213, - OpDPdyCoarse = 214, - OpFwidthCoarse = 215, - OpEmitVertex = 218, - OpEndPrimitive = 219, - OpEmitStreamVertex = 220, - OpEndStreamPrimitive = 221, - OpControlBarrier = 224, - OpMemoryBarrier = 225, - OpAtomicLoad = 227, - OpAtomicStore = 228, - OpAtomicExchange = 229, - OpAtomicCompareExchange = 230, - OpAtomicCompareExchangeWeak = 231, - OpAtomicIIncrement = 232, - OpAtomicIDecrement = 233, - OpAtomicIAdd = 234, - OpAtomicISub = 235, - OpAtomicSMin = 236, - OpAtomicUMin = 237, - OpAtomicSMax = 238, - OpAtomicUMax = 239, - OpAtomicAnd = 240, - OpAtomicOr = 241, - OpAtomicXor = 242, - OpPhi = 245, - OpLoopMerge = 246, - OpSelectionMerge = 247, - OpLabel = 248, - OpBranch = 249, - OpBranchConditional = 250, - OpSwitch = 251, - OpKill = 252, - OpReturn = 253, - OpReturnValue = 254, - OpUnreachable = 255, - OpLifetimeStart = 256, - OpLifetimeStop = 257, - OpGroupAsyncCopy = 259, - OpGroupWaitEvents = 260, - OpGroupAll = 261, - OpGroupAny = 262, - OpGroupBroadcast = 263, - OpGroupIAdd = 264, - OpGroupFAdd = 265, - OpGroupFMin = 266, - OpGroupUMin = 267, - OpGroupSMin = 268, - OpGroupFMax = 269, - OpGroupUMax = 270, - OpGroupSMax = 271, - OpReadPipe = 274, - OpWritePipe = 275, - OpReservedReadPipe = 276, - OpReservedWritePipe = 277, - OpReserveReadPipePackets = 278, - OpReserveWritePipePackets = 279, - OpCommitReadPipe = 280, - OpCommitWritePipe = 281, - OpIsValidReserveId = 282, - OpGetNumPipePackets = 283, - OpGetMaxPipePackets = 284, - OpGroupReserveReadPipePackets = 285, - OpGroupReserveWritePipePackets = 286, - OpGroupCommitReadPipe = 287, - OpGroupCommitWritePipe = 288, - OpEnqueueMarker = 291, - OpEnqueueKernel = 292, - OpGetKernelNDrangeSubGroupCount = 293, - OpGetKernelNDrangeMaxSubGroupSize = 294, - OpGetKernelWorkGroupSize = 295, - OpGetKernelPreferredWorkGroupSizeMultiple = 296, - OpRetainEvent = 297, - OpReleaseEvent = 298, - OpCreateUserEvent = 299, - OpIsValidEvent = 300, - OpSetUserEventStatus = 301, - OpCaptureEventProfilingInfo = 302, - OpGetDefaultQueue = 303, - OpBuildNDRange = 304, - OpImageSparseSampleImplicitLod = 305, - OpImageSparseSampleExplicitLod = 306, - OpImageSparseSampleDrefImplicitLod = 307, - OpImageSparseSampleDrefExplicitLod = 308, - OpImageSparseSampleProjImplicitLod = 309, - OpImageSparseSampleProjExplicitLod = 310, - OpImageSparseSampleProjDrefImplicitLod = 311, - OpImageSparseSampleProjDrefExplicitLod = 312, - OpImageSparseFetch = 313, - OpImageSparseGather = 314, - OpImageSparseDrefGather = 315, - OpImageSparseTexelsResident = 316, - OpNoLine = 317, - OpAtomicFlagTestAndSet = 318, - OpAtomicFlagClear = 319, - OpImageSparseRead = 320, - OpSizeOf = 321, - OpTypePipeStorage = 322, - OpConstantPipeStorage = 323, - OpCreatePipeFromPipeStorage = 324, - OpGetKernelLocalSizeForSubgroupCount = 325, - OpGetKernelMaxNumSubgroups = 326, - OpTypeNamedBarrier = 327, - OpNamedBarrierInitialize = 328, - OpMemoryNamedBarrier = 329, - OpModuleProcessed = 330, - OpExecutionModeId = 331, - OpDecorateId = 332, - OpGroupNonUniformElect = 333, - OpGroupNonUniformAll = 334, - OpGroupNonUniformAny = 335, - OpGroupNonUniformAllEqual = 336, - OpGroupNonUniformBroadcast = 337, - OpGroupNonUniformBroadcastFirst = 338, - OpGroupNonUniformBallot = 339, - OpGroupNonUniformInverseBallot = 340, - OpGroupNonUniformBallotBitExtract = 341, - OpGroupNonUniformBallotBitCount = 342, - OpGroupNonUniformBallotFindLSB = 343, - OpGroupNonUniformBallotFindMSB = 344, - OpGroupNonUniformShuffle = 345, - OpGroupNonUniformShuffleXor = 346, - OpGroupNonUniformShuffleUp = 347, - OpGroupNonUniformShuffleDown = 348, - OpGroupNonUniformIAdd = 349, - OpGroupNonUniformFAdd = 350, - OpGroupNonUniformIMul = 351, - OpGroupNonUniformFMul = 352, - OpGroupNonUniformSMin = 353, - OpGroupNonUniformUMin = 354, - OpGroupNonUniformFMin = 355, - OpGroupNonUniformSMax = 356, - OpGroupNonUniformUMax = 357, - OpGroupNonUniformFMax = 358, - OpGroupNonUniformBitwiseAnd = 359, - OpGroupNonUniformBitwiseOr = 360, - OpGroupNonUniformBitwiseXor = 361, - OpGroupNonUniformLogicalAnd = 362, - OpGroupNonUniformLogicalOr = 363, - OpGroupNonUniformLogicalXor = 364, - OpGroupNonUniformQuadBroadcast = 365, - OpGroupNonUniformQuadSwap = 366, - OpCopyLogical = 400, - OpPtrEqual = 401, - OpPtrNotEqual = 402, - OpPtrDiff = 403, - OpColorAttachmentReadEXT = 4160, - OpDepthAttachmentReadEXT = 4161, - OpStencilAttachmentReadEXT = 4162, - OpTerminateInvocation = 4416, - OpSubgroupBallotKHR = 4421, - OpSubgroupFirstInvocationKHR = 4422, - OpSubgroupAllKHR = 4428, - OpSubgroupAnyKHR = 4429, - OpSubgroupAllEqualKHR = 4430, - OpGroupNonUniformRotateKHR = 4431, - OpSubgroupReadInvocationKHR = 4432, - OpTraceRayKHR = 4445, - OpExecuteCallableKHR = 4446, - OpConvertUToAccelerationStructureKHR = 4447, - OpIgnoreIntersectionKHR = 4448, - OpTerminateRayKHR = 4449, - OpSDot = 4450, - OpSDotKHR = 4450, - OpUDot = 4451, - OpUDotKHR = 4451, - OpSUDot = 4452, - OpSUDotKHR = 4452, - OpSDotAccSat = 4453, - OpSDotAccSatKHR = 4453, - OpUDotAccSat = 4454, - OpUDotAccSatKHR = 4454, - OpSUDotAccSat = 4455, - OpSUDotAccSatKHR = 4455, - OpTypeCooperativeMatrixKHR = 4456, - OpCooperativeMatrixLoadKHR = 4457, - OpCooperativeMatrixStoreKHR = 4458, - OpCooperativeMatrixMulAddKHR = 4459, - OpCooperativeMatrixLengthKHR = 4460, - OpTypeRayQueryKHR = 4472, - OpRayQueryInitializeKHR = 4473, - OpRayQueryTerminateKHR = 4474, - OpRayQueryGenerateIntersectionKHR = 4475, - OpRayQueryConfirmIntersectionKHR = 4476, - OpRayQueryProceedKHR = 4477, - OpRayQueryGetIntersectionTypeKHR = 4479, - OpImageSampleWeightedQCOM = 4480, - OpImageBoxFilterQCOM = 4481, - OpImageBlockMatchSSDQCOM = 4482, - OpImageBlockMatchSADQCOM = 4483, - OpGroupIAddNonUniformAMD = 5000, - OpGroupFAddNonUniformAMD = 5001, - OpGroupFMinNonUniformAMD = 5002, - OpGroupUMinNonUniformAMD = 5003, - OpGroupSMinNonUniformAMD = 5004, - OpGroupFMaxNonUniformAMD = 5005, - OpGroupUMaxNonUniformAMD = 5006, - OpGroupSMaxNonUniformAMD = 5007, - OpFragmentMaskFetchAMD = 5011, - OpFragmentFetchAMD = 5012, - OpReadClockKHR = 5056, - OpHitObjectRecordHitMotionNV = 5249, - OpHitObjectRecordHitWithIndexMotionNV = 5250, - OpHitObjectRecordMissMotionNV = 5251, - OpHitObjectGetWorldToObjectNV = 5252, - OpHitObjectGetObjectToWorldNV = 5253, - OpHitObjectGetObjectRayDirectionNV = 5254, - OpHitObjectGetObjectRayOriginNV = 5255, - OpHitObjectTraceRayMotionNV = 5256, - OpHitObjectGetShaderRecordBufferHandleNV = 5257, - OpHitObjectGetShaderBindingTableRecordIndexNV = 5258, - OpHitObjectRecordEmptyNV = 5259, - OpHitObjectTraceRayNV = 5260, - OpHitObjectRecordHitNV = 5261, - OpHitObjectRecordHitWithIndexNV = 5262, - OpHitObjectRecordMissNV = 5263, - OpHitObjectExecuteShaderNV = 5264, - OpHitObjectGetCurrentTimeNV = 5265, - OpHitObjectGetAttributesNV = 5266, - OpHitObjectGetHitKindNV = 5267, - OpHitObjectGetPrimitiveIndexNV = 5268, - OpHitObjectGetGeometryIndexNV = 5269, - OpHitObjectGetInstanceIdNV = 5270, - OpHitObjectGetInstanceCustomIndexNV = 5271, - OpHitObjectGetWorldRayDirectionNV = 5272, - OpHitObjectGetWorldRayOriginNV = 5273, - OpHitObjectGetRayTMaxNV = 5274, - OpHitObjectGetRayTMinNV = 5275, - OpHitObjectIsEmptyNV = 5276, - OpHitObjectIsHitNV = 5277, - OpHitObjectIsMissNV = 5278, - OpReorderThreadWithHitObjectNV = 5279, - OpReorderThreadWithHintNV = 5280, - OpTypeHitObjectNV = 5281, - OpImageSampleFootprintNV = 5283, - OpEmitMeshTasksEXT = 5294, - OpSetMeshOutputsEXT = 5295, - OpGroupNonUniformPartitionNV = 5296, - OpWritePackedPrimitiveIndices4x8NV = 5299, - OpReportIntersectionKHR = 5334, - OpReportIntersectionNV = 5334, - OpIgnoreIntersectionNV = 5335, - OpTerminateRayNV = 5336, - OpTraceNV = 5337, - OpTraceMotionNV = 5338, - OpTraceRayMotionNV = 5339, - OpRayQueryGetIntersectionTriangleVertexPositionsKHR = 5340, - OpTypeAccelerationStructureKHR = 5341, - OpTypeAccelerationStructureNV = 5341, - OpExecuteCallableNV = 5344, - OpTypeCooperativeMatrixNV = 5358, - OpCooperativeMatrixLoadNV = 5359, - OpCooperativeMatrixStoreNV = 5360, - OpCooperativeMatrixMulAddNV = 5361, - OpCooperativeMatrixLengthNV = 5362, - OpBeginInvocationInterlockEXT = 5364, - OpEndInvocationInterlockEXT = 5365, - OpDemoteToHelperInvocation = 5380, - OpDemoteToHelperInvocationEXT = 5380, - OpIsHelperInvocationEXT = 5381, - OpConvertUToImageNV = 5391, - OpConvertUToSamplerNV = 5392, - OpConvertImageToUNV = 5393, - OpConvertSamplerToUNV = 5394, - OpConvertUToSampledImageNV = 5395, - OpConvertSampledImageToUNV = 5396, - OpSamplerImageAddressingModeNV = 5397, - OpSubgroupShuffleINTEL = 5571, - OpSubgroupShuffleDownINTEL = 5572, - OpSubgroupShuffleUpINTEL = 5573, - OpSubgroupShuffleXorINTEL = 5574, - OpSubgroupBlockReadINTEL = 5575, - OpSubgroupBlockWriteINTEL = 5576, - OpSubgroupImageBlockReadINTEL = 5577, - OpSubgroupImageBlockWriteINTEL = 5578, - OpSubgroupImageMediaBlockReadINTEL = 5580, - OpSubgroupImageMediaBlockWriteINTEL = 5581, - OpUCountLeadingZerosINTEL = 5585, - OpUCountTrailingZerosINTEL = 5586, - OpAbsISubINTEL = 5587, - OpAbsUSubINTEL = 5588, - OpIAddSatINTEL = 5589, - OpUAddSatINTEL = 5590, - OpIAverageINTEL = 5591, - OpUAverageINTEL = 5592, - OpIAverageRoundedINTEL = 5593, - OpUAverageRoundedINTEL = 5594, - OpISubSatINTEL = 5595, - OpUSubSatINTEL = 5596, - OpIMul32x16INTEL = 5597, - OpUMul32x16INTEL = 5598, - OpConstantFunctionPointerINTEL = 5600, - OpFunctionPointerCallINTEL = 5601, - OpAsmTargetINTEL = 5609, - OpAsmINTEL = 5610, - OpAsmCallINTEL = 5611, - OpAtomicFMinEXT = 5614, - OpAtomicFMaxEXT = 5615, - OpAssumeTrueKHR = 5630, - OpExpectKHR = 5631, - OpDecorateString = 5632, - OpDecorateStringGOOGLE = 5632, - OpMemberDecorateString = 5633, - OpMemberDecorateStringGOOGLE = 5633, - OpVmeImageINTEL = 5699, - OpTypeVmeImageINTEL = 5700, - OpTypeAvcImePayloadINTEL = 5701, - OpTypeAvcRefPayloadINTEL = 5702, - OpTypeAvcSicPayloadINTEL = 5703, - OpTypeAvcMcePayloadINTEL = 5704, - OpTypeAvcMceResultINTEL = 5705, - OpTypeAvcImeResultINTEL = 5706, - OpTypeAvcImeResultSingleReferenceStreamoutINTEL = 5707, - OpTypeAvcImeResultDualReferenceStreamoutINTEL = 5708, - OpTypeAvcImeSingleReferenceStreaminINTEL = 5709, - OpTypeAvcImeDualReferenceStreaminINTEL = 5710, - OpTypeAvcRefResultINTEL = 5711, - OpTypeAvcSicResultINTEL = 5712, - OpSubgroupAvcMceGetDefaultInterBaseMultiReferencePenaltyINTEL = 5713, - OpSubgroupAvcMceSetInterBaseMultiReferencePenaltyINTEL = 5714, - OpSubgroupAvcMceGetDefaultInterShapePenaltyINTEL = 5715, - OpSubgroupAvcMceSetInterShapePenaltyINTEL = 5716, - OpSubgroupAvcMceGetDefaultInterDirectionPenaltyINTEL = 5717, - OpSubgroupAvcMceSetInterDirectionPenaltyINTEL = 5718, - OpSubgroupAvcMceGetDefaultIntraLumaShapePenaltyINTEL = 5719, - OpSubgroupAvcMceGetDefaultInterMotionVectorCostTableINTEL = 5720, - OpSubgroupAvcMceGetDefaultHighPenaltyCostTableINTEL = 5721, - OpSubgroupAvcMceGetDefaultMediumPenaltyCostTableINTEL = 5722, - OpSubgroupAvcMceGetDefaultLowPenaltyCostTableINTEL = 5723, - OpSubgroupAvcMceSetMotionVectorCostFunctionINTEL = 5724, - OpSubgroupAvcMceGetDefaultIntraLumaModePenaltyINTEL = 5725, - OpSubgroupAvcMceGetDefaultNonDcLumaIntraPenaltyINTEL = 5726, - OpSubgroupAvcMceGetDefaultIntraChromaModeBasePenaltyINTEL = 5727, - OpSubgroupAvcMceSetAcOnlyHaarINTEL = 5728, - OpSubgroupAvcMceSetSourceInterlacedFieldPolarityINTEL = 5729, - OpSubgroupAvcMceSetSingleReferenceInterlacedFieldPolarityINTEL = 5730, - OpSubgroupAvcMceSetDualReferenceInterlacedFieldPolaritiesINTEL = 5731, - OpSubgroupAvcMceConvertToImePayloadINTEL = 5732, - OpSubgroupAvcMceConvertToImeResultINTEL = 5733, - OpSubgroupAvcMceConvertToRefPayloadINTEL = 5734, - OpSubgroupAvcMceConvertToRefResultINTEL = 5735, - OpSubgroupAvcMceConvertToSicPayloadINTEL = 5736, - OpSubgroupAvcMceConvertToSicResultINTEL = 5737, - OpSubgroupAvcMceGetMotionVectorsINTEL = 5738, - OpSubgroupAvcMceGetInterDistortionsINTEL = 5739, - OpSubgroupAvcMceGetBestInterDistortionsINTEL = 5740, - OpSubgroupAvcMceGetInterMajorShapeINTEL = 5741, - OpSubgroupAvcMceGetInterMinorShapeINTEL = 5742, - OpSubgroupAvcMceGetInterDirectionsINTEL = 5743, - OpSubgroupAvcMceGetInterMotionVectorCountINTEL = 5744, - OpSubgroupAvcMceGetInterReferenceIdsINTEL = 5745, - OpSubgroupAvcMceGetInterReferenceInterlacedFieldPolaritiesINTEL = 5746, - OpSubgroupAvcImeInitializeINTEL = 5747, - OpSubgroupAvcImeSetSingleReferenceINTEL = 5748, - OpSubgroupAvcImeSetDualReferenceINTEL = 5749, - OpSubgroupAvcImeRefWindowSizeINTEL = 5750, - OpSubgroupAvcImeAdjustRefOffsetINTEL = 5751, - OpSubgroupAvcImeConvertToMcePayloadINTEL = 5752, - OpSubgroupAvcImeSetMaxMotionVectorCountINTEL = 5753, - OpSubgroupAvcImeSetUnidirectionalMixDisableINTEL = 5754, - OpSubgroupAvcImeSetEarlySearchTerminationThresholdINTEL = 5755, - OpSubgroupAvcImeSetWeightedSadINTEL = 5756, - OpSubgroupAvcImeEvaluateWithSingleReferenceINTEL = 5757, - OpSubgroupAvcImeEvaluateWithDualReferenceINTEL = 5758, - OpSubgroupAvcImeEvaluateWithSingleReferenceStreaminINTEL = 5759, - OpSubgroupAvcImeEvaluateWithDualReferenceStreaminINTEL = 5760, - OpSubgroupAvcImeEvaluateWithSingleReferenceStreamoutINTEL = 5761, - OpSubgroupAvcImeEvaluateWithDualReferenceStreamoutINTEL = 5762, - OpSubgroupAvcImeEvaluateWithSingleReferenceStreaminoutINTEL = 5763, - OpSubgroupAvcImeEvaluateWithDualReferenceStreaminoutINTEL = 5764, - OpSubgroupAvcImeConvertToMceResultINTEL = 5765, - OpSubgroupAvcImeGetSingleReferenceStreaminINTEL = 5766, - OpSubgroupAvcImeGetDualReferenceStreaminINTEL = 5767, - OpSubgroupAvcImeStripSingleReferenceStreamoutINTEL = 5768, - OpSubgroupAvcImeStripDualReferenceStreamoutINTEL = 5769, - OpSubgroupAvcImeGetStreamoutSingleReferenceMajorShapeMotionVectorsINTEL = 5770, - OpSubgroupAvcImeGetStreamoutSingleReferenceMajorShapeDistortionsINTEL = 5771, - OpSubgroupAvcImeGetStreamoutSingleReferenceMajorShapeReferenceIdsINTEL = 5772, - OpSubgroupAvcImeGetStreamoutDualReferenceMajorShapeMotionVectorsINTEL = 5773, - OpSubgroupAvcImeGetStreamoutDualReferenceMajorShapeDistortionsINTEL = 5774, - OpSubgroupAvcImeGetStreamoutDualReferenceMajorShapeReferenceIdsINTEL = 5775, - OpSubgroupAvcImeGetBorderReachedINTEL = 5776, - OpSubgroupAvcImeGetTruncatedSearchIndicationINTEL = 5777, - OpSubgroupAvcImeGetUnidirectionalEarlySearchTerminationINTEL = 5778, - OpSubgroupAvcImeGetWeightingPatternMinimumMotionVectorINTEL = 5779, - OpSubgroupAvcImeGetWeightingPatternMinimumDistortionINTEL = 5780, - OpSubgroupAvcFmeInitializeINTEL = 5781, - OpSubgroupAvcBmeInitializeINTEL = 5782, - OpSubgroupAvcRefConvertToMcePayloadINTEL = 5783, - OpSubgroupAvcRefSetBidirectionalMixDisableINTEL = 5784, - OpSubgroupAvcRefSetBilinearFilterEnableINTEL = 5785, - OpSubgroupAvcRefEvaluateWithSingleReferenceINTEL = 5786, - OpSubgroupAvcRefEvaluateWithDualReferenceINTEL = 5787, - OpSubgroupAvcRefEvaluateWithMultiReferenceINTEL = 5788, - OpSubgroupAvcRefEvaluateWithMultiReferenceInterlacedINTEL = 5789, - OpSubgroupAvcRefConvertToMceResultINTEL = 5790, - OpSubgroupAvcSicInitializeINTEL = 5791, - OpSubgroupAvcSicConfigureSkcINTEL = 5792, - OpSubgroupAvcSicConfigureIpeLumaINTEL = 5793, - OpSubgroupAvcSicConfigureIpeLumaChromaINTEL = 5794, - OpSubgroupAvcSicGetMotionVectorMaskINTEL = 5795, - OpSubgroupAvcSicConvertToMcePayloadINTEL = 5796, - OpSubgroupAvcSicSetIntraLumaShapePenaltyINTEL = 5797, - OpSubgroupAvcSicSetIntraLumaModeCostFunctionINTEL = 5798, - OpSubgroupAvcSicSetIntraChromaModeCostFunctionINTEL = 5799, - OpSubgroupAvcSicSetBilinearFilterEnableINTEL = 5800, - OpSubgroupAvcSicSetSkcForwardTransformEnableINTEL = 5801, - OpSubgroupAvcSicSetBlockBasedRawSkipSadINTEL = 5802, - OpSubgroupAvcSicEvaluateIpeINTEL = 5803, - OpSubgroupAvcSicEvaluateWithSingleReferenceINTEL = 5804, - OpSubgroupAvcSicEvaluateWithDualReferenceINTEL = 5805, - OpSubgroupAvcSicEvaluateWithMultiReferenceINTEL = 5806, - OpSubgroupAvcSicEvaluateWithMultiReferenceInterlacedINTEL = 5807, - OpSubgroupAvcSicConvertToMceResultINTEL = 5808, - OpSubgroupAvcSicGetIpeLumaShapeINTEL = 5809, - OpSubgroupAvcSicGetBestIpeLumaDistortionINTEL = 5810, - OpSubgroupAvcSicGetBestIpeChromaDistortionINTEL = 5811, - OpSubgroupAvcSicGetPackedIpeLumaModesINTEL = 5812, - OpSubgroupAvcSicGetIpeChromaModeINTEL = 5813, - 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, - OpAliasDomainDeclINTEL = 5911, - OpAliasScopeDeclINTEL = 5912, - OpAliasScopeListDeclINTEL = 5913, - 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, - OpRayQueryGetIntersectionInstanceCustomIndexKHR = 6019, - OpRayQueryGetIntersectionInstanceIdKHR = 6020, - OpRayQueryGetIntersectionInstanceShaderBindingTableRecordOffsetKHR = 6021, - OpRayQueryGetIntersectionGeometryIndexKHR = 6022, - OpRayQueryGetIntersectionPrimitiveIndexKHR = 6023, - OpRayQueryGetIntersectionBarycentricsKHR = 6024, - OpRayQueryGetIntersectionFrontFaceKHR = 6025, - OpRayQueryGetIntersectionCandidateAABBOpaqueKHR = 6026, - OpRayQueryGetIntersectionObjectRayDirectionKHR = 6027, - OpRayQueryGetIntersectionObjectRayOriginKHR = 6028, - OpRayQueryGetWorldRayDirectionKHR = 6029, - OpRayQueryGetWorldRayOriginKHR = 6030, - OpRayQueryGetIntersectionObjectToWorldKHR = 6031, - OpRayQueryGetIntersectionWorldToObjectKHR = 6032, - OpAtomicFAddEXT = 6035, - OpTypeBufferSurfaceINTEL = 6086, - OpTypeStructContinuedINTEL = 6090, - OpConstantCompositeContinuedINTEL = 6091, - OpSpecConstantCompositeContinuedINTEL = 6092, - OpConvertFToBF16INTEL = 6116, - OpConvertBF16ToFINTEL = 6117, - OpControlBarrierArriveINTEL = 6142, - OpControlBarrierWaitINTEL = 6143, - OpGroupIMulKHR = 6401, - OpGroupFMulKHR = 6402, - OpGroupBitwiseAndKHR = 6403, - OpGroupBitwiseOrKHR = 6404, - OpGroupBitwiseXorKHR = 6405, - OpGroupLogicalAndKHR = 6406, - OpGroupLogicalOrKHR = 6407, - OpGroupLogicalXorKHR = 6408, - Max = 0x7fffffff, -}; - -#ifdef SPV_ENABLE_UTILITY_CODE -#ifndef __cplusplus -#include -#endif -inline void HasResultAndType(Op opcode, bool *hasResult, bool *hasResultType) { - *hasResult = *hasResultType = false; - switch (opcode) { - default: /* unknown opcode */ break; - case Op::OpNop: *hasResult = false; *hasResultType = false; break; - case Op::OpUndef: *hasResult = true; *hasResultType = true; break; - case Op::OpSourceContinued: *hasResult = false; *hasResultType = false; break; - case Op::OpSource: *hasResult = false; *hasResultType = false; break; - case Op::OpSourceExtension: *hasResult = false; *hasResultType = false; break; - case Op::OpName: *hasResult = false; *hasResultType = false; break; - case Op::OpMemberName: *hasResult = false; *hasResultType = false; break; - case Op::OpString: *hasResult = true; *hasResultType = false; break; - case Op::OpLine: *hasResult = false; *hasResultType = false; break; - case Op::OpExtension: *hasResult = false; *hasResultType = false; break; - case Op::OpExtInstImport: *hasResult = true; *hasResultType = false; break; - case Op::OpExtInst: *hasResult = true; *hasResultType = true; break; - case Op::OpMemoryModel: *hasResult = false; *hasResultType = false; break; - case Op::OpEntryPoint: *hasResult = false; *hasResultType = false; break; - case Op::OpExecutionMode: *hasResult = false; *hasResultType = false; break; - case Op::OpCapability: *hasResult = false; *hasResultType = false; break; - case Op::OpTypeVoid: *hasResult = true; *hasResultType = false; break; - case Op::OpTypeBool: *hasResult = true; *hasResultType = false; break; - case Op::OpTypeInt: *hasResult = true; *hasResultType = false; break; - case Op::OpTypeFloat: *hasResult = true; *hasResultType = false; break; - case Op::OpTypeVector: *hasResult = true; *hasResultType = false; break; - case Op::OpTypeMatrix: *hasResult = true; *hasResultType = false; break; - case Op::OpTypeImage: *hasResult = true; *hasResultType = false; break; - case Op::OpTypeSampler: *hasResult = true; *hasResultType = false; break; - case Op::OpTypeSampledImage: *hasResult = true; *hasResultType = false; break; - case Op::OpTypeArray: *hasResult = true; *hasResultType = false; break; - case Op::OpTypeRuntimeArray: *hasResult = true; *hasResultType = false; break; - case Op::OpTypeStruct: *hasResult = true; *hasResultType = false; break; - case Op::OpTypeOpaque: *hasResult = true; *hasResultType = false; break; - case Op::OpTypePointer: *hasResult = true; *hasResultType = false; break; - case Op::OpTypeFunction: *hasResult = true; *hasResultType = false; break; - case Op::OpTypeEvent: *hasResult = true; *hasResultType = false; break; - case Op::OpTypeDeviceEvent: *hasResult = true; *hasResultType = false; break; - case Op::OpTypeReserveId: *hasResult = true; *hasResultType = false; break; - case Op::OpTypeQueue: *hasResult = true; *hasResultType = false; break; - case Op::OpTypePipe: *hasResult = true; *hasResultType = false; break; - case Op::OpTypeForwardPointer: *hasResult = false; *hasResultType = false; break; - case Op::OpConstantTrue: *hasResult = true; *hasResultType = true; break; - case Op::OpConstantFalse: *hasResult = true; *hasResultType = true; break; - case Op::OpConstant: *hasResult = true; *hasResultType = true; break; - case Op::OpConstantComposite: *hasResult = true; *hasResultType = true; break; - case Op::OpConstantSampler: *hasResult = true; *hasResultType = true; break; - case Op::OpConstantNull: *hasResult = true; *hasResultType = true; break; - case Op::OpSpecConstantTrue: *hasResult = true; *hasResultType = true; break; - case Op::OpSpecConstantFalse: *hasResult = true; *hasResultType = true; break; - case Op::OpSpecConstant: *hasResult = true; *hasResultType = true; break; - case Op::OpSpecConstantComposite: *hasResult = true; *hasResultType = true; break; - case Op::OpSpecConstantOp: *hasResult = true; *hasResultType = true; break; - case Op::OpFunction: *hasResult = true; *hasResultType = true; break; - case Op::OpFunctionParameter: *hasResult = true; *hasResultType = true; break; - case Op::OpFunctionEnd: *hasResult = false; *hasResultType = false; break; - case Op::OpFunctionCall: *hasResult = true; *hasResultType = true; break; - case Op::OpVariable: *hasResult = true; *hasResultType = true; break; - case Op::OpImageTexelPointer: *hasResult = true; *hasResultType = true; break; - case Op::OpLoad: *hasResult = true; *hasResultType = true; break; - case Op::OpStore: *hasResult = false; *hasResultType = false; break; - case Op::OpCopyMemory: *hasResult = false; *hasResultType = false; break; - case Op::OpCopyMemorySized: *hasResult = false; *hasResultType = false; break; - case Op::OpAccessChain: *hasResult = true; *hasResultType = true; break; - case Op::OpInBoundsAccessChain: *hasResult = true; *hasResultType = true; break; - case Op::OpPtrAccessChain: *hasResult = true; *hasResultType = true; break; - case Op::OpArrayLength: *hasResult = true; *hasResultType = true; break; - case Op::OpGenericPtrMemSemantics: *hasResult = true; *hasResultType = true; break; - case Op::OpInBoundsPtrAccessChain: *hasResult = true; *hasResultType = true; break; - case Op::OpDecorate: *hasResult = false; *hasResultType = false; break; - case Op::OpMemberDecorate: *hasResult = false; *hasResultType = false; break; - case Op::OpDecorationGroup: *hasResult = true; *hasResultType = false; break; - case Op::OpGroupDecorate: *hasResult = false; *hasResultType = false; break; - case Op::OpGroupMemberDecorate: *hasResult = false; *hasResultType = false; break; - case Op::OpVectorExtractDynamic: *hasResult = true; *hasResultType = true; break; - case Op::OpVectorInsertDynamic: *hasResult = true; *hasResultType = true; break; - case Op::OpVectorShuffle: *hasResult = true; *hasResultType = true; break; - case Op::OpCompositeConstruct: *hasResult = true; *hasResultType = true; break; - case Op::OpCompositeExtract: *hasResult = true; *hasResultType = true; break; - case Op::OpCompositeInsert: *hasResult = true; *hasResultType = true; break; - case Op::OpCopyObject: *hasResult = true; *hasResultType = true; break; - case Op::OpTranspose: *hasResult = true; *hasResultType = true; break; - case Op::OpSampledImage: *hasResult = true; *hasResultType = true; break; - case Op::OpImageSampleImplicitLod: *hasResult = true; *hasResultType = true; break; - case Op::OpImageSampleExplicitLod: *hasResult = true; *hasResultType = true; break; - case Op::OpImageSampleDrefImplicitLod: *hasResult = true; *hasResultType = true; break; - case Op::OpImageSampleDrefExplicitLod: *hasResult = true; *hasResultType = true; break; - case Op::OpImageSampleProjImplicitLod: *hasResult = true; *hasResultType = true; break; - case Op::OpImageSampleProjExplicitLod: *hasResult = true; *hasResultType = true; break; - case Op::OpImageSampleProjDrefImplicitLod: *hasResult = true; *hasResultType = true; break; - case Op::OpImageSampleProjDrefExplicitLod: *hasResult = true; *hasResultType = true; break; - case Op::OpImageFetch: *hasResult = true; *hasResultType = true; break; - case Op::OpImageGather: *hasResult = true; *hasResultType = true; break; - case Op::OpImageDrefGather: *hasResult = true; *hasResultType = true; break; - case Op::OpImageRead: *hasResult = true; *hasResultType = true; break; - case Op::OpImageWrite: *hasResult = false; *hasResultType = false; break; - case Op::OpImage: *hasResult = true; *hasResultType = true; break; - case Op::OpImageQueryFormat: *hasResult = true; *hasResultType = true; break; - case Op::OpImageQueryOrder: *hasResult = true; *hasResultType = true; break; - case Op::OpImageQuerySizeLod: *hasResult = true; *hasResultType = true; break; - case Op::OpImageQuerySize: *hasResult = true; *hasResultType = true; break; - case Op::OpImageQueryLod: *hasResult = true; *hasResultType = true; break; - case Op::OpImageQueryLevels: *hasResult = true; *hasResultType = true; break; - case Op::OpImageQuerySamples: *hasResult = true; *hasResultType = true; break; - case Op::OpConvertFToU: *hasResult = true; *hasResultType = true; break; - case Op::OpConvertFToS: *hasResult = true; *hasResultType = true; break; - case Op::OpConvertSToF: *hasResult = true; *hasResultType = true; break; - case Op::OpConvertUToF: *hasResult = true; *hasResultType = true; break; - case Op::OpUConvert: *hasResult = true; *hasResultType = true; break; - case Op::OpSConvert: *hasResult = true; *hasResultType = true; break; - case Op::OpFConvert: *hasResult = true; *hasResultType = true; break; - case Op::OpQuantizeToF16: *hasResult = true; *hasResultType = true; break; - case Op::OpConvertPtrToU: *hasResult = true; *hasResultType = true; break; - case Op::OpSatConvertSToU: *hasResult = true; *hasResultType = true; break; - case Op::OpSatConvertUToS: *hasResult = true; *hasResultType = true; break; - case Op::OpConvertUToPtr: *hasResult = true; *hasResultType = true; break; - case Op::OpPtrCastToGeneric: *hasResult = true; *hasResultType = true; break; - case Op::OpGenericCastToPtr: *hasResult = true; *hasResultType = true; break; - case Op::OpGenericCastToPtrExplicit: *hasResult = true; *hasResultType = true; break; - case Op::OpBitcast: *hasResult = true; *hasResultType = true; break; - case Op::OpSNegate: *hasResult = true; *hasResultType = true; break; - case Op::OpFNegate: *hasResult = true; *hasResultType = true; break; - case Op::OpIAdd: *hasResult = true; *hasResultType = true; break; - case Op::OpFAdd: *hasResult = true; *hasResultType = true; break; - case Op::OpISub: *hasResult = true; *hasResultType = true; break; - case Op::OpFSub: *hasResult = true; *hasResultType = true; break; - case Op::OpIMul: *hasResult = true; *hasResultType = true; break; - case Op::OpFMul: *hasResult = true; *hasResultType = true; break; - case Op::OpUDiv: *hasResult = true; *hasResultType = true; break; - case Op::OpSDiv: *hasResult = true; *hasResultType = true; break; - case Op::OpFDiv: *hasResult = true; *hasResultType = true; break; - case Op::OpUMod: *hasResult = true; *hasResultType = true; break; - case Op::OpSRem: *hasResult = true; *hasResultType = true; break; - case Op::OpSMod: *hasResult = true; *hasResultType = true; break; - case Op::OpFRem: *hasResult = true; *hasResultType = true; break; - case Op::OpFMod: *hasResult = true; *hasResultType = true; break; - case Op::OpVectorTimesScalar: *hasResult = true; *hasResultType = true; break; - case Op::OpMatrixTimesScalar: *hasResult = true; *hasResultType = true; break; - case Op::OpVectorTimesMatrix: *hasResult = true; *hasResultType = true; break; - case Op::OpMatrixTimesVector: *hasResult = true; *hasResultType = true; break; - case Op::OpMatrixTimesMatrix: *hasResult = true; *hasResultType = true; break; - case Op::OpOuterProduct: *hasResult = true; *hasResultType = true; break; - case Op::OpDot: *hasResult = true; *hasResultType = true; break; - case Op::OpIAddCarry: *hasResult = true; *hasResultType = true; break; - case Op::OpISubBorrow: *hasResult = true; *hasResultType = true; break; - case Op::OpUMulExtended: *hasResult = true; *hasResultType = true; break; - case Op::OpSMulExtended: *hasResult = true; *hasResultType = true; break; - case Op::OpAny: *hasResult = true; *hasResultType = true; break; - case Op::OpAll: *hasResult = true; *hasResultType = true; break; - case Op::OpIsNan: *hasResult = true; *hasResultType = true; break; - case Op::OpIsInf: *hasResult = true; *hasResultType = true; break; - case Op::OpIsFinite: *hasResult = true; *hasResultType = true; break; - case Op::OpIsNormal: *hasResult = true; *hasResultType = true; break; - case Op::OpSignBitSet: *hasResult = true; *hasResultType = true; break; - case Op::OpLessOrGreater: *hasResult = true; *hasResultType = true; break; - case Op::OpOrdered: *hasResult = true; *hasResultType = true; break; - case Op::OpUnordered: *hasResult = true; *hasResultType = true; break; - case Op::OpLogicalEqual: *hasResult = true; *hasResultType = true; break; - case Op::OpLogicalNotEqual: *hasResult = true; *hasResultType = true; break; - case Op::OpLogicalOr: *hasResult = true; *hasResultType = true; break; - case Op::OpLogicalAnd: *hasResult = true; *hasResultType = true; break; - case Op::OpLogicalNot: *hasResult = true; *hasResultType = true; break; - case Op::OpSelect: *hasResult = true; *hasResultType = true; break; - case Op::OpIEqual: *hasResult = true; *hasResultType = true; break; - case Op::OpINotEqual: *hasResult = true; *hasResultType = true; break; - case Op::OpUGreaterThan: *hasResult = true; *hasResultType = true; break; - case Op::OpSGreaterThan: *hasResult = true; *hasResultType = true; break; - case Op::OpUGreaterThanEqual: *hasResult = true; *hasResultType = true; break; - case Op::OpSGreaterThanEqual: *hasResult = true; *hasResultType = true; break; - case Op::OpULessThan: *hasResult = true; *hasResultType = true; break; - case Op::OpSLessThan: *hasResult = true; *hasResultType = true; break; - case Op::OpULessThanEqual: *hasResult = true; *hasResultType = true; break; - case Op::OpSLessThanEqual: *hasResult = true; *hasResultType = true; break; - case Op::OpFOrdEqual: *hasResult = true; *hasResultType = true; break; - case Op::OpFUnordEqual: *hasResult = true; *hasResultType = true; break; - case Op::OpFOrdNotEqual: *hasResult = true; *hasResultType = true; break; - case Op::OpFUnordNotEqual: *hasResult = true; *hasResultType = true; break; - case Op::OpFOrdLessThan: *hasResult = true; *hasResultType = true; break; - case Op::OpFUnordLessThan: *hasResult = true; *hasResultType = true; break; - case Op::OpFOrdGreaterThan: *hasResult = true; *hasResultType = true; break; - case Op::OpFUnordGreaterThan: *hasResult = true; *hasResultType = true; break; - case Op::OpFOrdLessThanEqual: *hasResult = true; *hasResultType = true; break; - case Op::OpFUnordLessThanEqual: *hasResult = true; *hasResultType = true; break; - case Op::OpFOrdGreaterThanEqual: *hasResult = true; *hasResultType = true; break; - case Op::OpFUnordGreaterThanEqual: *hasResult = true; *hasResultType = true; break; - case Op::OpShiftRightLogical: *hasResult = true; *hasResultType = true; break; - case Op::OpShiftRightArithmetic: *hasResult = true; *hasResultType = true; break; - case Op::OpShiftLeftLogical: *hasResult = true; *hasResultType = true; break; - case Op::OpBitwiseOr: *hasResult = true; *hasResultType = true; break; - case Op::OpBitwiseXor: *hasResult = true; *hasResultType = true; break; - case Op::OpBitwiseAnd: *hasResult = true; *hasResultType = true; break; - case Op::OpNot: *hasResult = true; *hasResultType = true; break; - case Op::OpBitFieldInsert: *hasResult = true; *hasResultType = true; break; - case Op::OpBitFieldSExtract: *hasResult = true; *hasResultType = true; break; - case Op::OpBitFieldUExtract: *hasResult = true; *hasResultType = true; break; - case Op::OpBitReverse: *hasResult = true; *hasResultType = true; break; - case Op::OpBitCount: *hasResult = true; *hasResultType = true; break; - case Op::OpDPdx: *hasResult = true; *hasResultType = true; break; - case Op::OpDPdy: *hasResult = true; *hasResultType = true; break; - case Op::OpFwidth: *hasResult = true; *hasResultType = true; break; - case Op::OpDPdxFine: *hasResult = true; *hasResultType = true; break; - case Op::OpDPdyFine: *hasResult = true; *hasResultType = true; break; - case Op::OpFwidthFine: *hasResult = true; *hasResultType = true; break; - case Op::OpDPdxCoarse: *hasResult = true; *hasResultType = true; break; - case Op::OpDPdyCoarse: *hasResult = true; *hasResultType = true; break; - case Op::OpFwidthCoarse: *hasResult = true; *hasResultType = true; break; - case Op::OpEmitVertex: *hasResult = false; *hasResultType = false; break; - case Op::OpEndPrimitive: *hasResult = false; *hasResultType = false; break; - case Op::OpEmitStreamVertex: *hasResult = false; *hasResultType = false; break; - case Op::OpEndStreamPrimitive: *hasResult = false; *hasResultType = false; break; - case Op::OpControlBarrier: *hasResult = false; *hasResultType = false; break; - case Op::OpMemoryBarrier: *hasResult = false; *hasResultType = false; break; - case Op::OpAtomicLoad: *hasResult = true; *hasResultType = true; break; - case Op::OpAtomicStore: *hasResult = false; *hasResultType = false; break; - case Op::OpAtomicExchange: *hasResult = true; *hasResultType = true; break; - case Op::OpAtomicCompareExchange: *hasResult = true; *hasResultType = true; break; - case Op::OpAtomicCompareExchangeWeak: *hasResult = true; *hasResultType = true; break; - case Op::OpAtomicIIncrement: *hasResult = true; *hasResultType = true; break; - case Op::OpAtomicIDecrement: *hasResult = true; *hasResultType = true; break; - case Op::OpAtomicIAdd: *hasResult = true; *hasResultType = true; break; - case Op::OpAtomicISub: *hasResult = true; *hasResultType = true; break; - case Op::OpAtomicSMin: *hasResult = true; *hasResultType = true; break; - case Op::OpAtomicUMin: *hasResult = true; *hasResultType = true; break; - case Op::OpAtomicSMax: *hasResult = true; *hasResultType = true; break; - case Op::OpAtomicUMax: *hasResult = true; *hasResultType = true; break; - case Op::OpAtomicAnd: *hasResult = true; *hasResultType = true; break; - case Op::OpAtomicOr: *hasResult = true; *hasResultType = true; break; - case Op::OpAtomicXor: *hasResult = true; *hasResultType = true; break; - case Op::OpPhi: *hasResult = true; *hasResultType = true; break; - case Op::OpLoopMerge: *hasResult = false; *hasResultType = false; break; - case Op::OpSelectionMerge: *hasResult = false; *hasResultType = false; break; - case Op::OpLabel: *hasResult = true; *hasResultType = false; break; - case Op::OpBranch: *hasResult = false; *hasResultType = false; break; - case Op::OpBranchConditional: *hasResult = false; *hasResultType = false; break; - case Op::OpSwitch: *hasResult = false; *hasResultType = false; break; - case Op::OpKill: *hasResult = false; *hasResultType = false; break; - case Op::OpReturn: *hasResult = false; *hasResultType = false; break; - case Op::OpReturnValue: *hasResult = false; *hasResultType = false; break; - case Op::OpUnreachable: *hasResult = false; *hasResultType = false; break; - case Op::OpLifetimeStart: *hasResult = false; *hasResultType = false; break; - case Op::OpLifetimeStop: *hasResult = false; *hasResultType = false; break; - case Op::OpGroupAsyncCopy: *hasResult = true; *hasResultType = true; break; - case Op::OpGroupWaitEvents: *hasResult = false; *hasResultType = false; break; - case Op::OpGroupAll: *hasResult = true; *hasResultType = true; break; - case Op::OpGroupAny: *hasResult = true; *hasResultType = true; break; - case Op::OpGroupBroadcast: *hasResult = true; *hasResultType = true; break; - case Op::OpGroupIAdd: *hasResult = true; *hasResultType = true; break; - case Op::OpGroupFAdd: *hasResult = true; *hasResultType = true; break; - case Op::OpGroupFMin: *hasResult = true; *hasResultType = true; break; - case Op::OpGroupUMin: *hasResult = true; *hasResultType = true; break; - case Op::OpGroupSMin: *hasResult = true; *hasResultType = true; break; - case Op::OpGroupFMax: *hasResult = true; *hasResultType = true; break; - case Op::OpGroupUMax: *hasResult = true; *hasResultType = true; break; - case Op::OpGroupSMax: *hasResult = true; *hasResultType = true; break; - case Op::OpReadPipe: *hasResult = true; *hasResultType = true; break; - case Op::OpWritePipe: *hasResult = true; *hasResultType = true; break; - case Op::OpReservedReadPipe: *hasResult = true; *hasResultType = true; break; - case Op::OpReservedWritePipe: *hasResult = true; *hasResultType = true; break; - case Op::OpReserveReadPipePackets: *hasResult = true; *hasResultType = true; break; - case Op::OpReserveWritePipePackets: *hasResult = true; *hasResultType = true; break; - case Op::OpCommitReadPipe: *hasResult = false; *hasResultType = false; break; - case Op::OpCommitWritePipe: *hasResult = false; *hasResultType = false; break; - case Op::OpIsValidReserveId: *hasResult = true; *hasResultType = true; break; - case Op::OpGetNumPipePackets: *hasResult = true; *hasResultType = true; break; - case Op::OpGetMaxPipePackets: *hasResult = true; *hasResultType = true; break; - case Op::OpGroupReserveReadPipePackets: *hasResult = true; *hasResultType = true; break; - case Op::OpGroupReserveWritePipePackets: *hasResult = true; *hasResultType = true; break; - case Op::OpGroupCommitReadPipe: *hasResult = false; *hasResultType = false; break; - case Op::OpGroupCommitWritePipe: *hasResult = false; *hasResultType = false; break; - case Op::OpEnqueueMarker: *hasResult = true; *hasResultType = true; break; - case Op::OpEnqueueKernel: *hasResult = true; *hasResultType = true; break; - case Op::OpGetKernelNDrangeSubGroupCount: *hasResult = true; *hasResultType = true; break; - case Op::OpGetKernelNDrangeMaxSubGroupSize: *hasResult = true; *hasResultType = true; break; - case Op::OpGetKernelWorkGroupSize: *hasResult = true; *hasResultType = true; break; - case Op::OpGetKernelPreferredWorkGroupSizeMultiple: *hasResult = true; *hasResultType = true; break; - case Op::OpRetainEvent: *hasResult = false; *hasResultType = false; break; - case Op::OpReleaseEvent: *hasResult = false; *hasResultType = false; break; - case Op::OpCreateUserEvent: *hasResult = true; *hasResultType = true; break; - case Op::OpIsValidEvent: *hasResult = true; *hasResultType = true; break; - case Op::OpSetUserEventStatus: *hasResult = false; *hasResultType = false; break; - case Op::OpCaptureEventProfilingInfo: *hasResult = false; *hasResultType = false; break; - case Op::OpGetDefaultQueue: *hasResult = true; *hasResultType = true; break; - case Op::OpBuildNDRange: *hasResult = true; *hasResultType = true; break; - case Op::OpImageSparseSampleImplicitLod: *hasResult = true; *hasResultType = true; break; - case Op::OpImageSparseSampleExplicitLod: *hasResult = true; *hasResultType = true; break; - case Op::OpImageSparseSampleDrefImplicitLod: *hasResult = true; *hasResultType = true; break; - case Op::OpImageSparseSampleDrefExplicitLod: *hasResult = true; *hasResultType = true; break; - case Op::OpImageSparseSampleProjImplicitLod: *hasResult = true; *hasResultType = true; break; - case Op::OpImageSparseSampleProjExplicitLod: *hasResult = true; *hasResultType = true; break; - case Op::OpImageSparseSampleProjDrefImplicitLod: *hasResult = true; *hasResultType = true; break; - case Op::OpImageSparseSampleProjDrefExplicitLod: *hasResult = true; *hasResultType = true; break; - case Op::OpImageSparseFetch: *hasResult = true; *hasResultType = true; break; - case Op::OpImageSparseGather: *hasResult = true; *hasResultType = true; break; - case Op::OpImageSparseDrefGather: *hasResult = true; *hasResultType = true; break; - case Op::OpImageSparseTexelsResident: *hasResult = true; *hasResultType = true; break; - case Op::OpNoLine: *hasResult = false; *hasResultType = false; break; - case Op::OpAtomicFlagTestAndSet: *hasResult = true; *hasResultType = true; break; - case Op::OpAtomicFlagClear: *hasResult = false; *hasResultType = false; break; - case Op::OpImageSparseRead: *hasResult = true; *hasResultType = true; break; - case Op::OpSizeOf: *hasResult = true; *hasResultType = true; break; - case Op::OpTypePipeStorage: *hasResult = true; *hasResultType = false; break; - case Op::OpConstantPipeStorage: *hasResult = true; *hasResultType = true; break; - case Op::OpCreatePipeFromPipeStorage: *hasResult = true; *hasResultType = true; break; - case Op::OpGetKernelLocalSizeForSubgroupCount: *hasResult = true; *hasResultType = true; break; - case Op::OpGetKernelMaxNumSubgroups: *hasResult = true; *hasResultType = true; break; - case Op::OpTypeNamedBarrier: *hasResult = true; *hasResultType = false; break; - case Op::OpNamedBarrierInitialize: *hasResult = true; *hasResultType = true; break; - case Op::OpMemoryNamedBarrier: *hasResult = false; *hasResultType = false; break; - case Op::OpModuleProcessed: *hasResult = false; *hasResultType = false; break; - case Op::OpExecutionModeId: *hasResult = false; *hasResultType = false; break; - case Op::OpDecorateId: *hasResult = false; *hasResultType = false; break; - case Op::OpGroupNonUniformElect: *hasResult = true; *hasResultType = true; break; - case Op::OpGroupNonUniformAll: *hasResult = true; *hasResultType = true; break; - case Op::OpGroupNonUniformAny: *hasResult = true; *hasResultType = true; break; - case Op::OpGroupNonUniformAllEqual: *hasResult = true; *hasResultType = true; break; - case Op::OpGroupNonUniformBroadcast: *hasResult = true; *hasResultType = true; break; - case Op::OpGroupNonUniformBroadcastFirst: *hasResult = true; *hasResultType = true; break; - case Op::OpGroupNonUniformBallot: *hasResult = true; *hasResultType = true; break; - case Op::OpGroupNonUniformInverseBallot: *hasResult = true; *hasResultType = true; break; - case Op::OpGroupNonUniformBallotBitExtract: *hasResult = true; *hasResultType = true; break; - case Op::OpGroupNonUniformBallotBitCount: *hasResult = true; *hasResultType = true; break; - case Op::OpGroupNonUniformBallotFindLSB: *hasResult = true; *hasResultType = true; break; - case Op::OpGroupNonUniformBallotFindMSB: *hasResult = true; *hasResultType = true; break; - case Op::OpGroupNonUniformShuffle: *hasResult = true; *hasResultType = true; break; - case Op::OpGroupNonUniformShuffleXor: *hasResult = true; *hasResultType = true; break; - case Op::OpGroupNonUniformShuffleUp: *hasResult = true; *hasResultType = true; break; - case Op::OpGroupNonUniformShuffleDown: *hasResult = true; *hasResultType = true; break; - case Op::OpGroupNonUniformIAdd: *hasResult = true; *hasResultType = true; break; - case Op::OpGroupNonUniformFAdd: *hasResult = true; *hasResultType = true; break; - case Op::OpGroupNonUniformIMul: *hasResult = true; *hasResultType = true; break; - case Op::OpGroupNonUniformFMul: *hasResult = true; *hasResultType = true; break; - case Op::OpGroupNonUniformSMin: *hasResult = true; *hasResultType = true; break; - case Op::OpGroupNonUniformUMin: *hasResult = true; *hasResultType = true; break; - case Op::OpGroupNonUniformFMin: *hasResult = true; *hasResultType = true; break; - case Op::OpGroupNonUniformSMax: *hasResult = true; *hasResultType = true; break; - case Op::OpGroupNonUniformUMax: *hasResult = true; *hasResultType = true; break; - case Op::OpGroupNonUniformFMax: *hasResult = true; *hasResultType = true; break; - case Op::OpGroupNonUniformBitwiseAnd: *hasResult = true; *hasResultType = true; break; - case Op::OpGroupNonUniformBitwiseOr: *hasResult = true; *hasResultType = true; break; - case Op::OpGroupNonUniformBitwiseXor: *hasResult = true; *hasResultType = true; break; - case Op::OpGroupNonUniformLogicalAnd: *hasResult = true; *hasResultType = true; break; - case Op::OpGroupNonUniformLogicalOr: *hasResult = true; *hasResultType = true; break; - case Op::OpGroupNonUniformLogicalXor: *hasResult = true; *hasResultType = true; break; - case Op::OpGroupNonUniformQuadBroadcast: *hasResult = true; *hasResultType = true; break; - case Op::OpGroupNonUniformQuadSwap: *hasResult = true; *hasResultType = true; break; - case Op::OpCopyLogical: *hasResult = true; *hasResultType = true; break; - 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::OpColorAttachmentReadEXT: *hasResult = true; *hasResultType = true; break; - case Op::OpDepthAttachmentReadEXT: *hasResult = true; *hasResultType = true; break; - case Op::OpStencilAttachmentReadEXT: *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::OpGroupNonUniformRotateKHR: *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::OpSDot: *hasResult = true; *hasResultType = true; break; - case Op::OpUDot: *hasResult = true; *hasResultType = true; break; - case Op::OpSUDot: *hasResult = true; *hasResultType = true; break; - case Op::OpSDotAccSat: *hasResult = true; *hasResultType = true; break; - case Op::OpUDotAccSat: *hasResult = true; *hasResultType = true; break; - case Op::OpSUDotAccSat: *hasResult = true; *hasResultType = true; break; - case Op::OpTypeCooperativeMatrixKHR: *hasResult = true; *hasResultType = false; break; - case Op::OpCooperativeMatrixLoadKHR: *hasResult = true; *hasResultType = true; break; - case Op::OpCooperativeMatrixStoreKHR: *hasResult = false; *hasResultType = false; break; - case Op::OpCooperativeMatrixMulAddKHR: *hasResult = true; *hasResultType = true; break; - case Op::OpCooperativeMatrixLengthKHR: *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::OpImageSampleWeightedQCOM: *hasResult = true; *hasResultType = true; break; - case Op::OpImageBoxFilterQCOM: *hasResult = true; *hasResultType = true; break; - case Op::OpImageBlockMatchSSDQCOM: *hasResult = true; *hasResultType = true; break; - case Op::OpImageBlockMatchSADQCOM: *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; - case Op::OpGroupUMinNonUniformAMD: *hasResult = true; *hasResultType = true; break; - case Op::OpGroupSMinNonUniformAMD: *hasResult = true; *hasResultType = true; break; - case Op::OpGroupFMaxNonUniformAMD: *hasResult = true; *hasResultType = true; break; - case Op::OpGroupUMaxNonUniformAMD: *hasResult = true; *hasResultType = true; break; - case Op::OpGroupSMaxNonUniformAMD: *hasResult = true; *hasResultType = true; break; - case Op::OpFragmentMaskFetchAMD: *hasResult = true; *hasResultType = true; break; - case Op::OpFragmentFetchAMD: *hasResult = true; *hasResultType = true; break; - case Op::OpReadClockKHR: *hasResult = true; *hasResultType = true; break; - case Op::OpHitObjectRecordHitMotionNV: *hasResult = false; *hasResultType = false; break; - case Op::OpHitObjectRecordHitWithIndexMotionNV: *hasResult = false; *hasResultType = false; break; - case Op::OpHitObjectRecordMissMotionNV: *hasResult = false; *hasResultType = false; break; - case Op::OpHitObjectGetWorldToObjectNV: *hasResult = true; *hasResultType = true; break; - case Op::OpHitObjectGetObjectToWorldNV: *hasResult = true; *hasResultType = true; break; - case Op::OpHitObjectGetObjectRayDirectionNV: *hasResult = true; *hasResultType = true; break; - case Op::OpHitObjectGetObjectRayOriginNV: *hasResult = true; *hasResultType = true; break; - case Op::OpHitObjectTraceRayMotionNV: *hasResult = false; *hasResultType = false; break; - case Op::OpHitObjectGetShaderRecordBufferHandleNV: *hasResult = true; *hasResultType = true; break; - case Op::OpHitObjectGetShaderBindingTableRecordIndexNV: *hasResult = true; *hasResultType = true; break; - case Op::OpHitObjectRecordEmptyNV: *hasResult = false; *hasResultType = false; break; - case Op::OpHitObjectTraceRayNV: *hasResult = false; *hasResultType = false; break; - case Op::OpHitObjectRecordHitNV: *hasResult = false; *hasResultType = false; break; - case Op::OpHitObjectRecordHitWithIndexNV: *hasResult = false; *hasResultType = false; break; - case Op::OpHitObjectRecordMissNV: *hasResult = false; *hasResultType = false; break; - case Op::OpHitObjectExecuteShaderNV: *hasResult = false; *hasResultType = false; break; - case Op::OpHitObjectGetCurrentTimeNV: *hasResult = true; *hasResultType = true; break; - case Op::OpHitObjectGetAttributesNV: *hasResult = false; *hasResultType = false; break; - case Op::OpHitObjectGetHitKindNV: *hasResult = true; *hasResultType = true; break; - case Op::OpHitObjectGetPrimitiveIndexNV: *hasResult = true; *hasResultType = true; break; - case Op::OpHitObjectGetGeometryIndexNV: *hasResult = true; *hasResultType = true; break; - case Op::OpHitObjectGetInstanceIdNV: *hasResult = true; *hasResultType = true; break; - case Op::OpHitObjectGetInstanceCustomIndexNV: *hasResult = true; *hasResultType = true; break; - case Op::OpHitObjectGetWorldRayDirectionNV: *hasResult = true; *hasResultType = true; break; - case Op::OpHitObjectGetWorldRayOriginNV: *hasResult = true; *hasResultType = true; break; - case Op::OpHitObjectGetRayTMaxNV: *hasResult = true; *hasResultType = true; break; - case Op::OpHitObjectGetRayTMinNV: *hasResult = true; *hasResultType = true; break; - case Op::OpHitObjectIsEmptyNV: *hasResult = true; *hasResultType = true; break; - case Op::OpHitObjectIsHitNV: *hasResult = true; *hasResultType = true; break; - case Op::OpHitObjectIsMissNV: *hasResult = true; *hasResultType = true; break; - case Op::OpReorderThreadWithHitObjectNV: *hasResult = false; *hasResultType = false; break; - case Op::OpReorderThreadWithHintNV: *hasResult = false; *hasResultType = false; break; - case Op::OpTypeHitObjectNV: *hasResult = true; *hasResultType = false; break; - case Op::OpImageSampleFootprintNV: *hasResult = true; *hasResultType = true; break; - case Op::OpEmitMeshTasksEXT: *hasResult = false; *hasResultType = false; break; - case Op::OpSetMeshOutputsEXT: *hasResult = false; *hasResultType = false; break; - case Op::OpGroupNonUniformPartitionNV: *hasResult = true; *hasResultType = true; break; - case Op::OpWritePackedPrimitiveIndices4x8NV: *hasResult = false; *hasResultType = false; break; - case Op::OpReportIntersectionNV: *hasResult = true; *hasResultType = true; break; - 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::OpRayQueryGetIntersectionTriangleVertexPositionsKHR: *hasResult = true; *hasResultType = true; break; - case Op::OpTypeAccelerationStructureNV: *hasResult = true; *hasResultType = false; 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; - case Op::OpCooperativeMatrixStoreNV: *hasResult = false; *hasResultType = false; break; - case Op::OpCooperativeMatrixMulAddNV: *hasResult = true; *hasResultType = true; break; - case Op::OpCooperativeMatrixLengthNV: *hasResult = true; *hasResultType = true; break; - case Op::OpBeginInvocationInterlockEXT: *hasResult = false; *hasResultType = false; break; - case Op::OpEndInvocationInterlockEXT: *hasResult = false; *hasResultType = false; break; - case Op::OpDemoteToHelperInvocation: *hasResult = false; *hasResultType = false; break; - case Op::OpIsHelperInvocationEXT: *hasResult = true; *hasResultType = true; break; - case Op::OpConvertUToImageNV: *hasResult = true; *hasResultType = true; break; - case Op::OpConvertUToSamplerNV: *hasResult = true; *hasResultType = true; break; - case Op::OpConvertImageToUNV: *hasResult = true; *hasResultType = true; break; - case Op::OpConvertSamplerToUNV: *hasResult = true; *hasResultType = true; break; - case Op::OpConvertUToSampledImageNV: *hasResult = true; *hasResultType = true; break; - case Op::OpConvertSampledImageToUNV: *hasResult = true; *hasResultType = true; break; - case Op::OpSamplerImageAddressingModeNV: *hasResult = false; *hasResultType = false; break; - case Op::OpSubgroupShuffleINTEL: *hasResult = true; *hasResultType = true; break; - case Op::OpSubgroupShuffleDownINTEL: *hasResult = true; *hasResultType = true; break; - case Op::OpSubgroupShuffleUpINTEL: *hasResult = true; *hasResultType = true; break; - case Op::OpSubgroupShuffleXorINTEL: *hasResult = true; *hasResultType = true; break; - case Op::OpSubgroupBlockReadINTEL: *hasResult = true; *hasResultType = true; break; - case Op::OpSubgroupBlockWriteINTEL: *hasResult = false; *hasResultType = false; break; - case Op::OpSubgroupImageBlockReadINTEL: *hasResult = true; *hasResultType = true; break; - case Op::OpSubgroupImageBlockWriteINTEL: *hasResult = false; *hasResultType = false; break; - case Op::OpSubgroupImageMediaBlockReadINTEL: *hasResult = true; *hasResultType = true; break; - case Op::OpSubgroupImageMediaBlockWriteINTEL: *hasResult = false; *hasResultType = false; break; - case Op::OpUCountLeadingZerosINTEL: *hasResult = true; *hasResultType = true; break; - case Op::OpUCountTrailingZerosINTEL: *hasResult = true; *hasResultType = true; break; - case Op::OpAbsISubINTEL: *hasResult = true; *hasResultType = true; break; - case Op::OpAbsUSubINTEL: *hasResult = true; *hasResultType = true; break; - case Op::OpIAddSatINTEL: *hasResult = true; *hasResultType = true; break; - case Op::OpUAddSatINTEL: *hasResult = true; *hasResultType = true; break; - case Op::OpIAverageINTEL: *hasResult = true; *hasResultType = true; break; - case Op::OpUAverageINTEL: *hasResult = true; *hasResultType = true; break; - case Op::OpIAverageRoundedINTEL: *hasResult = true; *hasResultType = true; break; - case Op::OpUAverageRoundedINTEL: *hasResult = true; *hasResultType = true; break; - case Op::OpISubSatINTEL: *hasResult = true; *hasResultType = true; break; - 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::OpConstantFunctionPointerINTEL: *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; - case Op::OpTypeVmeImageINTEL: *hasResult = true; *hasResultType = false; break; - case Op::OpTypeAvcImePayloadINTEL: *hasResult = true; *hasResultType = false; break; - case Op::OpTypeAvcRefPayloadINTEL: *hasResult = true; *hasResultType = false; break; - case Op::OpTypeAvcSicPayloadINTEL: *hasResult = true; *hasResultType = false; break; - case Op::OpTypeAvcMcePayloadINTEL: *hasResult = true; *hasResultType = false; break; - case Op::OpTypeAvcMceResultINTEL: *hasResult = true; *hasResultType = false; break; - case Op::OpTypeAvcImeResultINTEL: *hasResult = true; *hasResultType = false; break; - case Op::OpTypeAvcImeResultSingleReferenceStreamoutINTEL: *hasResult = true; *hasResultType = false; break; - case Op::OpTypeAvcImeResultDualReferenceStreamoutINTEL: *hasResult = true; *hasResultType = false; break; - case Op::OpTypeAvcImeSingleReferenceStreaminINTEL: *hasResult = true; *hasResultType = false; break; - case Op::OpTypeAvcImeDualReferenceStreaminINTEL: *hasResult = true; *hasResultType = false; break; - case Op::OpTypeAvcRefResultINTEL: *hasResult = true; *hasResultType = false; break; - case Op::OpTypeAvcSicResultINTEL: *hasResult = true; *hasResultType = false; break; - case Op::OpSubgroupAvcMceGetDefaultInterBaseMultiReferencePenaltyINTEL: *hasResult = true; *hasResultType = true; break; - case Op::OpSubgroupAvcMceSetInterBaseMultiReferencePenaltyINTEL: *hasResult = true; *hasResultType = true; break; - case Op::OpSubgroupAvcMceGetDefaultInterShapePenaltyINTEL: *hasResult = true; *hasResultType = true; break; - case Op::OpSubgroupAvcMceSetInterShapePenaltyINTEL: *hasResult = true; *hasResultType = true; break; - case Op::OpSubgroupAvcMceGetDefaultInterDirectionPenaltyINTEL: *hasResult = true; *hasResultType = true; break; - case Op::OpSubgroupAvcMceSetInterDirectionPenaltyINTEL: *hasResult = true; *hasResultType = true; break; - case Op::OpSubgroupAvcMceGetDefaultIntraLumaShapePenaltyINTEL: *hasResult = true; *hasResultType = true; break; - case Op::OpSubgroupAvcMceGetDefaultInterMotionVectorCostTableINTEL: *hasResult = true; *hasResultType = true; break; - case Op::OpSubgroupAvcMceGetDefaultHighPenaltyCostTableINTEL: *hasResult = true; *hasResultType = true; break; - case Op::OpSubgroupAvcMceGetDefaultMediumPenaltyCostTableINTEL: *hasResult = true; *hasResultType = true; break; - case Op::OpSubgroupAvcMceGetDefaultLowPenaltyCostTableINTEL: *hasResult = true; *hasResultType = true; break; - case Op::OpSubgroupAvcMceSetMotionVectorCostFunctionINTEL: *hasResult = true; *hasResultType = true; break; - case Op::OpSubgroupAvcMceGetDefaultIntraLumaModePenaltyINTEL: *hasResult = true; *hasResultType = true; break; - case Op::OpSubgroupAvcMceGetDefaultNonDcLumaIntraPenaltyINTEL: *hasResult = true; *hasResultType = true; break; - case Op::OpSubgroupAvcMceGetDefaultIntraChromaModeBasePenaltyINTEL: *hasResult = true; *hasResultType = true; break; - case Op::OpSubgroupAvcMceSetAcOnlyHaarINTEL: *hasResult = true; *hasResultType = true; break; - case Op::OpSubgroupAvcMceSetSourceInterlacedFieldPolarityINTEL: *hasResult = true; *hasResultType = true; break; - case Op::OpSubgroupAvcMceSetSingleReferenceInterlacedFieldPolarityINTEL: *hasResult = true; *hasResultType = true; break; - case Op::OpSubgroupAvcMceSetDualReferenceInterlacedFieldPolaritiesINTEL: *hasResult = true; *hasResultType = true; break; - case Op::OpSubgroupAvcMceConvertToImePayloadINTEL: *hasResult = true; *hasResultType = true; break; - case Op::OpSubgroupAvcMceConvertToImeResultINTEL: *hasResult = true; *hasResultType = true; break; - case Op::OpSubgroupAvcMceConvertToRefPayloadINTEL: *hasResult = true; *hasResultType = true; break; - case Op::OpSubgroupAvcMceConvertToRefResultINTEL: *hasResult = true; *hasResultType = true; break; - case Op::OpSubgroupAvcMceConvertToSicPayloadINTEL: *hasResult = true; *hasResultType = true; break; - case Op::OpSubgroupAvcMceConvertToSicResultINTEL: *hasResult = true; *hasResultType = true; break; - case Op::OpSubgroupAvcMceGetMotionVectorsINTEL: *hasResult = true; *hasResultType = true; break; - case Op::OpSubgroupAvcMceGetInterDistortionsINTEL: *hasResult = true; *hasResultType = true; break; - case Op::OpSubgroupAvcMceGetBestInterDistortionsINTEL: *hasResult = true; *hasResultType = true; break; - case Op::OpSubgroupAvcMceGetInterMajorShapeINTEL: *hasResult = true; *hasResultType = true; break; - case Op::OpSubgroupAvcMceGetInterMinorShapeINTEL: *hasResult = true; *hasResultType = true; break; - case Op::OpSubgroupAvcMceGetInterDirectionsINTEL: *hasResult = true; *hasResultType = true; break; - case Op::OpSubgroupAvcMceGetInterMotionVectorCountINTEL: *hasResult = true; *hasResultType = true; break; - case Op::OpSubgroupAvcMceGetInterReferenceIdsINTEL: *hasResult = true; *hasResultType = true; break; - case Op::OpSubgroupAvcMceGetInterReferenceInterlacedFieldPolaritiesINTEL: *hasResult = true; *hasResultType = true; break; - case Op::OpSubgroupAvcImeInitializeINTEL: *hasResult = true; *hasResultType = true; break; - case Op::OpSubgroupAvcImeSetSingleReferenceINTEL: *hasResult = true; *hasResultType = true; break; - case Op::OpSubgroupAvcImeSetDualReferenceINTEL: *hasResult = true; *hasResultType = true; break; - case Op::OpSubgroupAvcImeRefWindowSizeINTEL: *hasResult = true; *hasResultType = true; break; - case Op::OpSubgroupAvcImeAdjustRefOffsetINTEL: *hasResult = true; *hasResultType = true; break; - case Op::OpSubgroupAvcImeConvertToMcePayloadINTEL: *hasResult = true; *hasResultType = true; break; - case Op::OpSubgroupAvcImeSetMaxMotionVectorCountINTEL: *hasResult = true; *hasResultType = true; break; - case Op::OpSubgroupAvcImeSetUnidirectionalMixDisableINTEL: *hasResult = true; *hasResultType = true; break; - case Op::OpSubgroupAvcImeSetEarlySearchTerminationThresholdINTEL: *hasResult = true; *hasResultType = true; break; - case Op::OpSubgroupAvcImeSetWeightedSadINTEL: *hasResult = true; *hasResultType = true; break; - case Op::OpSubgroupAvcImeEvaluateWithSingleReferenceINTEL: *hasResult = true; *hasResultType = true; break; - case Op::OpSubgroupAvcImeEvaluateWithDualReferenceINTEL: *hasResult = true; *hasResultType = true; break; - case Op::OpSubgroupAvcImeEvaluateWithSingleReferenceStreaminINTEL: *hasResult = true; *hasResultType = true; break; - case Op::OpSubgroupAvcImeEvaluateWithDualReferenceStreaminINTEL: *hasResult = true; *hasResultType = true; break; - case Op::OpSubgroupAvcImeEvaluateWithSingleReferenceStreamoutINTEL: *hasResult = true; *hasResultType = true; break; - case Op::OpSubgroupAvcImeEvaluateWithDualReferenceStreamoutINTEL: *hasResult = true; *hasResultType = true; break; - case Op::OpSubgroupAvcImeEvaluateWithSingleReferenceStreaminoutINTEL: *hasResult = true; *hasResultType = true; break; - case Op::OpSubgroupAvcImeEvaluateWithDualReferenceStreaminoutINTEL: *hasResult = true; *hasResultType = true; break; - case Op::OpSubgroupAvcImeConvertToMceResultINTEL: *hasResult = true; *hasResultType = true; break; - case Op::OpSubgroupAvcImeGetSingleReferenceStreaminINTEL: *hasResult = true; *hasResultType = true; break; - case Op::OpSubgroupAvcImeGetDualReferenceStreaminINTEL: *hasResult = true; *hasResultType = true; break; - case Op::OpSubgroupAvcImeStripSingleReferenceStreamoutINTEL: *hasResult = true; *hasResultType = true; break; - case Op::OpSubgroupAvcImeStripDualReferenceStreamoutINTEL: *hasResult = true; *hasResultType = true; break; - case Op::OpSubgroupAvcImeGetStreamoutSingleReferenceMajorShapeMotionVectorsINTEL: *hasResult = true; *hasResultType = true; break; - case Op::OpSubgroupAvcImeGetStreamoutSingleReferenceMajorShapeDistortionsINTEL: *hasResult = true; *hasResultType = true; break; - case Op::OpSubgroupAvcImeGetStreamoutSingleReferenceMajorShapeReferenceIdsINTEL: *hasResult = true; *hasResultType = true; break; - case Op::OpSubgroupAvcImeGetStreamoutDualReferenceMajorShapeMotionVectorsINTEL: *hasResult = true; *hasResultType = true; break; - case Op::OpSubgroupAvcImeGetStreamoutDualReferenceMajorShapeDistortionsINTEL: *hasResult = true; *hasResultType = true; break; - case Op::OpSubgroupAvcImeGetStreamoutDualReferenceMajorShapeReferenceIdsINTEL: *hasResult = true; *hasResultType = true; break; - case Op::OpSubgroupAvcImeGetBorderReachedINTEL: *hasResult = true; *hasResultType = true; break; - case Op::OpSubgroupAvcImeGetTruncatedSearchIndicationINTEL: *hasResult = true; *hasResultType = true; break; - case Op::OpSubgroupAvcImeGetUnidirectionalEarlySearchTerminationINTEL: *hasResult = true; *hasResultType = true; break; - case Op::OpSubgroupAvcImeGetWeightingPatternMinimumMotionVectorINTEL: *hasResult = true; *hasResultType = true; break; - case Op::OpSubgroupAvcImeGetWeightingPatternMinimumDistortionINTEL: *hasResult = true; *hasResultType = true; break; - case Op::OpSubgroupAvcFmeInitializeINTEL: *hasResult = true; *hasResultType = true; break; - case Op::OpSubgroupAvcBmeInitializeINTEL: *hasResult = true; *hasResultType = true; break; - case Op::OpSubgroupAvcRefConvertToMcePayloadINTEL: *hasResult = true; *hasResultType = true; break; - case Op::OpSubgroupAvcRefSetBidirectionalMixDisableINTEL: *hasResult = true; *hasResultType = true; break; - case Op::OpSubgroupAvcRefSetBilinearFilterEnableINTEL: *hasResult = true; *hasResultType = true; break; - case Op::OpSubgroupAvcRefEvaluateWithSingleReferenceINTEL: *hasResult = true; *hasResultType = true; break; - case Op::OpSubgroupAvcRefEvaluateWithDualReferenceINTEL: *hasResult = true; *hasResultType = true; break; - case Op::OpSubgroupAvcRefEvaluateWithMultiReferenceINTEL: *hasResult = true; *hasResultType = true; break; - case Op::OpSubgroupAvcRefEvaluateWithMultiReferenceInterlacedINTEL: *hasResult = true; *hasResultType = true; break; - case Op::OpSubgroupAvcRefConvertToMceResultINTEL: *hasResult = true; *hasResultType = true; break; - case Op::OpSubgroupAvcSicInitializeINTEL: *hasResult = true; *hasResultType = true; break; - case Op::OpSubgroupAvcSicConfigureSkcINTEL: *hasResult = true; *hasResultType = true; break; - case Op::OpSubgroupAvcSicConfigureIpeLumaINTEL: *hasResult = true; *hasResultType = true; break; - case Op::OpSubgroupAvcSicConfigureIpeLumaChromaINTEL: *hasResult = true; *hasResultType = true; break; - case Op::OpSubgroupAvcSicGetMotionVectorMaskINTEL: *hasResult = true; *hasResultType = true; break; - case Op::OpSubgroupAvcSicConvertToMcePayloadINTEL: *hasResult = true; *hasResultType = true; break; - case Op::OpSubgroupAvcSicSetIntraLumaShapePenaltyINTEL: *hasResult = true; *hasResultType = true; break; - case Op::OpSubgroupAvcSicSetIntraLumaModeCostFunctionINTEL: *hasResult = true; *hasResultType = true; break; - case Op::OpSubgroupAvcSicSetIntraChromaModeCostFunctionINTEL: *hasResult = true; *hasResultType = true; break; - case Op::OpSubgroupAvcSicSetBilinearFilterEnableINTEL: *hasResult = true; *hasResultType = true; break; - case Op::OpSubgroupAvcSicSetSkcForwardTransformEnableINTEL: *hasResult = true; *hasResultType = true; break; - case Op::OpSubgroupAvcSicSetBlockBasedRawSkipSadINTEL: *hasResult = true; *hasResultType = true; break; - case Op::OpSubgroupAvcSicEvaluateIpeINTEL: *hasResult = true; *hasResultType = true; break; - case Op::OpSubgroupAvcSicEvaluateWithSingleReferenceINTEL: *hasResult = true; *hasResultType = true; break; - case Op::OpSubgroupAvcSicEvaluateWithDualReferenceINTEL: *hasResult = true; *hasResultType = true; break; - case Op::OpSubgroupAvcSicEvaluateWithMultiReferenceINTEL: *hasResult = true; *hasResultType = true; break; - case Op::OpSubgroupAvcSicEvaluateWithMultiReferenceInterlacedINTEL: *hasResult = true; *hasResultType = true; break; - case Op::OpSubgroupAvcSicConvertToMceResultINTEL: *hasResult = true; *hasResultType = true; break; - case Op::OpSubgroupAvcSicGetIpeLumaShapeINTEL: *hasResult = true; *hasResultType = true; break; - case Op::OpSubgroupAvcSicGetBestIpeLumaDistortionINTEL: *hasResult = true; *hasResultType = true; break; - case Op::OpSubgroupAvcSicGetBestIpeChromaDistortionINTEL: *hasResult = true; *hasResultType = true; break; - case Op::OpSubgroupAvcSicGetPackedIpeLumaModesINTEL: *hasResult = true; *hasResultType = true; break; - case Op::OpSubgroupAvcSicGetIpeChromaModeINTEL: *hasResult = true; *hasResultType = true; break; - 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::OpAliasDomainDeclINTEL: *hasResult = true; *hasResultType = false; break; - case Op::OpAliasScopeDeclINTEL: *hasResult = true; *hasResultType = false; break; - case Op::OpAliasScopeListDeclINTEL: *hasResult = true; *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; - case Op::OpConvertFToBF16INTEL: *hasResult = true; *hasResultType = true; break; - case Op::OpConvertBF16ToFINTEL: *hasResult = true; *hasResultType = true; break; - case Op::OpControlBarrierArriveINTEL: *hasResult = false; *hasResultType = false; break; - case Op::OpControlBarrierWaitINTEL: *hasResult = false; *hasResultType = false; break; - case Op::OpGroupIMulKHR: *hasResult = true; *hasResultType = true; break; - case Op::OpGroupFMulKHR: *hasResult = true; *hasResultType = true; break; - case Op::OpGroupBitwiseAndKHR: *hasResult = true; *hasResultType = true; break; - case Op::OpGroupBitwiseOrKHR: *hasResult = true; *hasResultType = true; break; - case Op::OpGroupBitwiseXorKHR: *hasResult = true; *hasResultType = true; break; - case Op::OpGroupLogicalAndKHR: *hasResult = true; *hasResultType = true; break; - case Op::OpGroupLogicalOrKHR: *hasResult = true; *hasResultType = true; break; - case Op::OpGroupLogicalXorKHR: *hasResult = true; *hasResultType = true; break; - } -} -#endif /* SPV_ENABLE_UTILITY_CODE */ - -// Overload bitwise operators for mask bit combining - -constexpr ImageOperandsMask operator|(ImageOperandsMask a, ImageOperandsMask b) { return ImageOperandsMask(unsigned(a) | unsigned(b)); } -constexpr ImageOperandsMask operator&(ImageOperandsMask a, ImageOperandsMask b) { return ImageOperandsMask(unsigned(a) & unsigned(b)); } -constexpr ImageOperandsMask operator^(ImageOperandsMask a, ImageOperandsMask b) { return ImageOperandsMask(unsigned(a) ^ unsigned(b)); } -constexpr ImageOperandsMask operator~(ImageOperandsMask a) { return ImageOperandsMask(~unsigned(a)); } -constexpr FPFastMathModeMask operator|(FPFastMathModeMask a, FPFastMathModeMask b) { return FPFastMathModeMask(unsigned(a) | unsigned(b)); } -constexpr FPFastMathModeMask operator&(FPFastMathModeMask a, FPFastMathModeMask b) { return FPFastMathModeMask(unsigned(a) & unsigned(b)); } -constexpr FPFastMathModeMask operator^(FPFastMathModeMask a, FPFastMathModeMask b) { return FPFastMathModeMask(unsigned(a) ^ unsigned(b)); } -constexpr FPFastMathModeMask operator~(FPFastMathModeMask a) { return FPFastMathModeMask(~unsigned(a)); } -constexpr SelectionControlMask operator|(SelectionControlMask a, SelectionControlMask b) { return SelectionControlMask(unsigned(a) | unsigned(b)); } -constexpr SelectionControlMask operator&(SelectionControlMask a, SelectionControlMask b) { return SelectionControlMask(unsigned(a) & unsigned(b)); } -constexpr SelectionControlMask operator^(SelectionControlMask a, SelectionControlMask b) { return SelectionControlMask(unsigned(a) ^ unsigned(b)); } -constexpr SelectionControlMask operator~(SelectionControlMask a) { return SelectionControlMask(~unsigned(a)); } -constexpr LoopControlMask operator|(LoopControlMask a, LoopControlMask b) { return LoopControlMask(unsigned(a) | unsigned(b)); } -constexpr LoopControlMask operator&(LoopControlMask a, LoopControlMask b) { return LoopControlMask(unsigned(a) & unsigned(b)); } -constexpr LoopControlMask operator^(LoopControlMask a, LoopControlMask b) { return LoopControlMask(unsigned(a) ^ unsigned(b)); } -constexpr LoopControlMask operator~(LoopControlMask a) { return LoopControlMask(~unsigned(a)); } -constexpr FunctionControlMask operator|(FunctionControlMask a, FunctionControlMask b) { return FunctionControlMask(unsigned(a) | unsigned(b)); } -constexpr FunctionControlMask operator&(FunctionControlMask a, FunctionControlMask b) { return FunctionControlMask(unsigned(a) & unsigned(b)); } -constexpr FunctionControlMask operator^(FunctionControlMask a, FunctionControlMask b) { return FunctionControlMask(unsigned(a) ^ unsigned(b)); } -constexpr FunctionControlMask operator~(FunctionControlMask a) { return FunctionControlMask(~unsigned(a)); } -constexpr MemorySemanticsMask operator|(MemorySemanticsMask a, MemorySemanticsMask b) { return MemorySemanticsMask(unsigned(a) | unsigned(b)); } -constexpr MemorySemanticsMask operator&(MemorySemanticsMask a, MemorySemanticsMask b) { return MemorySemanticsMask(unsigned(a) & unsigned(b)); } -constexpr MemorySemanticsMask operator^(MemorySemanticsMask a, MemorySemanticsMask b) { return MemorySemanticsMask(unsigned(a) ^ unsigned(b)); } -constexpr MemorySemanticsMask operator~(MemorySemanticsMask a) { return MemorySemanticsMask(~unsigned(a)); } -constexpr MemoryAccessMask operator|(MemoryAccessMask a, MemoryAccessMask b) { return MemoryAccessMask(unsigned(a) | unsigned(b)); } -constexpr MemoryAccessMask operator&(MemoryAccessMask a, MemoryAccessMask b) { return MemoryAccessMask(unsigned(a) & unsigned(b)); } -constexpr MemoryAccessMask operator^(MemoryAccessMask a, MemoryAccessMask b) { return MemoryAccessMask(unsigned(a) ^ unsigned(b)); } -constexpr MemoryAccessMask operator~(MemoryAccessMask a) { return MemoryAccessMask(~unsigned(a)); } -constexpr KernelProfilingInfoMask operator|(KernelProfilingInfoMask a, KernelProfilingInfoMask b) { return KernelProfilingInfoMask(unsigned(a) | unsigned(b)); } -constexpr KernelProfilingInfoMask operator&(KernelProfilingInfoMask a, KernelProfilingInfoMask b) { return KernelProfilingInfoMask(unsigned(a) & unsigned(b)); } -constexpr KernelProfilingInfoMask operator^(KernelProfilingInfoMask a, KernelProfilingInfoMask b) { return KernelProfilingInfoMask(unsigned(a) ^ unsigned(b)); } -constexpr KernelProfilingInfoMask operator~(KernelProfilingInfoMask a) { return KernelProfilingInfoMask(~unsigned(a)); } -constexpr RayFlagsMask operator|(RayFlagsMask a, RayFlagsMask b) { return RayFlagsMask(unsigned(a) | unsigned(b)); } -constexpr RayFlagsMask operator&(RayFlagsMask a, RayFlagsMask b) { return RayFlagsMask(unsigned(a) & unsigned(b)); } -constexpr RayFlagsMask operator^(RayFlagsMask a, RayFlagsMask b) { return RayFlagsMask(unsigned(a) ^ unsigned(b)); } -constexpr RayFlagsMask operator~(RayFlagsMask a) { return RayFlagsMask(~unsigned(a)); } -constexpr FragmentShadingRateMask operator|(FragmentShadingRateMask a, FragmentShadingRateMask b) { return FragmentShadingRateMask(unsigned(a) | unsigned(b)); } -constexpr FragmentShadingRateMask operator&(FragmentShadingRateMask a, FragmentShadingRateMask b) { return FragmentShadingRateMask(unsigned(a) & unsigned(b)); } -constexpr FragmentShadingRateMask operator^(FragmentShadingRateMask a, FragmentShadingRateMask b) { return FragmentShadingRateMask(unsigned(a) ^ unsigned(b)); } -constexpr FragmentShadingRateMask operator~(FragmentShadingRateMask a) { return FragmentShadingRateMask(~unsigned(a)); } -constexpr CooperativeMatrixOperandsMask operator|(CooperativeMatrixOperandsMask a, CooperativeMatrixOperandsMask b) { return CooperativeMatrixOperandsMask(unsigned(a) | unsigned(b)); } -constexpr CooperativeMatrixOperandsMask operator&(CooperativeMatrixOperandsMask a, CooperativeMatrixOperandsMask b) { return CooperativeMatrixOperandsMask(unsigned(a) & unsigned(b)); } -constexpr CooperativeMatrixOperandsMask operator^(CooperativeMatrixOperandsMask a, CooperativeMatrixOperandsMask b) { return CooperativeMatrixOperandsMask(unsigned(a) ^ unsigned(b)); } -constexpr CooperativeMatrixOperandsMask operator~(CooperativeMatrixOperandsMask a) { return CooperativeMatrixOperandsMask(~unsigned(a)); } - -} // end namespace spv - -#endif // #ifndef spirv_HPP - diff --git a/Extern/3rdParty/shaderc/shaderc/include/spirv/unified1/spirv.json b/Extern/3rdParty/shaderc/shaderc/include/spirv/unified1/spirv.json deleted file mode 100644 index 8c3c424..0000000 --- a/Extern/3rdParty/shaderc/shaderc/include/spirv/unified1/spirv.json +++ /dev/null @@ -1,2028 +0,0 @@ -{ - "spv": - { - "meta": - { - "Comment": - [ - [ - "Copyright (c) 2014-2020 The Khronos Group Inc.", - "", - "Permission is hereby granted, free of charge, to any person obtaining a copy", - "of this software and/or associated documentation files (the \"Materials\"),", - "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." - ], - [ - "This header is automatically generated by the same tool that creates", - "the Binary Section of the SPIR-V specification." - ], - [ - "Enumeration tokens for SPIR-V, in various styles:", - " C, C++, C++11, JSON, Lua, Python, C#, D, Beef", - "", - "- C will have tokens with a \"Spv\" prefix, e.g.: SpvSourceLanguageGLSL", - "- C++ will have tokens in the \"spv\" name space, e.g.: spv::SourceLanguageGLSL", - "- C++11 will use enum classes in the spv namespace, e.g.: spv::SourceLanguage::GLSL", - "- Lua will use tables, e.g.: spv.SourceLanguage.GLSL", - "- Python will use dictionaries, e.g.: spv['SourceLanguage']['GLSL']", - "- C# will use enum classes in the Specification class located in the \"Spv\" namespace,", - " e.g.: Spv.Specification.SourceLanguage.GLSL", - "- D will have tokens under the \"spv\" module, e.g: spv.SourceLanguage.GLSL", - "- Beef will use enum classes in the Specification class located in the \"Spv\" namespace,", - " e.g.: Spv.Specification.SourceLanguage.GLSL", - "", - "Some tokens act like mask values, which can be OR'd together,", - "while others are mutually exclusive. The mask-like ones have", - "\"Mask\" in their name, and a parallel enum that has the shift", - "amount (1 << x) for each corresponding enumerant." - ] - ], - "MagicNumber": 119734787, - "Version": 67072, - "Revision": 1, - "OpCodeMask": 65535, - "WordCountShift": 16 - }, - "enum": - [ - { - "Name": "SourceLanguage", - "Type": "Value", - "Values": - { - "Unknown": 0, - "ESSL": 1, - "GLSL": 2, - "OpenCL_C": 3, - "OpenCL_CPP": 4, - "HLSL": 5, - "CPP_for_OpenCL": 6, - "SYCL": 7, - "HERO_C": 8, - "NZSL": 9, - "WGSL": 10 - } - }, - { - "Name": "ExecutionModel", - "Type": "Value", - "Values": - { - "Vertex": 0, - "TessellationControl": 1, - "TessellationEvaluation": 2, - "Geometry": 3, - "Fragment": 4, - "GLCompute": 5, - "Kernel": 6, - "TaskNV": 5267, - "MeshNV": 5268, - "RayGenerationKHR": 5313, - "RayGenerationNV": 5313, - "IntersectionKHR": 5314, - "IntersectionNV": 5314, - "AnyHitKHR": 5315, - "AnyHitNV": 5315, - "ClosestHitKHR": 5316, - "ClosestHitNV": 5316, - "MissKHR": 5317, - "MissNV": 5317, - "CallableKHR": 5318, - "CallableNV": 5318, - "TaskEXT": 5364, - "MeshEXT": 5365 - } - }, - { - "Name": "AddressingModel", - "Type": "Value", - "Values": - { - "Logical": 0, - "Physical32": 1, - "Physical64": 2, - "PhysicalStorageBuffer64": 5348, - "PhysicalStorageBuffer64EXT": 5348 - } - }, - { - "Name": "MemoryModel", - "Type": "Value", - "Values": - { - "Simple": 0, - "GLSL450": 1, - "OpenCL": 2, - "Vulkan": 3, - "VulkanKHR": 3 - } - }, - { - "Name": "ExecutionMode", - "Type": "Value", - "Values": - { - "Invocations": 0, - "SpacingEqual": 1, - "SpacingFractionalEven": 2, - "SpacingFractionalOdd": 3, - "VertexOrderCw": 4, - "VertexOrderCcw": 5, - "PixelCenterInteger": 6, - "OriginUpperLeft": 7, - "OriginLowerLeft": 8, - "EarlyFragmentTests": 9, - "PointMode": 10, - "Xfb": 11, - "DepthReplacing": 12, - "DepthGreater": 14, - "DepthLess": 15, - "DepthUnchanged": 16, - "LocalSize": 17, - "LocalSizeHint": 18, - "InputPoints": 19, - "InputLines": 20, - "InputLinesAdjacency": 21, - "Triangles": 22, - "InputTrianglesAdjacency": 23, - "Quads": 24, - "Isolines": 25, - "OutputVertices": 26, - "OutputPoints": 27, - "OutputLineStrip": 28, - "OutputTriangleStrip": 29, - "VecTypeHint": 30, - "ContractionOff": 31, - "Initializer": 33, - "Finalizer": 34, - "SubgroupSize": 35, - "SubgroupsPerWorkgroup": 36, - "SubgroupsPerWorkgroupId": 37, - "LocalSizeId": 38, - "LocalSizeHintId": 39, - "NonCoherentColorAttachmentReadEXT": 4169, - "NonCoherentDepthAttachmentReadEXT": 4170, - "NonCoherentStencilAttachmentReadEXT": 4171, - "SubgroupUniformControlFlowKHR": 4421, - "PostDepthCoverage": 4446, - "DenormPreserve": 4459, - "DenormFlushToZero": 4460, - "SignedZeroInfNanPreserve": 4461, - "RoundingModeRTE": 4462, - "RoundingModeRTZ": 4463, - "EarlyAndLateFragmentTestsAMD": 5017, - "StencilRefReplacingEXT": 5027, - "StencilRefUnchangedFrontAMD": 5079, - "StencilRefGreaterFrontAMD": 5080, - "StencilRefLessFrontAMD": 5081, - "StencilRefUnchangedBackAMD": 5082, - "StencilRefGreaterBackAMD": 5083, - "StencilRefLessBackAMD": 5084, - "OutputLinesEXT": 5269, - "OutputLinesNV": 5269, - "OutputPrimitivesEXT": 5270, - "OutputPrimitivesNV": 5270, - "DerivativeGroupQuadsNV": 5289, - "DerivativeGroupLinearNV": 5290, - "OutputTrianglesEXT": 5298, - "OutputTrianglesNV": 5298, - "PixelInterlockOrderedEXT": 5366, - "PixelInterlockUnorderedEXT": 5367, - "SampleInterlockOrderedEXT": 5368, - "SampleInterlockUnorderedEXT": 5369, - "ShadingRateInterlockOrderedEXT": 5370, - "ShadingRateInterlockUnorderedEXT": 5371, - "SharedLocalMemorySizeINTEL": 5618, - "RoundingModeRTPINTEL": 5620, - "RoundingModeRTNINTEL": 5621, - "FloatingPointModeALTINTEL": 5622, - "FloatingPointModeIEEEINTEL": 5623, - "MaxWorkgroupSizeINTEL": 5893, - "MaxWorkDimINTEL": 5894, - "NoGlobalOffsetINTEL": 5895, - "NumSIMDWorkitemsINTEL": 5896, - "SchedulerTargetFmaxMhzINTEL": 5903, - "StreamingInterfaceINTEL": 6154, - "RegisterMapInterfaceINTEL": 6160, - "NamedBarrierCountINTEL": 6417 - } - }, - { - "Name": "StorageClass", - "Type": "Value", - "Values": - { - "UniformConstant": 0, - "Input": 1, - "Uniform": 2, - "Output": 3, - "Workgroup": 4, - "CrossWorkgroup": 5, - "Private": 6, - "Function": 7, - "Generic": 8, - "PushConstant": 9, - "AtomicCounter": 10, - "Image": 11, - "StorageBuffer": 12, - "TileImageEXT": 4172, - "CallableDataKHR": 5328, - "CallableDataNV": 5328, - "IncomingCallableDataKHR": 5329, - "IncomingCallableDataNV": 5329, - "RayPayloadKHR": 5338, - "RayPayloadNV": 5338, - "HitAttributeKHR": 5339, - "HitAttributeNV": 5339, - "IncomingRayPayloadKHR": 5342, - "IncomingRayPayloadNV": 5342, - "ShaderRecordBufferKHR": 5343, - "ShaderRecordBufferNV": 5343, - "PhysicalStorageBuffer": 5349, - "PhysicalStorageBufferEXT": 5349, - "HitObjectAttributeNV": 5385, - "TaskPayloadWorkgroupEXT": 5402, - "CodeSectionINTEL": 5605, - "DeviceOnlyINTEL": 5936, - "HostOnlyINTEL": 5937 - } - }, - { - "Name": "Dim", - "Type": "Value", - "Values": - { - "Dim1D": 0, - "Dim2D": 1, - "Dim3D": 2, - "Cube": 3, - "Rect": 4, - "Buffer": 5, - "SubpassData": 6, - "TileImageDataEXT": 4173 - } - }, - { - "Name": "SamplerAddressingMode", - "Type": "Value", - "Values": - { - "None": 0, - "ClampToEdge": 1, - "Clamp": 2, - "Repeat": 3, - "RepeatMirrored": 4 - } - }, - { - "Name": "SamplerFilterMode", - "Type": "Value", - "Values": - { - "Nearest": 0, - "Linear": 1 - } - }, - { - "Name": "ImageFormat", - "Type": "Value", - "Values": - { - "Unknown": 0, - "Rgba32f": 1, - "Rgba16f": 2, - "R32f": 3, - "Rgba8": 4, - "Rgba8Snorm": 5, - "Rg32f": 6, - "Rg16f": 7, - "R11fG11fB10f": 8, - "R16f": 9, - "Rgba16": 10, - "Rgb10A2": 11, - "Rg16": 12, - "Rg8": 13, - "R16": 14, - "R8": 15, - "Rgba16Snorm": 16, - "Rg16Snorm": 17, - "Rg8Snorm": 18, - "R16Snorm": 19, - "R8Snorm": 20, - "Rgba32i": 21, - "Rgba16i": 22, - "Rgba8i": 23, - "R32i": 24, - "Rg32i": 25, - "Rg16i": 26, - "Rg8i": 27, - "R16i": 28, - "R8i": 29, - "Rgba32ui": 30, - "Rgba16ui": 31, - "Rgba8ui": 32, - "R32ui": 33, - "Rgb10a2ui": 34, - "Rg32ui": 35, - "Rg16ui": 36, - "Rg8ui": 37, - "R16ui": 38, - "R8ui": 39, - "R64ui": 40, - "R64i": 41 - } - }, - { - "Name": "ImageChannelOrder", - "Type": "Value", - "Values": - { - "R": 0, - "A": 1, - "RG": 2, - "RA": 3, - "RGB": 4, - "RGBA": 5, - "BGRA": 6, - "ARGB": 7, - "Intensity": 8, - "Luminance": 9, - "Rx": 10, - "RGx": 11, - "RGBx": 12, - "Depth": 13, - "DepthStencil": 14, - "sRGB": 15, - "sRGBx": 16, - "sRGBA": 17, - "sBGRA": 18, - "ABGR": 19 - } - }, - { - "Name": "ImageChannelDataType", - "Type": "Value", - "Values": - { - "SnormInt8": 0, - "SnormInt16": 1, - "UnormInt8": 2, - "UnormInt16": 3, - "UnormShort565": 4, - "UnormShort555": 5, - "UnormInt101010": 6, - "SignedInt8": 7, - "SignedInt16": 8, - "SignedInt32": 9, - "UnsignedInt8": 10, - "UnsignedInt16": 11, - "UnsignedInt32": 12, - "HalfFloat": 13, - "Float": 14, - "UnormInt24": 15, - "UnormInt101010_2": 16, - "UnsignedIntRaw10EXT": 19, - "UnsignedIntRaw12EXT": 20 - } - }, - { - "Name": "ImageOperands", - "Type": "Bit", - "Values": - { - "Bias": 0, - "Lod": 1, - "Grad": 2, - "ConstOffset": 3, - "Offset": 4, - "ConstOffsets": 5, - "Sample": 6, - "MinLod": 7, - "MakeTexelAvailable": 8, - "MakeTexelAvailableKHR": 8, - "MakeTexelVisible": 9, - "MakeTexelVisibleKHR": 9, - "NonPrivateTexel": 10, - "NonPrivateTexelKHR": 10, - "VolatileTexel": 11, - "VolatileTexelKHR": 11, - "SignExtend": 12, - "ZeroExtend": 13, - "Nontemporal": 14, - "Offsets": 16 - } - }, - { - "Name": "FPFastMathMode", - "Type": "Bit", - "Values": - { - "NotNaN": 0, - "NotInf": 1, - "NSZ": 2, - "AllowRecip": 3, - "Fast": 4, - "AllowContractFastINTEL": 16, - "AllowReassocINTEL": 17 - } - }, - { - "Name": "FPRoundingMode", - "Type": "Value", - "Values": - { - "RTE": 0, - "RTZ": 1, - "RTP": 2, - "RTN": 3 - } - }, - { - "Name": "LinkageType", - "Type": "Value", - "Values": - { - "Export": 0, - "Import": 1, - "LinkOnceODR": 2 - } - }, - { - "Name": "AccessQualifier", - "Type": "Value", - "Values": - { - "ReadOnly": 0, - "WriteOnly": 1, - "ReadWrite": 2 - } - }, - { - "Name": "FunctionParameterAttribute", - "Type": "Value", - "Values": - { - "Zext": 0, - "Sext": 1, - "ByVal": 2, - "Sret": 3, - "NoAlias": 4, - "NoCapture": 5, - "NoWrite": 6, - "NoReadWrite": 7, - "RuntimeAlignedINTEL": 5940 - } - }, - { - "Name": "Decoration", - "Type": "Value", - "Values": - { - "RelaxedPrecision": 0, - "SpecId": 1, - "Block": 2, - "BufferBlock": 3, - "RowMajor": 4, - "ColMajor": 5, - "ArrayStride": 6, - "MatrixStride": 7, - "GLSLShared": 8, - "GLSLPacked": 9, - "CPacked": 10, - "BuiltIn": 11, - "NoPerspective": 13, - "Flat": 14, - "Patch": 15, - "Centroid": 16, - "Sample": 17, - "Invariant": 18, - "Restrict": 19, - "Aliased": 20, - "Volatile": 21, - "Constant": 22, - "Coherent": 23, - "NonWritable": 24, - "NonReadable": 25, - "Uniform": 26, - "UniformId": 27, - "SaturatedConversion": 28, - "Stream": 29, - "Location": 30, - "Component": 31, - "Index": 32, - "Binding": 33, - "DescriptorSet": 34, - "Offset": 35, - "XfbBuffer": 36, - "XfbStride": 37, - "FuncParamAttr": 38, - "FPRoundingMode": 39, - "FPFastMathMode": 40, - "LinkageAttributes": 41, - "NoContraction": 42, - "InputAttachmentIndex": 43, - "Alignment": 44, - "MaxByteOffset": 45, - "AlignmentId": 46, - "MaxByteOffsetId": 47, - "NoSignedWrap": 4469, - "NoUnsignedWrap": 4470, - "WeightTextureQCOM": 4487, - "BlockMatchTextureQCOM": 4488, - "ExplicitInterpAMD": 4999, - "OverrideCoverageNV": 5248, - "PassthroughNV": 5250, - "ViewportRelativeNV": 5252, - "SecondaryViewportRelativeNV": 5256, - "PerPrimitiveEXT": 5271, - "PerPrimitiveNV": 5271, - "PerViewNV": 5272, - "PerTaskNV": 5273, - "PerVertexKHR": 5285, - "PerVertexNV": 5285, - "NonUniform": 5300, - "NonUniformEXT": 5300, - "RestrictPointer": 5355, - "RestrictPointerEXT": 5355, - "AliasedPointer": 5356, - "AliasedPointerEXT": 5356, - "HitObjectShaderRecordBufferNV": 5386, - "BindlessSamplerNV": 5398, - "BindlessImageNV": 5399, - "BoundSamplerNV": 5400, - "BoundImageNV": 5401, - "SIMTCallINTEL": 5599, - "ReferencedIndirectlyINTEL": 5602, - "ClobberINTEL": 5607, - "SideEffectsINTEL": 5608, - "VectorComputeVariableINTEL": 5624, - "FuncParamIOKindINTEL": 5625, - "VectorComputeFunctionINTEL": 5626, - "StackCallINTEL": 5627, - "GlobalVariableOffsetINTEL": 5628, - "CounterBuffer": 5634, - "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, - "MathOpDSPModeINTEL": 5909, - "AliasScopeINTEL": 5914, - "NoAliasINTEL": 5915, - "InitiationIntervalINTEL": 5917, - "MaxConcurrencyINTEL": 5918, - "PipelineEnableINTEL": 5919, - "BufferLocationINTEL": 5921, - "IOPipeStorageINTEL": 5944, - "FunctionFloatingPointModeINTEL": 6080, - "SingleElementVectorINTEL": 6085, - "VectorComputeCallableFunctionINTEL": 6087, - "MediaBlockIOINTEL": 6140, - "FPMaxErrorDecorationINTEL": 6170, - "LatencyControlLabelINTEL": 6172, - "LatencyControlConstraintINTEL": 6173, - "ConduitKernelArgumentINTEL": 6175, - "RegisterMapKernelArgumentINTEL": 6176, - "MMHostInterfaceAddressWidthINTEL": 6177, - "MMHostInterfaceDataWidthINTEL": 6178, - "MMHostInterfaceLatencyINTEL": 6179, - "MMHostInterfaceReadWriteModeINTEL": 6180, - "MMHostInterfaceMaxBurstINTEL": 6181, - "MMHostInterfaceWaitRequestINTEL": 6182, - "StableKernelArgumentINTEL": 6183 - } - }, - { - "Name": "BuiltIn", - "Type": "Value", - "Values": - { - "Position": 0, - "PointSize": 1, - "ClipDistance": 3, - "CullDistance": 4, - "VertexId": 5, - "InstanceId": 6, - "PrimitiveId": 7, - "InvocationId": 8, - "Layer": 9, - "ViewportIndex": 10, - "TessLevelOuter": 11, - "TessLevelInner": 12, - "TessCoord": 13, - "PatchVertices": 14, - "FragCoord": 15, - "PointCoord": 16, - "FrontFacing": 17, - "SampleId": 18, - "SamplePosition": 19, - "SampleMask": 20, - "FragDepth": 22, - "HelperInvocation": 23, - "NumWorkgroups": 24, - "WorkgroupSize": 25, - "WorkgroupId": 26, - "LocalInvocationId": 27, - "GlobalInvocationId": 28, - "LocalInvocationIndex": 29, - "WorkDim": 30, - "GlobalSize": 31, - "EnqueuedWorkgroupSize": 32, - "GlobalOffset": 33, - "GlobalLinearId": 34, - "SubgroupSize": 36, - "SubgroupMaxSize": 37, - "NumSubgroups": 38, - "NumEnqueuedSubgroups": 39, - "SubgroupId": 40, - "SubgroupLocalInvocationId": 41, - "VertexIndex": 42, - "InstanceIndex": 43, - "CoreIDARM": 4160, - "CoreCountARM": 4161, - "CoreMaxIDARM": 4162, - "WarpIDARM": 4163, - "WarpMaxIDARM": 4164, - "SubgroupEqMask": 4416, - "SubgroupEqMaskKHR": 4416, - "SubgroupGeMask": 4417, - "SubgroupGeMaskKHR": 4417, - "SubgroupGtMask": 4418, - "SubgroupGtMaskKHR": 4418, - "SubgroupLeMask": 4419, - "SubgroupLeMaskKHR": 4419, - "SubgroupLtMask": 4420, - "SubgroupLtMaskKHR": 4420, - "BaseVertex": 4424, - "BaseInstance": 4425, - "DrawIndex": 4426, - "PrimitiveShadingRateKHR": 4432, - "DeviceIndex": 4438, - "ViewIndex": 4440, - "ShadingRateKHR": 4444, - "BaryCoordNoPerspAMD": 4992, - "BaryCoordNoPerspCentroidAMD": 4993, - "BaryCoordNoPerspSampleAMD": 4994, - "BaryCoordSmoothAMD": 4995, - "BaryCoordSmoothCentroidAMD": 4996, - "BaryCoordSmoothSampleAMD": 4997, - "BaryCoordPullModelAMD": 4998, - "FragStencilRefEXT": 5014, - "ViewportMaskNV": 5253, - "SecondaryPositionNV": 5257, - "SecondaryViewportMaskNV": 5258, - "PositionPerViewNV": 5261, - "ViewportMaskPerViewNV": 5262, - "FullyCoveredEXT": 5264, - "TaskCountNV": 5274, - "PrimitiveCountNV": 5275, - "PrimitiveIndicesNV": 5276, - "ClipDistancePerViewNV": 5277, - "CullDistancePerViewNV": 5278, - "LayerPerViewNV": 5279, - "MeshViewCountNV": 5280, - "MeshViewIndicesNV": 5281, - "BaryCoordKHR": 5286, - "BaryCoordNV": 5286, - "BaryCoordNoPerspKHR": 5287, - "BaryCoordNoPerspNV": 5287, - "FragSizeEXT": 5292, - "FragmentSizeNV": 5292, - "FragInvocationCountEXT": 5293, - "InvocationsPerPixelNV": 5293, - "PrimitivePointIndicesEXT": 5294, - "PrimitiveLineIndicesEXT": 5295, - "PrimitiveTriangleIndicesEXT": 5296, - "CullPrimitiveEXT": 5299, - "LaunchIdKHR": 5319, - "LaunchIdNV": 5319, - "LaunchSizeKHR": 5320, - "LaunchSizeNV": 5320, - "WorldRayOriginKHR": 5321, - "WorldRayOriginNV": 5321, - "WorldRayDirectionKHR": 5322, - "WorldRayDirectionNV": 5322, - "ObjectRayOriginKHR": 5323, - "ObjectRayOriginNV": 5323, - "ObjectRayDirectionKHR": 5324, - "ObjectRayDirectionNV": 5324, - "RayTminKHR": 5325, - "RayTminNV": 5325, - "RayTmaxKHR": 5326, - "RayTmaxNV": 5326, - "InstanceCustomIndexKHR": 5327, - "InstanceCustomIndexNV": 5327, - "ObjectToWorldKHR": 5330, - "ObjectToWorldNV": 5330, - "WorldToObjectKHR": 5331, - "WorldToObjectNV": 5331, - "HitTNV": 5332, - "HitKindKHR": 5333, - "HitKindNV": 5333, - "CurrentRayTimeNV": 5334, - "HitTriangleVertexPositionsKHR": 5335, - "IncomingRayFlagsKHR": 5351, - "IncomingRayFlagsNV": 5351, - "RayGeometryIndexKHR": 5352, - "WarpsPerSMNV": 5374, - "SMCountNV": 5375, - "WarpIDNV": 5376, - "SMIDNV": 5377, - "CullMaskKHR": 6021 - } - }, - { - "Name": "SelectionControl", - "Type": "Bit", - "Values": - { - "Flatten": 0, - "DontFlatten": 1 - } - }, - { - "Name": "LoopControl", - "Type": "Bit", - "Values": - { - "Unroll": 0, - "DontUnroll": 1, - "DependencyInfinite": 2, - "DependencyLength": 3, - "MinIterations": 4, - "MaxIterations": 5, - "IterationMultiple": 6, - "PeelCount": 7, - "PartialCount": 8, - "InitiationIntervalINTEL": 16, - "MaxConcurrencyINTEL": 17, - "DependencyArrayINTEL": 18, - "PipelineEnableINTEL": 19, - "LoopCoalesceINTEL": 20, - "MaxInterleavingINTEL": 21, - "SpeculatedIterationsINTEL": 22, - "NoFusionINTEL": 23, - "LoopCountINTEL": 24, - "MaxReinvocationDelayINTEL": 25 - } - }, - { - "Name": "FunctionControl", - "Type": "Bit", - "Values": - { - "Inline": 0, - "DontInline": 1, - "Pure": 2, - "Const": 3, - "OptNoneINTEL": 16 - } - }, - { - "Name": "MemorySemantics", - "Type": "Bit", - "Values": - { - "Acquire": 1, - "Release": 2, - "AcquireRelease": 3, - "SequentiallyConsistent": 4, - "UniformMemory": 6, - "SubgroupMemory": 7, - "WorkgroupMemory": 8, - "CrossWorkgroupMemory": 9, - "AtomicCounterMemory": 10, - "ImageMemory": 11, - "OutputMemory": 12, - "OutputMemoryKHR": 12, - "MakeAvailable": 13, - "MakeAvailableKHR": 13, - "MakeVisible": 14, - "MakeVisibleKHR": 14, - "Volatile": 15 - } - }, - { - "Name": "MemoryAccess", - "Type": "Bit", - "Values": - { - "Volatile": 0, - "Aligned": 1, - "Nontemporal": 2, - "MakePointerAvailable": 3, - "MakePointerAvailableKHR": 3, - "MakePointerVisible": 4, - "MakePointerVisibleKHR": 4, - "NonPrivatePointer": 5, - "NonPrivatePointerKHR": 5, - "AliasScopeINTELMask": 16, - "NoAliasINTELMask": 17 - } - }, - { - "Name": "Scope", - "Type": "Value", - "Values": - { - "CrossDevice": 0, - "Device": 1, - "Workgroup": 2, - "Subgroup": 3, - "Invocation": 4, - "QueueFamily": 5, - "QueueFamilyKHR": 5, - "ShaderCallKHR": 6 - } - }, - { - "Name": "GroupOperation", - "Type": "Value", - "Values": - { - "Reduce": 0, - "InclusiveScan": 1, - "ExclusiveScan": 2, - "ClusteredReduce": 3, - "PartitionedReduceNV": 6, - "PartitionedInclusiveScanNV": 7, - "PartitionedExclusiveScanNV": 8 - } - }, - { - "Name": "KernelEnqueueFlags", - "Type": "Value", - "Values": - { - "NoWait": 0, - "WaitKernel": 1, - "WaitWorkGroup": 2 - } - }, - { - "Name": "KernelProfilingInfo", - "Type": "Bit", - "Values": - { - "CmdExecTime": 0 - } - }, - { - "Name": "Capability", - "Type": "Value", - "Values": - { - "Matrix": 0, - "Shader": 1, - "Geometry": 2, - "Tessellation": 3, - "Addresses": 4, - "Linkage": 5, - "Kernel": 6, - "Vector16": 7, - "Float16Buffer": 8, - "Float16": 9, - "Float64": 10, - "Int64": 11, - "Int64Atomics": 12, - "ImageBasic": 13, - "ImageReadWrite": 14, - "ImageMipmap": 15, - "Pipes": 17, - "Groups": 18, - "DeviceEnqueue": 19, - "LiteralSampler": 20, - "AtomicStorage": 21, - "Int16": 22, - "TessellationPointSize": 23, - "GeometryPointSize": 24, - "ImageGatherExtended": 25, - "StorageImageMultisample": 27, - "UniformBufferArrayDynamicIndexing": 28, - "SampledImageArrayDynamicIndexing": 29, - "StorageBufferArrayDynamicIndexing": 30, - "StorageImageArrayDynamicIndexing": 31, - "ClipDistance": 32, - "CullDistance": 33, - "ImageCubeArray": 34, - "SampleRateShading": 35, - "ImageRect": 36, - "SampledRect": 37, - "GenericPointer": 38, - "Int8": 39, - "InputAttachment": 40, - "SparseResidency": 41, - "MinLod": 42, - "Sampled1D": 43, - "Image1D": 44, - "SampledCubeArray": 45, - "SampledBuffer": 46, - "ImageBuffer": 47, - "ImageMSArray": 48, - "StorageImageExtendedFormats": 49, - "ImageQuery": 50, - "DerivativeControl": 51, - "InterpolationFunction": 52, - "TransformFeedback": 53, - "GeometryStreams": 54, - "StorageImageReadWithoutFormat": 55, - "StorageImageWriteWithoutFormat": 56, - "MultiViewport": 57, - "SubgroupDispatch": 58, - "NamedBarrier": 59, - "PipeStorage": 60, - "GroupNonUniform": 61, - "GroupNonUniformVote": 62, - "GroupNonUniformArithmetic": 63, - "GroupNonUniformBallot": 64, - "GroupNonUniformShuffle": 65, - "GroupNonUniformShuffleRelative": 66, - "GroupNonUniformClustered": 67, - "GroupNonUniformQuad": 68, - "ShaderLayer": 69, - "ShaderViewportIndex": 70, - "UniformDecoration": 71, - "CoreBuiltinsARM": 4165, - "TileImageColorReadAccessEXT": 4166, - "TileImageDepthReadAccessEXT": 4167, - "TileImageStencilReadAccessEXT": 4168, - "FragmentShadingRateKHR": 4422, - "SubgroupBallotKHR": 4423, - "DrawParameters": 4427, - "WorkgroupMemoryExplicitLayoutKHR": 4428, - "WorkgroupMemoryExplicitLayout8BitAccessKHR": 4429, - "WorkgroupMemoryExplicitLayout16BitAccessKHR": 4430, - "SubgroupVoteKHR": 4431, - "StorageBuffer16BitAccess": 4433, - "StorageUniformBufferBlock16": 4433, - "StorageUniform16": 4434, - "UniformAndStorageBuffer16BitAccess": 4434, - "StoragePushConstant16": 4435, - "StorageInputOutput16": 4436, - "DeviceGroup": 4437, - "MultiView": 4439, - "VariablePointersStorageBuffer": 4441, - "VariablePointers": 4442, - "AtomicStorageOps": 4445, - "SampleMaskPostDepthCoverage": 4447, - "StorageBuffer8BitAccess": 4448, - "UniformAndStorageBuffer8BitAccess": 4449, - "StoragePushConstant8": 4450, - "DenormPreserve": 4464, - "DenormFlushToZero": 4465, - "SignedZeroInfNanPreserve": 4466, - "RoundingModeRTE": 4467, - "RoundingModeRTZ": 4468, - "RayQueryProvisionalKHR": 4471, - "RayQueryKHR": 4472, - "RayTraversalPrimitiveCullingKHR": 4478, - "RayTracingKHR": 4479, - "TextureSampleWeightedQCOM": 4484, - "TextureBoxFilterQCOM": 4485, - "TextureBlockMatchQCOM": 4486, - "Float16ImageAMD": 5008, - "ImageGatherBiasLodAMD": 5009, - "FragmentMaskAMD": 5010, - "StencilExportEXT": 5013, - "ImageReadWriteLodAMD": 5015, - "Int64ImageEXT": 5016, - "ShaderClockKHR": 5055, - "SampleMaskOverrideCoverageNV": 5249, - "GeometryShaderPassthroughNV": 5251, - "ShaderViewportIndexLayerEXT": 5254, - "ShaderViewportIndexLayerNV": 5254, - "ShaderViewportMaskNV": 5255, - "ShaderStereoViewNV": 5259, - "PerViewAttributesNV": 5260, - "FragmentFullyCoveredEXT": 5265, - "MeshShadingNV": 5266, - "ImageFootprintNV": 5282, - "MeshShadingEXT": 5283, - "FragmentBarycentricKHR": 5284, - "FragmentBarycentricNV": 5284, - "ComputeDerivativeGroupQuadsNV": 5288, - "FragmentDensityEXT": 5291, - "ShadingRateNV": 5291, - "GroupNonUniformPartitionedNV": 5297, - "ShaderNonUniform": 5301, - "ShaderNonUniformEXT": 5301, - "RuntimeDescriptorArray": 5302, - "RuntimeDescriptorArrayEXT": 5302, - "InputAttachmentArrayDynamicIndexing": 5303, - "InputAttachmentArrayDynamicIndexingEXT": 5303, - "UniformTexelBufferArrayDynamicIndexing": 5304, - "UniformTexelBufferArrayDynamicIndexingEXT": 5304, - "StorageTexelBufferArrayDynamicIndexing": 5305, - "StorageTexelBufferArrayDynamicIndexingEXT": 5305, - "UniformBufferArrayNonUniformIndexing": 5306, - "UniformBufferArrayNonUniformIndexingEXT": 5306, - "SampledImageArrayNonUniformIndexing": 5307, - "SampledImageArrayNonUniformIndexingEXT": 5307, - "StorageBufferArrayNonUniformIndexing": 5308, - "StorageBufferArrayNonUniformIndexingEXT": 5308, - "StorageImageArrayNonUniformIndexing": 5309, - "StorageImageArrayNonUniformIndexingEXT": 5309, - "InputAttachmentArrayNonUniformIndexing": 5310, - "InputAttachmentArrayNonUniformIndexingEXT": 5310, - "UniformTexelBufferArrayNonUniformIndexing": 5311, - "UniformTexelBufferArrayNonUniformIndexingEXT": 5311, - "StorageTexelBufferArrayNonUniformIndexing": 5312, - "StorageTexelBufferArrayNonUniformIndexingEXT": 5312, - "RayTracingPositionFetchKHR": 5336, - "RayTracingNV": 5340, - "RayTracingMotionBlurNV": 5341, - "VulkanMemoryModel": 5345, - "VulkanMemoryModelKHR": 5345, - "VulkanMemoryModelDeviceScope": 5346, - "VulkanMemoryModelDeviceScopeKHR": 5346, - "PhysicalStorageBufferAddresses": 5347, - "PhysicalStorageBufferAddressesEXT": 5347, - "ComputeDerivativeGroupLinearNV": 5350, - "RayTracingProvisionalKHR": 5353, - "CooperativeMatrixNV": 5357, - "FragmentShaderSampleInterlockEXT": 5363, - "FragmentShaderShadingRateInterlockEXT": 5372, - "ShaderSMBuiltinsNV": 5373, - "FragmentShaderPixelInterlockEXT": 5378, - "DemoteToHelperInvocation": 5379, - "DemoteToHelperInvocationEXT": 5379, - "RayTracingOpacityMicromapEXT": 5381, - "ShaderInvocationReorderNV": 5383, - "BindlessTextureNV": 5390, - "RayQueryPositionFetchKHR": 5391, - "SubgroupShuffleINTEL": 5568, - "SubgroupBufferBlockIOINTEL": 5569, - "SubgroupImageBlockIOINTEL": 5570, - "SubgroupImageMediaBlockIOINTEL": 5579, - "RoundToInfinityINTEL": 5582, - "FloatingPointModeINTEL": 5583, - "IntegerFunctions2INTEL": 5584, - "FunctionPointersINTEL": 5603, - "IndirectReferencesINTEL": 5604, - "AsmINTEL": 5606, - "AtomicFloat32MinMaxEXT": 5612, - "AtomicFloat64MinMaxEXT": 5613, - "AtomicFloat16MinMaxEXT": 5616, - "VectorComputeINTEL": 5617, - "VectorAnyINTEL": 5619, - "ExpectAssumeKHR": 5629, - "SubgroupAvcMotionEstimationINTEL": 5696, - "SubgroupAvcMotionEstimationIntraINTEL": 5697, - "SubgroupAvcMotionEstimationChromaINTEL": 5698, - "VariableLengthArrayINTEL": 5817, - "FunctionFloatControlINTEL": 5821, - "FPGAMemoryAttributesINTEL": 5824, - "FPFastMathModeINTEL": 5837, - "ArbitraryPrecisionIntegersINTEL": 5844, - "ArbitraryPrecisionFloatingPointINTEL": 5845, - "UnstructuredLoopControlsINTEL": 5886, - "FPGALoopControlsINTEL": 5888, - "KernelAttributesINTEL": 5892, - "FPGAKernelAttributesINTEL": 5897, - "FPGAMemoryAccessesINTEL": 5898, - "FPGAClusterAttributesINTEL": 5904, - "LoopFuseINTEL": 5906, - "FPGADSPControlINTEL": 5908, - "MemoryAccessAliasingINTEL": 5910, - "FPGAInvocationPipeliningAttributesINTEL": 5916, - "FPGABufferLocationINTEL": 5920, - "ArbitraryPrecisionFixedPointINTEL": 5922, - "USMStorageClassesINTEL": 5935, - "RuntimeAlignedAttributeINTEL": 5939, - "IOPipesINTEL": 5943, - "BlockingPipesINTEL": 5945, - "FPGARegINTEL": 5948, - "DotProductInputAll": 6016, - "DotProductInputAllKHR": 6016, - "DotProductInput4x8Bit": 6017, - "DotProductInput4x8BitKHR": 6017, - "DotProductInput4x8BitPacked": 6018, - "DotProductInput4x8BitPackedKHR": 6018, - "DotProduct": 6019, - "DotProductKHR": 6019, - "RayCullMaskKHR": 6020, - "CooperativeMatrixKHR": 6022, - "BitInstructions": 6025, - "GroupNonUniformRotateKHR": 6026, - "AtomicFloat32AddEXT": 6033, - "AtomicFloat64AddEXT": 6034, - "LongConstantCompositeINTEL": 6089, - "OptNoneINTEL": 6094, - "AtomicFloat16AddEXT": 6095, - "DebugInfoModuleINTEL": 6114, - "BFloat16ConversionINTEL": 6115, - "SplitBarrierINTEL": 6141, - "FPGAKernelAttributesv2INTEL": 6161, - "FPMaxErrorINTEL": 6169, - "FPGALatencyControlINTEL": 6171, - "FPGAArgumentInterfacesINTEL": 6174, - "GroupUniformArithmeticKHR": 6400 - } - }, - { - "Name": "RayFlags", - "Type": "Bit", - "Values": - { - "OpaqueKHR": 0, - "NoOpaqueKHR": 1, - "TerminateOnFirstHitKHR": 2, - "SkipClosestHitShaderKHR": 3, - "CullBackFacingTrianglesKHR": 4, - "CullFrontFacingTrianglesKHR": 5, - "CullOpaqueKHR": 6, - "CullNoOpaqueKHR": 7, - "SkipTrianglesKHR": 8, - "SkipAABBsKHR": 9, - "ForceOpacityMicromap2StateEXT": 10 - } - }, - { - "Name": "RayQueryIntersection", - "Type": "Value", - "Values": - { - "RayQueryCandidateIntersectionKHR": 0, - "RayQueryCommittedIntersectionKHR": 1 - } - }, - { - "Name": "RayQueryCommittedIntersectionType", - "Type": "Value", - "Values": - { - "RayQueryCommittedIntersectionNoneKHR": 0, - "RayQueryCommittedIntersectionTriangleKHR": 1, - "RayQueryCommittedIntersectionGeneratedKHR": 2 - } - }, - { - "Name": "RayQueryCandidateIntersectionType", - "Type": "Value", - "Values": - { - "RayQueryCandidateIntersectionTriangleKHR": 0, - "RayQueryCandidateIntersectionAABBKHR": 1 - } - }, - { - "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": - { - "PackedVectorFormat4x8Bit": 0, - "PackedVectorFormat4x8BitKHR": 0 - } - }, - { - "Name": "CooperativeMatrixOperands", - "Type": "Bit", - "Values": - { - "MatrixASignedComponentsKHR": 0, - "MatrixBSignedComponentsKHR": 1, - "MatrixCSignedComponentsKHR": 2, - "MatrixResultSignedComponentsKHR": 3, - "SaturatingAccumulationKHR": 4 - } - }, - { - "Name": "CooperativeMatrixLayout", - "Type": "Value", - "Values": - { - "RowMajorKHR": 0, - "ColumnMajorKHR": 1 - } - }, - { - "Name": "CooperativeMatrixUse", - "Type": "Value", - "Values": - { - "MatrixAKHR": 0, - "MatrixBKHR": 1, - "MatrixAccumulatorKHR": 2 - } - }, - { - "Name": "Op", - "Type": "Value", - "Values": - { - "OpNop": 0, - "OpUndef": 1, - "OpSourceContinued": 2, - "OpSource": 3, - "OpSourceExtension": 4, - "OpName": 5, - "OpMemberName": 6, - "OpString": 7, - "OpLine": 8, - "OpExtension": 10, - "OpExtInstImport": 11, - "OpExtInst": 12, - "OpMemoryModel": 14, - "OpEntryPoint": 15, - "OpExecutionMode": 16, - "OpCapability": 17, - "OpTypeVoid": 19, - "OpTypeBool": 20, - "OpTypeInt": 21, - "OpTypeFloat": 22, - "OpTypeVector": 23, - "OpTypeMatrix": 24, - "OpTypeImage": 25, - "OpTypeSampler": 26, - "OpTypeSampledImage": 27, - "OpTypeArray": 28, - "OpTypeRuntimeArray": 29, - "OpTypeStruct": 30, - "OpTypeOpaque": 31, - "OpTypePointer": 32, - "OpTypeFunction": 33, - "OpTypeEvent": 34, - "OpTypeDeviceEvent": 35, - "OpTypeReserveId": 36, - "OpTypeQueue": 37, - "OpTypePipe": 38, - "OpTypeForwardPointer": 39, - "OpConstantTrue": 41, - "OpConstantFalse": 42, - "OpConstant": 43, - "OpConstantComposite": 44, - "OpConstantSampler": 45, - "OpConstantNull": 46, - "OpSpecConstantTrue": 48, - "OpSpecConstantFalse": 49, - "OpSpecConstant": 50, - "OpSpecConstantComposite": 51, - "OpSpecConstantOp": 52, - "OpFunction": 54, - "OpFunctionParameter": 55, - "OpFunctionEnd": 56, - "OpFunctionCall": 57, - "OpVariable": 59, - "OpImageTexelPointer": 60, - "OpLoad": 61, - "OpStore": 62, - "OpCopyMemory": 63, - "OpCopyMemorySized": 64, - "OpAccessChain": 65, - "OpInBoundsAccessChain": 66, - "OpPtrAccessChain": 67, - "OpArrayLength": 68, - "OpGenericPtrMemSemantics": 69, - "OpInBoundsPtrAccessChain": 70, - "OpDecorate": 71, - "OpMemberDecorate": 72, - "OpDecorationGroup": 73, - "OpGroupDecorate": 74, - "OpGroupMemberDecorate": 75, - "OpVectorExtractDynamic": 77, - "OpVectorInsertDynamic": 78, - "OpVectorShuffle": 79, - "OpCompositeConstruct": 80, - "OpCompositeExtract": 81, - "OpCompositeInsert": 82, - "OpCopyObject": 83, - "OpTranspose": 84, - "OpSampledImage": 86, - "OpImageSampleImplicitLod": 87, - "OpImageSampleExplicitLod": 88, - "OpImageSampleDrefImplicitLod": 89, - "OpImageSampleDrefExplicitLod": 90, - "OpImageSampleProjImplicitLod": 91, - "OpImageSampleProjExplicitLod": 92, - "OpImageSampleProjDrefImplicitLod": 93, - "OpImageSampleProjDrefExplicitLod": 94, - "OpImageFetch": 95, - "OpImageGather": 96, - "OpImageDrefGather": 97, - "OpImageRead": 98, - "OpImageWrite": 99, - "OpImage": 100, - "OpImageQueryFormat": 101, - "OpImageQueryOrder": 102, - "OpImageQuerySizeLod": 103, - "OpImageQuerySize": 104, - "OpImageQueryLod": 105, - "OpImageQueryLevels": 106, - "OpImageQuerySamples": 107, - "OpConvertFToU": 109, - "OpConvertFToS": 110, - "OpConvertSToF": 111, - "OpConvertUToF": 112, - "OpUConvert": 113, - "OpSConvert": 114, - "OpFConvert": 115, - "OpQuantizeToF16": 116, - "OpConvertPtrToU": 117, - "OpSatConvertSToU": 118, - "OpSatConvertUToS": 119, - "OpConvertUToPtr": 120, - "OpPtrCastToGeneric": 121, - "OpGenericCastToPtr": 122, - "OpGenericCastToPtrExplicit": 123, - "OpBitcast": 124, - "OpSNegate": 126, - "OpFNegate": 127, - "OpIAdd": 128, - "OpFAdd": 129, - "OpISub": 130, - "OpFSub": 131, - "OpIMul": 132, - "OpFMul": 133, - "OpUDiv": 134, - "OpSDiv": 135, - "OpFDiv": 136, - "OpUMod": 137, - "OpSRem": 138, - "OpSMod": 139, - "OpFRem": 140, - "OpFMod": 141, - "OpVectorTimesScalar": 142, - "OpMatrixTimesScalar": 143, - "OpVectorTimesMatrix": 144, - "OpMatrixTimesVector": 145, - "OpMatrixTimesMatrix": 146, - "OpOuterProduct": 147, - "OpDot": 148, - "OpIAddCarry": 149, - "OpISubBorrow": 150, - "OpUMulExtended": 151, - "OpSMulExtended": 152, - "OpAny": 154, - "OpAll": 155, - "OpIsNan": 156, - "OpIsInf": 157, - "OpIsFinite": 158, - "OpIsNormal": 159, - "OpSignBitSet": 160, - "OpLessOrGreater": 161, - "OpOrdered": 162, - "OpUnordered": 163, - "OpLogicalEqual": 164, - "OpLogicalNotEqual": 165, - "OpLogicalOr": 166, - "OpLogicalAnd": 167, - "OpLogicalNot": 168, - "OpSelect": 169, - "OpIEqual": 170, - "OpINotEqual": 171, - "OpUGreaterThan": 172, - "OpSGreaterThan": 173, - "OpUGreaterThanEqual": 174, - "OpSGreaterThanEqual": 175, - "OpULessThan": 176, - "OpSLessThan": 177, - "OpULessThanEqual": 178, - "OpSLessThanEqual": 179, - "OpFOrdEqual": 180, - "OpFUnordEqual": 181, - "OpFOrdNotEqual": 182, - "OpFUnordNotEqual": 183, - "OpFOrdLessThan": 184, - "OpFUnordLessThan": 185, - "OpFOrdGreaterThan": 186, - "OpFUnordGreaterThan": 187, - "OpFOrdLessThanEqual": 188, - "OpFUnordLessThanEqual": 189, - "OpFOrdGreaterThanEqual": 190, - "OpFUnordGreaterThanEqual": 191, - "OpShiftRightLogical": 194, - "OpShiftRightArithmetic": 195, - "OpShiftLeftLogical": 196, - "OpBitwiseOr": 197, - "OpBitwiseXor": 198, - "OpBitwiseAnd": 199, - "OpNot": 200, - "OpBitFieldInsert": 201, - "OpBitFieldSExtract": 202, - "OpBitFieldUExtract": 203, - "OpBitReverse": 204, - "OpBitCount": 205, - "OpDPdx": 207, - "OpDPdy": 208, - "OpFwidth": 209, - "OpDPdxFine": 210, - "OpDPdyFine": 211, - "OpFwidthFine": 212, - "OpDPdxCoarse": 213, - "OpDPdyCoarse": 214, - "OpFwidthCoarse": 215, - "OpEmitVertex": 218, - "OpEndPrimitive": 219, - "OpEmitStreamVertex": 220, - "OpEndStreamPrimitive": 221, - "OpControlBarrier": 224, - "OpMemoryBarrier": 225, - "OpAtomicLoad": 227, - "OpAtomicStore": 228, - "OpAtomicExchange": 229, - "OpAtomicCompareExchange": 230, - "OpAtomicCompareExchangeWeak": 231, - "OpAtomicIIncrement": 232, - "OpAtomicIDecrement": 233, - "OpAtomicIAdd": 234, - "OpAtomicISub": 235, - "OpAtomicSMin": 236, - "OpAtomicUMin": 237, - "OpAtomicSMax": 238, - "OpAtomicUMax": 239, - "OpAtomicAnd": 240, - "OpAtomicOr": 241, - "OpAtomicXor": 242, - "OpPhi": 245, - "OpLoopMerge": 246, - "OpSelectionMerge": 247, - "OpLabel": 248, - "OpBranch": 249, - "OpBranchConditional": 250, - "OpSwitch": 251, - "OpKill": 252, - "OpReturn": 253, - "OpReturnValue": 254, - "OpUnreachable": 255, - "OpLifetimeStart": 256, - "OpLifetimeStop": 257, - "OpGroupAsyncCopy": 259, - "OpGroupWaitEvents": 260, - "OpGroupAll": 261, - "OpGroupAny": 262, - "OpGroupBroadcast": 263, - "OpGroupIAdd": 264, - "OpGroupFAdd": 265, - "OpGroupFMin": 266, - "OpGroupUMin": 267, - "OpGroupSMin": 268, - "OpGroupFMax": 269, - "OpGroupUMax": 270, - "OpGroupSMax": 271, - "OpReadPipe": 274, - "OpWritePipe": 275, - "OpReservedReadPipe": 276, - "OpReservedWritePipe": 277, - "OpReserveReadPipePackets": 278, - "OpReserveWritePipePackets": 279, - "OpCommitReadPipe": 280, - "OpCommitWritePipe": 281, - "OpIsValidReserveId": 282, - "OpGetNumPipePackets": 283, - "OpGetMaxPipePackets": 284, - "OpGroupReserveReadPipePackets": 285, - "OpGroupReserveWritePipePackets": 286, - "OpGroupCommitReadPipe": 287, - "OpGroupCommitWritePipe": 288, - "OpEnqueueMarker": 291, - "OpEnqueueKernel": 292, - "OpGetKernelNDrangeSubGroupCount": 293, - "OpGetKernelNDrangeMaxSubGroupSize": 294, - "OpGetKernelWorkGroupSize": 295, - "OpGetKernelPreferredWorkGroupSizeMultiple": 296, - "OpRetainEvent": 297, - "OpReleaseEvent": 298, - "OpCreateUserEvent": 299, - "OpIsValidEvent": 300, - "OpSetUserEventStatus": 301, - "OpCaptureEventProfilingInfo": 302, - "OpGetDefaultQueue": 303, - "OpBuildNDRange": 304, - "OpImageSparseSampleImplicitLod": 305, - "OpImageSparseSampleExplicitLod": 306, - "OpImageSparseSampleDrefImplicitLod": 307, - "OpImageSparseSampleDrefExplicitLod": 308, - "OpImageSparseSampleProjImplicitLod": 309, - "OpImageSparseSampleProjExplicitLod": 310, - "OpImageSparseSampleProjDrefImplicitLod": 311, - "OpImageSparseSampleProjDrefExplicitLod": 312, - "OpImageSparseFetch": 313, - "OpImageSparseGather": 314, - "OpImageSparseDrefGather": 315, - "OpImageSparseTexelsResident": 316, - "OpNoLine": 317, - "OpAtomicFlagTestAndSet": 318, - "OpAtomicFlagClear": 319, - "OpImageSparseRead": 320, - "OpSizeOf": 321, - "OpTypePipeStorage": 322, - "OpConstantPipeStorage": 323, - "OpCreatePipeFromPipeStorage": 324, - "OpGetKernelLocalSizeForSubgroupCount": 325, - "OpGetKernelMaxNumSubgroups": 326, - "OpTypeNamedBarrier": 327, - "OpNamedBarrierInitialize": 328, - "OpMemoryNamedBarrier": 329, - "OpModuleProcessed": 330, - "OpExecutionModeId": 331, - "OpDecorateId": 332, - "OpGroupNonUniformElect": 333, - "OpGroupNonUniformAll": 334, - "OpGroupNonUniformAny": 335, - "OpGroupNonUniformAllEqual": 336, - "OpGroupNonUniformBroadcast": 337, - "OpGroupNonUniformBroadcastFirst": 338, - "OpGroupNonUniformBallot": 339, - "OpGroupNonUniformInverseBallot": 340, - "OpGroupNonUniformBallotBitExtract": 341, - "OpGroupNonUniformBallotBitCount": 342, - "OpGroupNonUniformBallotFindLSB": 343, - "OpGroupNonUniformBallotFindMSB": 344, - "OpGroupNonUniformShuffle": 345, - "OpGroupNonUniformShuffleXor": 346, - "OpGroupNonUniformShuffleUp": 347, - "OpGroupNonUniformShuffleDown": 348, - "OpGroupNonUniformIAdd": 349, - "OpGroupNonUniformFAdd": 350, - "OpGroupNonUniformIMul": 351, - "OpGroupNonUniformFMul": 352, - "OpGroupNonUniformSMin": 353, - "OpGroupNonUniformUMin": 354, - "OpGroupNonUniformFMin": 355, - "OpGroupNonUniformSMax": 356, - "OpGroupNonUniformUMax": 357, - "OpGroupNonUniformFMax": 358, - "OpGroupNonUniformBitwiseAnd": 359, - "OpGroupNonUniformBitwiseOr": 360, - "OpGroupNonUniformBitwiseXor": 361, - "OpGroupNonUniformLogicalAnd": 362, - "OpGroupNonUniformLogicalOr": 363, - "OpGroupNonUniformLogicalXor": 364, - "OpGroupNonUniformQuadBroadcast": 365, - "OpGroupNonUniformQuadSwap": 366, - "OpCopyLogical": 400, - "OpPtrEqual": 401, - "OpPtrNotEqual": 402, - "OpPtrDiff": 403, - "OpColorAttachmentReadEXT": 4160, - "OpDepthAttachmentReadEXT": 4161, - "OpStencilAttachmentReadEXT": 4162, - "OpTerminateInvocation": 4416, - "OpSubgroupBallotKHR": 4421, - "OpSubgroupFirstInvocationKHR": 4422, - "OpSubgroupAllKHR": 4428, - "OpSubgroupAnyKHR": 4429, - "OpSubgroupAllEqualKHR": 4430, - "OpGroupNonUniformRotateKHR": 4431, - "OpSubgroupReadInvocationKHR": 4432, - "OpTraceRayKHR": 4445, - "OpExecuteCallableKHR": 4446, - "OpConvertUToAccelerationStructureKHR": 4447, - "OpIgnoreIntersectionKHR": 4448, - "OpTerminateRayKHR": 4449, - "OpSDot": 4450, - "OpSDotKHR": 4450, - "OpUDot": 4451, - "OpUDotKHR": 4451, - "OpSUDot": 4452, - "OpSUDotKHR": 4452, - "OpSDotAccSat": 4453, - "OpSDotAccSatKHR": 4453, - "OpUDotAccSat": 4454, - "OpUDotAccSatKHR": 4454, - "OpSUDotAccSat": 4455, - "OpSUDotAccSatKHR": 4455, - "OpTypeCooperativeMatrixKHR": 4456, - "OpCooperativeMatrixLoadKHR": 4457, - "OpCooperativeMatrixStoreKHR": 4458, - "OpCooperativeMatrixMulAddKHR": 4459, - "OpCooperativeMatrixLengthKHR": 4460, - "OpTypeRayQueryKHR": 4472, - "OpRayQueryInitializeKHR": 4473, - "OpRayQueryTerminateKHR": 4474, - "OpRayQueryGenerateIntersectionKHR": 4475, - "OpRayQueryConfirmIntersectionKHR": 4476, - "OpRayQueryProceedKHR": 4477, - "OpRayQueryGetIntersectionTypeKHR": 4479, - "OpImageSampleWeightedQCOM": 4480, - "OpImageBoxFilterQCOM": 4481, - "OpImageBlockMatchSSDQCOM": 4482, - "OpImageBlockMatchSADQCOM": 4483, - "OpGroupIAddNonUniformAMD": 5000, - "OpGroupFAddNonUniformAMD": 5001, - "OpGroupFMinNonUniformAMD": 5002, - "OpGroupUMinNonUniformAMD": 5003, - "OpGroupSMinNonUniformAMD": 5004, - "OpGroupFMaxNonUniformAMD": 5005, - "OpGroupUMaxNonUniformAMD": 5006, - "OpGroupSMaxNonUniformAMD": 5007, - "OpFragmentMaskFetchAMD": 5011, - "OpFragmentFetchAMD": 5012, - "OpReadClockKHR": 5056, - "OpHitObjectRecordHitMotionNV": 5249, - "OpHitObjectRecordHitWithIndexMotionNV": 5250, - "OpHitObjectRecordMissMotionNV": 5251, - "OpHitObjectGetWorldToObjectNV": 5252, - "OpHitObjectGetObjectToWorldNV": 5253, - "OpHitObjectGetObjectRayDirectionNV": 5254, - "OpHitObjectGetObjectRayOriginNV": 5255, - "OpHitObjectTraceRayMotionNV": 5256, - "OpHitObjectGetShaderRecordBufferHandleNV": 5257, - "OpHitObjectGetShaderBindingTableRecordIndexNV": 5258, - "OpHitObjectRecordEmptyNV": 5259, - "OpHitObjectTraceRayNV": 5260, - "OpHitObjectRecordHitNV": 5261, - "OpHitObjectRecordHitWithIndexNV": 5262, - "OpHitObjectRecordMissNV": 5263, - "OpHitObjectExecuteShaderNV": 5264, - "OpHitObjectGetCurrentTimeNV": 5265, - "OpHitObjectGetAttributesNV": 5266, - "OpHitObjectGetHitKindNV": 5267, - "OpHitObjectGetPrimitiveIndexNV": 5268, - "OpHitObjectGetGeometryIndexNV": 5269, - "OpHitObjectGetInstanceIdNV": 5270, - "OpHitObjectGetInstanceCustomIndexNV": 5271, - "OpHitObjectGetWorldRayDirectionNV": 5272, - "OpHitObjectGetWorldRayOriginNV": 5273, - "OpHitObjectGetRayTMaxNV": 5274, - "OpHitObjectGetRayTMinNV": 5275, - "OpHitObjectIsEmptyNV": 5276, - "OpHitObjectIsHitNV": 5277, - "OpHitObjectIsMissNV": 5278, - "OpReorderThreadWithHitObjectNV": 5279, - "OpReorderThreadWithHintNV": 5280, - "OpTypeHitObjectNV": 5281, - "OpImageSampleFootprintNV": 5283, - "OpEmitMeshTasksEXT": 5294, - "OpSetMeshOutputsEXT": 5295, - "OpGroupNonUniformPartitionNV": 5296, - "OpWritePackedPrimitiveIndices4x8NV": 5299, - "OpReportIntersectionKHR": 5334, - "OpReportIntersectionNV": 5334, - "OpIgnoreIntersectionNV": 5335, - "OpTerminateRayNV": 5336, - "OpTraceNV": 5337, - "OpTraceMotionNV": 5338, - "OpTraceRayMotionNV": 5339, - "OpRayQueryGetIntersectionTriangleVertexPositionsKHR": 5340, - "OpTypeAccelerationStructureKHR": 5341, - "OpTypeAccelerationStructureNV": 5341, - "OpExecuteCallableNV": 5344, - "OpTypeCooperativeMatrixNV": 5358, - "OpCooperativeMatrixLoadNV": 5359, - "OpCooperativeMatrixStoreNV": 5360, - "OpCooperativeMatrixMulAddNV": 5361, - "OpCooperativeMatrixLengthNV": 5362, - "OpBeginInvocationInterlockEXT": 5364, - "OpEndInvocationInterlockEXT": 5365, - "OpDemoteToHelperInvocation": 5380, - "OpDemoteToHelperInvocationEXT": 5380, - "OpIsHelperInvocationEXT": 5381, - "OpConvertUToImageNV": 5391, - "OpConvertUToSamplerNV": 5392, - "OpConvertImageToUNV": 5393, - "OpConvertSamplerToUNV": 5394, - "OpConvertUToSampledImageNV": 5395, - "OpConvertSampledImageToUNV": 5396, - "OpSamplerImageAddressingModeNV": 5397, - "OpSubgroupShuffleINTEL": 5571, - "OpSubgroupShuffleDownINTEL": 5572, - "OpSubgroupShuffleUpINTEL": 5573, - "OpSubgroupShuffleXorINTEL": 5574, - "OpSubgroupBlockReadINTEL": 5575, - "OpSubgroupBlockWriteINTEL": 5576, - "OpSubgroupImageBlockReadINTEL": 5577, - "OpSubgroupImageBlockWriteINTEL": 5578, - "OpSubgroupImageMediaBlockReadINTEL": 5580, - "OpSubgroupImageMediaBlockWriteINTEL": 5581, - "OpUCountLeadingZerosINTEL": 5585, - "OpUCountTrailingZerosINTEL": 5586, - "OpAbsISubINTEL": 5587, - "OpAbsUSubINTEL": 5588, - "OpIAddSatINTEL": 5589, - "OpUAddSatINTEL": 5590, - "OpIAverageINTEL": 5591, - "OpUAverageINTEL": 5592, - "OpIAverageRoundedINTEL": 5593, - "OpUAverageRoundedINTEL": 5594, - "OpISubSatINTEL": 5595, - "OpUSubSatINTEL": 5596, - "OpIMul32x16INTEL": 5597, - "OpUMul32x16INTEL": 5598, - "OpConstantFunctionPointerINTEL": 5600, - "OpFunctionPointerCallINTEL": 5601, - "OpAsmTargetINTEL": 5609, - "OpAsmINTEL": 5610, - "OpAsmCallINTEL": 5611, - "OpAtomicFMinEXT": 5614, - "OpAtomicFMaxEXT": 5615, - "OpAssumeTrueKHR": 5630, - "OpExpectKHR": 5631, - "OpDecorateString": 5632, - "OpDecorateStringGOOGLE": 5632, - "OpMemberDecorateString": 5633, - "OpMemberDecorateStringGOOGLE": 5633, - "OpVmeImageINTEL": 5699, - "OpTypeVmeImageINTEL": 5700, - "OpTypeAvcImePayloadINTEL": 5701, - "OpTypeAvcRefPayloadINTEL": 5702, - "OpTypeAvcSicPayloadINTEL": 5703, - "OpTypeAvcMcePayloadINTEL": 5704, - "OpTypeAvcMceResultINTEL": 5705, - "OpTypeAvcImeResultINTEL": 5706, - "OpTypeAvcImeResultSingleReferenceStreamoutINTEL": 5707, - "OpTypeAvcImeResultDualReferenceStreamoutINTEL": 5708, - "OpTypeAvcImeSingleReferenceStreaminINTEL": 5709, - "OpTypeAvcImeDualReferenceStreaminINTEL": 5710, - "OpTypeAvcRefResultINTEL": 5711, - "OpTypeAvcSicResultINTEL": 5712, - "OpSubgroupAvcMceGetDefaultInterBaseMultiReferencePenaltyINTEL": 5713, - "OpSubgroupAvcMceSetInterBaseMultiReferencePenaltyINTEL": 5714, - "OpSubgroupAvcMceGetDefaultInterShapePenaltyINTEL": 5715, - "OpSubgroupAvcMceSetInterShapePenaltyINTEL": 5716, - "OpSubgroupAvcMceGetDefaultInterDirectionPenaltyINTEL": 5717, - "OpSubgroupAvcMceSetInterDirectionPenaltyINTEL": 5718, - "OpSubgroupAvcMceGetDefaultIntraLumaShapePenaltyINTEL": 5719, - "OpSubgroupAvcMceGetDefaultInterMotionVectorCostTableINTEL": 5720, - "OpSubgroupAvcMceGetDefaultHighPenaltyCostTableINTEL": 5721, - "OpSubgroupAvcMceGetDefaultMediumPenaltyCostTableINTEL": 5722, - "OpSubgroupAvcMceGetDefaultLowPenaltyCostTableINTEL": 5723, - "OpSubgroupAvcMceSetMotionVectorCostFunctionINTEL": 5724, - "OpSubgroupAvcMceGetDefaultIntraLumaModePenaltyINTEL": 5725, - "OpSubgroupAvcMceGetDefaultNonDcLumaIntraPenaltyINTEL": 5726, - "OpSubgroupAvcMceGetDefaultIntraChromaModeBasePenaltyINTEL": 5727, - "OpSubgroupAvcMceSetAcOnlyHaarINTEL": 5728, - "OpSubgroupAvcMceSetSourceInterlacedFieldPolarityINTEL": 5729, - "OpSubgroupAvcMceSetSingleReferenceInterlacedFieldPolarityINTEL": 5730, - "OpSubgroupAvcMceSetDualReferenceInterlacedFieldPolaritiesINTEL": 5731, - "OpSubgroupAvcMceConvertToImePayloadINTEL": 5732, - "OpSubgroupAvcMceConvertToImeResultINTEL": 5733, - "OpSubgroupAvcMceConvertToRefPayloadINTEL": 5734, - "OpSubgroupAvcMceConvertToRefResultINTEL": 5735, - "OpSubgroupAvcMceConvertToSicPayloadINTEL": 5736, - "OpSubgroupAvcMceConvertToSicResultINTEL": 5737, - "OpSubgroupAvcMceGetMotionVectorsINTEL": 5738, - "OpSubgroupAvcMceGetInterDistortionsINTEL": 5739, - "OpSubgroupAvcMceGetBestInterDistortionsINTEL": 5740, - "OpSubgroupAvcMceGetInterMajorShapeINTEL": 5741, - "OpSubgroupAvcMceGetInterMinorShapeINTEL": 5742, - "OpSubgroupAvcMceGetInterDirectionsINTEL": 5743, - "OpSubgroupAvcMceGetInterMotionVectorCountINTEL": 5744, - "OpSubgroupAvcMceGetInterReferenceIdsINTEL": 5745, - "OpSubgroupAvcMceGetInterReferenceInterlacedFieldPolaritiesINTEL": 5746, - "OpSubgroupAvcImeInitializeINTEL": 5747, - "OpSubgroupAvcImeSetSingleReferenceINTEL": 5748, - "OpSubgroupAvcImeSetDualReferenceINTEL": 5749, - "OpSubgroupAvcImeRefWindowSizeINTEL": 5750, - "OpSubgroupAvcImeAdjustRefOffsetINTEL": 5751, - "OpSubgroupAvcImeConvertToMcePayloadINTEL": 5752, - "OpSubgroupAvcImeSetMaxMotionVectorCountINTEL": 5753, - "OpSubgroupAvcImeSetUnidirectionalMixDisableINTEL": 5754, - "OpSubgroupAvcImeSetEarlySearchTerminationThresholdINTEL": 5755, - "OpSubgroupAvcImeSetWeightedSadINTEL": 5756, - "OpSubgroupAvcImeEvaluateWithSingleReferenceINTEL": 5757, - "OpSubgroupAvcImeEvaluateWithDualReferenceINTEL": 5758, - "OpSubgroupAvcImeEvaluateWithSingleReferenceStreaminINTEL": 5759, - "OpSubgroupAvcImeEvaluateWithDualReferenceStreaminINTEL": 5760, - "OpSubgroupAvcImeEvaluateWithSingleReferenceStreamoutINTEL": 5761, - "OpSubgroupAvcImeEvaluateWithDualReferenceStreamoutINTEL": 5762, - "OpSubgroupAvcImeEvaluateWithSingleReferenceStreaminoutINTEL": 5763, - "OpSubgroupAvcImeEvaluateWithDualReferenceStreaminoutINTEL": 5764, - "OpSubgroupAvcImeConvertToMceResultINTEL": 5765, - "OpSubgroupAvcImeGetSingleReferenceStreaminINTEL": 5766, - "OpSubgroupAvcImeGetDualReferenceStreaminINTEL": 5767, - "OpSubgroupAvcImeStripSingleReferenceStreamoutINTEL": 5768, - "OpSubgroupAvcImeStripDualReferenceStreamoutINTEL": 5769, - "OpSubgroupAvcImeGetStreamoutSingleReferenceMajorShapeMotionVectorsINTEL": 5770, - "OpSubgroupAvcImeGetStreamoutSingleReferenceMajorShapeDistortionsINTEL": 5771, - "OpSubgroupAvcImeGetStreamoutSingleReferenceMajorShapeReferenceIdsINTEL": 5772, - "OpSubgroupAvcImeGetStreamoutDualReferenceMajorShapeMotionVectorsINTEL": 5773, - "OpSubgroupAvcImeGetStreamoutDualReferenceMajorShapeDistortionsINTEL": 5774, - "OpSubgroupAvcImeGetStreamoutDualReferenceMajorShapeReferenceIdsINTEL": 5775, - "OpSubgroupAvcImeGetBorderReachedINTEL": 5776, - "OpSubgroupAvcImeGetTruncatedSearchIndicationINTEL": 5777, - "OpSubgroupAvcImeGetUnidirectionalEarlySearchTerminationINTEL": 5778, - "OpSubgroupAvcImeGetWeightingPatternMinimumMotionVectorINTEL": 5779, - "OpSubgroupAvcImeGetWeightingPatternMinimumDistortionINTEL": 5780, - "OpSubgroupAvcFmeInitializeINTEL": 5781, - "OpSubgroupAvcBmeInitializeINTEL": 5782, - "OpSubgroupAvcRefConvertToMcePayloadINTEL": 5783, - "OpSubgroupAvcRefSetBidirectionalMixDisableINTEL": 5784, - "OpSubgroupAvcRefSetBilinearFilterEnableINTEL": 5785, - "OpSubgroupAvcRefEvaluateWithSingleReferenceINTEL": 5786, - "OpSubgroupAvcRefEvaluateWithDualReferenceINTEL": 5787, - "OpSubgroupAvcRefEvaluateWithMultiReferenceINTEL": 5788, - "OpSubgroupAvcRefEvaluateWithMultiReferenceInterlacedINTEL": 5789, - "OpSubgroupAvcRefConvertToMceResultINTEL": 5790, - "OpSubgroupAvcSicInitializeINTEL": 5791, - "OpSubgroupAvcSicConfigureSkcINTEL": 5792, - "OpSubgroupAvcSicConfigureIpeLumaINTEL": 5793, - "OpSubgroupAvcSicConfigureIpeLumaChromaINTEL": 5794, - "OpSubgroupAvcSicGetMotionVectorMaskINTEL": 5795, - "OpSubgroupAvcSicConvertToMcePayloadINTEL": 5796, - "OpSubgroupAvcSicSetIntraLumaShapePenaltyINTEL": 5797, - "OpSubgroupAvcSicSetIntraLumaModeCostFunctionINTEL": 5798, - "OpSubgroupAvcSicSetIntraChromaModeCostFunctionINTEL": 5799, - "OpSubgroupAvcSicSetBilinearFilterEnableINTEL": 5800, - "OpSubgroupAvcSicSetSkcForwardTransformEnableINTEL": 5801, - "OpSubgroupAvcSicSetBlockBasedRawSkipSadINTEL": 5802, - "OpSubgroupAvcSicEvaluateIpeINTEL": 5803, - "OpSubgroupAvcSicEvaluateWithSingleReferenceINTEL": 5804, - "OpSubgroupAvcSicEvaluateWithDualReferenceINTEL": 5805, - "OpSubgroupAvcSicEvaluateWithMultiReferenceINTEL": 5806, - "OpSubgroupAvcSicEvaluateWithMultiReferenceInterlacedINTEL": 5807, - "OpSubgroupAvcSicConvertToMceResultINTEL": 5808, - "OpSubgroupAvcSicGetIpeLumaShapeINTEL": 5809, - "OpSubgroupAvcSicGetBestIpeLumaDistortionINTEL": 5810, - "OpSubgroupAvcSicGetBestIpeChromaDistortionINTEL": 5811, - "OpSubgroupAvcSicGetPackedIpeLumaModesINTEL": 5812, - "OpSubgroupAvcSicGetIpeChromaModeINTEL": 5813, - "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, - "OpAliasDomainDeclINTEL": 5911, - "OpAliasScopeDeclINTEL": 5912, - "OpAliasScopeListDeclINTEL": 5913, - "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, - "OpRayQueryGetIntersectionInstanceCustomIndexKHR": 6019, - "OpRayQueryGetIntersectionInstanceIdKHR": 6020, - "OpRayQueryGetIntersectionInstanceShaderBindingTableRecordOffsetKHR": 6021, - "OpRayQueryGetIntersectionGeometryIndexKHR": 6022, - "OpRayQueryGetIntersectionPrimitiveIndexKHR": 6023, - "OpRayQueryGetIntersectionBarycentricsKHR": 6024, - "OpRayQueryGetIntersectionFrontFaceKHR": 6025, - "OpRayQueryGetIntersectionCandidateAABBOpaqueKHR": 6026, - "OpRayQueryGetIntersectionObjectRayDirectionKHR": 6027, - "OpRayQueryGetIntersectionObjectRayOriginKHR": 6028, - "OpRayQueryGetWorldRayDirectionKHR": 6029, - "OpRayQueryGetWorldRayOriginKHR": 6030, - "OpRayQueryGetIntersectionObjectToWorldKHR": 6031, - "OpRayQueryGetIntersectionWorldToObjectKHR": 6032, - "OpAtomicFAddEXT": 6035, - "OpTypeBufferSurfaceINTEL": 6086, - "OpTypeStructContinuedINTEL": 6090, - "OpConstantCompositeContinuedINTEL": 6091, - "OpSpecConstantCompositeContinuedINTEL": 6092, - "OpConvertFToBF16INTEL": 6116, - "OpConvertBF16ToFINTEL": 6117, - "OpControlBarrierArriveINTEL": 6142, - "OpControlBarrierWaitINTEL": 6143, - "OpGroupIMulKHR": 6401, - "OpGroupFMulKHR": 6402, - "OpGroupBitwiseAndKHR": 6403, - "OpGroupBitwiseOrKHR": 6404, - "OpGroupBitwiseXorKHR": 6405, - "OpGroupLogicalAndKHR": 6406, - "OpGroupLogicalOrKHR": 6407, - "OpGroupLogicalXorKHR": 6408 - } - } - ] - } -} - diff --git a/Extern/3rdParty/shaderc/shaderc/include/spirv/unified1/spirv.lua b/Extern/3rdParty/shaderc/shaderc/include/spirv/unified1/spirv.lua deleted file mode 100644 index 1979b6b..0000000 --- a/Extern/3rdParty/shaderc/shaderc/include/spirv/unified1/spirv.lua +++ /dev/null @@ -1,1984 +0,0 @@ --- Copyright (c) 2014-2020 The Khronos Group Inc. --- --- Permission is hereby granted, free of charge, to any person obtaining a copy --- of this software and/or associated documentation files (the "Materials"), --- 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. - --- This header is automatically generated by the same tool that creates --- the Binary Section of the SPIR-V specification. - --- Enumeration tokens for SPIR-V, in various styles: --- C, C++, C++11, JSON, Lua, Python, C#, D, Beef --- --- - C will have tokens with a "Spv" prefix, e.g.: SpvSourceLanguageGLSL --- - C++ will have tokens in the "spv" name space, e.g.: spv::SourceLanguageGLSL --- - C++11 will use enum classes in the spv namespace, e.g.: spv::SourceLanguage::GLSL --- - Lua will use tables, e.g.: spv.SourceLanguage.GLSL --- - Python will use dictionaries, e.g.: spv['SourceLanguage']['GLSL'] --- - C# will use enum classes in the Specification class located in the "Spv" namespace, --- e.g.: Spv.Specification.SourceLanguage.GLSL --- - D will have tokens under the "spv" module, e.g: spv.SourceLanguage.GLSL --- - Beef will use enum classes in the Specification class located in the "Spv" namespace, --- e.g.: Spv.Specification.SourceLanguage.GLSL --- --- Some tokens act like mask values, which can be OR'd together, --- while others are mutually exclusive. The mask-like ones have --- "Mask" in their name, and a parallel enum that has the shift --- amount (1 << x) for each corresponding enumerant. - -spv = { - MagicNumber = 0x07230203, - Version = 0x00010600, - Revision = 1, - OpCodeMask = 0xffff, - WordCountShift = 16, - - SourceLanguage = { - Unknown = 0, - ESSL = 1, - GLSL = 2, - OpenCL_C = 3, - OpenCL_CPP = 4, - HLSL = 5, - CPP_for_OpenCL = 6, - SYCL = 7, - HERO_C = 8, - NZSL = 9, - WGSL = 10, - }, - - ExecutionModel = { - Vertex = 0, - TessellationControl = 1, - TessellationEvaluation = 2, - Geometry = 3, - Fragment = 4, - GLCompute = 5, - Kernel = 6, - TaskNV = 5267, - MeshNV = 5268, - RayGenerationKHR = 5313, - RayGenerationNV = 5313, - IntersectionKHR = 5314, - IntersectionNV = 5314, - AnyHitKHR = 5315, - AnyHitNV = 5315, - ClosestHitKHR = 5316, - ClosestHitNV = 5316, - MissKHR = 5317, - MissNV = 5317, - CallableKHR = 5318, - CallableNV = 5318, - TaskEXT = 5364, - MeshEXT = 5365, - }, - - AddressingModel = { - Logical = 0, - Physical32 = 1, - Physical64 = 2, - PhysicalStorageBuffer64 = 5348, - PhysicalStorageBuffer64EXT = 5348, - }, - - MemoryModel = { - Simple = 0, - GLSL450 = 1, - OpenCL = 2, - Vulkan = 3, - VulkanKHR = 3, - }, - - ExecutionMode = { - Invocations = 0, - SpacingEqual = 1, - SpacingFractionalEven = 2, - SpacingFractionalOdd = 3, - VertexOrderCw = 4, - VertexOrderCcw = 5, - PixelCenterInteger = 6, - OriginUpperLeft = 7, - OriginLowerLeft = 8, - EarlyFragmentTests = 9, - PointMode = 10, - Xfb = 11, - DepthReplacing = 12, - DepthGreater = 14, - DepthLess = 15, - DepthUnchanged = 16, - LocalSize = 17, - LocalSizeHint = 18, - InputPoints = 19, - InputLines = 20, - InputLinesAdjacency = 21, - Triangles = 22, - InputTrianglesAdjacency = 23, - Quads = 24, - Isolines = 25, - OutputVertices = 26, - OutputPoints = 27, - OutputLineStrip = 28, - OutputTriangleStrip = 29, - VecTypeHint = 30, - ContractionOff = 31, - Initializer = 33, - Finalizer = 34, - SubgroupSize = 35, - SubgroupsPerWorkgroup = 36, - SubgroupsPerWorkgroupId = 37, - LocalSizeId = 38, - LocalSizeHintId = 39, - NonCoherentColorAttachmentReadEXT = 4169, - NonCoherentDepthAttachmentReadEXT = 4170, - NonCoherentStencilAttachmentReadEXT = 4171, - SubgroupUniformControlFlowKHR = 4421, - PostDepthCoverage = 4446, - DenormPreserve = 4459, - DenormFlushToZero = 4460, - SignedZeroInfNanPreserve = 4461, - RoundingModeRTE = 4462, - RoundingModeRTZ = 4463, - EarlyAndLateFragmentTestsAMD = 5017, - StencilRefReplacingEXT = 5027, - StencilRefUnchangedFrontAMD = 5079, - StencilRefGreaterFrontAMD = 5080, - StencilRefLessFrontAMD = 5081, - StencilRefUnchangedBackAMD = 5082, - StencilRefGreaterBackAMD = 5083, - StencilRefLessBackAMD = 5084, - OutputLinesEXT = 5269, - OutputLinesNV = 5269, - OutputPrimitivesEXT = 5270, - OutputPrimitivesNV = 5270, - DerivativeGroupQuadsNV = 5289, - DerivativeGroupLinearNV = 5290, - OutputTrianglesEXT = 5298, - OutputTrianglesNV = 5298, - PixelInterlockOrderedEXT = 5366, - PixelInterlockUnorderedEXT = 5367, - SampleInterlockOrderedEXT = 5368, - SampleInterlockUnorderedEXT = 5369, - ShadingRateInterlockOrderedEXT = 5370, - ShadingRateInterlockUnorderedEXT = 5371, - SharedLocalMemorySizeINTEL = 5618, - RoundingModeRTPINTEL = 5620, - RoundingModeRTNINTEL = 5621, - FloatingPointModeALTINTEL = 5622, - FloatingPointModeIEEEINTEL = 5623, - MaxWorkgroupSizeINTEL = 5893, - MaxWorkDimINTEL = 5894, - NoGlobalOffsetINTEL = 5895, - NumSIMDWorkitemsINTEL = 5896, - SchedulerTargetFmaxMhzINTEL = 5903, - StreamingInterfaceINTEL = 6154, - RegisterMapInterfaceINTEL = 6160, - NamedBarrierCountINTEL = 6417, - }, - - StorageClass = { - UniformConstant = 0, - Input = 1, - Uniform = 2, - Output = 3, - Workgroup = 4, - CrossWorkgroup = 5, - Private = 6, - Function = 7, - Generic = 8, - PushConstant = 9, - AtomicCounter = 10, - Image = 11, - StorageBuffer = 12, - TileImageEXT = 4172, - CallableDataKHR = 5328, - CallableDataNV = 5328, - IncomingCallableDataKHR = 5329, - IncomingCallableDataNV = 5329, - RayPayloadKHR = 5338, - RayPayloadNV = 5338, - HitAttributeKHR = 5339, - HitAttributeNV = 5339, - IncomingRayPayloadKHR = 5342, - IncomingRayPayloadNV = 5342, - ShaderRecordBufferKHR = 5343, - ShaderRecordBufferNV = 5343, - PhysicalStorageBuffer = 5349, - PhysicalStorageBufferEXT = 5349, - HitObjectAttributeNV = 5385, - TaskPayloadWorkgroupEXT = 5402, - CodeSectionINTEL = 5605, - DeviceOnlyINTEL = 5936, - HostOnlyINTEL = 5937, - }, - - Dim = { - Dim1D = 0, - Dim2D = 1, - Dim3D = 2, - Cube = 3, - Rect = 4, - Buffer = 5, - SubpassData = 6, - TileImageDataEXT = 4173, - }, - - SamplerAddressingMode = { - None = 0, - ClampToEdge = 1, - Clamp = 2, - Repeat = 3, - RepeatMirrored = 4, - }, - - SamplerFilterMode = { - Nearest = 0, - Linear = 1, - }, - - ImageFormat = { - Unknown = 0, - Rgba32f = 1, - Rgba16f = 2, - R32f = 3, - Rgba8 = 4, - Rgba8Snorm = 5, - Rg32f = 6, - Rg16f = 7, - R11fG11fB10f = 8, - R16f = 9, - Rgba16 = 10, - Rgb10A2 = 11, - Rg16 = 12, - Rg8 = 13, - R16 = 14, - R8 = 15, - Rgba16Snorm = 16, - Rg16Snorm = 17, - Rg8Snorm = 18, - R16Snorm = 19, - R8Snorm = 20, - Rgba32i = 21, - Rgba16i = 22, - Rgba8i = 23, - R32i = 24, - Rg32i = 25, - Rg16i = 26, - Rg8i = 27, - R16i = 28, - R8i = 29, - Rgba32ui = 30, - Rgba16ui = 31, - Rgba8ui = 32, - R32ui = 33, - Rgb10a2ui = 34, - Rg32ui = 35, - Rg16ui = 36, - Rg8ui = 37, - R16ui = 38, - R8ui = 39, - R64ui = 40, - R64i = 41, - }, - - ImageChannelOrder = { - R = 0, - A = 1, - RG = 2, - RA = 3, - RGB = 4, - RGBA = 5, - BGRA = 6, - ARGB = 7, - Intensity = 8, - Luminance = 9, - Rx = 10, - RGx = 11, - RGBx = 12, - Depth = 13, - DepthStencil = 14, - sRGB = 15, - sRGBx = 16, - sRGBA = 17, - sBGRA = 18, - ABGR = 19, - }, - - ImageChannelDataType = { - SnormInt8 = 0, - SnormInt16 = 1, - UnormInt8 = 2, - UnormInt16 = 3, - UnormShort565 = 4, - UnormShort555 = 5, - UnormInt101010 = 6, - SignedInt8 = 7, - SignedInt16 = 8, - SignedInt32 = 9, - UnsignedInt8 = 10, - UnsignedInt16 = 11, - UnsignedInt32 = 12, - HalfFloat = 13, - Float = 14, - UnormInt24 = 15, - UnormInt101010_2 = 16, - UnsignedIntRaw10EXT = 19, - UnsignedIntRaw12EXT = 20, - }, - - ImageOperandsShift = { - Bias = 0, - Lod = 1, - Grad = 2, - ConstOffset = 3, - Offset = 4, - ConstOffsets = 5, - Sample = 6, - MinLod = 7, - MakeTexelAvailable = 8, - MakeTexelAvailableKHR = 8, - MakeTexelVisible = 9, - MakeTexelVisibleKHR = 9, - NonPrivateTexel = 10, - NonPrivateTexelKHR = 10, - VolatileTexel = 11, - VolatileTexelKHR = 11, - SignExtend = 12, - ZeroExtend = 13, - Nontemporal = 14, - Offsets = 16, - }, - - ImageOperandsMask = { - MaskNone = 0, - Bias = 0x00000001, - Lod = 0x00000002, - Grad = 0x00000004, - ConstOffset = 0x00000008, - Offset = 0x00000010, - ConstOffsets = 0x00000020, - Sample = 0x00000040, - MinLod = 0x00000080, - MakeTexelAvailable = 0x00000100, - MakeTexelAvailableKHR = 0x00000100, - MakeTexelVisible = 0x00000200, - MakeTexelVisibleKHR = 0x00000200, - NonPrivateTexel = 0x00000400, - NonPrivateTexelKHR = 0x00000400, - VolatileTexel = 0x00000800, - VolatileTexelKHR = 0x00000800, - SignExtend = 0x00001000, - ZeroExtend = 0x00002000, - Nontemporal = 0x00004000, - Offsets = 0x00010000, - }, - - FPFastMathModeShift = { - NotNaN = 0, - NotInf = 1, - NSZ = 2, - AllowRecip = 3, - Fast = 4, - AllowContractFastINTEL = 16, - AllowReassocINTEL = 17, - }, - - FPFastMathModeMask = { - MaskNone = 0, - NotNaN = 0x00000001, - NotInf = 0x00000002, - NSZ = 0x00000004, - AllowRecip = 0x00000008, - Fast = 0x00000010, - AllowContractFastINTEL = 0x00010000, - AllowReassocINTEL = 0x00020000, - }, - - FPRoundingMode = { - RTE = 0, - RTZ = 1, - RTP = 2, - RTN = 3, - }, - - LinkageType = { - Export = 0, - Import = 1, - LinkOnceODR = 2, - }, - - AccessQualifier = { - ReadOnly = 0, - WriteOnly = 1, - ReadWrite = 2, - }, - - FunctionParameterAttribute = { - Zext = 0, - Sext = 1, - ByVal = 2, - Sret = 3, - NoAlias = 4, - NoCapture = 5, - NoWrite = 6, - NoReadWrite = 7, - RuntimeAlignedINTEL = 5940, - }, - - Decoration = { - RelaxedPrecision = 0, - SpecId = 1, - Block = 2, - BufferBlock = 3, - RowMajor = 4, - ColMajor = 5, - ArrayStride = 6, - MatrixStride = 7, - GLSLShared = 8, - GLSLPacked = 9, - CPacked = 10, - BuiltIn = 11, - NoPerspective = 13, - Flat = 14, - Patch = 15, - Centroid = 16, - Sample = 17, - Invariant = 18, - Restrict = 19, - Aliased = 20, - Volatile = 21, - Constant = 22, - Coherent = 23, - NonWritable = 24, - NonReadable = 25, - Uniform = 26, - UniformId = 27, - SaturatedConversion = 28, - Stream = 29, - Location = 30, - Component = 31, - Index = 32, - Binding = 33, - DescriptorSet = 34, - Offset = 35, - XfbBuffer = 36, - XfbStride = 37, - FuncParamAttr = 38, - FPRoundingMode = 39, - FPFastMathMode = 40, - LinkageAttributes = 41, - NoContraction = 42, - InputAttachmentIndex = 43, - Alignment = 44, - MaxByteOffset = 45, - AlignmentId = 46, - MaxByteOffsetId = 47, - NoSignedWrap = 4469, - NoUnsignedWrap = 4470, - WeightTextureQCOM = 4487, - BlockMatchTextureQCOM = 4488, - ExplicitInterpAMD = 4999, - OverrideCoverageNV = 5248, - PassthroughNV = 5250, - ViewportRelativeNV = 5252, - SecondaryViewportRelativeNV = 5256, - PerPrimitiveEXT = 5271, - PerPrimitiveNV = 5271, - PerViewNV = 5272, - PerTaskNV = 5273, - PerVertexKHR = 5285, - PerVertexNV = 5285, - NonUniform = 5300, - NonUniformEXT = 5300, - RestrictPointer = 5355, - RestrictPointerEXT = 5355, - AliasedPointer = 5356, - AliasedPointerEXT = 5356, - HitObjectShaderRecordBufferNV = 5386, - BindlessSamplerNV = 5398, - BindlessImageNV = 5399, - BoundSamplerNV = 5400, - BoundImageNV = 5401, - SIMTCallINTEL = 5599, - ReferencedIndirectlyINTEL = 5602, - ClobberINTEL = 5607, - SideEffectsINTEL = 5608, - VectorComputeVariableINTEL = 5624, - FuncParamIOKindINTEL = 5625, - VectorComputeFunctionINTEL = 5626, - StackCallINTEL = 5627, - GlobalVariableOffsetINTEL = 5628, - CounterBuffer = 5634, - 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, - MathOpDSPModeINTEL = 5909, - AliasScopeINTEL = 5914, - NoAliasINTEL = 5915, - InitiationIntervalINTEL = 5917, - MaxConcurrencyINTEL = 5918, - PipelineEnableINTEL = 5919, - BufferLocationINTEL = 5921, - IOPipeStorageINTEL = 5944, - FunctionFloatingPointModeINTEL = 6080, - SingleElementVectorINTEL = 6085, - VectorComputeCallableFunctionINTEL = 6087, - MediaBlockIOINTEL = 6140, - FPMaxErrorDecorationINTEL = 6170, - LatencyControlLabelINTEL = 6172, - LatencyControlConstraintINTEL = 6173, - ConduitKernelArgumentINTEL = 6175, - RegisterMapKernelArgumentINTEL = 6176, - MMHostInterfaceAddressWidthINTEL = 6177, - MMHostInterfaceDataWidthINTEL = 6178, - MMHostInterfaceLatencyINTEL = 6179, - MMHostInterfaceReadWriteModeINTEL = 6180, - MMHostInterfaceMaxBurstINTEL = 6181, - MMHostInterfaceWaitRequestINTEL = 6182, - StableKernelArgumentINTEL = 6183, - }, - - BuiltIn = { - Position = 0, - PointSize = 1, - ClipDistance = 3, - CullDistance = 4, - VertexId = 5, - InstanceId = 6, - PrimitiveId = 7, - InvocationId = 8, - Layer = 9, - ViewportIndex = 10, - TessLevelOuter = 11, - TessLevelInner = 12, - TessCoord = 13, - PatchVertices = 14, - FragCoord = 15, - PointCoord = 16, - FrontFacing = 17, - SampleId = 18, - SamplePosition = 19, - SampleMask = 20, - FragDepth = 22, - HelperInvocation = 23, - NumWorkgroups = 24, - WorkgroupSize = 25, - WorkgroupId = 26, - LocalInvocationId = 27, - GlobalInvocationId = 28, - LocalInvocationIndex = 29, - WorkDim = 30, - GlobalSize = 31, - EnqueuedWorkgroupSize = 32, - GlobalOffset = 33, - GlobalLinearId = 34, - SubgroupSize = 36, - SubgroupMaxSize = 37, - NumSubgroups = 38, - NumEnqueuedSubgroups = 39, - SubgroupId = 40, - SubgroupLocalInvocationId = 41, - VertexIndex = 42, - InstanceIndex = 43, - CoreIDARM = 4160, - CoreCountARM = 4161, - CoreMaxIDARM = 4162, - WarpIDARM = 4163, - WarpMaxIDARM = 4164, - SubgroupEqMask = 4416, - SubgroupEqMaskKHR = 4416, - SubgroupGeMask = 4417, - SubgroupGeMaskKHR = 4417, - SubgroupGtMask = 4418, - SubgroupGtMaskKHR = 4418, - SubgroupLeMask = 4419, - SubgroupLeMaskKHR = 4419, - SubgroupLtMask = 4420, - SubgroupLtMaskKHR = 4420, - BaseVertex = 4424, - BaseInstance = 4425, - DrawIndex = 4426, - PrimitiveShadingRateKHR = 4432, - DeviceIndex = 4438, - ViewIndex = 4440, - ShadingRateKHR = 4444, - BaryCoordNoPerspAMD = 4992, - BaryCoordNoPerspCentroidAMD = 4993, - BaryCoordNoPerspSampleAMD = 4994, - BaryCoordSmoothAMD = 4995, - BaryCoordSmoothCentroidAMD = 4996, - BaryCoordSmoothSampleAMD = 4997, - BaryCoordPullModelAMD = 4998, - FragStencilRefEXT = 5014, - ViewportMaskNV = 5253, - SecondaryPositionNV = 5257, - SecondaryViewportMaskNV = 5258, - PositionPerViewNV = 5261, - ViewportMaskPerViewNV = 5262, - FullyCoveredEXT = 5264, - TaskCountNV = 5274, - PrimitiveCountNV = 5275, - PrimitiveIndicesNV = 5276, - ClipDistancePerViewNV = 5277, - CullDistancePerViewNV = 5278, - LayerPerViewNV = 5279, - MeshViewCountNV = 5280, - MeshViewIndicesNV = 5281, - BaryCoordKHR = 5286, - BaryCoordNV = 5286, - BaryCoordNoPerspKHR = 5287, - BaryCoordNoPerspNV = 5287, - FragSizeEXT = 5292, - FragmentSizeNV = 5292, - FragInvocationCountEXT = 5293, - InvocationsPerPixelNV = 5293, - PrimitivePointIndicesEXT = 5294, - PrimitiveLineIndicesEXT = 5295, - PrimitiveTriangleIndicesEXT = 5296, - CullPrimitiveEXT = 5299, - LaunchIdKHR = 5319, - LaunchIdNV = 5319, - LaunchSizeKHR = 5320, - LaunchSizeNV = 5320, - WorldRayOriginKHR = 5321, - WorldRayOriginNV = 5321, - WorldRayDirectionKHR = 5322, - WorldRayDirectionNV = 5322, - ObjectRayOriginKHR = 5323, - ObjectRayOriginNV = 5323, - ObjectRayDirectionKHR = 5324, - ObjectRayDirectionNV = 5324, - RayTminKHR = 5325, - RayTminNV = 5325, - RayTmaxKHR = 5326, - RayTmaxNV = 5326, - InstanceCustomIndexKHR = 5327, - InstanceCustomIndexNV = 5327, - ObjectToWorldKHR = 5330, - ObjectToWorldNV = 5330, - WorldToObjectKHR = 5331, - WorldToObjectNV = 5331, - HitTNV = 5332, - HitKindKHR = 5333, - HitKindNV = 5333, - CurrentRayTimeNV = 5334, - HitTriangleVertexPositionsKHR = 5335, - IncomingRayFlagsKHR = 5351, - IncomingRayFlagsNV = 5351, - RayGeometryIndexKHR = 5352, - WarpsPerSMNV = 5374, - SMCountNV = 5375, - WarpIDNV = 5376, - SMIDNV = 5377, - CullMaskKHR = 6021, - }, - - SelectionControlShift = { - Flatten = 0, - DontFlatten = 1, - }, - - SelectionControlMask = { - MaskNone = 0, - Flatten = 0x00000001, - DontFlatten = 0x00000002, - }, - - LoopControlShift = { - Unroll = 0, - DontUnroll = 1, - DependencyInfinite = 2, - DependencyLength = 3, - MinIterations = 4, - MaxIterations = 5, - IterationMultiple = 6, - PeelCount = 7, - PartialCount = 8, - InitiationIntervalINTEL = 16, - MaxConcurrencyINTEL = 17, - DependencyArrayINTEL = 18, - PipelineEnableINTEL = 19, - LoopCoalesceINTEL = 20, - MaxInterleavingINTEL = 21, - SpeculatedIterationsINTEL = 22, - NoFusionINTEL = 23, - LoopCountINTEL = 24, - MaxReinvocationDelayINTEL = 25, - }, - - LoopControlMask = { - MaskNone = 0, - Unroll = 0x00000001, - DontUnroll = 0x00000002, - DependencyInfinite = 0x00000004, - DependencyLength = 0x00000008, - MinIterations = 0x00000010, - MaxIterations = 0x00000020, - IterationMultiple = 0x00000040, - PeelCount = 0x00000080, - PartialCount = 0x00000100, - InitiationIntervalINTEL = 0x00010000, - MaxConcurrencyINTEL = 0x00020000, - DependencyArrayINTEL = 0x00040000, - PipelineEnableINTEL = 0x00080000, - LoopCoalesceINTEL = 0x00100000, - MaxInterleavingINTEL = 0x00200000, - SpeculatedIterationsINTEL = 0x00400000, - NoFusionINTEL = 0x00800000, - LoopCountINTEL = 0x01000000, - MaxReinvocationDelayINTEL = 0x02000000, - }, - - FunctionControlShift = { - Inline = 0, - DontInline = 1, - Pure = 2, - Const = 3, - OptNoneINTEL = 16, - }, - - FunctionControlMask = { - MaskNone = 0, - Inline = 0x00000001, - DontInline = 0x00000002, - Pure = 0x00000004, - Const = 0x00000008, - OptNoneINTEL = 0x00010000, - }, - - MemorySemanticsShift = { - Acquire = 1, - Release = 2, - AcquireRelease = 3, - SequentiallyConsistent = 4, - UniformMemory = 6, - SubgroupMemory = 7, - WorkgroupMemory = 8, - CrossWorkgroupMemory = 9, - AtomicCounterMemory = 10, - ImageMemory = 11, - OutputMemory = 12, - OutputMemoryKHR = 12, - MakeAvailable = 13, - MakeAvailableKHR = 13, - MakeVisible = 14, - MakeVisibleKHR = 14, - Volatile = 15, - }, - - MemorySemanticsMask = { - MaskNone = 0, - Acquire = 0x00000002, - Release = 0x00000004, - AcquireRelease = 0x00000008, - SequentiallyConsistent = 0x00000010, - UniformMemory = 0x00000040, - SubgroupMemory = 0x00000080, - WorkgroupMemory = 0x00000100, - CrossWorkgroupMemory = 0x00000200, - AtomicCounterMemory = 0x00000400, - ImageMemory = 0x00000800, - OutputMemory = 0x00001000, - OutputMemoryKHR = 0x00001000, - MakeAvailable = 0x00002000, - MakeAvailableKHR = 0x00002000, - MakeVisible = 0x00004000, - MakeVisibleKHR = 0x00004000, - Volatile = 0x00008000, - }, - - MemoryAccessShift = { - Volatile = 0, - Aligned = 1, - Nontemporal = 2, - MakePointerAvailable = 3, - MakePointerAvailableKHR = 3, - MakePointerVisible = 4, - MakePointerVisibleKHR = 4, - NonPrivatePointer = 5, - NonPrivatePointerKHR = 5, - AliasScopeINTELMask = 16, - NoAliasINTELMask = 17, - }, - - MemoryAccessMask = { - MaskNone = 0, - Volatile = 0x00000001, - Aligned = 0x00000002, - Nontemporal = 0x00000004, - MakePointerAvailable = 0x00000008, - MakePointerAvailableKHR = 0x00000008, - MakePointerVisible = 0x00000010, - MakePointerVisibleKHR = 0x00000010, - NonPrivatePointer = 0x00000020, - NonPrivatePointerKHR = 0x00000020, - AliasScopeINTELMask = 0x00010000, - NoAliasINTELMask = 0x00020000, - }, - - Scope = { - CrossDevice = 0, - Device = 1, - Workgroup = 2, - Subgroup = 3, - Invocation = 4, - QueueFamily = 5, - QueueFamilyKHR = 5, - ShaderCallKHR = 6, - }, - - GroupOperation = { - Reduce = 0, - InclusiveScan = 1, - ExclusiveScan = 2, - ClusteredReduce = 3, - PartitionedReduceNV = 6, - PartitionedInclusiveScanNV = 7, - PartitionedExclusiveScanNV = 8, - }, - - KernelEnqueueFlags = { - NoWait = 0, - WaitKernel = 1, - WaitWorkGroup = 2, - }, - - KernelProfilingInfoShift = { - CmdExecTime = 0, - }, - - KernelProfilingInfoMask = { - MaskNone = 0, - CmdExecTime = 0x00000001, - }, - - Capability = { - Matrix = 0, - Shader = 1, - Geometry = 2, - Tessellation = 3, - Addresses = 4, - Linkage = 5, - Kernel = 6, - Vector16 = 7, - Float16Buffer = 8, - Float16 = 9, - Float64 = 10, - Int64 = 11, - Int64Atomics = 12, - ImageBasic = 13, - ImageReadWrite = 14, - ImageMipmap = 15, - Pipes = 17, - Groups = 18, - DeviceEnqueue = 19, - LiteralSampler = 20, - AtomicStorage = 21, - Int16 = 22, - TessellationPointSize = 23, - GeometryPointSize = 24, - ImageGatherExtended = 25, - StorageImageMultisample = 27, - UniformBufferArrayDynamicIndexing = 28, - SampledImageArrayDynamicIndexing = 29, - StorageBufferArrayDynamicIndexing = 30, - StorageImageArrayDynamicIndexing = 31, - ClipDistance = 32, - CullDistance = 33, - ImageCubeArray = 34, - SampleRateShading = 35, - ImageRect = 36, - SampledRect = 37, - GenericPointer = 38, - Int8 = 39, - InputAttachment = 40, - SparseResidency = 41, - MinLod = 42, - Sampled1D = 43, - Image1D = 44, - SampledCubeArray = 45, - SampledBuffer = 46, - ImageBuffer = 47, - ImageMSArray = 48, - StorageImageExtendedFormats = 49, - ImageQuery = 50, - DerivativeControl = 51, - InterpolationFunction = 52, - TransformFeedback = 53, - GeometryStreams = 54, - StorageImageReadWithoutFormat = 55, - StorageImageWriteWithoutFormat = 56, - MultiViewport = 57, - SubgroupDispatch = 58, - NamedBarrier = 59, - PipeStorage = 60, - GroupNonUniform = 61, - GroupNonUniformVote = 62, - GroupNonUniformArithmetic = 63, - GroupNonUniformBallot = 64, - GroupNonUniformShuffle = 65, - GroupNonUniformShuffleRelative = 66, - GroupNonUniformClustered = 67, - GroupNonUniformQuad = 68, - ShaderLayer = 69, - ShaderViewportIndex = 70, - UniformDecoration = 71, - CoreBuiltinsARM = 4165, - TileImageColorReadAccessEXT = 4166, - TileImageDepthReadAccessEXT = 4167, - TileImageStencilReadAccessEXT = 4168, - FragmentShadingRateKHR = 4422, - SubgroupBallotKHR = 4423, - DrawParameters = 4427, - WorkgroupMemoryExplicitLayoutKHR = 4428, - WorkgroupMemoryExplicitLayout8BitAccessKHR = 4429, - WorkgroupMemoryExplicitLayout16BitAccessKHR = 4430, - SubgroupVoteKHR = 4431, - StorageBuffer16BitAccess = 4433, - StorageUniformBufferBlock16 = 4433, - StorageUniform16 = 4434, - UniformAndStorageBuffer16BitAccess = 4434, - StoragePushConstant16 = 4435, - StorageInputOutput16 = 4436, - DeviceGroup = 4437, - MultiView = 4439, - VariablePointersStorageBuffer = 4441, - VariablePointers = 4442, - AtomicStorageOps = 4445, - SampleMaskPostDepthCoverage = 4447, - StorageBuffer8BitAccess = 4448, - UniformAndStorageBuffer8BitAccess = 4449, - StoragePushConstant8 = 4450, - DenormPreserve = 4464, - DenormFlushToZero = 4465, - SignedZeroInfNanPreserve = 4466, - RoundingModeRTE = 4467, - RoundingModeRTZ = 4468, - RayQueryProvisionalKHR = 4471, - RayQueryKHR = 4472, - RayTraversalPrimitiveCullingKHR = 4478, - RayTracingKHR = 4479, - TextureSampleWeightedQCOM = 4484, - TextureBoxFilterQCOM = 4485, - TextureBlockMatchQCOM = 4486, - Float16ImageAMD = 5008, - ImageGatherBiasLodAMD = 5009, - FragmentMaskAMD = 5010, - StencilExportEXT = 5013, - ImageReadWriteLodAMD = 5015, - Int64ImageEXT = 5016, - ShaderClockKHR = 5055, - SampleMaskOverrideCoverageNV = 5249, - GeometryShaderPassthroughNV = 5251, - ShaderViewportIndexLayerEXT = 5254, - ShaderViewportIndexLayerNV = 5254, - ShaderViewportMaskNV = 5255, - ShaderStereoViewNV = 5259, - PerViewAttributesNV = 5260, - FragmentFullyCoveredEXT = 5265, - MeshShadingNV = 5266, - ImageFootprintNV = 5282, - MeshShadingEXT = 5283, - FragmentBarycentricKHR = 5284, - FragmentBarycentricNV = 5284, - ComputeDerivativeGroupQuadsNV = 5288, - FragmentDensityEXT = 5291, - ShadingRateNV = 5291, - GroupNonUniformPartitionedNV = 5297, - ShaderNonUniform = 5301, - ShaderNonUniformEXT = 5301, - RuntimeDescriptorArray = 5302, - RuntimeDescriptorArrayEXT = 5302, - InputAttachmentArrayDynamicIndexing = 5303, - InputAttachmentArrayDynamicIndexingEXT = 5303, - UniformTexelBufferArrayDynamicIndexing = 5304, - UniformTexelBufferArrayDynamicIndexingEXT = 5304, - StorageTexelBufferArrayDynamicIndexing = 5305, - StorageTexelBufferArrayDynamicIndexingEXT = 5305, - UniformBufferArrayNonUniformIndexing = 5306, - UniformBufferArrayNonUniformIndexingEXT = 5306, - SampledImageArrayNonUniformIndexing = 5307, - SampledImageArrayNonUniformIndexingEXT = 5307, - StorageBufferArrayNonUniformIndexing = 5308, - StorageBufferArrayNonUniformIndexingEXT = 5308, - StorageImageArrayNonUniformIndexing = 5309, - StorageImageArrayNonUniformIndexingEXT = 5309, - InputAttachmentArrayNonUniformIndexing = 5310, - InputAttachmentArrayNonUniformIndexingEXT = 5310, - UniformTexelBufferArrayNonUniformIndexing = 5311, - UniformTexelBufferArrayNonUniformIndexingEXT = 5311, - StorageTexelBufferArrayNonUniformIndexing = 5312, - StorageTexelBufferArrayNonUniformIndexingEXT = 5312, - RayTracingPositionFetchKHR = 5336, - RayTracingNV = 5340, - RayTracingMotionBlurNV = 5341, - VulkanMemoryModel = 5345, - VulkanMemoryModelKHR = 5345, - VulkanMemoryModelDeviceScope = 5346, - VulkanMemoryModelDeviceScopeKHR = 5346, - PhysicalStorageBufferAddresses = 5347, - PhysicalStorageBufferAddressesEXT = 5347, - ComputeDerivativeGroupLinearNV = 5350, - RayTracingProvisionalKHR = 5353, - CooperativeMatrixNV = 5357, - FragmentShaderSampleInterlockEXT = 5363, - FragmentShaderShadingRateInterlockEXT = 5372, - ShaderSMBuiltinsNV = 5373, - FragmentShaderPixelInterlockEXT = 5378, - DemoteToHelperInvocation = 5379, - DemoteToHelperInvocationEXT = 5379, - RayTracingOpacityMicromapEXT = 5381, - ShaderInvocationReorderNV = 5383, - BindlessTextureNV = 5390, - RayQueryPositionFetchKHR = 5391, - SubgroupShuffleINTEL = 5568, - SubgroupBufferBlockIOINTEL = 5569, - SubgroupImageBlockIOINTEL = 5570, - SubgroupImageMediaBlockIOINTEL = 5579, - RoundToInfinityINTEL = 5582, - FloatingPointModeINTEL = 5583, - IntegerFunctions2INTEL = 5584, - FunctionPointersINTEL = 5603, - IndirectReferencesINTEL = 5604, - AsmINTEL = 5606, - AtomicFloat32MinMaxEXT = 5612, - AtomicFloat64MinMaxEXT = 5613, - AtomicFloat16MinMaxEXT = 5616, - VectorComputeINTEL = 5617, - VectorAnyINTEL = 5619, - ExpectAssumeKHR = 5629, - SubgroupAvcMotionEstimationINTEL = 5696, - SubgroupAvcMotionEstimationIntraINTEL = 5697, - SubgroupAvcMotionEstimationChromaINTEL = 5698, - VariableLengthArrayINTEL = 5817, - FunctionFloatControlINTEL = 5821, - FPGAMemoryAttributesINTEL = 5824, - FPFastMathModeINTEL = 5837, - ArbitraryPrecisionIntegersINTEL = 5844, - ArbitraryPrecisionFloatingPointINTEL = 5845, - UnstructuredLoopControlsINTEL = 5886, - FPGALoopControlsINTEL = 5888, - KernelAttributesINTEL = 5892, - FPGAKernelAttributesINTEL = 5897, - FPGAMemoryAccessesINTEL = 5898, - FPGAClusterAttributesINTEL = 5904, - LoopFuseINTEL = 5906, - FPGADSPControlINTEL = 5908, - MemoryAccessAliasingINTEL = 5910, - FPGAInvocationPipeliningAttributesINTEL = 5916, - FPGABufferLocationINTEL = 5920, - ArbitraryPrecisionFixedPointINTEL = 5922, - USMStorageClassesINTEL = 5935, - RuntimeAlignedAttributeINTEL = 5939, - IOPipesINTEL = 5943, - BlockingPipesINTEL = 5945, - FPGARegINTEL = 5948, - DotProductInputAll = 6016, - DotProductInputAllKHR = 6016, - DotProductInput4x8Bit = 6017, - DotProductInput4x8BitKHR = 6017, - DotProductInput4x8BitPacked = 6018, - DotProductInput4x8BitPackedKHR = 6018, - DotProduct = 6019, - DotProductKHR = 6019, - RayCullMaskKHR = 6020, - CooperativeMatrixKHR = 6022, - BitInstructions = 6025, - GroupNonUniformRotateKHR = 6026, - AtomicFloat32AddEXT = 6033, - AtomicFloat64AddEXT = 6034, - LongConstantCompositeINTEL = 6089, - OptNoneINTEL = 6094, - AtomicFloat16AddEXT = 6095, - DebugInfoModuleINTEL = 6114, - BFloat16ConversionINTEL = 6115, - SplitBarrierINTEL = 6141, - FPGAKernelAttributesv2INTEL = 6161, - FPMaxErrorINTEL = 6169, - FPGALatencyControlINTEL = 6171, - FPGAArgumentInterfacesINTEL = 6174, - GroupUniformArithmeticKHR = 6400, - }, - - RayFlagsShift = { - OpaqueKHR = 0, - NoOpaqueKHR = 1, - TerminateOnFirstHitKHR = 2, - SkipClosestHitShaderKHR = 3, - CullBackFacingTrianglesKHR = 4, - CullFrontFacingTrianglesKHR = 5, - CullOpaqueKHR = 6, - CullNoOpaqueKHR = 7, - SkipTrianglesKHR = 8, - SkipAABBsKHR = 9, - ForceOpacityMicromap2StateEXT = 10, - }, - - RayFlagsMask = { - MaskNone = 0, - OpaqueKHR = 0x00000001, - NoOpaqueKHR = 0x00000002, - TerminateOnFirstHitKHR = 0x00000004, - SkipClosestHitShaderKHR = 0x00000008, - CullBackFacingTrianglesKHR = 0x00000010, - CullFrontFacingTrianglesKHR = 0x00000020, - CullOpaqueKHR = 0x00000040, - CullNoOpaqueKHR = 0x00000080, - SkipTrianglesKHR = 0x00000100, - SkipAABBsKHR = 0x00000200, - ForceOpacityMicromap2StateEXT = 0x00000400, - }, - - RayQueryIntersection = { - RayQueryCandidateIntersectionKHR = 0, - RayQueryCommittedIntersectionKHR = 1, - }, - - RayQueryCommittedIntersectionType = { - RayQueryCommittedIntersectionNoneKHR = 0, - RayQueryCommittedIntersectionTriangleKHR = 1, - RayQueryCommittedIntersectionGeneratedKHR = 2, - }, - - RayQueryCandidateIntersectionType = { - RayQueryCandidateIntersectionTriangleKHR = 0, - 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 = { - PackedVectorFormat4x8Bit = 0, - PackedVectorFormat4x8BitKHR = 0, - }, - - CooperativeMatrixOperandsShift = { - MatrixASignedComponentsKHR = 0, - MatrixBSignedComponentsKHR = 1, - MatrixCSignedComponentsKHR = 2, - MatrixResultSignedComponentsKHR = 3, - SaturatingAccumulationKHR = 4, - }, - - CooperativeMatrixOperandsMask = { - MaskNone = 0, - MatrixASignedComponentsKHR = 0x00000001, - MatrixBSignedComponentsKHR = 0x00000002, - MatrixCSignedComponentsKHR = 0x00000004, - MatrixResultSignedComponentsKHR = 0x00000008, - SaturatingAccumulationKHR = 0x00000010, - }, - - CooperativeMatrixLayout = { - RowMajorKHR = 0, - ColumnMajorKHR = 1, - }, - - CooperativeMatrixUse = { - MatrixAKHR = 0, - MatrixBKHR = 1, - MatrixAccumulatorKHR = 2, - }, - - Op = { - OpNop = 0, - OpUndef = 1, - OpSourceContinued = 2, - OpSource = 3, - OpSourceExtension = 4, - OpName = 5, - OpMemberName = 6, - OpString = 7, - OpLine = 8, - OpExtension = 10, - OpExtInstImport = 11, - OpExtInst = 12, - OpMemoryModel = 14, - OpEntryPoint = 15, - OpExecutionMode = 16, - OpCapability = 17, - OpTypeVoid = 19, - OpTypeBool = 20, - OpTypeInt = 21, - OpTypeFloat = 22, - OpTypeVector = 23, - OpTypeMatrix = 24, - OpTypeImage = 25, - OpTypeSampler = 26, - OpTypeSampledImage = 27, - OpTypeArray = 28, - OpTypeRuntimeArray = 29, - OpTypeStruct = 30, - OpTypeOpaque = 31, - OpTypePointer = 32, - OpTypeFunction = 33, - OpTypeEvent = 34, - OpTypeDeviceEvent = 35, - OpTypeReserveId = 36, - OpTypeQueue = 37, - OpTypePipe = 38, - OpTypeForwardPointer = 39, - OpConstantTrue = 41, - OpConstantFalse = 42, - OpConstant = 43, - OpConstantComposite = 44, - OpConstantSampler = 45, - OpConstantNull = 46, - OpSpecConstantTrue = 48, - OpSpecConstantFalse = 49, - OpSpecConstant = 50, - OpSpecConstantComposite = 51, - OpSpecConstantOp = 52, - OpFunction = 54, - OpFunctionParameter = 55, - OpFunctionEnd = 56, - OpFunctionCall = 57, - OpVariable = 59, - OpImageTexelPointer = 60, - OpLoad = 61, - OpStore = 62, - OpCopyMemory = 63, - OpCopyMemorySized = 64, - OpAccessChain = 65, - OpInBoundsAccessChain = 66, - OpPtrAccessChain = 67, - OpArrayLength = 68, - OpGenericPtrMemSemantics = 69, - OpInBoundsPtrAccessChain = 70, - OpDecorate = 71, - OpMemberDecorate = 72, - OpDecorationGroup = 73, - OpGroupDecorate = 74, - OpGroupMemberDecorate = 75, - OpVectorExtractDynamic = 77, - OpVectorInsertDynamic = 78, - OpVectorShuffle = 79, - OpCompositeConstruct = 80, - OpCompositeExtract = 81, - OpCompositeInsert = 82, - OpCopyObject = 83, - OpTranspose = 84, - OpSampledImage = 86, - OpImageSampleImplicitLod = 87, - OpImageSampleExplicitLod = 88, - OpImageSampleDrefImplicitLod = 89, - OpImageSampleDrefExplicitLod = 90, - OpImageSampleProjImplicitLod = 91, - OpImageSampleProjExplicitLod = 92, - OpImageSampleProjDrefImplicitLod = 93, - OpImageSampleProjDrefExplicitLod = 94, - OpImageFetch = 95, - OpImageGather = 96, - OpImageDrefGather = 97, - OpImageRead = 98, - OpImageWrite = 99, - OpImage = 100, - OpImageQueryFormat = 101, - OpImageQueryOrder = 102, - OpImageQuerySizeLod = 103, - OpImageQuerySize = 104, - OpImageQueryLod = 105, - OpImageQueryLevels = 106, - OpImageQuerySamples = 107, - OpConvertFToU = 109, - OpConvertFToS = 110, - OpConvertSToF = 111, - OpConvertUToF = 112, - OpUConvert = 113, - OpSConvert = 114, - OpFConvert = 115, - OpQuantizeToF16 = 116, - OpConvertPtrToU = 117, - OpSatConvertSToU = 118, - OpSatConvertUToS = 119, - OpConvertUToPtr = 120, - OpPtrCastToGeneric = 121, - OpGenericCastToPtr = 122, - OpGenericCastToPtrExplicit = 123, - OpBitcast = 124, - OpSNegate = 126, - OpFNegate = 127, - OpIAdd = 128, - OpFAdd = 129, - OpISub = 130, - OpFSub = 131, - OpIMul = 132, - OpFMul = 133, - OpUDiv = 134, - OpSDiv = 135, - OpFDiv = 136, - OpUMod = 137, - OpSRem = 138, - OpSMod = 139, - OpFRem = 140, - OpFMod = 141, - OpVectorTimesScalar = 142, - OpMatrixTimesScalar = 143, - OpVectorTimesMatrix = 144, - OpMatrixTimesVector = 145, - OpMatrixTimesMatrix = 146, - OpOuterProduct = 147, - OpDot = 148, - OpIAddCarry = 149, - OpISubBorrow = 150, - OpUMulExtended = 151, - OpSMulExtended = 152, - OpAny = 154, - OpAll = 155, - OpIsNan = 156, - OpIsInf = 157, - OpIsFinite = 158, - OpIsNormal = 159, - OpSignBitSet = 160, - OpLessOrGreater = 161, - OpOrdered = 162, - OpUnordered = 163, - OpLogicalEqual = 164, - OpLogicalNotEqual = 165, - OpLogicalOr = 166, - OpLogicalAnd = 167, - OpLogicalNot = 168, - OpSelect = 169, - OpIEqual = 170, - OpINotEqual = 171, - OpUGreaterThan = 172, - OpSGreaterThan = 173, - OpUGreaterThanEqual = 174, - OpSGreaterThanEqual = 175, - OpULessThan = 176, - OpSLessThan = 177, - OpULessThanEqual = 178, - OpSLessThanEqual = 179, - OpFOrdEqual = 180, - OpFUnordEqual = 181, - OpFOrdNotEqual = 182, - OpFUnordNotEqual = 183, - OpFOrdLessThan = 184, - OpFUnordLessThan = 185, - OpFOrdGreaterThan = 186, - OpFUnordGreaterThan = 187, - OpFOrdLessThanEqual = 188, - OpFUnordLessThanEqual = 189, - OpFOrdGreaterThanEqual = 190, - OpFUnordGreaterThanEqual = 191, - OpShiftRightLogical = 194, - OpShiftRightArithmetic = 195, - OpShiftLeftLogical = 196, - OpBitwiseOr = 197, - OpBitwiseXor = 198, - OpBitwiseAnd = 199, - OpNot = 200, - OpBitFieldInsert = 201, - OpBitFieldSExtract = 202, - OpBitFieldUExtract = 203, - OpBitReverse = 204, - OpBitCount = 205, - OpDPdx = 207, - OpDPdy = 208, - OpFwidth = 209, - OpDPdxFine = 210, - OpDPdyFine = 211, - OpFwidthFine = 212, - OpDPdxCoarse = 213, - OpDPdyCoarse = 214, - OpFwidthCoarse = 215, - OpEmitVertex = 218, - OpEndPrimitive = 219, - OpEmitStreamVertex = 220, - OpEndStreamPrimitive = 221, - OpControlBarrier = 224, - OpMemoryBarrier = 225, - OpAtomicLoad = 227, - OpAtomicStore = 228, - OpAtomicExchange = 229, - OpAtomicCompareExchange = 230, - OpAtomicCompareExchangeWeak = 231, - OpAtomicIIncrement = 232, - OpAtomicIDecrement = 233, - OpAtomicIAdd = 234, - OpAtomicISub = 235, - OpAtomicSMin = 236, - OpAtomicUMin = 237, - OpAtomicSMax = 238, - OpAtomicUMax = 239, - OpAtomicAnd = 240, - OpAtomicOr = 241, - OpAtomicXor = 242, - OpPhi = 245, - OpLoopMerge = 246, - OpSelectionMerge = 247, - OpLabel = 248, - OpBranch = 249, - OpBranchConditional = 250, - OpSwitch = 251, - OpKill = 252, - OpReturn = 253, - OpReturnValue = 254, - OpUnreachable = 255, - OpLifetimeStart = 256, - OpLifetimeStop = 257, - OpGroupAsyncCopy = 259, - OpGroupWaitEvents = 260, - OpGroupAll = 261, - OpGroupAny = 262, - OpGroupBroadcast = 263, - OpGroupIAdd = 264, - OpGroupFAdd = 265, - OpGroupFMin = 266, - OpGroupUMin = 267, - OpGroupSMin = 268, - OpGroupFMax = 269, - OpGroupUMax = 270, - OpGroupSMax = 271, - OpReadPipe = 274, - OpWritePipe = 275, - OpReservedReadPipe = 276, - OpReservedWritePipe = 277, - OpReserveReadPipePackets = 278, - OpReserveWritePipePackets = 279, - OpCommitReadPipe = 280, - OpCommitWritePipe = 281, - OpIsValidReserveId = 282, - OpGetNumPipePackets = 283, - OpGetMaxPipePackets = 284, - OpGroupReserveReadPipePackets = 285, - OpGroupReserveWritePipePackets = 286, - OpGroupCommitReadPipe = 287, - OpGroupCommitWritePipe = 288, - OpEnqueueMarker = 291, - OpEnqueueKernel = 292, - OpGetKernelNDrangeSubGroupCount = 293, - OpGetKernelNDrangeMaxSubGroupSize = 294, - OpGetKernelWorkGroupSize = 295, - OpGetKernelPreferredWorkGroupSizeMultiple = 296, - OpRetainEvent = 297, - OpReleaseEvent = 298, - OpCreateUserEvent = 299, - OpIsValidEvent = 300, - OpSetUserEventStatus = 301, - OpCaptureEventProfilingInfo = 302, - OpGetDefaultQueue = 303, - OpBuildNDRange = 304, - OpImageSparseSampleImplicitLod = 305, - OpImageSparseSampleExplicitLod = 306, - OpImageSparseSampleDrefImplicitLod = 307, - OpImageSparseSampleDrefExplicitLod = 308, - OpImageSparseSampleProjImplicitLod = 309, - OpImageSparseSampleProjExplicitLod = 310, - OpImageSparseSampleProjDrefImplicitLod = 311, - OpImageSparseSampleProjDrefExplicitLod = 312, - OpImageSparseFetch = 313, - OpImageSparseGather = 314, - OpImageSparseDrefGather = 315, - OpImageSparseTexelsResident = 316, - OpNoLine = 317, - OpAtomicFlagTestAndSet = 318, - OpAtomicFlagClear = 319, - OpImageSparseRead = 320, - OpSizeOf = 321, - OpTypePipeStorage = 322, - OpConstantPipeStorage = 323, - OpCreatePipeFromPipeStorage = 324, - OpGetKernelLocalSizeForSubgroupCount = 325, - OpGetKernelMaxNumSubgroups = 326, - OpTypeNamedBarrier = 327, - OpNamedBarrierInitialize = 328, - OpMemoryNamedBarrier = 329, - OpModuleProcessed = 330, - OpExecutionModeId = 331, - OpDecorateId = 332, - OpGroupNonUniformElect = 333, - OpGroupNonUniformAll = 334, - OpGroupNonUniformAny = 335, - OpGroupNonUniformAllEqual = 336, - OpGroupNonUniformBroadcast = 337, - OpGroupNonUniformBroadcastFirst = 338, - OpGroupNonUniformBallot = 339, - OpGroupNonUniformInverseBallot = 340, - OpGroupNonUniformBallotBitExtract = 341, - OpGroupNonUniformBallotBitCount = 342, - OpGroupNonUniformBallotFindLSB = 343, - OpGroupNonUniformBallotFindMSB = 344, - OpGroupNonUniformShuffle = 345, - OpGroupNonUniformShuffleXor = 346, - OpGroupNonUniformShuffleUp = 347, - OpGroupNonUniformShuffleDown = 348, - OpGroupNonUniformIAdd = 349, - OpGroupNonUniformFAdd = 350, - OpGroupNonUniformIMul = 351, - OpGroupNonUniformFMul = 352, - OpGroupNonUniformSMin = 353, - OpGroupNonUniformUMin = 354, - OpGroupNonUniformFMin = 355, - OpGroupNonUniformSMax = 356, - OpGroupNonUniformUMax = 357, - OpGroupNonUniformFMax = 358, - OpGroupNonUniformBitwiseAnd = 359, - OpGroupNonUniformBitwiseOr = 360, - OpGroupNonUniformBitwiseXor = 361, - OpGroupNonUniformLogicalAnd = 362, - OpGroupNonUniformLogicalOr = 363, - OpGroupNonUniformLogicalXor = 364, - OpGroupNonUniformQuadBroadcast = 365, - OpGroupNonUniformQuadSwap = 366, - OpCopyLogical = 400, - OpPtrEqual = 401, - OpPtrNotEqual = 402, - OpPtrDiff = 403, - OpColorAttachmentReadEXT = 4160, - OpDepthAttachmentReadEXT = 4161, - OpStencilAttachmentReadEXT = 4162, - OpTerminateInvocation = 4416, - OpSubgroupBallotKHR = 4421, - OpSubgroupFirstInvocationKHR = 4422, - OpSubgroupAllKHR = 4428, - OpSubgroupAnyKHR = 4429, - OpSubgroupAllEqualKHR = 4430, - OpGroupNonUniformRotateKHR = 4431, - OpSubgroupReadInvocationKHR = 4432, - OpTraceRayKHR = 4445, - OpExecuteCallableKHR = 4446, - OpConvertUToAccelerationStructureKHR = 4447, - OpIgnoreIntersectionKHR = 4448, - OpTerminateRayKHR = 4449, - OpSDot = 4450, - OpSDotKHR = 4450, - OpUDot = 4451, - OpUDotKHR = 4451, - OpSUDot = 4452, - OpSUDotKHR = 4452, - OpSDotAccSat = 4453, - OpSDotAccSatKHR = 4453, - OpUDotAccSat = 4454, - OpUDotAccSatKHR = 4454, - OpSUDotAccSat = 4455, - OpSUDotAccSatKHR = 4455, - OpTypeCooperativeMatrixKHR = 4456, - OpCooperativeMatrixLoadKHR = 4457, - OpCooperativeMatrixStoreKHR = 4458, - OpCooperativeMatrixMulAddKHR = 4459, - OpCooperativeMatrixLengthKHR = 4460, - OpTypeRayQueryKHR = 4472, - OpRayQueryInitializeKHR = 4473, - OpRayQueryTerminateKHR = 4474, - OpRayQueryGenerateIntersectionKHR = 4475, - OpRayQueryConfirmIntersectionKHR = 4476, - OpRayQueryProceedKHR = 4477, - OpRayQueryGetIntersectionTypeKHR = 4479, - OpImageSampleWeightedQCOM = 4480, - OpImageBoxFilterQCOM = 4481, - OpImageBlockMatchSSDQCOM = 4482, - OpImageBlockMatchSADQCOM = 4483, - OpGroupIAddNonUniformAMD = 5000, - OpGroupFAddNonUniformAMD = 5001, - OpGroupFMinNonUniformAMD = 5002, - OpGroupUMinNonUniformAMD = 5003, - OpGroupSMinNonUniformAMD = 5004, - OpGroupFMaxNonUniformAMD = 5005, - OpGroupUMaxNonUniformAMD = 5006, - OpGroupSMaxNonUniformAMD = 5007, - OpFragmentMaskFetchAMD = 5011, - OpFragmentFetchAMD = 5012, - OpReadClockKHR = 5056, - OpHitObjectRecordHitMotionNV = 5249, - OpHitObjectRecordHitWithIndexMotionNV = 5250, - OpHitObjectRecordMissMotionNV = 5251, - OpHitObjectGetWorldToObjectNV = 5252, - OpHitObjectGetObjectToWorldNV = 5253, - OpHitObjectGetObjectRayDirectionNV = 5254, - OpHitObjectGetObjectRayOriginNV = 5255, - OpHitObjectTraceRayMotionNV = 5256, - OpHitObjectGetShaderRecordBufferHandleNV = 5257, - OpHitObjectGetShaderBindingTableRecordIndexNV = 5258, - OpHitObjectRecordEmptyNV = 5259, - OpHitObjectTraceRayNV = 5260, - OpHitObjectRecordHitNV = 5261, - OpHitObjectRecordHitWithIndexNV = 5262, - OpHitObjectRecordMissNV = 5263, - OpHitObjectExecuteShaderNV = 5264, - OpHitObjectGetCurrentTimeNV = 5265, - OpHitObjectGetAttributesNV = 5266, - OpHitObjectGetHitKindNV = 5267, - OpHitObjectGetPrimitiveIndexNV = 5268, - OpHitObjectGetGeometryIndexNV = 5269, - OpHitObjectGetInstanceIdNV = 5270, - OpHitObjectGetInstanceCustomIndexNV = 5271, - OpHitObjectGetWorldRayDirectionNV = 5272, - OpHitObjectGetWorldRayOriginNV = 5273, - OpHitObjectGetRayTMaxNV = 5274, - OpHitObjectGetRayTMinNV = 5275, - OpHitObjectIsEmptyNV = 5276, - OpHitObjectIsHitNV = 5277, - OpHitObjectIsMissNV = 5278, - OpReorderThreadWithHitObjectNV = 5279, - OpReorderThreadWithHintNV = 5280, - OpTypeHitObjectNV = 5281, - OpImageSampleFootprintNV = 5283, - OpEmitMeshTasksEXT = 5294, - OpSetMeshOutputsEXT = 5295, - OpGroupNonUniformPartitionNV = 5296, - OpWritePackedPrimitiveIndices4x8NV = 5299, - OpReportIntersectionKHR = 5334, - OpReportIntersectionNV = 5334, - OpIgnoreIntersectionNV = 5335, - OpTerminateRayNV = 5336, - OpTraceNV = 5337, - OpTraceMotionNV = 5338, - OpTraceRayMotionNV = 5339, - OpRayQueryGetIntersectionTriangleVertexPositionsKHR = 5340, - OpTypeAccelerationStructureKHR = 5341, - OpTypeAccelerationStructureNV = 5341, - OpExecuteCallableNV = 5344, - OpTypeCooperativeMatrixNV = 5358, - OpCooperativeMatrixLoadNV = 5359, - OpCooperativeMatrixStoreNV = 5360, - OpCooperativeMatrixMulAddNV = 5361, - OpCooperativeMatrixLengthNV = 5362, - OpBeginInvocationInterlockEXT = 5364, - OpEndInvocationInterlockEXT = 5365, - OpDemoteToHelperInvocation = 5380, - OpDemoteToHelperInvocationEXT = 5380, - OpIsHelperInvocationEXT = 5381, - OpConvertUToImageNV = 5391, - OpConvertUToSamplerNV = 5392, - OpConvertImageToUNV = 5393, - OpConvertSamplerToUNV = 5394, - OpConvertUToSampledImageNV = 5395, - OpConvertSampledImageToUNV = 5396, - OpSamplerImageAddressingModeNV = 5397, - OpSubgroupShuffleINTEL = 5571, - OpSubgroupShuffleDownINTEL = 5572, - OpSubgroupShuffleUpINTEL = 5573, - OpSubgroupShuffleXorINTEL = 5574, - OpSubgroupBlockReadINTEL = 5575, - OpSubgroupBlockWriteINTEL = 5576, - OpSubgroupImageBlockReadINTEL = 5577, - OpSubgroupImageBlockWriteINTEL = 5578, - OpSubgroupImageMediaBlockReadINTEL = 5580, - OpSubgroupImageMediaBlockWriteINTEL = 5581, - OpUCountLeadingZerosINTEL = 5585, - OpUCountTrailingZerosINTEL = 5586, - OpAbsISubINTEL = 5587, - OpAbsUSubINTEL = 5588, - OpIAddSatINTEL = 5589, - OpUAddSatINTEL = 5590, - OpIAverageINTEL = 5591, - OpUAverageINTEL = 5592, - OpIAverageRoundedINTEL = 5593, - OpUAverageRoundedINTEL = 5594, - OpISubSatINTEL = 5595, - OpUSubSatINTEL = 5596, - OpIMul32x16INTEL = 5597, - OpUMul32x16INTEL = 5598, - OpConstantFunctionPointerINTEL = 5600, - OpFunctionPointerCallINTEL = 5601, - OpAsmTargetINTEL = 5609, - OpAsmINTEL = 5610, - OpAsmCallINTEL = 5611, - OpAtomicFMinEXT = 5614, - OpAtomicFMaxEXT = 5615, - OpAssumeTrueKHR = 5630, - OpExpectKHR = 5631, - OpDecorateString = 5632, - OpDecorateStringGOOGLE = 5632, - OpMemberDecorateString = 5633, - OpMemberDecorateStringGOOGLE = 5633, - OpVmeImageINTEL = 5699, - OpTypeVmeImageINTEL = 5700, - OpTypeAvcImePayloadINTEL = 5701, - OpTypeAvcRefPayloadINTEL = 5702, - OpTypeAvcSicPayloadINTEL = 5703, - OpTypeAvcMcePayloadINTEL = 5704, - OpTypeAvcMceResultINTEL = 5705, - OpTypeAvcImeResultINTEL = 5706, - OpTypeAvcImeResultSingleReferenceStreamoutINTEL = 5707, - OpTypeAvcImeResultDualReferenceStreamoutINTEL = 5708, - OpTypeAvcImeSingleReferenceStreaminINTEL = 5709, - OpTypeAvcImeDualReferenceStreaminINTEL = 5710, - OpTypeAvcRefResultINTEL = 5711, - OpTypeAvcSicResultINTEL = 5712, - OpSubgroupAvcMceGetDefaultInterBaseMultiReferencePenaltyINTEL = 5713, - OpSubgroupAvcMceSetInterBaseMultiReferencePenaltyINTEL = 5714, - OpSubgroupAvcMceGetDefaultInterShapePenaltyINTEL = 5715, - OpSubgroupAvcMceSetInterShapePenaltyINTEL = 5716, - OpSubgroupAvcMceGetDefaultInterDirectionPenaltyINTEL = 5717, - OpSubgroupAvcMceSetInterDirectionPenaltyINTEL = 5718, - OpSubgroupAvcMceGetDefaultIntraLumaShapePenaltyINTEL = 5719, - OpSubgroupAvcMceGetDefaultInterMotionVectorCostTableINTEL = 5720, - OpSubgroupAvcMceGetDefaultHighPenaltyCostTableINTEL = 5721, - OpSubgroupAvcMceGetDefaultMediumPenaltyCostTableINTEL = 5722, - OpSubgroupAvcMceGetDefaultLowPenaltyCostTableINTEL = 5723, - OpSubgroupAvcMceSetMotionVectorCostFunctionINTEL = 5724, - OpSubgroupAvcMceGetDefaultIntraLumaModePenaltyINTEL = 5725, - OpSubgroupAvcMceGetDefaultNonDcLumaIntraPenaltyINTEL = 5726, - OpSubgroupAvcMceGetDefaultIntraChromaModeBasePenaltyINTEL = 5727, - OpSubgroupAvcMceSetAcOnlyHaarINTEL = 5728, - OpSubgroupAvcMceSetSourceInterlacedFieldPolarityINTEL = 5729, - OpSubgroupAvcMceSetSingleReferenceInterlacedFieldPolarityINTEL = 5730, - OpSubgroupAvcMceSetDualReferenceInterlacedFieldPolaritiesINTEL = 5731, - OpSubgroupAvcMceConvertToImePayloadINTEL = 5732, - OpSubgroupAvcMceConvertToImeResultINTEL = 5733, - OpSubgroupAvcMceConvertToRefPayloadINTEL = 5734, - OpSubgroupAvcMceConvertToRefResultINTEL = 5735, - OpSubgroupAvcMceConvertToSicPayloadINTEL = 5736, - OpSubgroupAvcMceConvertToSicResultINTEL = 5737, - OpSubgroupAvcMceGetMotionVectorsINTEL = 5738, - OpSubgroupAvcMceGetInterDistortionsINTEL = 5739, - OpSubgroupAvcMceGetBestInterDistortionsINTEL = 5740, - OpSubgroupAvcMceGetInterMajorShapeINTEL = 5741, - OpSubgroupAvcMceGetInterMinorShapeINTEL = 5742, - OpSubgroupAvcMceGetInterDirectionsINTEL = 5743, - OpSubgroupAvcMceGetInterMotionVectorCountINTEL = 5744, - OpSubgroupAvcMceGetInterReferenceIdsINTEL = 5745, - OpSubgroupAvcMceGetInterReferenceInterlacedFieldPolaritiesINTEL = 5746, - OpSubgroupAvcImeInitializeINTEL = 5747, - OpSubgroupAvcImeSetSingleReferenceINTEL = 5748, - OpSubgroupAvcImeSetDualReferenceINTEL = 5749, - OpSubgroupAvcImeRefWindowSizeINTEL = 5750, - OpSubgroupAvcImeAdjustRefOffsetINTEL = 5751, - OpSubgroupAvcImeConvertToMcePayloadINTEL = 5752, - OpSubgroupAvcImeSetMaxMotionVectorCountINTEL = 5753, - OpSubgroupAvcImeSetUnidirectionalMixDisableINTEL = 5754, - OpSubgroupAvcImeSetEarlySearchTerminationThresholdINTEL = 5755, - OpSubgroupAvcImeSetWeightedSadINTEL = 5756, - OpSubgroupAvcImeEvaluateWithSingleReferenceINTEL = 5757, - OpSubgroupAvcImeEvaluateWithDualReferenceINTEL = 5758, - OpSubgroupAvcImeEvaluateWithSingleReferenceStreaminINTEL = 5759, - OpSubgroupAvcImeEvaluateWithDualReferenceStreaminINTEL = 5760, - OpSubgroupAvcImeEvaluateWithSingleReferenceStreamoutINTEL = 5761, - OpSubgroupAvcImeEvaluateWithDualReferenceStreamoutINTEL = 5762, - OpSubgroupAvcImeEvaluateWithSingleReferenceStreaminoutINTEL = 5763, - OpSubgroupAvcImeEvaluateWithDualReferenceStreaminoutINTEL = 5764, - OpSubgroupAvcImeConvertToMceResultINTEL = 5765, - OpSubgroupAvcImeGetSingleReferenceStreaminINTEL = 5766, - OpSubgroupAvcImeGetDualReferenceStreaminINTEL = 5767, - OpSubgroupAvcImeStripSingleReferenceStreamoutINTEL = 5768, - OpSubgroupAvcImeStripDualReferenceStreamoutINTEL = 5769, - OpSubgroupAvcImeGetStreamoutSingleReferenceMajorShapeMotionVectorsINTEL = 5770, - OpSubgroupAvcImeGetStreamoutSingleReferenceMajorShapeDistortionsINTEL = 5771, - OpSubgroupAvcImeGetStreamoutSingleReferenceMajorShapeReferenceIdsINTEL = 5772, - OpSubgroupAvcImeGetStreamoutDualReferenceMajorShapeMotionVectorsINTEL = 5773, - OpSubgroupAvcImeGetStreamoutDualReferenceMajorShapeDistortionsINTEL = 5774, - OpSubgroupAvcImeGetStreamoutDualReferenceMajorShapeReferenceIdsINTEL = 5775, - OpSubgroupAvcImeGetBorderReachedINTEL = 5776, - OpSubgroupAvcImeGetTruncatedSearchIndicationINTEL = 5777, - OpSubgroupAvcImeGetUnidirectionalEarlySearchTerminationINTEL = 5778, - OpSubgroupAvcImeGetWeightingPatternMinimumMotionVectorINTEL = 5779, - OpSubgroupAvcImeGetWeightingPatternMinimumDistortionINTEL = 5780, - OpSubgroupAvcFmeInitializeINTEL = 5781, - OpSubgroupAvcBmeInitializeINTEL = 5782, - OpSubgroupAvcRefConvertToMcePayloadINTEL = 5783, - OpSubgroupAvcRefSetBidirectionalMixDisableINTEL = 5784, - OpSubgroupAvcRefSetBilinearFilterEnableINTEL = 5785, - OpSubgroupAvcRefEvaluateWithSingleReferenceINTEL = 5786, - OpSubgroupAvcRefEvaluateWithDualReferenceINTEL = 5787, - OpSubgroupAvcRefEvaluateWithMultiReferenceINTEL = 5788, - OpSubgroupAvcRefEvaluateWithMultiReferenceInterlacedINTEL = 5789, - OpSubgroupAvcRefConvertToMceResultINTEL = 5790, - OpSubgroupAvcSicInitializeINTEL = 5791, - OpSubgroupAvcSicConfigureSkcINTEL = 5792, - OpSubgroupAvcSicConfigureIpeLumaINTEL = 5793, - OpSubgroupAvcSicConfigureIpeLumaChromaINTEL = 5794, - OpSubgroupAvcSicGetMotionVectorMaskINTEL = 5795, - OpSubgroupAvcSicConvertToMcePayloadINTEL = 5796, - OpSubgroupAvcSicSetIntraLumaShapePenaltyINTEL = 5797, - OpSubgroupAvcSicSetIntraLumaModeCostFunctionINTEL = 5798, - OpSubgroupAvcSicSetIntraChromaModeCostFunctionINTEL = 5799, - OpSubgroupAvcSicSetBilinearFilterEnableINTEL = 5800, - OpSubgroupAvcSicSetSkcForwardTransformEnableINTEL = 5801, - OpSubgroupAvcSicSetBlockBasedRawSkipSadINTEL = 5802, - OpSubgroupAvcSicEvaluateIpeINTEL = 5803, - OpSubgroupAvcSicEvaluateWithSingleReferenceINTEL = 5804, - OpSubgroupAvcSicEvaluateWithDualReferenceINTEL = 5805, - OpSubgroupAvcSicEvaluateWithMultiReferenceINTEL = 5806, - OpSubgroupAvcSicEvaluateWithMultiReferenceInterlacedINTEL = 5807, - OpSubgroupAvcSicConvertToMceResultINTEL = 5808, - OpSubgroupAvcSicGetIpeLumaShapeINTEL = 5809, - OpSubgroupAvcSicGetBestIpeLumaDistortionINTEL = 5810, - OpSubgroupAvcSicGetBestIpeChromaDistortionINTEL = 5811, - OpSubgroupAvcSicGetPackedIpeLumaModesINTEL = 5812, - OpSubgroupAvcSicGetIpeChromaModeINTEL = 5813, - 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, - OpAliasDomainDeclINTEL = 5911, - OpAliasScopeDeclINTEL = 5912, - OpAliasScopeListDeclINTEL = 5913, - 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, - OpRayQueryGetIntersectionInstanceCustomIndexKHR = 6019, - OpRayQueryGetIntersectionInstanceIdKHR = 6020, - OpRayQueryGetIntersectionInstanceShaderBindingTableRecordOffsetKHR = 6021, - OpRayQueryGetIntersectionGeometryIndexKHR = 6022, - OpRayQueryGetIntersectionPrimitiveIndexKHR = 6023, - OpRayQueryGetIntersectionBarycentricsKHR = 6024, - OpRayQueryGetIntersectionFrontFaceKHR = 6025, - OpRayQueryGetIntersectionCandidateAABBOpaqueKHR = 6026, - OpRayQueryGetIntersectionObjectRayDirectionKHR = 6027, - OpRayQueryGetIntersectionObjectRayOriginKHR = 6028, - OpRayQueryGetWorldRayDirectionKHR = 6029, - OpRayQueryGetWorldRayOriginKHR = 6030, - OpRayQueryGetIntersectionObjectToWorldKHR = 6031, - OpRayQueryGetIntersectionWorldToObjectKHR = 6032, - OpAtomicFAddEXT = 6035, - OpTypeBufferSurfaceINTEL = 6086, - OpTypeStructContinuedINTEL = 6090, - OpConstantCompositeContinuedINTEL = 6091, - OpSpecConstantCompositeContinuedINTEL = 6092, - OpConvertFToBF16INTEL = 6116, - OpConvertBF16ToFINTEL = 6117, - OpControlBarrierArriveINTEL = 6142, - OpControlBarrierWaitINTEL = 6143, - OpGroupIMulKHR = 6401, - OpGroupFMulKHR = 6402, - OpGroupBitwiseAndKHR = 6403, - OpGroupBitwiseOrKHR = 6404, - OpGroupBitwiseXorKHR = 6405, - OpGroupLogicalAndKHR = 6406, - OpGroupLogicalOrKHR = 6407, - OpGroupLogicalXorKHR = 6408, - }, - -} - diff --git a/Extern/3rdParty/shaderc/shaderc/include/spirv/unified1/spirv.py b/Extern/3rdParty/shaderc/shaderc/include/spirv/unified1/spirv.py deleted file mode 100644 index bdcdec1..0000000 --- a/Extern/3rdParty/shaderc/shaderc/include/spirv/unified1/spirv.py +++ /dev/null @@ -1,1984 +0,0 @@ -# Copyright (c) 2014-2020 The Khronos Group Inc. -# -# Permission is hereby granted, free of charge, to any person obtaining a copy -# of this software and/or associated documentation files (the "Materials"), -# 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. - -# This header is automatically generated by the same tool that creates -# the Binary Section of the SPIR-V specification. - -# Enumeration tokens for SPIR-V, in various styles: -# C, C++, C++11, JSON, Lua, Python, C#, D, Beef -# -# - C will have tokens with a "Spv" prefix, e.g.: SpvSourceLanguageGLSL -# - C++ will have tokens in the "spv" name space, e.g.: spv::SourceLanguageGLSL -# - C++11 will use enum classes in the spv namespace, e.g.: spv::SourceLanguage::GLSL -# - Lua will use tables, e.g.: spv.SourceLanguage.GLSL -# - Python will use dictionaries, e.g.: spv['SourceLanguage']['GLSL'] -# - C# will use enum classes in the Specification class located in the "Spv" namespace, -# e.g.: Spv.Specification.SourceLanguage.GLSL -# - D will have tokens under the "spv" module, e.g: spv.SourceLanguage.GLSL -# - Beef will use enum classes in the Specification class located in the "Spv" namespace, -# e.g.: Spv.Specification.SourceLanguage.GLSL -# -# Some tokens act like mask values, which can be OR'd together, -# while others are mutually exclusive. The mask-like ones have -# "Mask" in their name, and a parallel enum that has the shift -# amount (1 << x) for each corresponding enumerant. - -spv = { - 'MagicNumber' : 0x07230203, - 'Version' : 0x00010600, - 'Revision' : 1, - 'OpCodeMask' : 0xffff, - 'WordCountShift' : 16, - - 'SourceLanguage' : { - 'Unknown' : 0, - 'ESSL' : 1, - 'GLSL' : 2, - 'OpenCL_C' : 3, - 'OpenCL_CPP' : 4, - 'HLSL' : 5, - 'CPP_for_OpenCL' : 6, - 'SYCL' : 7, - 'HERO_C' : 8, - 'NZSL' : 9, - 'WGSL' : 10, - }, - - 'ExecutionModel' : { - 'Vertex' : 0, - 'TessellationControl' : 1, - 'TessellationEvaluation' : 2, - 'Geometry' : 3, - 'Fragment' : 4, - 'GLCompute' : 5, - 'Kernel' : 6, - 'TaskNV' : 5267, - 'MeshNV' : 5268, - 'RayGenerationKHR' : 5313, - 'RayGenerationNV' : 5313, - 'IntersectionKHR' : 5314, - 'IntersectionNV' : 5314, - 'AnyHitKHR' : 5315, - 'AnyHitNV' : 5315, - 'ClosestHitKHR' : 5316, - 'ClosestHitNV' : 5316, - 'MissKHR' : 5317, - 'MissNV' : 5317, - 'CallableKHR' : 5318, - 'CallableNV' : 5318, - 'TaskEXT' : 5364, - 'MeshEXT' : 5365, - }, - - 'AddressingModel' : { - 'Logical' : 0, - 'Physical32' : 1, - 'Physical64' : 2, - 'PhysicalStorageBuffer64' : 5348, - 'PhysicalStorageBuffer64EXT' : 5348, - }, - - 'MemoryModel' : { - 'Simple' : 0, - 'GLSL450' : 1, - 'OpenCL' : 2, - 'Vulkan' : 3, - 'VulkanKHR' : 3, - }, - - 'ExecutionMode' : { - 'Invocations' : 0, - 'SpacingEqual' : 1, - 'SpacingFractionalEven' : 2, - 'SpacingFractionalOdd' : 3, - 'VertexOrderCw' : 4, - 'VertexOrderCcw' : 5, - 'PixelCenterInteger' : 6, - 'OriginUpperLeft' : 7, - 'OriginLowerLeft' : 8, - 'EarlyFragmentTests' : 9, - 'PointMode' : 10, - 'Xfb' : 11, - 'DepthReplacing' : 12, - 'DepthGreater' : 14, - 'DepthLess' : 15, - 'DepthUnchanged' : 16, - 'LocalSize' : 17, - 'LocalSizeHint' : 18, - 'InputPoints' : 19, - 'InputLines' : 20, - 'InputLinesAdjacency' : 21, - 'Triangles' : 22, - 'InputTrianglesAdjacency' : 23, - 'Quads' : 24, - 'Isolines' : 25, - 'OutputVertices' : 26, - 'OutputPoints' : 27, - 'OutputLineStrip' : 28, - 'OutputTriangleStrip' : 29, - 'VecTypeHint' : 30, - 'ContractionOff' : 31, - 'Initializer' : 33, - 'Finalizer' : 34, - 'SubgroupSize' : 35, - 'SubgroupsPerWorkgroup' : 36, - 'SubgroupsPerWorkgroupId' : 37, - 'LocalSizeId' : 38, - 'LocalSizeHintId' : 39, - 'NonCoherentColorAttachmentReadEXT' : 4169, - 'NonCoherentDepthAttachmentReadEXT' : 4170, - 'NonCoherentStencilAttachmentReadEXT' : 4171, - 'SubgroupUniformControlFlowKHR' : 4421, - 'PostDepthCoverage' : 4446, - 'DenormPreserve' : 4459, - 'DenormFlushToZero' : 4460, - 'SignedZeroInfNanPreserve' : 4461, - 'RoundingModeRTE' : 4462, - 'RoundingModeRTZ' : 4463, - 'EarlyAndLateFragmentTestsAMD' : 5017, - 'StencilRefReplacingEXT' : 5027, - 'StencilRefUnchangedFrontAMD' : 5079, - 'StencilRefGreaterFrontAMD' : 5080, - 'StencilRefLessFrontAMD' : 5081, - 'StencilRefUnchangedBackAMD' : 5082, - 'StencilRefGreaterBackAMD' : 5083, - 'StencilRefLessBackAMD' : 5084, - 'OutputLinesEXT' : 5269, - 'OutputLinesNV' : 5269, - 'OutputPrimitivesEXT' : 5270, - 'OutputPrimitivesNV' : 5270, - 'DerivativeGroupQuadsNV' : 5289, - 'DerivativeGroupLinearNV' : 5290, - 'OutputTrianglesEXT' : 5298, - 'OutputTrianglesNV' : 5298, - 'PixelInterlockOrderedEXT' : 5366, - 'PixelInterlockUnorderedEXT' : 5367, - 'SampleInterlockOrderedEXT' : 5368, - 'SampleInterlockUnorderedEXT' : 5369, - 'ShadingRateInterlockOrderedEXT' : 5370, - 'ShadingRateInterlockUnorderedEXT' : 5371, - 'SharedLocalMemorySizeINTEL' : 5618, - 'RoundingModeRTPINTEL' : 5620, - 'RoundingModeRTNINTEL' : 5621, - 'FloatingPointModeALTINTEL' : 5622, - 'FloatingPointModeIEEEINTEL' : 5623, - 'MaxWorkgroupSizeINTEL' : 5893, - 'MaxWorkDimINTEL' : 5894, - 'NoGlobalOffsetINTEL' : 5895, - 'NumSIMDWorkitemsINTEL' : 5896, - 'SchedulerTargetFmaxMhzINTEL' : 5903, - 'StreamingInterfaceINTEL' : 6154, - 'RegisterMapInterfaceINTEL' : 6160, - 'NamedBarrierCountINTEL' : 6417, - }, - - 'StorageClass' : { - 'UniformConstant' : 0, - 'Input' : 1, - 'Uniform' : 2, - 'Output' : 3, - 'Workgroup' : 4, - 'CrossWorkgroup' : 5, - 'Private' : 6, - 'Function' : 7, - 'Generic' : 8, - 'PushConstant' : 9, - 'AtomicCounter' : 10, - 'Image' : 11, - 'StorageBuffer' : 12, - 'TileImageEXT' : 4172, - 'CallableDataKHR' : 5328, - 'CallableDataNV' : 5328, - 'IncomingCallableDataKHR' : 5329, - 'IncomingCallableDataNV' : 5329, - 'RayPayloadKHR' : 5338, - 'RayPayloadNV' : 5338, - 'HitAttributeKHR' : 5339, - 'HitAttributeNV' : 5339, - 'IncomingRayPayloadKHR' : 5342, - 'IncomingRayPayloadNV' : 5342, - 'ShaderRecordBufferKHR' : 5343, - 'ShaderRecordBufferNV' : 5343, - 'PhysicalStorageBuffer' : 5349, - 'PhysicalStorageBufferEXT' : 5349, - 'HitObjectAttributeNV' : 5385, - 'TaskPayloadWorkgroupEXT' : 5402, - 'CodeSectionINTEL' : 5605, - 'DeviceOnlyINTEL' : 5936, - 'HostOnlyINTEL' : 5937, - }, - - 'Dim' : { - 'Dim1D' : 0, - 'Dim2D' : 1, - 'Dim3D' : 2, - 'Cube' : 3, - 'Rect' : 4, - 'Buffer' : 5, - 'SubpassData' : 6, - 'TileImageDataEXT' : 4173, - }, - - 'SamplerAddressingMode' : { - 'None' : 0, - 'ClampToEdge' : 1, - 'Clamp' : 2, - 'Repeat' : 3, - 'RepeatMirrored' : 4, - }, - - 'SamplerFilterMode' : { - 'Nearest' : 0, - 'Linear' : 1, - }, - - 'ImageFormat' : { - 'Unknown' : 0, - 'Rgba32f' : 1, - 'Rgba16f' : 2, - 'R32f' : 3, - 'Rgba8' : 4, - 'Rgba8Snorm' : 5, - 'Rg32f' : 6, - 'Rg16f' : 7, - 'R11fG11fB10f' : 8, - 'R16f' : 9, - 'Rgba16' : 10, - 'Rgb10A2' : 11, - 'Rg16' : 12, - 'Rg8' : 13, - 'R16' : 14, - 'R8' : 15, - 'Rgba16Snorm' : 16, - 'Rg16Snorm' : 17, - 'Rg8Snorm' : 18, - 'R16Snorm' : 19, - 'R8Snorm' : 20, - 'Rgba32i' : 21, - 'Rgba16i' : 22, - 'Rgba8i' : 23, - 'R32i' : 24, - 'Rg32i' : 25, - 'Rg16i' : 26, - 'Rg8i' : 27, - 'R16i' : 28, - 'R8i' : 29, - 'Rgba32ui' : 30, - 'Rgba16ui' : 31, - 'Rgba8ui' : 32, - 'R32ui' : 33, - 'Rgb10a2ui' : 34, - 'Rg32ui' : 35, - 'Rg16ui' : 36, - 'Rg8ui' : 37, - 'R16ui' : 38, - 'R8ui' : 39, - 'R64ui' : 40, - 'R64i' : 41, - }, - - 'ImageChannelOrder' : { - 'R' : 0, - 'A' : 1, - 'RG' : 2, - 'RA' : 3, - 'RGB' : 4, - 'RGBA' : 5, - 'BGRA' : 6, - 'ARGB' : 7, - 'Intensity' : 8, - 'Luminance' : 9, - 'Rx' : 10, - 'RGx' : 11, - 'RGBx' : 12, - 'Depth' : 13, - 'DepthStencil' : 14, - 'sRGB' : 15, - 'sRGBx' : 16, - 'sRGBA' : 17, - 'sBGRA' : 18, - 'ABGR' : 19, - }, - - 'ImageChannelDataType' : { - 'SnormInt8' : 0, - 'SnormInt16' : 1, - 'UnormInt8' : 2, - 'UnormInt16' : 3, - 'UnormShort565' : 4, - 'UnormShort555' : 5, - 'UnormInt101010' : 6, - 'SignedInt8' : 7, - 'SignedInt16' : 8, - 'SignedInt32' : 9, - 'UnsignedInt8' : 10, - 'UnsignedInt16' : 11, - 'UnsignedInt32' : 12, - 'HalfFloat' : 13, - 'Float' : 14, - 'UnormInt24' : 15, - 'UnormInt101010_2' : 16, - 'UnsignedIntRaw10EXT' : 19, - 'UnsignedIntRaw12EXT' : 20, - }, - - 'ImageOperandsShift' : { - 'Bias' : 0, - 'Lod' : 1, - 'Grad' : 2, - 'ConstOffset' : 3, - 'Offset' : 4, - 'ConstOffsets' : 5, - 'Sample' : 6, - 'MinLod' : 7, - 'MakeTexelAvailable' : 8, - 'MakeTexelAvailableKHR' : 8, - 'MakeTexelVisible' : 9, - 'MakeTexelVisibleKHR' : 9, - 'NonPrivateTexel' : 10, - 'NonPrivateTexelKHR' : 10, - 'VolatileTexel' : 11, - 'VolatileTexelKHR' : 11, - 'SignExtend' : 12, - 'ZeroExtend' : 13, - 'Nontemporal' : 14, - 'Offsets' : 16, - }, - - 'ImageOperandsMask' : { - 'MaskNone' : 0, - 'Bias' : 0x00000001, - 'Lod' : 0x00000002, - 'Grad' : 0x00000004, - 'ConstOffset' : 0x00000008, - 'Offset' : 0x00000010, - 'ConstOffsets' : 0x00000020, - 'Sample' : 0x00000040, - 'MinLod' : 0x00000080, - 'MakeTexelAvailable' : 0x00000100, - 'MakeTexelAvailableKHR' : 0x00000100, - 'MakeTexelVisible' : 0x00000200, - 'MakeTexelVisibleKHR' : 0x00000200, - 'NonPrivateTexel' : 0x00000400, - 'NonPrivateTexelKHR' : 0x00000400, - 'VolatileTexel' : 0x00000800, - 'VolatileTexelKHR' : 0x00000800, - 'SignExtend' : 0x00001000, - 'ZeroExtend' : 0x00002000, - 'Nontemporal' : 0x00004000, - 'Offsets' : 0x00010000, - }, - - 'FPFastMathModeShift' : { - 'NotNaN' : 0, - 'NotInf' : 1, - 'NSZ' : 2, - 'AllowRecip' : 3, - 'Fast' : 4, - 'AllowContractFastINTEL' : 16, - 'AllowReassocINTEL' : 17, - }, - - 'FPFastMathModeMask' : { - 'MaskNone' : 0, - 'NotNaN' : 0x00000001, - 'NotInf' : 0x00000002, - 'NSZ' : 0x00000004, - 'AllowRecip' : 0x00000008, - 'Fast' : 0x00000010, - 'AllowContractFastINTEL' : 0x00010000, - 'AllowReassocINTEL' : 0x00020000, - }, - - 'FPRoundingMode' : { - 'RTE' : 0, - 'RTZ' : 1, - 'RTP' : 2, - 'RTN' : 3, - }, - - 'LinkageType' : { - 'Export' : 0, - 'Import' : 1, - 'LinkOnceODR' : 2, - }, - - 'AccessQualifier' : { - 'ReadOnly' : 0, - 'WriteOnly' : 1, - 'ReadWrite' : 2, - }, - - 'FunctionParameterAttribute' : { - 'Zext' : 0, - 'Sext' : 1, - 'ByVal' : 2, - 'Sret' : 3, - 'NoAlias' : 4, - 'NoCapture' : 5, - 'NoWrite' : 6, - 'NoReadWrite' : 7, - 'RuntimeAlignedINTEL' : 5940, - }, - - 'Decoration' : { - 'RelaxedPrecision' : 0, - 'SpecId' : 1, - 'Block' : 2, - 'BufferBlock' : 3, - 'RowMajor' : 4, - 'ColMajor' : 5, - 'ArrayStride' : 6, - 'MatrixStride' : 7, - 'GLSLShared' : 8, - 'GLSLPacked' : 9, - 'CPacked' : 10, - 'BuiltIn' : 11, - 'NoPerspective' : 13, - 'Flat' : 14, - 'Patch' : 15, - 'Centroid' : 16, - 'Sample' : 17, - 'Invariant' : 18, - 'Restrict' : 19, - 'Aliased' : 20, - 'Volatile' : 21, - 'Constant' : 22, - 'Coherent' : 23, - 'NonWritable' : 24, - 'NonReadable' : 25, - 'Uniform' : 26, - 'UniformId' : 27, - 'SaturatedConversion' : 28, - 'Stream' : 29, - 'Location' : 30, - 'Component' : 31, - 'Index' : 32, - 'Binding' : 33, - 'DescriptorSet' : 34, - 'Offset' : 35, - 'XfbBuffer' : 36, - 'XfbStride' : 37, - 'FuncParamAttr' : 38, - 'FPRoundingMode' : 39, - 'FPFastMathMode' : 40, - 'LinkageAttributes' : 41, - 'NoContraction' : 42, - 'InputAttachmentIndex' : 43, - 'Alignment' : 44, - 'MaxByteOffset' : 45, - 'AlignmentId' : 46, - 'MaxByteOffsetId' : 47, - 'NoSignedWrap' : 4469, - 'NoUnsignedWrap' : 4470, - 'WeightTextureQCOM' : 4487, - 'BlockMatchTextureQCOM' : 4488, - 'ExplicitInterpAMD' : 4999, - 'OverrideCoverageNV' : 5248, - 'PassthroughNV' : 5250, - 'ViewportRelativeNV' : 5252, - 'SecondaryViewportRelativeNV' : 5256, - 'PerPrimitiveEXT' : 5271, - 'PerPrimitiveNV' : 5271, - 'PerViewNV' : 5272, - 'PerTaskNV' : 5273, - 'PerVertexKHR' : 5285, - 'PerVertexNV' : 5285, - 'NonUniform' : 5300, - 'NonUniformEXT' : 5300, - 'RestrictPointer' : 5355, - 'RestrictPointerEXT' : 5355, - 'AliasedPointer' : 5356, - 'AliasedPointerEXT' : 5356, - 'HitObjectShaderRecordBufferNV' : 5386, - 'BindlessSamplerNV' : 5398, - 'BindlessImageNV' : 5399, - 'BoundSamplerNV' : 5400, - 'BoundImageNV' : 5401, - 'SIMTCallINTEL' : 5599, - 'ReferencedIndirectlyINTEL' : 5602, - 'ClobberINTEL' : 5607, - 'SideEffectsINTEL' : 5608, - 'VectorComputeVariableINTEL' : 5624, - 'FuncParamIOKindINTEL' : 5625, - 'VectorComputeFunctionINTEL' : 5626, - 'StackCallINTEL' : 5627, - 'GlobalVariableOffsetINTEL' : 5628, - 'CounterBuffer' : 5634, - '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, - 'MathOpDSPModeINTEL' : 5909, - 'AliasScopeINTEL' : 5914, - 'NoAliasINTEL' : 5915, - 'InitiationIntervalINTEL' : 5917, - 'MaxConcurrencyINTEL' : 5918, - 'PipelineEnableINTEL' : 5919, - 'BufferLocationINTEL' : 5921, - 'IOPipeStorageINTEL' : 5944, - 'FunctionFloatingPointModeINTEL' : 6080, - 'SingleElementVectorINTEL' : 6085, - 'VectorComputeCallableFunctionINTEL' : 6087, - 'MediaBlockIOINTEL' : 6140, - 'FPMaxErrorDecorationINTEL' : 6170, - 'LatencyControlLabelINTEL' : 6172, - 'LatencyControlConstraintINTEL' : 6173, - 'ConduitKernelArgumentINTEL' : 6175, - 'RegisterMapKernelArgumentINTEL' : 6176, - 'MMHostInterfaceAddressWidthINTEL' : 6177, - 'MMHostInterfaceDataWidthINTEL' : 6178, - 'MMHostInterfaceLatencyINTEL' : 6179, - 'MMHostInterfaceReadWriteModeINTEL' : 6180, - 'MMHostInterfaceMaxBurstINTEL' : 6181, - 'MMHostInterfaceWaitRequestINTEL' : 6182, - 'StableKernelArgumentINTEL' : 6183, - }, - - 'BuiltIn' : { - 'Position' : 0, - 'PointSize' : 1, - 'ClipDistance' : 3, - 'CullDistance' : 4, - 'VertexId' : 5, - 'InstanceId' : 6, - 'PrimitiveId' : 7, - 'InvocationId' : 8, - 'Layer' : 9, - 'ViewportIndex' : 10, - 'TessLevelOuter' : 11, - 'TessLevelInner' : 12, - 'TessCoord' : 13, - 'PatchVertices' : 14, - 'FragCoord' : 15, - 'PointCoord' : 16, - 'FrontFacing' : 17, - 'SampleId' : 18, - 'SamplePosition' : 19, - 'SampleMask' : 20, - 'FragDepth' : 22, - 'HelperInvocation' : 23, - 'NumWorkgroups' : 24, - 'WorkgroupSize' : 25, - 'WorkgroupId' : 26, - 'LocalInvocationId' : 27, - 'GlobalInvocationId' : 28, - 'LocalInvocationIndex' : 29, - 'WorkDim' : 30, - 'GlobalSize' : 31, - 'EnqueuedWorkgroupSize' : 32, - 'GlobalOffset' : 33, - 'GlobalLinearId' : 34, - 'SubgroupSize' : 36, - 'SubgroupMaxSize' : 37, - 'NumSubgroups' : 38, - 'NumEnqueuedSubgroups' : 39, - 'SubgroupId' : 40, - 'SubgroupLocalInvocationId' : 41, - 'VertexIndex' : 42, - 'InstanceIndex' : 43, - 'CoreIDARM' : 4160, - 'CoreCountARM' : 4161, - 'CoreMaxIDARM' : 4162, - 'WarpIDARM' : 4163, - 'WarpMaxIDARM' : 4164, - 'SubgroupEqMask' : 4416, - 'SubgroupEqMaskKHR' : 4416, - 'SubgroupGeMask' : 4417, - 'SubgroupGeMaskKHR' : 4417, - 'SubgroupGtMask' : 4418, - 'SubgroupGtMaskKHR' : 4418, - 'SubgroupLeMask' : 4419, - 'SubgroupLeMaskKHR' : 4419, - 'SubgroupLtMask' : 4420, - 'SubgroupLtMaskKHR' : 4420, - 'BaseVertex' : 4424, - 'BaseInstance' : 4425, - 'DrawIndex' : 4426, - 'PrimitiveShadingRateKHR' : 4432, - 'DeviceIndex' : 4438, - 'ViewIndex' : 4440, - 'ShadingRateKHR' : 4444, - 'BaryCoordNoPerspAMD' : 4992, - 'BaryCoordNoPerspCentroidAMD' : 4993, - 'BaryCoordNoPerspSampleAMD' : 4994, - 'BaryCoordSmoothAMD' : 4995, - 'BaryCoordSmoothCentroidAMD' : 4996, - 'BaryCoordSmoothSampleAMD' : 4997, - 'BaryCoordPullModelAMD' : 4998, - 'FragStencilRefEXT' : 5014, - 'ViewportMaskNV' : 5253, - 'SecondaryPositionNV' : 5257, - 'SecondaryViewportMaskNV' : 5258, - 'PositionPerViewNV' : 5261, - 'ViewportMaskPerViewNV' : 5262, - 'FullyCoveredEXT' : 5264, - 'TaskCountNV' : 5274, - 'PrimitiveCountNV' : 5275, - 'PrimitiveIndicesNV' : 5276, - 'ClipDistancePerViewNV' : 5277, - 'CullDistancePerViewNV' : 5278, - 'LayerPerViewNV' : 5279, - 'MeshViewCountNV' : 5280, - 'MeshViewIndicesNV' : 5281, - 'BaryCoordKHR' : 5286, - 'BaryCoordNV' : 5286, - 'BaryCoordNoPerspKHR' : 5287, - 'BaryCoordNoPerspNV' : 5287, - 'FragSizeEXT' : 5292, - 'FragmentSizeNV' : 5292, - 'FragInvocationCountEXT' : 5293, - 'InvocationsPerPixelNV' : 5293, - 'PrimitivePointIndicesEXT' : 5294, - 'PrimitiveLineIndicesEXT' : 5295, - 'PrimitiveTriangleIndicesEXT' : 5296, - 'CullPrimitiveEXT' : 5299, - 'LaunchIdKHR' : 5319, - 'LaunchIdNV' : 5319, - 'LaunchSizeKHR' : 5320, - 'LaunchSizeNV' : 5320, - 'WorldRayOriginKHR' : 5321, - 'WorldRayOriginNV' : 5321, - 'WorldRayDirectionKHR' : 5322, - 'WorldRayDirectionNV' : 5322, - 'ObjectRayOriginKHR' : 5323, - 'ObjectRayOriginNV' : 5323, - 'ObjectRayDirectionKHR' : 5324, - 'ObjectRayDirectionNV' : 5324, - 'RayTminKHR' : 5325, - 'RayTminNV' : 5325, - 'RayTmaxKHR' : 5326, - 'RayTmaxNV' : 5326, - 'InstanceCustomIndexKHR' : 5327, - 'InstanceCustomIndexNV' : 5327, - 'ObjectToWorldKHR' : 5330, - 'ObjectToWorldNV' : 5330, - 'WorldToObjectKHR' : 5331, - 'WorldToObjectNV' : 5331, - 'HitTNV' : 5332, - 'HitKindKHR' : 5333, - 'HitKindNV' : 5333, - 'CurrentRayTimeNV' : 5334, - 'HitTriangleVertexPositionsKHR' : 5335, - 'IncomingRayFlagsKHR' : 5351, - 'IncomingRayFlagsNV' : 5351, - 'RayGeometryIndexKHR' : 5352, - 'WarpsPerSMNV' : 5374, - 'SMCountNV' : 5375, - 'WarpIDNV' : 5376, - 'SMIDNV' : 5377, - 'CullMaskKHR' : 6021, - }, - - 'SelectionControlShift' : { - 'Flatten' : 0, - 'DontFlatten' : 1, - }, - - 'SelectionControlMask' : { - 'MaskNone' : 0, - 'Flatten' : 0x00000001, - 'DontFlatten' : 0x00000002, - }, - - 'LoopControlShift' : { - 'Unroll' : 0, - 'DontUnroll' : 1, - 'DependencyInfinite' : 2, - 'DependencyLength' : 3, - 'MinIterations' : 4, - 'MaxIterations' : 5, - 'IterationMultiple' : 6, - 'PeelCount' : 7, - 'PartialCount' : 8, - 'InitiationIntervalINTEL' : 16, - 'MaxConcurrencyINTEL' : 17, - 'DependencyArrayINTEL' : 18, - 'PipelineEnableINTEL' : 19, - 'LoopCoalesceINTEL' : 20, - 'MaxInterleavingINTEL' : 21, - 'SpeculatedIterationsINTEL' : 22, - 'NoFusionINTEL' : 23, - 'LoopCountINTEL' : 24, - 'MaxReinvocationDelayINTEL' : 25, - }, - - 'LoopControlMask' : { - 'MaskNone' : 0, - 'Unroll' : 0x00000001, - 'DontUnroll' : 0x00000002, - 'DependencyInfinite' : 0x00000004, - 'DependencyLength' : 0x00000008, - 'MinIterations' : 0x00000010, - 'MaxIterations' : 0x00000020, - 'IterationMultiple' : 0x00000040, - 'PeelCount' : 0x00000080, - 'PartialCount' : 0x00000100, - 'InitiationIntervalINTEL' : 0x00010000, - 'MaxConcurrencyINTEL' : 0x00020000, - 'DependencyArrayINTEL' : 0x00040000, - 'PipelineEnableINTEL' : 0x00080000, - 'LoopCoalesceINTEL' : 0x00100000, - 'MaxInterleavingINTEL' : 0x00200000, - 'SpeculatedIterationsINTEL' : 0x00400000, - 'NoFusionINTEL' : 0x00800000, - 'LoopCountINTEL' : 0x01000000, - 'MaxReinvocationDelayINTEL' : 0x02000000, - }, - - 'FunctionControlShift' : { - 'Inline' : 0, - 'DontInline' : 1, - 'Pure' : 2, - 'Const' : 3, - 'OptNoneINTEL' : 16, - }, - - 'FunctionControlMask' : { - 'MaskNone' : 0, - 'Inline' : 0x00000001, - 'DontInline' : 0x00000002, - 'Pure' : 0x00000004, - 'Const' : 0x00000008, - 'OptNoneINTEL' : 0x00010000, - }, - - 'MemorySemanticsShift' : { - 'Acquire' : 1, - 'Release' : 2, - 'AcquireRelease' : 3, - 'SequentiallyConsistent' : 4, - 'UniformMemory' : 6, - 'SubgroupMemory' : 7, - 'WorkgroupMemory' : 8, - 'CrossWorkgroupMemory' : 9, - 'AtomicCounterMemory' : 10, - 'ImageMemory' : 11, - 'OutputMemory' : 12, - 'OutputMemoryKHR' : 12, - 'MakeAvailable' : 13, - 'MakeAvailableKHR' : 13, - 'MakeVisible' : 14, - 'MakeVisibleKHR' : 14, - 'Volatile' : 15, - }, - - 'MemorySemanticsMask' : { - 'MaskNone' : 0, - 'Acquire' : 0x00000002, - 'Release' : 0x00000004, - 'AcquireRelease' : 0x00000008, - 'SequentiallyConsistent' : 0x00000010, - 'UniformMemory' : 0x00000040, - 'SubgroupMemory' : 0x00000080, - 'WorkgroupMemory' : 0x00000100, - 'CrossWorkgroupMemory' : 0x00000200, - 'AtomicCounterMemory' : 0x00000400, - 'ImageMemory' : 0x00000800, - 'OutputMemory' : 0x00001000, - 'OutputMemoryKHR' : 0x00001000, - 'MakeAvailable' : 0x00002000, - 'MakeAvailableKHR' : 0x00002000, - 'MakeVisible' : 0x00004000, - 'MakeVisibleKHR' : 0x00004000, - 'Volatile' : 0x00008000, - }, - - 'MemoryAccessShift' : { - 'Volatile' : 0, - 'Aligned' : 1, - 'Nontemporal' : 2, - 'MakePointerAvailable' : 3, - 'MakePointerAvailableKHR' : 3, - 'MakePointerVisible' : 4, - 'MakePointerVisibleKHR' : 4, - 'NonPrivatePointer' : 5, - 'NonPrivatePointerKHR' : 5, - 'AliasScopeINTELMask' : 16, - 'NoAliasINTELMask' : 17, - }, - - 'MemoryAccessMask' : { - 'MaskNone' : 0, - 'Volatile' : 0x00000001, - 'Aligned' : 0x00000002, - 'Nontemporal' : 0x00000004, - 'MakePointerAvailable' : 0x00000008, - 'MakePointerAvailableKHR' : 0x00000008, - 'MakePointerVisible' : 0x00000010, - 'MakePointerVisibleKHR' : 0x00000010, - 'NonPrivatePointer' : 0x00000020, - 'NonPrivatePointerKHR' : 0x00000020, - 'AliasScopeINTELMask' : 0x00010000, - 'NoAliasINTELMask' : 0x00020000, - }, - - 'Scope' : { - 'CrossDevice' : 0, - 'Device' : 1, - 'Workgroup' : 2, - 'Subgroup' : 3, - 'Invocation' : 4, - 'QueueFamily' : 5, - 'QueueFamilyKHR' : 5, - 'ShaderCallKHR' : 6, - }, - - 'GroupOperation' : { - 'Reduce' : 0, - 'InclusiveScan' : 1, - 'ExclusiveScan' : 2, - 'ClusteredReduce' : 3, - 'PartitionedReduceNV' : 6, - 'PartitionedInclusiveScanNV' : 7, - 'PartitionedExclusiveScanNV' : 8, - }, - - 'KernelEnqueueFlags' : { - 'NoWait' : 0, - 'WaitKernel' : 1, - 'WaitWorkGroup' : 2, - }, - - 'KernelProfilingInfoShift' : { - 'CmdExecTime' : 0, - }, - - 'KernelProfilingInfoMask' : { - 'MaskNone' : 0, - 'CmdExecTime' : 0x00000001, - }, - - 'Capability' : { - 'Matrix' : 0, - 'Shader' : 1, - 'Geometry' : 2, - 'Tessellation' : 3, - 'Addresses' : 4, - 'Linkage' : 5, - 'Kernel' : 6, - 'Vector16' : 7, - 'Float16Buffer' : 8, - 'Float16' : 9, - 'Float64' : 10, - 'Int64' : 11, - 'Int64Atomics' : 12, - 'ImageBasic' : 13, - 'ImageReadWrite' : 14, - 'ImageMipmap' : 15, - 'Pipes' : 17, - 'Groups' : 18, - 'DeviceEnqueue' : 19, - 'LiteralSampler' : 20, - 'AtomicStorage' : 21, - 'Int16' : 22, - 'TessellationPointSize' : 23, - 'GeometryPointSize' : 24, - 'ImageGatherExtended' : 25, - 'StorageImageMultisample' : 27, - 'UniformBufferArrayDynamicIndexing' : 28, - 'SampledImageArrayDynamicIndexing' : 29, - 'StorageBufferArrayDynamicIndexing' : 30, - 'StorageImageArrayDynamicIndexing' : 31, - 'ClipDistance' : 32, - 'CullDistance' : 33, - 'ImageCubeArray' : 34, - 'SampleRateShading' : 35, - 'ImageRect' : 36, - 'SampledRect' : 37, - 'GenericPointer' : 38, - 'Int8' : 39, - 'InputAttachment' : 40, - 'SparseResidency' : 41, - 'MinLod' : 42, - 'Sampled1D' : 43, - 'Image1D' : 44, - 'SampledCubeArray' : 45, - 'SampledBuffer' : 46, - 'ImageBuffer' : 47, - 'ImageMSArray' : 48, - 'StorageImageExtendedFormats' : 49, - 'ImageQuery' : 50, - 'DerivativeControl' : 51, - 'InterpolationFunction' : 52, - 'TransformFeedback' : 53, - 'GeometryStreams' : 54, - 'StorageImageReadWithoutFormat' : 55, - 'StorageImageWriteWithoutFormat' : 56, - 'MultiViewport' : 57, - 'SubgroupDispatch' : 58, - 'NamedBarrier' : 59, - 'PipeStorage' : 60, - 'GroupNonUniform' : 61, - 'GroupNonUniformVote' : 62, - 'GroupNonUniformArithmetic' : 63, - 'GroupNonUniformBallot' : 64, - 'GroupNonUniformShuffle' : 65, - 'GroupNonUniformShuffleRelative' : 66, - 'GroupNonUniformClustered' : 67, - 'GroupNonUniformQuad' : 68, - 'ShaderLayer' : 69, - 'ShaderViewportIndex' : 70, - 'UniformDecoration' : 71, - 'CoreBuiltinsARM' : 4165, - 'TileImageColorReadAccessEXT' : 4166, - 'TileImageDepthReadAccessEXT' : 4167, - 'TileImageStencilReadAccessEXT' : 4168, - 'FragmentShadingRateKHR' : 4422, - 'SubgroupBallotKHR' : 4423, - 'DrawParameters' : 4427, - 'WorkgroupMemoryExplicitLayoutKHR' : 4428, - 'WorkgroupMemoryExplicitLayout8BitAccessKHR' : 4429, - 'WorkgroupMemoryExplicitLayout16BitAccessKHR' : 4430, - 'SubgroupVoteKHR' : 4431, - 'StorageBuffer16BitAccess' : 4433, - 'StorageUniformBufferBlock16' : 4433, - 'StorageUniform16' : 4434, - 'UniformAndStorageBuffer16BitAccess' : 4434, - 'StoragePushConstant16' : 4435, - 'StorageInputOutput16' : 4436, - 'DeviceGroup' : 4437, - 'MultiView' : 4439, - 'VariablePointersStorageBuffer' : 4441, - 'VariablePointers' : 4442, - 'AtomicStorageOps' : 4445, - 'SampleMaskPostDepthCoverage' : 4447, - 'StorageBuffer8BitAccess' : 4448, - 'UniformAndStorageBuffer8BitAccess' : 4449, - 'StoragePushConstant8' : 4450, - 'DenormPreserve' : 4464, - 'DenormFlushToZero' : 4465, - 'SignedZeroInfNanPreserve' : 4466, - 'RoundingModeRTE' : 4467, - 'RoundingModeRTZ' : 4468, - 'RayQueryProvisionalKHR' : 4471, - 'RayQueryKHR' : 4472, - 'RayTraversalPrimitiveCullingKHR' : 4478, - 'RayTracingKHR' : 4479, - 'TextureSampleWeightedQCOM' : 4484, - 'TextureBoxFilterQCOM' : 4485, - 'TextureBlockMatchQCOM' : 4486, - 'Float16ImageAMD' : 5008, - 'ImageGatherBiasLodAMD' : 5009, - 'FragmentMaskAMD' : 5010, - 'StencilExportEXT' : 5013, - 'ImageReadWriteLodAMD' : 5015, - 'Int64ImageEXT' : 5016, - 'ShaderClockKHR' : 5055, - 'SampleMaskOverrideCoverageNV' : 5249, - 'GeometryShaderPassthroughNV' : 5251, - 'ShaderViewportIndexLayerEXT' : 5254, - 'ShaderViewportIndexLayerNV' : 5254, - 'ShaderViewportMaskNV' : 5255, - 'ShaderStereoViewNV' : 5259, - 'PerViewAttributesNV' : 5260, - 'FragmentFullyCoveredEXT' : 5265, - 'MeshShadingNV' : 5266, - 'ImageFootprintNV' : 5282, - 'MeshShadingEXT' : 5283, - 'FragmentBarycentricKHR' : 5284, - 'FragmentBarycentricNV' : 5284, - 'ComputeDerivativeGroupQuadsNV' : 5288, - 'FragmentDensityEXT' : 5291, - 'ShadingRateNV' : 5291, - 'GroupNonUniformPartitionedNV' : 5297, - 'ShaderNonUniform' : 5301, - 'ShaderNonUniformEXT' : 5301, - 'RuntimeDescriptorArray' : 5302, - 'RuntimeDescriptorArrayEXT' : 5302, - 'InputAttachmentArrayDynamicIndexing' : 5303, - 'InputAttachmentArrayDynamicIndexingEXT' : 5303, - 'UniformTexelBufferArrayDynamicIndexing' : 5304, - 'UniformTexelBufferArrayDynamicIndexingEXT' : 5304, - 'StorageTexelBufferArrayDynamicIndexing' : 5305, - 'StorageTexelBufferArrayDynamicIndexingEXT' : 5305, - 'UniformBufferArrayNonUniformIndexing' : 5306, - 'UniformBufferArrayNonUniformIndexingEXT' : 5306, - 'SampledImageArrayNonUniformIndexing' : 5307, - 'SampledImageArrayNonUniformIndexingEXT' : 5307, - 'StorageBufferArrayNonUniformIndexing' : 5308, - 'StorageBufferArrayNonUniformIndexingEXT' : 5308, - 'StorageImageArrayNonUniformIndexing' : 5309, - 'StorageImageArrayNonUniformIndexingEXT' : 5309, - 'InputAttachmentArrayNonUniformIndexing' : 5310, - 'InputAttachmentArrayNonUniformIndexingEXT' : 5310, - 'UniformTexelBufferArrayNonUniformIndexing' : 5311, - 'UniformTexelBufferArrayNonUniformIndexingEXT' : 5311, - 'StorageTexelBufferArrayNonUniformIndexing' : 5312, - 'StorageTexelBufferArrayNonUniformIndexingEXT' : 5312, - 'RayTracingPositionFetchKHR' : 5336, - 'RayTracingNV' : 5340, - 'RayTracingMotionBlurNV' : 5341, - 'VulkanMemoryModel' : 5345, - 'VulkanMemoryModelKHR' : 5345, - 'VulkanMemoryModelDeviceScope' : 5346, - 'VulkanMemoryModelDeviceScopeKHR' : 5346, - 'PhysicalStorageBufferAddresses' : 5347, - 'PhysicalStorageBufferAddressesEXT' : 5347, - 'ComputeDerivativeGroupLinearNV' : 5350, - 'RayTracingProvisionalKHR' : 5353, - 'CooperativeMatrixNV' : 5357, - 'FragmentShaderSampleInterlockEXT' : 5363, - 'FragmentShaderShadingRateInterlockEXT' : 5372, - 'ShaderSMBuiltinsNV' : 5373, - 'FragmentShaderPixelInterlockEXT' : 5378, - 'DemoteToHelperInvocation' : 5379, - 'DemoteToHelperInvocationEXT' : 5379, - 'RayTracingOpacityMicromapEXT' : 5381, - 'ShaderInvocationReorderNV' : 5383, - 'BindlessTextureNV' : 5390, - 'RayQueryPositionFetchKHR' : 5391, - 'SubgroupShuffleINTEL' : 5568, - 'SubgroupBufferBlockIOINTEL' : 5569, - 'SubgroupImageBlockIOINTEL' : 5570, - 'SubgroupImageMediaBlockIOINTEL' : 5579, - 'RoundToInfinityINTEL' : 5582, - 'FloatingPointModeINTEL' : 5583, - 'IntegerFunctions2INTEL' : 5584, - 'FunctionPointersINTEL' : 5603, - 'IndirectReferencesINTEL' : 5604, - 'AsmINTEL' : 5606, - 'AtomicFloat32MinMaxEXT' : 5612, - 'AtomicFloat64MinMaxEXT' : 5613, - 'AtomicFloat16MinMaxEXT' : 5616, - 'VectorComputeINTEL' : 5617, - 'VectorAnyINTEL' : 5619, - 'ExpectAssumeKHR' : 5629, - 'SubgroupAvcMotionEstimationINTEL' : 5696, - 'SubgroupAvcMotionEstimationIntraINTEL' : 5697, - 'SubgroupAvcMotionEstimationChromaINTEL' : 5698, - 'VariableLengthArrayINTEL' : 5817, - 'FunctionFloatControlINTEL' : 5821, - 'FPGAMemoryAttributesINTEL' : 5824, - 'FPFastMathModeINTEL' : 5837, - 'ArbitraryPrecisionIntegersINTEL' : 5844, - 'ArbitraryPrecisionFloatingPointINTEL' : 5845, - 'UnstructuredLoopControlsINTEL' : 5886, - 'FPGALoopControlsINTEL' : 5888, - 'KernelAttributesINTEL' : 5892, - 'FPGAKernelAttributesINTEL' : 5897, - 'FPGAMemoryAccessesINTEL' : 5898, - 'FPGAClusterAttributesINTEL' : 5904, - 'LoopFuseINTEL' : 5906, - 'FPGADSPControlINTEL' : 5908, - 'MemoryAccessAliasingINTEL' : 5910, - 'FPGAInvocationPipeliningAttributesINTEL' : 5916, - 'FPGABufferLocationINTEL' : 5920, - 'ArbitraryPrecisionFixedPointINTEL' : 5922, - 'USMStorageClassesINTEL' : 5935, - 'RuntimeAlignedAttributeINTEL' : 5939, - 'IOPipesINTEL' : 5943, - 'BlockingPipesINTEL' : 5945, - 'FPGARegINTEL' : 5948, - 'DotProductInputAll' : 6016, - 'DotProductInputAllKHR' : 6016, - 'DotProductInput4x8Bit' : 6017, - 'DotProductInput4x8BitKHR' : 6017, - 'DotProductInput4x8BitPacked' : 6018, - 'DotProductInput4x8BitPackedKHR' : 6018, - 'DotProduct' : 6019, - 'DotProductKHR' : 6019, - 'RayCullMaskKHR' : 6020, - 'CooperativeMatrixKHR' : 6022, - 'BitInstructions' : 6025, - 'GroupNonUniformRotateKHR' : 6026, - 'AtomicFloat32AddEXT' : 6033, - 'AtomicFloat64AddEXT' : 6034, - 'LongConstantCompositeINTEL' : 6089, - 'OptNoneINTEL' : 6094, - 'AtomicFloat16AddEXT' : 6095, - 'DebugInfoModuleINTEL' : 6114, - 'BFloat16ConversionINTEL' : 6115, - 'SplitBarrierINTEL' : 6141, - 'FPGAKernelAttributesv2INTEL' : 6161, - 'FPMaxErrorINTEL' : 6169, - 'FPGALatencyControlINTEL' : 6171, - 'FPGAArgumentInterfacesINTEL' : 6174, - 'GroupUniformArithmeticKHR' : 6400, - }, - - 'RayFlagsShift' : { - 'OpaqueKHR' : 0, - 'NoOpaqueKHR' : 1, - 'TerminateOnFirstHitKHR' : 2, - 'SkipClosestHitShaderKHR' : 3, - 'CullBackFacingTrianglesKHR' : 4, - 'CullFrontFacingTrianglesKHR' : 5, - 'CullOpaqueKHR' : 6, - 'CullNoOpaqueKHR' : 7, - 'SkipTrianglesKHR' : 8, - 'SkipAABBsKHR' : 9, - 'ForceOpacityMicromap2StateEXT' : 10, - }, - - 'RayFlagsMask' : { - 'MaskNone' : 0, - 'OpaqueKHR' : 0x00000001, - 'NoOpaqueKHR' : 0x00000002, - 'TerminateOnFirstHitKHR' : 0x00000004, - 'SkipClosestHitShaderKHR' : 0x00000008, - 'CullBackFacingTrianglesKHR' : 0x00000010, - 'CullFrontFacingTrianglesKHR' : 0x00000020, - 'CullOpaqueKHR' : 0x00000040, - 'CullNoOpaqueKHR' : 0x00000080, - 'SkipTrianglesKHR' : 0x00000100, - 'SkipAABBsKHR' : 0x00000200, - 'ForceOpacityMicromap2StateEXT' : 0x00000400, - }, - - 'RayQueryIntersection' : { - 'RayQueryCandidateIntersectionKHR' : 0, - 'RayQueryCommittedIntersectionKHR' : 1, - }, - - 'RayQueryCommittedIntersectionType' : { - 'RayQueryCommittedIntersectionNoneKHR' : 0, - 'RayQueryCommittedIntersectionTriangleKHR' : 1, - 'RayQueryCommittedIntersectionGeneratedKHR' : 2, - }, - - 'RayQueryCandidateIntersectionType' : { - 'RayQueryCandidateIntersectionTriangleKHR' : 0, - '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' : { - 'PackedVectorFormat4x8Bit' : 0, - 'PackedVectorFormat4x8BitKHR' : 0, - }, - - 'CooperativeMatrixOperandsShift' : { - 'MatrixASignedComponentsKHR' : 0, - 'MatrixBSignedComponentsKHR' : 1, - 'MatrixCSignedComponentsKHR' : 2, - 'MatrixResultSignedComponentsKHR' : 3, - 'SaturatingAccumulationKHR' : 4, - }, - - 'CooperativeMatrixOperandsMask' : { - 'MaskNone' : 0, - 'MatrixASignedComponentsKHR' : 0x00000001, - 'MatrixBSignedComponentsKHR' : 0x00000002, - 'MatrixCSignedComponentsKHR' : 0x00000004, - 'MatrixResultSignedComponentsKHR' : 0x00000008, - 'SaturatingAccumulationKHR' : 0x00000010, - }, - - 'CooperativeMatrixLayout' : { - 'RowMajorKHR' : 0, - 'ColumnMajorKHR' : 1, - }, - - 'CooperativeMatrixUse' : { - 'MatrixAKHR' : 0, - 'MatrixBKHR' : 1, - 'MatrixAccumulatorKHR' : 2, - }, - - 'Op' : { - 'OpNop' : 0, - 'OpUndef' : 1, - 'OpSourceContinued' : 2, - 'OpSource' : 3, - 'OpSourceExtension' : 4, - 'OpName' : 5, - 'OpMemberName' : 6, - 'OpString' : 7, - 'OpLine' : 8, - 'OpExtension' : 10, - 'OpExtInstImport' : 11, - 'OpExtInst' : 12, - 'OpMemoryModel' : 14, - 'OpEntryPoint' : 15, - 'OpExecutionMode' : 16, - 'OpCapability' : 17, - 'OpTypeVoid' : 19, - 'OpTypeBool' : 20, - 'OpTypeInt' : 21, - 'OpTypeFloat' : 22, - 'OpTypeVector' : 23, - 'OpTypeMatrix' : 24, - 'OpTypeImage' : 25, - 'OpTypeSampler' : 26, - 'OpTypeSampledImage' : 27, - 'OpTypeArray' : 28, - 'OpTypeRuntimeArray' : 29, - 'OpTypeStruct' : 30, - 'OpTypeOpaque' : 31, - 'OpTypePointer' : 32, - 'OpTypeFunction' : 33, - 'OpTypeEvent' : 34, - 'OpTypeDeviceEvent' : 35, - 'OpTypeReserveId' : 36, - 'OpTypeQueue' : 37, - 'OpTypePipe' : 38, - 'OpTypeForwardPointer' : 39, - 'OpConstantTrue' : 41, - 'OpConstantFalse' : 42, - 'OpConstant' : 43, - 'OpConstantComposite' : 44, - 'OpConstantSampler' : 45, - 'OpConstantNull' : 46, - 'OpSpecConstantTrue' : 48, - 'OpSpecConstantFalse' : 49, - 'OpSpecConstant' : 50, - 'OpSpecConstantComposite' : 51, - 'OpSpecConstantOp' : 52, - 'OpFunction' : 54, - 'OpFunctionParameter' : 55, - 'OpFunctionEnd' : 56, - 'OpFunctionCall' : 57, - 'OpVariable' : 59, - 'OpImageTexelPointer' : 60, - 'OpLoad' : 61, - 'OpStore' : 62, - 'OpCopyMemory' : 63, - 'OpCopyMemorySized' : 64, - 'OpAccessChain' : 65, - 'OpInBoundsAccessChain' : 66, - 'OpPtrAccessChain' : 67, - 'OpArrayLength' : 68, - 'OpGenericPtrMemSemantics' : 69, - 'OpInBoundsPtrAccessChain' : 70, - 'OpDecorate' : 71, - 'OpMemberDecorate' : 72, - 'OpDecorationGroup' : 73, - 'OpGroupDecorate' : 74, - 'OpGroupMemberDecorate' : 75, - 'OpVectorExtractDynamic' : 77, - 'OpVectorInsertDynamic' : 78, - 'OpVectorShuffle' : 79, - 'OpCompositeConstruct' : 80, - 'OpCompositeExtract' : 81, - 'OpCompositeInsert' : 82, - 'OpCopyObject' : 83, - 'OpTranspose' : 84, - 'OpSampledImage' : 86, - 'OpImageSampleImplicitLod' : 87, - 'OpImageSampleExplicitLod' : 88, - 'OpImageSampleDrefImplicitLod' : 89, - 'OpImageSampleDrefExplicitLod' : 90, - 'OpImageSampleProjImplicitLod' : 91, - 'OpImageSampleProjExplicitLod' : 92, - 'OpImageSampleProjDrefImplicitLod' : 93, - 'OpImageSampleProjDrefExplicitLod' : 94, - 'OpImageFetch' : 95, - 'OpImageGather' : 96, - 'OpImageDrefGather' : 97, - 'OpImageRead' : 98, - 'OpImageWrite' : 99, - 'OpImage' : 100, - 'OpImageQueryFormat' : 101, - 'OpImageQueryOrder' : 102, - 'OpImageQuerySizeLod' : 103, - 'OpImageQuerySize' : 104, - 'OpImageQueryLod' : 105, - 'OpImageQueryLevels' : 106, - 'OpImageQuerySamples' : 107, - 'OpConvertFToU' : 109, - 'OpConvertFToS' : 110, - 'OpConvertSToF' : 111, - 'OpConvertUToF' : 112, - 'OpUConvert' : 113, - 'OpSConvert' : 114, - 'OpFConvert' : 115, - 'OpQuantizeToF16' : 116, - 'OpConvertPtrToU' : 117, - 'OpSatConvertSToU' : 118, - 'OpSatConvertUToS' : 119, - 'OpConvertUToPtr' : 120, - 'OpPtrCastToGeneric' : 121, - 'OpGenericCastToPtr' : 122, - 'OpGenericCastToPtrExplicit' : 123, - 'OpBitcast' : 124, - 'OpSNegate' : 126, - 'OpFNegate' : 127, - 'OpIAdd' : 128, - 'OpFAdd' : 129, - 'OpISub' : 130, - 'OpFSub' : 131, - 'OpIMul' : 132, - 'OpFMul' : 133, - 'OpUDiv' : 134, - 'OpSDiv' : 135, - 'OpFDiv' : 136, - 'OpUMod' : 137, - 'OpSRem' : 138, - 'OpSMod' : 139, - 'OpFRem' : 140, - 'OpFMod' : 141, - 'OpVectorTimesScalar' : 142, - 'OpMatrixTimesScalar' : 143, - 'OpVectorTimesMatrix' : 144, - 'OpMatrixTimesVector' : 145, - 'OpMatrixTimesMatrix' : 146, - 'OpOuterProduct' : 147, - 'OpDot' : 148, - 'OpIAddCarry' : 149, - 'OpISubBorrow' : 150, - 'OpUMulExtended' : 151, - 'OpSMulExtended' : 152, - 'OpAny' : 154, - 'OpAll' : 155, - 'OpIsNan' : 156, - 'OpIsInf' : 157, - 'OpIsFinite' : 158, - 'OpIsNormal' : 159, - 'OpSignBitSet' : 160, - 'OpLessOrGreater' : 161, - 'OpOrdered' : 162, - 'OpUnordered' : 163, - 'OpLogicalEqual' : 164, - 'OpLogicalNotEqual' : 165, - 'OpLogicalOr' : 166, - 'OpLogicalAnd' : 167, - 'OpLogicalNot' : 168, - 'OpSelect' : 169, - 'OpIEqual' : 170, - 'OpINotEqual' : 171, - 'OpUGreaterThan' : 172, - 'OpSGreaterThan' : 173, - 'OpUGreaterThanEqual' : 174, - 'OpSGreaterThanEqual' : 175, - 'OpULessThan' : 176, - 'OpSLessThan' : 177, - 'OpULessThanEqual' : 178, - 'OpSLessThanEqual' : 179, - 'OpFOrdEqual' : 180, - 'OpFUnordEqual' : 181, - 'OpFOrdNotEqual' : 182, - 'OpFUnordNotEqual' : 183, - 'OpFOrdLessThan' : 184, - 'OpFUnordLessThan' : 185, - 'OpFOrdGreaterThan' : 186, - 'OpFUnordGreaterThan' : 187, - 'OpFOrdLessThanEqual' : 188, - 'OpFUnordLessThanEqual' : 189, - 'OpFOrdGreaterThanEqual' : 190, - 'OpFUnordGreaterThanEqual' : 191, - 'OpShiftRightLogical' : 194, - 'OpShiftRightArithmetic' : 195, - 'OpShiftLeftLogical' : 196, - 'OpBitwiseOr' : 197, - 'OpBitwiseXor' : 198, - 'OpBitwiseAnd' : 199, - 'OpNot' : 200, - 'OpBitFieldInsert' : 201, - 'OpBitFieldSExtract' : 202, - 'OpBitFieldUExtract' : 203, - 'OpBitReverse' : 204, - 'OpBitCount' : 205, - 'OpDPdx' : 207, - 'OpDPdy' : 208, - 'OpFwidth' : 209, - 'OpDPdxFine' : 210, - 'OpDPdyFine' : 211, - 'OpFwidthFine' : 212, - 'OpDPdxCoarse' : 213, - 'OpDPdyCoarse' : 214, - 'OpFwidthCoarse' : 215, - 'OpEmitVertex' : 218, - 'OpEndPrimitive' : 219, - 'OpEmitStreamVertex' : 220, - 'OpEndStreamPrimitive' : 221, - 'OpControlBarrier' : 224, - 'OpMemoryBarrier' : 225, - 'OpAtomicLoad' : 227, - 'OpAtomicStore' : 228, - 'OpAtomicExchange' : 229, - 'OpAtomicCompareExchange' : 230, - 'OpAtomicCompareExchangeWeak' : 231, - 'OpAtomicIIncrement' : 232, - 'OpAtomicIDecrement' : 233, - 'OpAtomicIAdd' : 234, - 'OpAtomicISub' : 235, - 'OpAtomicSMin' : 236, - 'OpAtomicUMin' : 237, - 'OpAtomicSMax' : 238, - 'OpAtomicUMax' : 239, - 'OpAtomicAnd' : 240, - 'OpAtomicOr' : 241, - 'OpAtomicXor' : 242, - 'OpPhi' : 245, - 'OpLoopMerge' : 246, - 'OpSelectionMerge' : 247, - 'OpLabel' : 248, - 'OpBranch' : 249, - 'OpBranchConditional' : 250, - 'OpSwitch' : 251, - 'OpKill' : 252, - 'OpReturn' : 253, - 'OpReturnValue' : 254, - 'OpUnreachable' : 255, - 'OpLifetimeStart' : 256, - 'OpLifetimeStop' : 257, - 'OpGroupAsyncCopy' : 259, - 'OpGroupWaitEvents' : 260, - 'OpGroupAll' : 261, - 'OpGroupAny' : 262, - 'OpGroupBroadcast' : 263, - 'OpGroupIAdd' : 264, - 'OpGroupFAdd' : 265, - 'OpGroupFMin' : 266, - 'OpGroupUMin' : 267, - 'OpGroupSMin' : 268, - 'OpGroupFMax' : 269, - 'OpGroupUMax' : 270, - 'OpGroupSMax' : 271, - 'OpReadPipe' : 274, - 'OpWritePipe' : 275, - 'OpReservedReadPipe' : 276, - 'OpReservedWritePipe' : 277, - 'OpReserveReadPipePackets' : 278, - 'OpReserveWritePipePackets' : 279, - 'OpCommitReadPipe' : 280, - 'OpCommitWritePipe' : 281, - 'OpIsValidReserveId' : 282, - 'OpGetNumPipePackets' : 283, - 'OpGetMaxPipePackets' : 284, - 'OpGroupReserveReadPipePackets' : 285, - 'OpGroupReserveWritePipePackets' : 286, - 'OpGroupCommitReadPipe' : 287, - 'OpGroupCommitWritePipe' : 288, - 'OpEnqueueMarker' : 291, - 'OpEnqueueKernel' : 292, - 'OpGetKernelNDrangeSubGroupCount' : 293, - 'OpGetKernelNDrangeMaxSubGroupSize' : 294, - 'OpGetKernelWorkGroupSize' : 295, - 'OpGetKernelPreferredWorkGroupSizeMultiple' : 296, - 'OpRetainEvent' : 297, - 'OpReleaseEvent' : 298, - 'OpCreateUserEvent' : 299, - 'OpIsValidEvent' : 300, - 'OpSetUserEventStatus' : 301, - 'OpCaptureEventProfilingInfo' : 302, - 'OpGetDefaultQueue' : 303, - 'OpBuildNDRange' : 304, - 'OpImageSparseSampleImplicitLod' : 305, - 'OpImageSparseSampleExplicitLod' : 306, - 'OpImageSparseSampleDrefImplicitLod' : 307, - 'OpImageSparseSampleDrefExplicitLod' : 308, - 'OpImageSparseSampleProjImplicitLod' : 309, - 'OpImageSparseSampleProjExplicitLod' : 310, - 'OpImageSparseSampleProjDrefImplicitLod' : 311, - 'OpImageSparseSampleProjDrefExplicitLod' : 312, - 'OpImageSparseFetch' : 313, - 'OpImageSparseGather' : 314, - 'OpImageSparseDrefGather' : 315, - 'OpImageSparseTexelsResident' : 316, - 'OpNoLine' : 317, - 'OpAtomicFlagTestAndSet' : 318, - 'OpAtomicFlagClear' : 319, - 'OpImageSparseRead' : 320, - 'OpSizeOf' : 321, - 'OpTypePipeStorage' : 322, - 'OpConstantPipeStorage' : 323, - 'OpCreatePipeFromPipeStorage' : 324, - 'OpGetKernelLocalSizeForSubgroupCount' : 325, - 'OpGetKernelMaxNumSubgroups' : 326, - 'OpTypeNamedBarrier' : 327, - 'OpNamedBarrierInitialize' : 328, - 'OpMemoryNamedBarrier' : 329, - 'OpModuleProcessed' : 330, - 'OpExecutionModeId' : 331, - 'OpDecorateId' : 332, - 'OpGroupNonUniformElect' : 333, - 'OpGroupNonUniformAll' : 334, - 'OpGroupNonUniformAny' : 335, - 'OpGroupNonUniformAllEqual' : 336, - 'OpGroupNonUniformBroadcast' : 337, - 'OpGroupNonUniformBroadcastFirst' : 338, - 'OpGroupNonUniformBallot' : 339, - 'OpGroupNonUniformInverseBallot' : 340, - 'OpGroupNonUniformBallotBitExtract' : 341, - 'OpGroupNonUniformBallotBitCount' : 342, - 'OpGroupNonUniformBallotFindLSB' : 343, - 'OpGroupNonUniformBallotFindMSB' : 344, - 'OpGroupNonUniformShuffle' : 345, - 'OpGroupNonUniformShuffleXor' : 346, - 'OpGroupNonUniformShuffleUp' : 347, - 'OpGroupNonUniformShuffleDown' : 348, - 'OpGroupNonUniformIAdd' : 349, - 'OpGroupNonUniformFAdd' : 350, - 'OpGroupNonUniformIMul' : 351, - 'OpGroupNonUniformFMul' : 352, - 'OpGroupNonUniformSMin' : 353, - 'OpGroupNonUniformUMin' : 354, - 'OpGroupNonUniformFMin' : 355, - 'OpGroupNonUniformSMax' : 356, - 'OpGroupNonUniformUMax' : 357, - 'OpGroupNonUniformFMax' : 358, - 'OpGroupNonUniformBitwiseAnd' : 359, - 'OpGroupNonUniformBitwiseOr' : 360, - 'OpGroupNonUniformBitwiseXor' : 361, - 'OpGroupNonUniformLogicalAnd' : 362, - 'OpGroupNonUniformLogicalOr' : 363, - 'OpGroupNonUniformLogicalXor' : 364, - 'OpGroupNonUniformQuadBroadcast' : 365, - 'OpGroupNonUniformQuadSwap' : 366, - 'OpCopyLogical' : 400, - 'OpPtrEqual' : 401, - 'OpPtrNotEqual' : 402, - 'OpPtrDiff' : 403, - 'OpColorAttachmentReadEXT' : 4160, - 'OpDepthAttachmentReadEXT' : 4161, - 'OpStencilAttachmentReadEXT' : 4162, - 'OpTerminateInvocation' : 4416, - 'OpSubgroupBallotKHR' : 4421, - 'OpSubgroupFirstInvocationKHR' : 4422, - 'OpSubgroupAllKHR' : 4428, - 'OpSubgroupAnyKHR' : 4429, - 'OpSubgroupAllEqualKHR' : 4430, - 'OpGroupNonUniformRotateKHR' : 4431, - 'OpSubgroupReadInvocationKHR' : 4432, - 'OpTraceRayKHR' : 4445, - 'OpExecuteCallableKHR' : 4446, - 'OpConvertUToAccelerationStructureKHR' : 4447, - 'OpIgnoreIntersectionKHR' : 4448, - 'OpTerminateRayKHR' : 4449, - 'OpSDot' : 4450, - 'OpSDotKHR' : 4450, - 'OpUDot' : 4451, - 'OpUDotKHR' : 4451, - 'OpSUDot' : 4452, - 'OpSUDotKHR' : 4452, - 'OpSDotAccSat' : 4453, - 'OpSDotAccSatKHR' : 4453, - 'OpUDotAccSat' : 4454, - 'OpUDotAccSatKHR' : 4454, - 'OpSUDotAccSat' : 4455, - 'OpSUDotAccSatKHR' : 4455, - 'OpTypeCooperativeMatrixKHR' : 4456, - 'OpCooperativeMatrixLoadKHR' : 4457, - 'OpCooperativeMatrixStoreKHR' : 4458, - 'OpCooperativeMatrixMulAddKHR' : 4459, - 'OpCooperativeMatrixLengthKHR' : 4460, - 'OpTypeRayQueryKHR' : 4472, - 'OpRayQueryInitializeKHR' : 4473, - 'OpRayQueryTerminateKHR' : 4474, - 'OpRayQueryGenerateIntersectionKHR' : 4475, - 'OpRayQueryConfirmIntersectionKHR' : 4476, - 'OpRayQueryProceedKHR' : 4477, - 'OpRayQueryGetIntersectionTypeKHR' : 4479, - 'OpImageSampleWeightedQCOM' : 4480, - 'OpImageBoxFilterQCOM' : 4481, - 'OpImageBlockMatchSSDQCOM' : 4482, - 'OpImageBlockMatchSADQCOM' : 4483, - 'OpGroupIAddNonUniformAMD' : 5000, - 'OpGroupFAddNonUniformAMD' : 5001, - 'OpGroupFMinNonUniformAMD' : 5002, - 'OpGroupUMinNonUniformAMD' : 5003, - 'OpGroupSMinNonUniformAMD' : 5004, - 'OpGroupFMaxNonUniformAMD' : 5005, - 'OpGroupUMaxNonUniformAMD' : 5006, - 'OpGroupSMaxNonUniformAMD' : 5007, - 'OpFragmentMaskFetchAMD' : 5011, - 'OpFragmentFetchAMD' : 5012, - 'OpReadClockKHR' : 5056, - 'OpHitObjectRecordHitMotionNV' : 5249, - 'OpHitObjectRecordHitWithIndexMotionNV' : 5250, - 'OpHitObjectRecordMissMotionNV' : 5251, - 'OpHitObjectGetWorldToObjectNV' : 5252, - 'OpHitObjectGetObjectToWorldNV' : 5253, - 'OpHitObjectGetObjectRayDirectionNV' : 5254, - 'OpHitObjectGetObjectRayOriginNV' : 5255, - 'OpHitObjectTraceRayMotionNV' : 5256, - 'OpHitObjectGetShaderRecordBufferHandleNV' : 5257, - 'OpHitObjectGetShaderBindingTableRecordIndexNV' : 5258, - 'OpHitObjectRecordEmptyNV' : 5259, - 'OpHitObjectTraceRayNV' : 5260, - 'OpHitObjectRecordHitNV' : 5261, - 'OpHitObjectRecordHitWithIndexNV' : 5262, - 'OpHitObjectRecordMissNV' : 5263, - 'OpHitObjectExecuteShaderNV' : 5264, - 'OpHitObjectGetCurrentTimeNV' : 5265, - 'OpHitObjectGetAttributesNV' : 5266, - 'OpHitObjectGetHitKindNV' : 5267, - 'OpHitObjectGetPrimitiveIndexNV' : 5268, - 'OpHitObjectGetGeometryIndexNV' : 5269, - 'OpHitObjectGetInstanceIdNV' : 5270, - 'OpHitObjectGetInstanceCustomIndexNV' : 5271, - 'OpHitObjectGetWorldRayDirectionNV' : 5272, - 'OpHitObjectGetWorldRayOriginNV' : 5273, - 'OpHitObjectGetRayTMaxNV' : 5274, - 'OpHitObjectGetRayTMinNV' : 5275, - 'OpHitObjectIsEmptyNV' : 5276, - 'OpHitObjectIsHitNV' : 5277, - 'OpHitObjectIsMissNV' : 5278, - 'OpReorderThreadWithHitObjectNV' : 5279, - 'OpReorderThreadWithHintNV' : 5280, - 'OpTypeHitObjectNV' : 5281, - 'OpImageSampleFootprintNV' : 5283, - 'OpEmitMeshTasksEXT' : 5294, - 'OpSetMeshOutputsEXT' : 5295, - 'OpGroupNonUniformPartitionNV' : 5296, - 'OpWritePackedPrimitiveIndices4x8NV' : 5299, - 'OpReportIntersectionKHR' : 5334, - 'OpReportIntersectionNV' : 5334, - 'OpIgnoreIntersectionNV' : 5335, - 'OpTerminateRayNV' : 5336, - 'OpTraceNV' : 5337, - 'OpTraceMotionNV' : 5338, - 'OpTraceRayMotionNV' : 5339, - 'OpRayQueryGetIntersectionTriangleVertexPositionsKHR' : 5340, - 'OpTypeAccelerationStructureKHR' : 5341, - 'OpTypeAccelerationStructureNV' : 5341, - 'OpExecuteCallableNV' : 5344, - 'OpTypeCooperativeMatrixNV' : 5358, - 'OpCooperativeMatrixLoadNV' : 5359, - 'OpCooperativeMatrixStoreNV' : 5360, - 'OpCooperativeMatrixMulAddNV' : 5361, - 'OpCooperativeMatrixLengthNV' : 5362, - 'OpBeginInvocationInterlockEXT' : 5364, - 'OpEndInvocationInterlockEXT' : 5365, - 'OpDemoteToHelperInvocation' : 5380, - 'OpDemoteToHelperInvocationEXT' : 5380, - 'OpIsHelperInvocationEXT' : 5381, - 'OpConvertUToImageNV' : 5391, - 'OpConvertUToSamplerNV' : 5392, - 'OpConvertImageToUNV' : 5393, - 'OpConvertSamplerToUNV' : 5394, - 'OpConvertUToSampledImageNV' : 5395, - 'OpConvertSampledImageToUNV' : 5396, - 'OpSamplerImageAddressingModeNV' : 5397, - 'OpSubgroupShuffleINTEL' : 5571, - 'OpSubgroupShuffleDownINTEL' : 5572, - 'OpSubgroupShuffleUpINTEL' : 5573, - 'OpSubgroupShuffleXorINTEL' : 5574, - 'OpSubgroupBlockReadINTEL' : 5575, - 'OpSubgroupBlockWriteINTEL' : 5576, - 'OpSubgroupImageBlockReadINTEL' : 5577, - 'OpSubgroupImageBlockWriteINTEL' : 5578, - 'OpSubgroupImageMediaBlockReadINTEL' : 5580, - 'OpSubgroupImageMediaBlockWriteINTEL' : 5581, - 'OpUCountLeadingZerosINTEL' : 5585, - 'OpUCountTrailingZerosINTEL' : 5586, - 'OpAbsISubINTEL' : 5587, - 'OpAbsUSubINTEL' : 5588, - 'OpIAddSatINTEL' : 5589, - 'OpUAddSatINTEL' : 5590, - 'OpIAverageINTEL' : 5591, - 'OpUAverageINTEL' : 5592, - 'OpIAverageRoundedINTEL' : 5593, - 'OpUAverageRoundedINTEL' : 5594, - 'OpISubSatINTEL' : 5595, - 'OpUSubSatINTEL' : 5596, - 'OpIMul32x16INTEL' : 5597, - 'OpUMul32x16INTEL' : 5598, - 'OpConstantFunctionPointerINTEL' : 5600, - 'OpFunctionPointerCallINTEL' : 5601, - 'OpAsmTargetINTEL' : 5609, - 'OpAsmINTEL' : 5610, - 'OpAsmCallINTEL' : 5611, - 'OpAtomicFMinEXT' : 5614, - 'OpAtomicFMaxEXT' : 5615, - 'OpAssumeTrueKHR' : 5630, - 'OpExpectKHR' : 5631, - 'OpDecorateString' : 5632, - 'OpDecorateStringGOOGLE' : 5632, - 'OpMemberDecorateString' : 5633, - 'OpMemberDecorateStringGOOGLE' : 5633, - 'OpVmeImageINTEL' : 5699, - 'OpTypeVmeImageINTEL' : 5700, - 'OpTypeAvcImePayloadINTEL' : 5701, - 'OpTypeAvcRefPayloadINTEL' : 5702, - 'OpTypeAvcSicPayloadINTEL' : 5703, - 'OpTypeAvcMcePayloadINTEL' : 5704, - 'OpTypeAvcMceResultINTEL' : 5705, - 'OpTypeAvcImeResultINTEL' : 5706, - 'OpTypeAvcImeResultSingleReferenceStreamoutINTEL' : 5707, - 'OpTypeAvcImeResultDualReferenceStreamoutINTEL' : 5708, - 'OpTypeAvcImeSingleReferenceStreaminINTEL' : 5709, - 'OpTypeAvcImeDualReferenceStreaminINTEL' : 5710, - 'OpTypeAvcRefResultINTEL' : 5711, - 'OpTypeAvcSicResultINTEL' : 5712, - 'OpSubgroupAvcMceGetDefaultInterBaseMultiReferencePenaltyINTEL' : 5713, - 'OpSubgroupAvcMceSetInterBaseMultiReferencePenaltyINTEL' : 5714, - 'OpSubgroupAvcMceGetDefaultInterShapePenaltyINTEL' : 5715, - 'OpSubgroupAvcMceSetInterShapePenaltyINTEL' : 5716, - 'OpSubgroupAvcMceGetDefaultInterDirectionPenaltyINTEL' : 5717, - 'OpSubgroupAvcMceSetInterDirectionPenaltyINTEL' : 5718, - 'OpSubgroupAvcMceGetDefaultIntraLumaShapePenaltyINTEL' : 5719, - 'OpSubgroupAvcMceGetDefaultInterMotionVectorCostTableINTEL' : 5720, - 'OpSubgroupAvcMceGetDefaultHighPenaltyCostTableINTEL' : 5721, - 'OpSubgroupAvcMceGetDefaultMediumPenaltyCostTableINTEL' : 5722, - 'OpSubgroupAvcMceGetDefaultLowPenaltyCostTableINTEL' : 5723, - 'OpSubgroupAvcMceSetMotionVectorCostFunctionINTEL' : 5724, - 'OpSubgroupAvcMceGetDefaultIntraLumaModePenaltyINTEL' : 5725, - 'OpSubgroupAvcMceGetDefaultNonDcLumaIntraPenaltyINTEL' : 5726, - 'OpSubgroupAvcMceGetDefaultIntraChromaModeBasePenaltyINTEL' : 5727, - 'OpSubgroupAvcMceSetAcOnlyHaarINTEL' : 5728, - 'OpSubgroupAvcMceSetSourceInterlacedFieldPolarityINTEL' : 5729, - 'OpSubgroupAvcMceSetSingleReferenceInterlacedFieldPolarityINTEL' : 5730, - 'OpSubgroupAvcMceSetDualReferenceInterlacedFieldPolaritiesINTEL' : 5731, - 'OpSubgroupAvcMceConvertToImePayloadINTEL' : 5732, - 'OpSubgroupAvcMceConvertToImeResultINTEL' : 5733, - 'OpSubgroupAvcMceConvertToRefPayloadINTEL' : 5734, - 'OpSubgroupAvcMceConvertToRefResultINTEL' : 5735, - 'OpSubgroupAvcMceConvertToSicPayloadINTEL' : 5736, - 'OpSubgroupAvcMceConvertToSicResultINTEL' : 5737, - 'OpSubgroupAvcMceGetMotionVectorsINTEL' : 5738, - 'OpSubgroupAvcMceGetInterDistortionsINTEL' : 5739, - 'OpSubgroupAvcMceGetBestInterDistortionsINTEL' : 5740, - 'OpSubgroupAvcMceGetInterMajorShapeINTEL' : 5741, - 'OpSubgroupAvcMceGetInterMinorShapeINTEL' : 5742, - 'OpSubgroupAvcMceGetInterDirectionsINTEL' : 5743, - 'OpSubgroupAvcMceGetInterMotionVectorCountINTEL' : 5744, - 'OpSubgroupAvcMceGetInterReferenceIdsINTEL' : 5745, - 'OpSubgroupAvcMceGetInterReferenceInterlacedFieldPolaritiesINTEL' : 5746, - 'OpSubgroupAvcImeInitializeINTEL' : 5747, - 'OpSubgroupAvcImeSetSingleReferenceINTEL' : 5748, - 'OpSubgroupAvcImeSetDualReferenceINTEL' : 5749, - 'OpSubgroupAvcImeRefWindowSizeINTEL' : 5750, - 'OpSubgroupAvcImeAdjustRefOffsetINTEL' : 5751, - 'OpSubgroupAvcImeConvertToMcePayloadINTEL' : 5752, - 'OpSubgroupAvcImeSetMaxMotionVectorCountINTEL' : 5753, - 'OpSubgroupAvcImeSetUnidirectionalMixDisableINTEL' : 5754, - 'OpSubgroupAvcImeSetEarlySearchTerminationThresholdINTEL' : 5755, - 'OpSubgroupAvcImeSetWeightedSadINTEL' : 5756, - 'OpSubgroupAvcImeEvaluateWithSingleReferenceINTEL' : 5757, - 'OpSubgroupAvcImeEvaluateWithDualReferenceINTEL' : 5758, - 'OpSubgroupAvcImeEvaluateWithSingleReferenceStreaminINTEL' : 5759, - 'OpSubgroupAvcImeEvaluateWithDualReferenceStreaminINTEL' : 5760, - 'OpSubgroupAvcImeEvaluateWithSingleReferenceStreamoutINTEL' : 5761, - 'OpSubgroupAvcImeEvaluateWithDualReferenceStreamoutINTEL' : 5762, - 'OpSubgroupAvcImeEvaluateWithSingleReferenceStreaminoutINTEL' : 5763, - 'OpSubgroupAvcImeEvaluateWithDualReferenceStreaminoutINTEL' : 5764, - 'OpSubgroupAvcImeConvertToMceResultINTEL' : 5765, - 'OpSubgroupAvcImeGetSingleReferenceStreaminINTEL' : 5766, - 'OpSubgroupAvcImeGetDualReferenceStreaminINTEL' : 5767, - 'OpSubgroupAvcImeStripSingleReferenceStreamoutINTEL' : 5768, - 'OpSubgroupAvcImeStripDualReferenceStreamoutINTEL' : 5769, - 'OpSubgroupAvcImeGetStreamoutSingleReferenceMajorShapeMotionVectorsINTEL' : 5770, - 'OpSubgroupAvcImeGetStreamoutSingleReferenceMajorShapeDistortionsINTEL' : 5771, - 'OpSubgroupAvcImeGetStreamoutSingleReferenceMajorShapeReferenceIdsINTEL' : 5772, - 'OpSubgroupAvcImeGetStreamoutDualReferenceMajorShapeMotionVectorsINTEL' : 5773, - 'OpSubgroupAvcImeGetStreamoutDualReferenceMajorShapeDistortionsINTEL' : 5774, - 'OpSubgroupAvcImeGetStreamoutDualReferenceMajorShapeReferenceIdsINTEL' : 5775, - 'OpSubgroupAvcImeGetBorderReachedINTEL' : 5776, - 'OpSubgroupAvcImeGetTruncatedSearchIndicationINTEL' : 5777, - 'OpSubgroupAvcImeGetUnidirectionalEarlySearchTerminationINTEL' : 5778, - 'OpSubgroupAvcImeGetWeightingPatternMinimumMotionVectorINTEL' : 5779, - 'OpSubgroupAvcImeGetWeightingPatternMinimumDistortionINTEL' : 5780, - 'OpSubgroupAvcFmeInitializeINTEL' : 5781, - 'OpSubgroupAvcBmeInitializeINTEL' : 5782, - 'OpSubgroupAvcRefConvertToMcePayloadINTEL' : 5783, - 'OpSubgroupAvcRefSetBidirectionalMixDisableINTEL' : 5784, - 'OpSubgroupAvcRefSetBilinearFilterEnableINTEL' : 5785, - 'OpSubgroupAvcRefEvaluateWithSingleReferenceINTEL' : 5786, - 'OpSubgroupAvcRefEvaluateWithDualReferenceINTEL' : 5787, - 'OpSubgroupAvcRefEvaluateWithMultiReferenceINTEL' : 5788, - 'OpSubgroupAvcRefEvaluateWithMultiReferenceInterlacedINTEL' : 5789, - 'OpSubgroupAvcRefConvertToMceResultINTEL' : 5790, - 'OpSubgroupAvcSicInitializeINTEL' : 5791, - 'OpSubgroupAvcSicConfigureSkcINTEL' : 5792, - 'OpSubgroupAvcSicConfigureIpeLumaINTEL' : 5793, - 'OpSubgroupAvcSicConfigureIpeLumaChromaINTEL' : 5794, - 'OpSubgroupAvcSicGetMotionVectorMaskINTEL' : 5795, - 'OpSubgroupAvcSicConvertToMcePayloadINTEL' : 5796, - 'OpSubgroupAvcSicSetIntraLumaShapePenaltyINTEL' : 5797, - 'OpSubgroupAvcSicSetIntraLumaModeCostFunctionINTEL' : 5798, - 'OpSubgroupAvcSicSetIntraChromaModeCostFunctionINTEL' : 5799, - 'OpSubgroupAvcSicSetBilinearFilterEnableINTEL' : 5800, - 'OpSubgroupAvcSicSetSkcForwardTransformEnableINTEL' : 5801, - 'OpSubgroupAvcSicSetBlockBasedRawSkipSadINTEL' : 5802, - 'OpSubgroupAvcSicEvaluateIpeINTEL' : 5803, - 'OpSubgroupAvcSicEvaluateWithSingleReferenceINTEL' : 5804, - 'OpSubgroupAvcSicEvaluateWithDualReferenceINTEL' : 5805, - 'OpSubgroupAvcSicEvaluateWithMultiReferenceINTEL' : 5806, - 'OpSubgroupAvcSicEvaluateWithMultiReferenceInterlacedINTEL' : 5807, - 'OpSubgroupAvcSicConvertToMceResultINTEL' : 5808, - 'OpSubgroupAvcSicGetIpeLumaShapeINTEL' : 5809, - 'OpSubgroupAvcSicGetBestIpeLumaDistortionINTEL' : 5810, - 'OpSubgroupAvcSicGetBestIpeChromaDistortionINTEL' : 5811, - 'OpSubgroupAvcSicGetPackedIpeLumaModesINTEL' : 5812, - 'OpSubgroupAvcSicGetIpeChromaModeINTEL' : 5813, - '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, - 'OpAliasDomainDeclINTEL' : 5911, - 'OpAliasScopeDeclINTEL' : 5912, - 'OpAliasScopeListDeclINTEL' : 5913, - '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, - 'OpRayQueryGetIntersectionInstanceCustomIndexKHR' : 6019, - 'OpRayQueryGetIntersectionInstanceIdKHR' : 6020, - 'OpRayQueryGetIntersectionInstanceShaderBindingTableRecordOffsetKHR' : 6021, - 'OpRayQueryGetIntersectionGeometryIndexKHR' : 6022, - 'OpRayQueryGetIntersectionPrimitiveIndexKHR' : 6023, - 'OpRayQueryGetIntersectionBarycentricsKHR' : 6024, - 'OpRayQueryGetIntersectionFrontFaceKHR' : 6025, - 'OpRayQueryGetIntersectionCandidateAABBOpaqueKHR' : 6026, - 'OpRayQueryGetIntersectionObjectRayDirectionKHR' : 6027, - 'OpRayQueryGetIntersectionObjectRayOriginKHR' : 6028, - 'OpRayQueryGetWorldRayDirectionKHR' : 6029, - 'OpRayQueryGetWorldRayOriginKHR' : 6030, - 'OpRayQueryGetIntersectionObjectToWorldKHR' : 6031, - 'OpRayQueryGetIntersectionWorldToObjectKHR' : 6032, - 'OpAtomicFAddEXT' : 6035, - 'OpTypeBufferSurfaceINTEL' : 6086, - 'OpTypeStructContinuedINTEL' : 6090, - 'OpConstantCompositeContinuedINTEL' : 6091, - 'OpSpecConstantCompositeContinuedINTEL' : 6092, - 'OpConvertFToBF16INTEL' : 6116, - 'OpConvertBF16ToFINTEL' : 6117, - 'OpControlBarrierArriveINTEL' : 6142, - 'OpControlBarrierWaitINTEL' : 6143, - 'OpGroupIMulKHR' : 6401, - 'OpGroupFMulKHR' : 6402, - 'OpGroupBitwiseAndKHR' : 6403, - 'OpGroupBitwiseOrKHR' : 6404, - 'OpGroupBitwiseXorKHR' : 6405, - 'OpGroupLogicalAndKHR' : 6406, - 'OpGroupLogicalOrKHR' : 6407, - 'OpGroupLogicalXorKHR' : 6408, - }, - -} - diff --git a/Extern/3rdParty/xatlas/CMakeLists.txt b/Extern/3rdParty/xatlas/CMakeLists.txt index 6ecc291..011590f 100644 --- a/Extern/3rdParty/xatlas/CMakeLists.txt +++ b/Extern/3rdParty/xatlas/CMakeLists.txt @@ -9,3 +9,5 @@ target_include_directories(xatlas ${xatlas_directory} ) set_property(TARGET xatlas PROPERTY FOLDER "3rdparty") + +set(3RDPARTY_INCLUDES ${3RDPARTY_INCLUDES} ${CMAKE_CURRENT_SOURCE_DIR}/xatlas/source/xatlas PARENT_SCOPE) \ No newline at end of file