Enum spirv_tools::TargetEnv [−][src]
#[repr(C)]
pub enum TargetEnv {
Show variants
Universal_1_0,
Vulkan_1_0,
Universal_1_1,
OpenCL_2_1,
OpenCL_2_2,
OpenGL_4_0,
OpenGL_4_1,
OpenGL_4_2,
OpenGL_4_3,
OpenGL_4_5,
Universal_1_2,
OpenCL_1_2,
OpenCLEmbedded_1_2,
OpenCL_2_0,
OpenCLEmbedded_2_0,
OpenCLEmbedded_2_1,
OpenCLEmbedded_2_2,
Universal_1_3,
Vulkan_1_1,
WebGPU_0,
Universal_1_4,
Vulkan_1_1_Spirv_1_4,
Universal_1_5,
Vulkan_1_2,
}Certain target environments impose additional restrictions on SPIR-V, so it’s
often necessary to specify which one applies. Universal_* implies an
environment-agnostic SPIR-V.
When an API method needs to derive a SPIR-V version from a target environment 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
Consult the description of API entry points for specific rules.
Variants
SPIR-V 1.0 latest revision, no other restrictions.
Vulkan 1.0 latest revision.
SPIR-V 1.1 latest revision, no other restrictions.
OpenCL Full Profile 2.1 latest revision.
OpenCL Full Profile 2.2 latest revision.
OpenGL 4.0 plus GL_ARB_gl_spirv, latest revisions.
OpenGL 4.1 plus GL_ARB_gl_spirv, latest revisions.
OpenGL 4.2 plus GL_ARB_gl_spirv, latest revisions.
OpenGL 4.3 plus GL_ARB_gl_spirv, latest revisions.
OpenGL 4.5 plus GL_ARB_gl_spirv, latest revisions.
SPIR-V 1.2, latest revision, no other restrictions.
OpenCL Full Profile 1.2 plus cl_khr_il_program, latest revision.
OpenCL Embedded Profile 1.2 plus cl_khr_il_program, latest revision.
OpenCL Full Profile 2.0 plus cl_khr_il_program, latest revision.
OpenCL Embedded Profile 2.0 plus cl_khr_il_program, latest revision.
OpenCL Embedded Profile 2.1 latest revision.
OpenCL Embedded Profile 2.2 latest revision.
SPIR-V 1.3 latest revision, no other restrictions.
Vulkan 1.1 latest revision.
Work in progress WebGPU 1.0.
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.
SPIR-V 1.5 latest revision, no other restrictions.
Vulkan 1.2 latest revision.
Trait Implementations
impl StructuralPartialEq for TargetEnv[src]
impl StructuralPartialEq for TargetEnv[src]Auto Trait Implementations
impl RefUnwindSafe for TargetEnv
impl RefUnwindSafe for TargetEnvimpl UnwindSafe for TargetEnv
impl UnwindSafe for TargetEnv