glslang-zig/SPIRV
arcady-lunarg 7c3c50ea94
spirv: Add a postprocessing pass to fix up uses of OpSampledImage
SPIR-V requires that any instruction using the result of an
OpSampledImage instruction be in the same block as the OpSampledImage.
This is hard to guarantee in code generation but easy to fix after the
fact, by simply inserting a new OpSampledImage before the user of its
result if needed, with the new instruction having the same operands as
the original OpSampledImage.
This change adds a new pass to spv::Builder::postProcess that does this.
This might leave the original OpSampledImage instructions "orphaned"
with no users of their result ID, but dead code elimination would take
care of those further down the line.
2024-05-20 13:25:55 -04:00
..
CInterface Clear spirv vector before generating spirv output 2024-02-14 19:44:34 -05:00
bitutils.h Fix compiler warning emitted from GCC8 2018-09-12 10:34:54 +02:00
CMakeLists.txt Support for SPV_QCOM_image_processing2 (#3539) 2024-03-20 18:56:00 -04:00
disassemble.cpp Fix an issue of getExtBuiltins() 2024-03-22 12:35:30 -04:00
disassemble.h Fix -Wextra-semi warnings in headers used in Chromium 2019-02-21 11:05:21 -05:00
doc.cpp A couple of fixes to the GL_QCOM_image_processing2 support (#3578) 2024-04-23 18:34:51 -04:00
doc.h Fix some compiler warnings 2023-11-28 19:16:16 -05:00
GLSL.ext.AMD.h Non-functional: Move to latest headers. 2018-03-02 12:36:02 -07:00
GLSL.ext.ARM.h GL_ARM_shader_core_builtins support 2022-12-05 14:15:47 +02:00
GLSL.ext.EXT.h Add GLSL_EXT_shader_tile_image 2023-05-08 19:49:25 -06:00
GLSL.ext.KHR.h Add GL_EXT_expect_assume support 2024-02-13 16:13:35 -08:00
GLSL.ext.NV.h NV_shader_atomic_fp16_vector 2024-02-14 18:55:55 -05:00
GLSL.ext.QCOM.h Support for SPV_QCOM_image_processing2 (#3539) 2024-03-20 18:56:00 -04:00
GLSL.std.450.h [glslang] Strip trailing whitespace 2023-05-22 12:04:40 -06:00
GlslangToSpv.cpp A couple of fixes to the GL_QCOM_image_processing2 support (#3578) 2024-04-23 18:34:51 -04:00
GlslangToSpv.h Remove GlslangToSpv.h dependency on SpvTools.h 2023-11-11 08:55:43 -07:00
hex_float.h SPIRV: hex_float: remove workaround for VS2013 2023-05-10 09:55:02 -06:00
InReadableOrder.cpp SPIR-V: Aggressively prune unreachable merge, continue target 2019-10-29 15:33:54 -04:00
Logger.cpp Remove GLSLANG_WEB and GLSLANG_WEB_DEVEL 2023-07-28 11:49:10 -06:00
Logger.h Remove GLSLANG_WEB and GLSLANG_WEB_DEVEL 2023-07-28 11:49:10 -06:00
NonSemanticDebugPrintf.h [glslang] Strip trailing whitespace 2023-05-22 12:04:40 -06:00
NonSemanticShaderDebugInfo100.h [glslang] Strip trailing whitespace 2023-05-22 12:04:40 -06:00
spirv.hpp Support for SPV_QCOM_image_processing2 (#3539) 2024-03-20 18:56:00 -04:00
SpvBuilder.cpp Prevent duplicate SPIR-V decorations (#3570) 2024-04-15 11:39:23 -04:00
SpvBuilder.h spirv: Add a postprocessing pass to fix up uses of OpSampledImage 2024-05-20 13:25:55 -04:00
spvIR.h spirv: Add a postprocessing pass to fix up uses of OpSampledImage 2024-05-20 13:25:55 -04:00
SpvPostProcess.cpp spirv: Add a postprocessing pass to fix up uses of OpSampledImage 2024-05-20 13:25:55 -04:00
SPVRemapper.cpp Implement support for GL_KHR_cooperative_matrix extension 2023-07-26 16:39:17 -06:00
SPVRemapper.h Remove SPVRemapper.h dependency on spvIR.h 2023-11-11 08:55:43 -07:00
SpvTools.cpp Remove the name of unused formal paramters 2022-12-09 15:51:35 -05:00
SpvTools.h Remove GlslangToSpv.h dependency on SpvTools.h 2023-11-11 08:55:43 -07:00