mirror of
https://github.com/KhronosGroup/SPIRV-Tools
synced 2024-12-12 11:40:14 +00:00
581279dedd
The folding rule `BitCastScalarOrVector` was incorrectly handling bitcasting to unsigned integers smaller than 32-bits. It was simply copying the entire 32-bit word containing the integer. This conflicts with the requirement in section 2.2.1 of the SPIR-V spec which states that unsigned numeric types with a bit width less than 32-bits must have the high-order bits set to 0. This change include a refactor of the bit extension code to be able to test it better, and to use it in multiple files. Fixes https://github.com/microsoft/DirectXShaderCompiler/issues/6319. |
||
---|---|---|
.. | ||
bit_vector.cpp | ||
bit_vector.h | ||
bitutils.h | ||
hash_combine.h | ||
hex_float.h | ||
ilist_node.h | ||
ilist.h | ||
make_unique.h | ||
parse_number.cpp | ||
parse_number.h | ||
small_vector.h | ||
string_utils.cpp | ||
string_utils.h | ||
timer.cpp | ||
timer.h |