CubeMap fixes
The following changes are done in this cl:
- Added multilayer support in Blitter::blit()
- Fixed Image::texelOffsetBytesInStorage() for cubes, since there's
a 1 pixel border around it, so pixel offset (0,0,0) should be an
extra line (1 pixel offset in Y) + 1 pixel (1 pixel offset in X)
from the beginning of the buffer
- Added a number of out of bounds memory access asserts, which
helped debug this issue.
Fixed failures in:
dEQP-VK.api.copy_and_blit.core.blit_image.all_formats.generate_mipmaps.*
Note: The only failures left in that category are related to filtering
sRGB images, which most likely happens in the wrong colorspace.
Tests: dEQP-VK.api.copy_and_blit.core.blit_image.all_formats.generate_mipmaps.*
Bug b/
119620767
Change-Id: I6f18271cb23070eb8f2de3b1d5b35b7021c0ca8b
Reviewed-on: https://swiftshader-review.googlesource.com/c/SwiftShader/+/27229
Reviewed-by: Chris Forbes <chrisforbes@google.com>
Reviewed-by: Nicolas Capens <nicolascapens@google.com>
Tested-by: Alexis Hétu <sugoi@google.com>
Kokoro-Presubmit: kokoro <noreply+kokoro@google.com>