Implement shaderStorageImageMultisample support
This fixes a bug in the descriptor data where the sample pitch was set
to the layer pitch for array images (it should always be the slice
pitch), and the descriptor's slice pitch (which stores the layer pitch
in case of array images), was taking the sample count into account
twice.
Note that while the image robustness extensions still allow read
operations to return undefined values "if only the sample index was
invalid", so clamping that value would suffice (as currently done in our
OpImageFetch implementation), write operations always have to be no-op.
This change also 'nullifies' the OpImageRead instructions for invalid
sample indices.
Bug: b/163142358
Tests: dEQP-VK.*
Change-Id: I9d816c249e14a17722d29f56015c8dc8cc7d51d4
Reviewed-on: https://swiftshader-review.googlesource.com/c/SwiftShader/+/47548
Presubmit-Ready: Nicolas Capens <nicolascapens@google.com>
Kokoro-Result: kokoro <noreply+kokoro@google.com>
Reviewed-by:
Alexis Hétu <sugoi@google.com>
Tested-by:
Nicolas Capens <nicolascapens@google.com>
Showing
Please
register
or
sign in
to comment