mirror of
https://github.com/KhronosGroup/SPIRV-Tools
synced 2024-12-26 01:31:06 +00:00
57e1d8ebe3
convert-to-sampled-image pass converts 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. For example, when we have %a = OpLoad %type_2d_image %texture %b = OpLoad %type_sampler %sampler %combined = OpSampledImage %type_sampled_image %a %b %value = OpImageSampleExplicitLod %v4float %combined ... 1. If %texture and %sampler have the same descriptor set and binding %combine_texture_and_sampler = OpVaraible %ptr_type_sampled_image_Uniform ... %combined = OpLoad %type_sampled_image %combine_texture_and_sampler %value = OpImageSampleExplicitLod %v4float %combined ... 2. If %texture and %sampler have different pairs of descriptor set and binding %a = OpLoad %type_sampled_image %texture %extracted_image = OpImage %type_2d_image %a %b = OpLoad %type_sampler %sampler %combined = OpSampledImage %type_sampled_image %extracted_image %b %value = OpImageSampleExplicitLod %v4float %combined ... |
||
---|---|---|
.. | ||
fuzz | ||
link | ||
lint | ||
opt | ||
reduce | ||
util | ||
val | ||
assembly_grammar.cpp | ||
assembly_grammar.h | ||
binary.cpp | ||
binary.h | ||
cfa.h | ||
CMakeLists.txt | ||
common_debug_info.h | ||
diagnostic.cpp | ||
diagnostic.h | ||
disassemble.cpp | ||
disassemble.h | ||
enum_set.h | ||
enum_string_mapping.cpp | ||
enum_string_mapping.h | ||
ext_inst.cpp | ||
ext_inst.h | ||
extensions.cpp | ||
extensions.h | ||
extinst.nonsemantic.vulkan.debuginfo.100.grammar.json | ||
instruction.h | ||
latest_version_glsl_std_450_header.h | ||
latest_version_opencl_std_header.h | ||
latest_version_spirv_header.h | ||
libspirv.cpp | ||
macro.h | ||
name_mapper.cpp | ||
name_mapper.h | ||
opcode.cpp | ||
opcode.h | ||
operand.cpp | ||
operand.h | ||
parsed_operand.cpp | ||
parsed_operand.h | ||
pch_source.cpp | ||
pch_source.h | ||
print.cpp | ||
print.h | ||
software_version.cpp | ||
spirv_constant.h | ||
spirv_definition.h | ||
spirv_endian.cpp | ||
spirv_endian.h | ||
spirv_fuzzer_options.cpp | ||
spirv_fuzzer_options.h | ||
spirv_optimizer_options.cpp | ||
spirv_optimizer_options.h | ||
spirv_reducer_options.cpp | ||
spirv_reducer_options.h | ||
spirv_target_env.cpp | ||
spirv_target_env.h | ||
spirv_validator_options.cpp | ||
spirv_validator_options.h | ||
table.cpp | ||
table.h | ||
text_handler.cpp | ||
text_handler.h | ||
text.cpp | ||
text.h |