v3d: Fix swizzle in DXT3 and DXT5 formats

Swizzles were ignoring the W component of the format DXT3_RGBA and
DXT5_RGBA.

This fixes 15 piglit tests:

spec/!opengl 1.1/copyteximage 2d
spec/!opengl 1.2/copyteximage 3d
spec/arb_texture_compression/fbo-generatemipmap-formats/gl_compressed_rgba
spec/arb_texture_compression/fbo-generatemipmap-formats/gl_compressed_rgba npot
spec/arb_texture_compression/texwrap formats bordercolor-swizzled/gl_compressed_rgba, swizzled, border color only
spec/arb_texture_compression/texwrap formats bordercolor/gl_compressed_rgba, border color only
spec/arb_texture_cube_map/copyteximage cube
spec/arb_texture_cube_map/copyteximage cube samples=2
spec/arb_texture_cube_map/copyteximage cube samples=4
spec/arb_texture_rectangle/copyteximage rect
spec/arb_texture_rectangle/copyteximage rect samples=2
spec/arb_texture_rectangle/copyteximage rect samples=4
spec/ext_texture_array/copyteximage 2d_array
spec/ext_texture_array/copyteximage 2d_array samples=2
spec/ext_texture_array/copyteximage 2d_array samples=4

Fixes: 469bbd8387 "broadcom/vc5: Move the formats table to per-V3D-version compile."
Reviewed-by: Iago Toral Quiroga <itoral@igalia.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/4934>
This commit is contained in:
Jose Maria Casanova Crespo 2020-05-07 03:37:22 +02:00
parent 17ed4a01ee
commit e3ecf48dda
1 changed files with 2 additions and 2 deletions

View File

@ -177,8 +177,8 @@ static const struct v3d_format format_table[] = {
FORMAT(ETC2_RG11_SNORM, NO, SIGNED_RG11_EAC, SWIZ_XY01, 16, 0),
FORMAT(DXT1_RGB, NO, BC1, SWIZ_XYZ1, 16, 0),
FORMAT(DXT3_RGBA, NO, BC2, SWIZ_XYZ1, 16, 0),
FORMAT(DXT5_RGBA, NO, BC3, SWIZ_XYZ1, 16, 0),
FORMAT(DXT3_RGBA, NO, BC2, SWIZ_XYZW, 16, 0),
FORMAT(DXT5_RGBA, NO, BC3, SWIZ_XYZW, 16, 0),
};
const struct v3d_format *