Description
I was trying to use latest vk::BufferPointer pattern instead vk::RawBufferLoad. I only modified single shader. C++ code is the same. VVL with sync validation and GPUAV does not report any problems. Here what I got so far.
I see the requirement to use OpCapability StoragePushConstant16 in SPIR-V which does not make any sense for this shader scope. ⚠️This feature is not used but forces the developer to request this feature from VkDevice. It automatically limits available devices for application and produces VVL errors. Many downsides without any benefits.
Steps to Reproduce
Compile this shaders: preprocess.zip
with DXC flags:
-HV 2021
-spirv
-fvk-use-dx-layout
-fspv-reduce-load-size
-fspv-target-env=vulkan1.1spirv1.4
-ffinite-math-only
-enable-16bit-types
-WX
-O3
-E VS
-T vs_6_10
-Fo <output.hlsl.spv>
<source.hlsl>
Expected
vk::BufferPointer must correctly extract uint16_t values
- no require
OpCapability StoragePushConstant16 in SPIR-V
- no compile warnings
- 🙏please fix this issue #8543 - it causes a lot of friction when debugging with RenderDoc/Nsight/Aftermath
Environment
git submodule update --init has been invoked before build
hctbuild build parameters: -official -rel -x64 -vs2026 -speak-up -no-dxilconv -spirv -lto
- Visual Studio 2026 Community components were up to date.
- Windows 11 Pro (25H2, Build 26200.9278)
dxc.exe v1.9.2607.10104 executable, commit SHA-1 1b949a448e4c9e821f010c488defebfbb1a50b27
Description
I was trying to use latest
vk::BufferPointerpattern insteadvk::RawBufferLoad. I only modified single shader. C++ code is the same. VVL with sync validation and GPUAV does not report any problems. Here what I got so far.I see the requirement to use⚠️ This feature is not used but forces the developer to request this feature from
OpCapability StoragePushConstant16in SPIR-V which does not make any sense for this shader scope.VkDevice. It automatically limits available devices for application and produces VVL errors. Many downsides without any benefits.Steps to Reproduce
Compile this shaders: preprocess.zip
with DXC flags:
Expected
vk::BufferPointermust correctly extractuint16_tvaluesOpCapability StoragePushConstant16in SPIR-VEnvironment
git submodule update --inithas been invoked before buildhctbuildbuild parameters:-official -rel -x64 -vs2026 -speak-up -no-dxilconv -spirv -ltodxc.exev1.9.2607.10104 executable, commit SHA-11b949a448e4c9e821f010c488defebfbb1a50b27