vc4: Propagate txf_ms's dest_type to the lowered txf.

This was missing, and the added validation caught it.

Fixes: 708c47e663 ("nir: Validate nir_tex_instr::dest_type bitsize")
Reviewed-by: Juan A. Suarez <jasuarez@igalia.com>
Reviewed-by: Iago Toral Quiroga <itoral@igalia.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/17172>
This commit is contained in:
Emma Anholt
2022-06-21 09:12:50 -07:00
parent 1de87497ba
commit 4309e09d6f
4 changed files with 36 additions and 120 deletions

View File

@@ -366,31 +366,9 @@ KHR-GLES2.texture_3d.filtering.sizes.63x63x63_nearest_mipmap_linear,Fail
KHR-GLES2.texture_3d.filtering.sizes.63x63x63_nearest_mipmap_nearest,Fail
KHR-GLES2.texture_3d.framebuffer_texture.rgba,Fail
KHR-GLES2.texture_3d.sub_image.rgba8,Fail
dEQP-EGL.functional.color_clears.multi_context.gles2.rgb888_pbuffer,Crash
dEQP-EGL.functional.color_clears.multi_context.gles2.rgb888_window,Crash
dEQP-EGL.functional.color_clears.multi_context.gles2.rgba8888_pbuffer,Crash
dEQP-EGL.functional.color_clears.multi_context.gles2.rgba8888_window,Crash
dEQP-EGL.functional.color_clears.multi_thread.gles2.rgb888_pbuffer,Crash
dEQP-EGL.functional.color_clears.multi_thread.gles2.rgb888_window,Crash
dEQP-EGL.functional.color_clears.multi_thread.gles2.rgba8888_pbuffer,Crash
dEQP-EGL.functional.color_clears.multi_thread.gles2.rgba8888_window,Crash
dEQP-EGL.functional.color_clears.single_context.gles2.rgb888_pbuffer,Crash
dEQP-EGL.functional.color_clears.single_context.gles2.rgb888_window,Crash
dEQP-EGL.functional.color_clears.single_context.gles2.rgba8888_pbuffer,Crash
dEQP-EGL.functional.color_clears.single_context.gles2.rgba8888_window,Crash
dEQP-EGL.functional.create_context.no_config,Fail
dEQP-EGL.functional.render.multi_context.gles2.rgb888_pbuffer,Crash
dEQP-EGL.functional.render.multi_context.gles2.rgb888_window,Crash
dEQP-EGL.functional.render.multi_context.gles2.rgba8888_pbuffer,Crash
dEQP-EGL.functional.render.multi_context.gles2.rgba8888_window,Crash
dEQP-EGL.functional.render.multi_thread.gles2.rgb888_pbuffer,Crash
dEQP-EGL.functional.render.multi_thread.gles2.rgb888_window,Crash
dEQP-EGL.functional.render.multi_thread.gles2.rgba8888_pbuffer,Crash
dEQP-EGL.functional.render.multi_thread.gles2.rgba8888_window,Crash
dEQP-EGL.functional.render.single_context.gles2.rgb888_pbuffer,Crash
dEQP-EGL.functional.render.single_context.gles2.rgb888_window,Crash
dEQP-EGL.functional.render.single_context.gles2.rgba8888_pbuffer,Crash
dEQP-EGL.functional.render.single_context.gles2.rgba8888_window,Crash
dEQP-GLES2.functional.clipping.line.wide_line_clip_viewport_center,Fail
dEQP-GLES2.functional.clipping.line.wide_line_clip_viewport_corner,Fail
dEQP-GLES2.functional.depth_stencil_clear.depth_stencil_masked,Fail
@@ -412,15 +390,11 @@ dEQP-GLES2.functional.texture.specification.basic_copytexsubimage2d.2d_rgba,Fail
dEQP-GLES2.functional.texture.specification.basic_copytexsubimage2d.cube_rgba,Fail
dEQP-GLES2.functional.texture.wrap.clamp_clamp_nearest_npot_etc1,Fail
glx@glx-copy-sub-buffer samples=2,Crash
glx@glx-copy-sub-buffer samples=4,Crash
glx@glx-make-current,Crash
glx@glx-multithread-buffer,Fail
glx@glx-swap-pixmap-bad,Fail
glx@glx-visuals-depth -pixmap,Crash
glx@glx-visuals-depth,Crash
glx@glx-visuals-stencil -pixmap,Crash
glx@glx-visuals-stencil,Crash
glx@glx-visuals-depth -pixmap,Fail
glx@glx-visuals-stencil -pixmap,Fail
glx@glx_arb_create_context_es2_profile@invalid opengl es version,Fail
# X error 167 (GLXBadFBConfig (9)) was generated, but X error 8 was expected.
glx@glx_arb_create_context_no_error@no error,Crash
@@ -444,7 +418,6 @@ spec@!opengl 1.0@gl-1.0-drawbuffer-modes,Fail
spec@!opengl 1.0@gl-1.0-edgeflag,Fail
spec@!opengl 1.0@gl-1.0-edgeflag-const,Fail
spec@!opengl 1.0@gl-1.0-edgeflag-quads,Fail
spec@!opengl 1.0@gl-1.0-logicop,Crash
spec@!opengl 1.0@gl-1.0-no-op-paths,Fail
spec@!opengl 1.0@gl-1.0-scissor-offscreen,Fail
spec@!opengl 1.0@gl-1.0-user-clip-all-planes,Fail
@@ -1097,10 +1070,12 @@ spec@!opengl 1.1@clipflat@glDrawElements(GL_TRIANGLE_STRIP)- glFrontFace(GL_CW)-
spec@!opengl 1.1@clipflat@glDrawElements(GL_TRIANGLE_STRIP)- glFrontFace(GL_CW)- glPolygonMode(GL_LINE)- quadrant: right bottom PV: FIRST,Fail
spec@!opengl 1.1@clipflat@glDrawElements(GL_TRIANGLE_STRIP)- glFrontFace(GL_CW)- glPolygonMode(GL_LINE)- quadrant: right middle PV: FIRST,Fail
spec@!opengl 1.1@clipflat@glDrawElements(GL_TRIANGLE_STRIP)- glFrontFace(GL_CW)- glPolygonMode(GL_LINE)- quadrant: right top PV: FIRST,Fail
# Crashes in this group are CMA allocation fails
spec@!opengl 1.1@depthstencil-default_fb-blit samples=2,Crash
spec@!opengl 1.1@depthstencil-default_fb-blit samples=4,Crash
spec@!opengl 1.1@depthstencil-default_fb-clear samples=2,Crash
spec@!opengl 1.1@depthstencil-default_fb-clear samples=4,Crash
spec@!opengl 1.1@depthstencil-default_fb-clear samples=2,Fail
spec@!opengl 1.1@depthstencil-default_fb-clear samples=4,Fail
spec@!opengl 1.1@depthstencil-default_fb-clear,Fail
spec@!opengl 1.1@depthstencil-default_fb-copypixels samples=2,Crash
spec@!opengl 1.1@depthstencil-default_fb-copypixels samples=4,Crash
@@ -1112,6 +1087,7 @@ spec@!opengl 1.1@depthstencil-default_fb-readpixels-24_8 samples=2,Crash
spec@!opengl 1.1@depthstencil-default_fb-readpixels-24_8 samples=4,Crash
spec@!opengl 1.1@depthstencil-default_fb-readpixels-float-and-ushort samples=2,Crash
spec@!opengl 1.1@depthstencil-default_fb-readpixels-float-and-ushort samples=4,Crash
spec@!opengl 1.1@draw-pixels,Fail
spec@!opengl 1.1@gl-1.1-drawarrays-vertex-count 100000 varray gl_line_loop,Fail
spec@!opengl 1.1@gl-1.1-drawarrays-vertex-count 100000 varray gl_polygon,Crash
@@ -1157,10 +1133,6 @@ spec@!opengl 1.1@polygon-mode-offset@config 5: Expected white pixel on top edge,
spec@!opengl 1.1@polygon-mode-offset@config 6: Expected blue pixel in center,Fail
spec@!opengl 1.1@polygon-mode-offset@config 6: Expected white pixel on right edge,Fail
spec@!opengl 1.1@polygon-mode-offset@config 6: Expected white pixel on top edge,Fail
spec@!opengl 1.1@read-front clear-front-first samples=2,Crash
spec@!opengl 1.1@read-front clear-front-first samples=4,Crash
spec@!opengl 1.1@read-front samples=2,Crash
spec@!opengl 1.1@read-front samples=4,Crash
spec@!opengl 1.1@tex-upside-down-miptree,Fail
spec@!opengl 1.1@texsubimage-unpack,Fail
spec@!opengl 1.1@texwrap 2d proj,Fail
@@ -1257,8 +1229,8 @@ spec@arb_fragment_coord_conventions@fp-arb-fragment-coord-conventions-none,Fail
spec@arb_fragment_program@fp-indirections2,Fail
spec@arb_fragment_program@minmax,Fail
spec@arb_framebuffer_object@arb_framebuffer_object-depth-stencil-blit stencil gl_depth24_stencil8,Fail
spec@arb_framebuffer_object@arb_framebuffer_object-depth-stencil-blit stencil gl_stencil_index1,Fail
spec@arb_framebuffer_object@arb_framebuffer_object-depth-stencil-blit stencil gl_stencil_index16,Fail
spec@arb_framebuffer_object@arb_framebuffer_object-depth-stencil-blit stencil gl_stencil_index1,Fail
spec@arb_framebuffer_object@arb_framebuffer_object-depth-stencil-blit stencil gl_stencil_index4,Fail
spec@arb_framebuffer_object@arb_framebuffer_object-depth-stencil-blit stencil gl_stencil_index8,Fail
spec@arb_framebuffer_object@fbo-attachments-blit-scaled-linear,Fail
@@ -1270,38 +1242,6 @@ spec@arb_framebuffer_object@framebuffer-blit-levels read stencil,Fail
spec@arb_framebuffer_object@mixed-buffer-sizes,Fail
spec@arb_framebuffer_object@same-attachment-glframebuffertexture2d-gl_depth_stencil_attachment,Fail
spec@arb_framebuffer_srgb@arb_framebuffer_srgb-srgb_conformance,Fail
spec@arb_framebuffer_srgb@blit renderbuffer linear_to_srgb downsample disabled clear,Crash
spec@arb_framebuffer_srgb@blit renderbuffer linear_to_srgb downsample disabled render,Crash
spec@arb_framebuffer_srgb@blit renderbuffer linear_to_srgb downsample enabled clear,Crash
spec@arb_framebuffer_srgb@blit renderbuffer linear_to_srgb downsample enabled render,Crash
spec@arb_framebuffer_srgb@blit renderbuffer linear_to_srgb msaa disabled clear,Crash
spec@arb_framebuffer_srgb@blit renderbuffer linear_to_srgb msaa disabled render,Crash
spec@arb_framebuffer_srgb@blit renderbuffer linear_to_srgb msaa enabled clear,Crash
spec@arb_framebuffer_srgb@blit renderbuffer linear_to_srgb msaa enabled render,Crash
spec@arb_framebuffer_srgb@blit renderbuffer srgb_to_linear downsample disabled clear,Crash
spec@arb_framebuffer_srgb@blit renderbuffer srgb_to_linear downsample disabled render,Crash
spec@arb_framebuffer_srgb@blit renderbuffer srgb_to_linear downsample enabled clear,Crash
spec@arb_framebuffer_srgb@blit renderbuffer srgb_to_linear downsample enabled render,Crash
spec@arb_framebuffer_srgb@blit renderbuffer srgb_to_linear msaa disabled clear,Crash
spec@arb_framebuffer_srgb@blit renderbuffer srgb_to_linear msaa disabled render,Crash
spec@arb_framebuffer_srgb@blit renderbuffer srgb_to_linear msaa enabled clear,Crash
spec@arb_framebuffer_srgb@blit renderbuffer srgb_to_linear msaa enabled render,Crash
spec@arb_framebuffer_srgb@blit texture linear_to_srgb downsample disabled clear,Crash
spec@arb_framebuffer_srgb@blit texture linear_to_srgb downsample disabled render,Crash
spec@arb_framebuffer_srgb@blit texture linear_to_srgb downsample enabled clear,Crash
spec@arb_framebuffer_srgb@blit texture linear_to_srgb downsample enabled render,Crash
spec@arb_framebuffer_srgb@blit texture linear_to_srgb msaa disabled clear,Crash
spec@arb_framebuffer_srgb@blit texture linear_to_srgb msaa disabled render,Crash
spec@arb_framebuffer_srgb@blit texture linear_to_srgb msaa enabled clear,Crash
spec@arb_framebuffer_srgb@blit texture linear_to_srgb msaa enabled render,Crash
spec@arb_framebuffer_srgb@blit texture srgb_to_linear downsample disabled clear,Crash
spec@arb_framebuffer_srgb@blit texture srgb_to_linear downsample disabled render,Crash
spec@arb_framebuffer_srgb@blit texture srgb_to_linear downsample enabled clear,Crash
spec@arb_framebuffer_srgb@blit texture srgb_to_linear downsample enabled render,Crash
spec@arb_framebuffer_srgb@blit texture srgb_to_linear msaa disabled clear,Crash
spec@arb_framebuffer_srgb@blit texture srgb_to_linear msaa disabled render,Crash
spec@arb_framebuffer_srgb@blit texture srgb_to_linear msaa enabled clear,Crash
spec@arb_framebuffer_srgb@blit texture srgb_to_linear msaa enabled render,Crash
spec@arb_internalformat_query2@all internalformat_<x>_size pname checks,Fail
spec@arb_internalformat_query2@all internalformat_<x>_size pname checks@GL_INTERNALFORMAT_ALPHA_SIZE,Fail
spec@arb_internalformat_query2@all internalformat_<x>_size pname checks@GL_INTERNALFORMAT_BLUE_SIZE,Fail
@@ -1329,8 +1269,6 @@ spec@arb_sampler_objects@sampler-objects,Fail
spec@arb_shader_texture_lod@execution@glsl-fs-texturelod-01,Fail
spec@arb_texture_multisample@arb_texture_multisample-teximage-3d-multisample,Fail
spec@arb_texture_rectangle@1-1-linear-texture,Fail
spec@arb_texture_rectangle@copyteximage rect samples=2,Crash
spec@arb_texture_rectangle@copyteximage rect samples=4,Crash
spec@arb_texture_rectangle@texrect-many,Crash
spec@arb_texture_storage@texture-storage,Fail
spec@arb_texture_storage@texture-storage@3D mipmapped ,Fail
@@ -1368,75 +1306,48 @@ spec@ext_direct_state_access@textures@TextureSubImage3DEXT + display list GL_COM
spec@ext_direct_state_access@textures@TextureSubImage3DEXT + display list GL_COMPILE_AND_EXECUTE,Fail
spec@ext_direct_state_access@textures@TextureSubImage3DEXT,Fail
spec@ext_framebuffer_blit@fbo-blit-check-limits,Fail
spec@ext_framebuffer_multisample@blit-flipped 2 x,Crash
spec@ext_framebuffer_multisample@blit-flipped 2 y,Crash
spec@ext_framebuffer_multisample@blit-flipped 4 x,Crash
spec@ext_framebuffer_multisample@blit-flipped 4 y,Crash
# Remaining crashes are CMA allocation failures.
spec@ext_framebuffer_multisample@blit-mismatched-formats,Fail
spec@ext_framebuffer_multisample@clip-and-scissor-blit 2 downsample,Crash
spec@ext_framebuffer_multisample@clip-and-scissor-blit 2 msaa,Crash
spec@ext_framebuffer_multisample@clip-and-scissor-blit 2 upsample,Crash
spec@ext_framebuffer_multisample@clip-and-scissor-blit 4 downsample,Crash
spec@ext_framebuffer_multisample@clip-and-scissor-blit 4 msaa,Crash
spec@ext_framebuffer_multisample@clip-and-scissor-blit 4 upsample,Crash
spec@ext_framebuffer_multisample@enable-flag,Crash
spec@ext_framebuffer_multisample@clip-and-scissor-blit 2 msaa,Fail
spec@ext_framebuffer_multisample@clip-and-scissor-blit 4 msaa,Fail
spec@ext_framebuffer_multisample@interpolation 2 centroid-edges,Fail
spec@ext_framebuffer_multisample@interpolation 4 centroid-edges,Fail
spec@ext_framebuffer_multisample@line-smooth 2,Crash
spec@ext_framebuffer_multisample@line-smooth 4,Crash
spec@ext_framebuffer_multisample@multisample-blit 2 color linear,Crash
spec@ext_framebuffer_multisample@multisample-blit 2 color,Crash
spec@ext_framebuffer_multisample@multisample-blit 2 depth,Crash
spec@ext_framebuffer_multisample@multisample-blit 2 stencil,Crash
spec@ext_framebuffer_multisample@multisample-blit 4 color linear,Crash
spec@ext_framebuffer_multisample@multisample-blit 4 color,Crash
spec@ext_framebuffer_multisample@multisample-blit 2 stencil,Fail
spec@ext_framebuffer_multisample@multisample-blit 4 depth,Crash
spec@ext_framebuffer_multisample@multisample-blit 4 stencil,Crash
spec@ext_framebuffer_multisample@multisample-blit 4 stencil,Fail
spec@ext_framebuffer_multisample@no-color 2 depth combined,Crash
spec@ext_framebuffer_multisample@no-color 2 depth single,Crash
spec@ext_framebuffer_multisample@no-color 2 depth-computed combined,Crash
spec@ext_framebuffer_multisample@no-color 2 depth-computed single,Crash
spec@ext_framebuffer_multisample@no-color 2 stencil combined,Crash
spec@ext_framebuffer_multisample@no-color 2 stencil single,Crash
spec@ext_framebuffer_multisample@no-color 2 depth single,Crash
spec@ext_framebuffer_multisample@no-color 2 stencil combined,Fail
spec@ext_framebuffer_multisample@no-color 2 stencil single,Fail
spec@ext_framebuffer_multisample@no-color 4 depth combined,Crash
spec@ext_framebuffer_multisample@no-color 4 depth single,Crash
spec@ext_framebuffer_multisample@no-color 4 depth-computed combined,Crash
spec@ext_framebuffer_multisample@no-color 4 depth-computed single,Crash
spec@ext_framebuffer_multisample@no-color 4 stencil combined,Crash
spec@ext_framebuffer_multisample@no-color 4 stencil single,Crash
spec@ext_framebuffer_multisample@point-smooth 2,Crash
spec@ext_framebuffer_multisample@point-smooth 4,Crash
spec@ext_framebuffer_multisample@polygon-smooth 2,Crash
spec@ext_framebuffer_multisample@polygon-smooth 4,Crash
spec@ext_framebuffer_multisample@no-color 4 depth single,Crash
spec@ext_framebuffer_multisample@no-color 4 stencil combined,Fail
spec@ext_framebuffer_multisample@no-color 4 stencil single,Fail
spec@ext_framebuffer_multisample@sample-alpha-to-coverage 2 color,Fail
spec@ext_framebuffer_multisample@sample-alpha-to-coverage 2 depth,Crash
spec@ext_framebuffer_multisample@sample-alpha-to-coverage 4 color,Fail
spec@ext_framebuffer_multisample@sample-alpha-to-coverage 4 depth,Crash
spec@ext_framebuffer_multisample@sample-coverage 2 inverted,Crash
spec@ext_framebuffer_multisample@sample-coverage 2 non-inverted,Crash
spec@ext_framebuffer_multisample@sample-coverage 4 inverted,Crash
spec@ext_framebuffer_multisample@sample-coverage 4 non-inverted,Crash
spec@ext_framebuffer_multisample@unaligned-blit 2 color downsample,Crash
spec@ext_framebuffer_multisample@unaligned-blit 2 color msaa,Crash
spec@ext_framebuffer_multisample@unaligned-blit 2 color upsample,Crash
spec@ext_framebuffer_multisample@sample-coverage 2 inverted,Fail
spec@ext_framebuffer_multisample@sample-coverage 2 non-inverted,Fail
spec@ext_framebuffer_multisample@sample-coverage 4 inverted,Fail
spec@ext_framebuffer_multisample@sample-coverage 4 non-inverted,Fail
spec@ext_framebuffer_multisample@unaligned-blit 2 color msaa,Fail
spec@ext_framebuffer_multisample@unaligned-blit 2 depth downsample,Crash
spec@ext_framebuffer_multisample@unaligned-blit 2 depth msaa,Crash
spec@ext_framebuffer_multisample@unaligned-blit 2 depth upsample,Crash
spec@ext_framebuffer_multisample@unaligned-blit 4 color downsample,Crash
spec@ext_framebuffer_multisample@unaligned-blit 4 color msaa,Crash
spec@ext_framebuffer_multisample@unaligned-blit 4 color upsample,Crash
spec@ext_framebuffer_multisample@unaligned-blit 4 color msaa,Fail
spec@ext_framebuffer_multisample@unaligned-blit 4 depth downsample,Crash
spec@ext_framebuffer_multisample@unaligned-blit 4 depth msaa,Crash
spec@ext_framebuffer_multisample@unaligned-blit 4 depth upsample,Crash
spec@ext_framebuffer_multisample@upsample 2 color linear,Crash
spec@ext_framebuffer_multisample@upsample 2 color,Crash
spec@ext_framebuffer_multisample@upsample 2 depth,Crash
spec@ext_framebuffer_multisample@upsample 2 stencil,Crash
spec@ext_framebuffer_multisample@upsample 4 color linear,Crash
spec@ext_framebuffer_multisample@upsample 4 color,Crash
spec@ext_framebuffer_multisample@upsample 4 depth,Crash
spec@ext_framebuffer_multisample@upsample 4 stencil,Crash
spec@ext_framebuffer_multisample_blit_scaled@negative-blit-scaled,Crash
spec@ext_framebuffer_multisample@upsample 2 stencil,Fail
spec@ext_framebuffer_multisample@upsample 4 stencil,Fail
spec@ext_framebuffer_object@fbo-3d,Fail
spec@ext_framebuffer_object@fbo-blending-format-quirks,Fail
spec@ext_framebuffer_object@fbo-depth-sample-compare,Fail

View File

@@ -11,5 +11,7 @@ shaders@glsl-vs-loop-nested
spec@arb_framebuffer_srgb@blit renderbuffer srgb single_sampled enabled clear
spec@egl_chromium_sync_control@conformance
spec@ext_packed_depth_stencil@fbo-stencil-gl_depth24_stencil8-readpixels
# CMA allocations that may sometimes succeed
spec@!opengl 1.1@depthstencil-default_fb-drawpixels-float-and-ushort samples=2
spec@!opengl 1.1@depthstencil-default_fb-drawpixels-float-and-ushort samples=4

View File

@@ -31,6 +31,8 @@ spec@arb_internalformat_query2@all internalformat_<x>_type pname checks
spec@!opengl 1.1@streaming-texture-leak
spec@!opengl 1.0@gl-1.0-blend-func
shaders@glsl-predication-on-large-array
spec@arb_texture_rectangle@copyteximage rect samples=2
spec@arb_texture_rectangle@copyteximage rect samples=4
# Extensions not supported
spec@arb_gpu_shader_fp64.*

View File

@@ -47,6 +47,7 @@ vc4_nir_lower_txf_ms_instr(nir_builder *b, nir_instr *instr, void *data)
txf->coord_components = txf_ms->coord_components;
txf->is_shadow = txf_ms->is_shadow;
txf->is_new_style_shadow = txf_ms->is_new_style_shadow;
txf->dest_type = txf_ms->dest_type;
nir_ssa_def *coord = NULL, *sample_index = NULL;
for (int i = 0; i < txf_ms->num_srcs; i++) {