VK-GL-CTS
VK-GL-CTS copied to clipboard
Missing coverage for PtrAccessChain on PhysicalStorageBuffer
PtrAccessChain can be used on PhysicalStorageBuffer pointers but CTS doesn't check what implementations do. Notably, one of implementations I encountered expects ArrayStride decoration on the pointer type and blows up if it's not there (see https://github.com/KhronosGroup/SPIRV-Registry/issues/152 for more info)
Thanks for reporting this, we'll want to resolve the SPIRV group first. I'll request this for the next meeting's agenda
I think there are some existing tests in vktSpvAsmVariablePointersTests.cpp, such as dEQP-VK.spirv_assembly.instruction.compute.physical_pointers.compute.reads_opptraccesschain_single_buffer, but they may not test an array stride that doesn't match the element size (I didn't look that closely). Since these are sharing code with the variable pointers tests, we may have a similar coverage issue for variable pointers.
Ooh, I see, indeed, I've been misled by comments only mentioning variable pointers. There actually is a case with ArrayStride-decorated PhysicalStoragePointer type, but there's no case without such decoration (is this usage valid?), or with ArrayStride != element size.
Should this issue be closed then, or open to track ArrayStride != element size case progress?