llvmpipe: enable PIPE_CAP_FBFETCH_COHERENT

llvmpipe's fragment shaders are always run sequentially and
in API order for a single tile, so it's impossible to have
out of order render target writes requiring fetch barriers.

Issues fixed in previous commits were actually breaking most
piglit/deqp tests for coherent extension variant.

Signed-off-by: Pavel Asyutchenko <sventeam@yandex.ru>
Reviewed-by: Dave Airlie <airlied@redhat.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/13252>
This commit is contained in:
Pavel Asyutchenko
2021-09-11 20:08:20 +03:00
committed by Marge Bot
parent e403c1c23e
commit 8ee7309e57
3 changed files with 0 additions and 31 deletions
@@ -2073,13 +2073,6 @@ spec/ext_separate_shader_objects/preprocessor/disabled-undefined-es.geom: skip
spec/ext_separate_shader_objects/preprocessor/disabled-undefined-es.tesc: skip
spec/ext_separate_shader_objects/preprocessor/disabled-undefined-es.tese: skip
spec/ext_separate_shader_objects/preprocessor/disabled-undefined-es.vert: skip
spec/ext_shader_framebuffer_fetch/compiler/gles2/negative-gl_lastfragdata-write.frag: skip
spec/ext_shader_framebuffer_fetch/compiler/gles2/negative-inout-fragment-output.frag: skip
spec/ext_shader_framebuffer_fetch/compiler/gles2/negative-output-layout.frag: skip
spec/ext_shader_framebuffer_fetch/compiler/gles3/negative-gl_lastfragdata.frag: skip
spec/ext_shader_framebuffer_fetch/compiler/gles3/negative-inout-gl_fragdepth.frag: skip
spec/ext_shader_framebuffer_fetch/compiler/gles3/negative-inout-vertex-output.vert: skip
spec/ext_shader_framebuffer_fetch/compiler/gles3/negative-output-layout.frag: skip
spec/ext_shader_io_blocks/preprocessor/disabled-defined-es.comp: skip
spec/ext_shader_io_blocks/preprocessor/disabled-defined-es.frag: skip
spec/ext_shader_io_blocks/preprocessor/disabled-defined-es.geom: skip
@@ -110,35 +110,12 @@ spec/arb_shader_storage_buffer_object/execution/ssbo-atomiccompswap-int: fail
spec/arb_tessellation_shader/execution/gs-primitiveid-instanced: fail
spec/ext_demote_to_helper_invocation/execution/demote: skip
spec/ext_demote_to_helper_invocation/execution/demote_with_derivatives: skip
spec/ext_shader_framebuffer_fetch/execution/gl/1d: skip
spec/ext_shader_framebuffer_fetch/execution/gl/layered-1darray: skip
spec/ext_shader_framebuffer_fetch/execution/gl/layered-2darray: skip
spec/ext_shader_framebuffer_fetch/execution/gl/layered-cubemap: skip
spec/ext_shader_framebuffer_fetch/execution/gles2/mrt: skip
spec/ext_shader_framebuffer_fetch/execution/gles2/nonuniform-ss: skip
spec/ext_shader_framebuffer_fetch/execution/gles2/nonuniform-ss-redecl-highp: skip
spec/ext_shader_framebuffer_fetch/execution/gles2/nonuniform-ss-redecl-lowp: skip
spec/ext_shader_framebuffer_fetch/execution/gles2/simple-ss: skip
spec/ext_shader_framebuffer_fetch/execution/gles3/discard-ms8: skip
spec/ext_shader_framebuffer_fetch/execution/gles3/discard-ss: skip
spec/ext_shader_framebuffer_fetch/execution/gles3/integer-ms2: skip
spec/ext_shader_framebuffer_fetch/execution/gles3/integer-ms8: skip
spec/ext_shader_framebuffer_fetch/execution/gles3/integer-ss: skip
spec/ext_shader_framebuffer_fetch/execution/gles3/mrt: skip
spec/ext_shader_framebuffer_fetch/execution/gles3/nonuniform-ms16: skip
spec/ext_shader_framebuffer_fetch/execution/gles3/nonuniform-ms2: skip
spec/ext_shader_framebuffer_fetch/execution/gles3/nonuniform-ms8: skip
spec/ext_shader_framebuffer_fetch/execution/gles3/nonuniform-ss: skip
spec/ext_shader_framebuffer_fetch/execution/gles3/overwrite: skip
spec/ext_shader_framebuffer_fetch/execution/gles3/simple-ms16: skip
spec/ext_shader_framebuffer_fetch/execution/gles3/simple-ms2: skip
spec/ext_shader_framebuffer_fetch/execution/gles3/simple-ms8: skip
spec/ext_shader_framebuffer_fetch/execution/gles3/simple-ss: skip
spec/ext_shader_framebuffer_fetch/execution/gles3/single-slice-2darray: skip
spec/ext_shader_framebuffer_fetch/execution/gles3/single-slice-2darray-mipmap: skip
spec/ext_shader_framebuffer_fetch/execution/gles3/single-slice-3d: skip
spec/ext_shader_framebuffer_fetch/execution/gles3/single-slice-cubemap: skip
spec/ext_shader_framebuffer_fetch/execution/gles3/texture: skip
spec/ext_shader_framebuffer_fetch_non_coherent/execution/gles3/discard-ms8: skip
spec/ext_shader_framebuffer_fetch_non_coherent/execution/gles3/integer-ms8: skip
spec/ext_shader_framebuffer_fetch_non_coherent/execution/gles3/nonuniform-ms16: skip
-1
View File
@@ -315,7 +315,6 @@ llvmpipe_get_param(struct pipe_screen *screen, enum pipe_cap param)
case PIPE_CAP_FBFETCH:
return 8;
case PIPE_CAP_FBFETCH_COHERENT:
return 0;
case PIPE_CAP_MULTI_DRAW_INDIRECT:
case PIPE_CAP_MULTI_DRAW_INDIRECT_PARAMS:
return 1;