Mesa (master): freedreno/a6xx: Fix alpha tests.

GitLab Mirror gitlab-mirror at kemper.freedesktop.org
Thu Apr 1 21:28:23 UTC 2021


Module: Mesa
Branch: master
Commit: fe5349f70c926ed32a452c3476f2affc24dd4b80
URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=fe5349f70c926ed32a452c3476f2affc24dd4b80

Author: Eric Anholt <eric at anholt.net>
Date:   Thu Apr  1 10:25:00 2021 -0700

freedreno/a6xx: Fix alpha tests.

Apparently I inverted the sense of this flag back when we didn't have
piglit testing.  Fixes terrible rendering in minetest, HL2, CS:Source, and
CS.

Fixes: 0369dd907778 ("freedreno/a6xx: Add ARB_depth_clamp and separate clamp support.")
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/9957>

---

 src/freedreno/ci/traces-freedreno.yml                      | 14 ++++----------
 src/gallium/drivers/freedreno/a6xx/fd6_zsa.c               |  5 +++--
 .../drivers/freedreno/ci/piglit-freedreno-a630-fails.txt   |  8 --------
 3 files changed, 7 insertions(+), 20 deletions(-)

diff --git a/src/freedreno/ci/traces-freedreno.yml b/src/freedreno/ci/traces-freedreno.yml
index 979a4b2ff6d..dddb4b44b3d 100644
--- a/src/freedreno/ci/traces-freedreno.yml
+++ b/src/freedreno/ci/traces-freedreno.yml
@@ -437,10 +437,8 @@ traces:
         checksum: 9227cc8d4e6445f2323438340f2a5d9b
       - device: freedreno-a530
         checksum: 76fbd196f69594c927dc994b4492dd50
-      # Note: Obvious alpha test failure on the tree in the upper left.  Also a
-      # big block around the hand that's not present on a530 or radeonsi.
       - device: freedreno-a630
-        checksum: c856d9588886978a12181e4646a7a78b
+        checksum: d70eb1f72d5d50e6cb617520234f20fb
   - path: neverball/neverball.trace
     expectations:
       # Skipped since it's long on a530.
@@ -507,9 +505,8 @@ traces:
       # Flaky rendering (slight pixel differences around the tree alpha tests)
       # - device: freedreno-a530
       #   checksum: 14e78caf29b6a3341081c8f2e678355f
-      # Looks like some alpha test failures (trees on the right side)
       - device: freedreno-a630
-        checksum: 5a11d791a5a718d4aa6c84b416b9f2b6
+        checksum: 2a755a4da96e2b0ec780f877157b6752
   - path: valve/counterstrike-source-v2.trace
     expectations:
       # Skipped since it's slow even on a530.
@@ -518,9 +515,8 @@ traces:
       # 1 minute
       - device: freedreno-a530
         checksum: bbe74b2171d62fc6738086740e1aa0d8
-      # Alpha test failures (fence on the left hand side of road)
       - device: freedreno-a630
-        checksum: 4b707f385256b380c936186db8c251cb
+        checksum: e7b57988348b2ce98b964d71b18c1771
   - path: valve/half-life-2-v2.trace
     expectations:
       # Skipped since it's slow even on a530.
@@ -529,10 +525,8 @@ traces:
       # 2 minutes
       - device: freedreno-a530
         checksum: 5def334bb574b024198ddddb1a069529
-      # Alpha test failures on the fence.  Also, the shadows are much lighter
-      # than a530, but it's unclear which is right.
       - device: freedreno-a630
-        checksum: 8f5929c82e7d990e8c3d2bea14688224
+        checksum: b6ac60027699d49618cc9f2dde1c308c
   - path: valve/portal-2-v2.trace
     expectations:
       # Skipped since it's slow even on a530.
diff --git a/src/gallium/drivers/freedreno/a6xx/fd6_zsa.c b/src/gallium/drivers/freedreno/a6xx/fd6_zsa.c
index d262e2049a0..4bd39e2967d 100644
--- a/src/gallium/drivers/freedreno/a6xx/fd6_zsa.c
+++ b/src/gallium/drivers/freedreno/a6xx/fd6_zsa.c
@@ -207,8 +207,9 @@ fd6_zsa_state_create(struct pipe_context *pctx,
 		struct fd_ringbuffer *ring = fd_ringbuffer_new_object(ctx->pipe, 9 * 4);
 
 		OUT_PKT4(ring, REG_A6XX_RB_ALPHA_CONTROL, 1);
-		OUT_RING(ring, (i & FD6_ZSA_NO_ALPHA) ? so->rb_alpha_control :
-			so->rb_alpha_control & ~A6XX_RB_ALPHA_CONTROL_ALPHA_TEST);
+		OUT_RING(ring, (i & FD6_ZSA_NO_ALPHA) ?
+			so->rb_alpha_control & ~A6XX_RB_ALPHA_CONTROL_ALPHA_TEST :
+			so->rb_alpha_control);
 
 		OUT_PKT4(ring, REG_A6XX_RB_STENCIL_CONTROL, 1);
 		OUT_RING(ring, so->rb_stencil_control);
diff --git a/src/gallium/drivers/freedreno/ci/piglit-freedreno-a630-fails.txt b/src/gallium/drivers/freedreno/ci/piglit-freedreno-a630-fails.txt
index 202c0b1023b..6a34fb21966 100644
--- a/src/gallium/drivers/freedreno/ci/piglit-freedreno-a630-fails.txt
+++ b/src/gallium/drivers/freedreno/ci/piglit-freedreno-a630-fails.txt
@@ -99,8 +99,6 @@ spec at arb_direct_state_access@gettextureimage-formats,Crash
 spec at arb_direct_state_access@gettextureimage-formats init-by-rendering,Fail
 spec at arb_direct_state_access@transformfeedback-bufferbase,Fail
 spec at arb_direct_state_access@transformfeedback-bufferrange,Fail
-spec at arb_draw_buffers@fbo-mrt-alphatest,Fail
-spec at arb_es2_compatibility@fbo-alphatest-formats,Fail
 spec at arb_es2_compatibility@texwrap formats bordercolor-swizzled,Fail
 spec at arb_fragment_program@fp-fragment-position,Crash
 spec at arb_fragment_program@sparse-samplers,Crash
@@ -183,7 +181,6 @@ spec at arb_texture_compression_bptc@texwrap formats bordercolor-swizzled,Fail
 spec at arb_texture_cube_map@copyteximage cube,Crash
 spec at arb_texture_cube_map@copyteximage cube samples=2,Crash
 spec at arb_texture_cube_map@copyteximage cube samples=4,Crash
-spec at arb_texture_float@fbo-alphatest-formats,Fail
 spec at arb_texture_float@fbo-blending-formats,Fail
 spec at arb_texture_float@texwrap formats bordercolor-swizzled,Fail
 spec at arb_texture_multisample@arb_texture_multisample-dsa-texelfetch,Fail
@@ -191,8 +188,6 @@ spec at arb_texture_rectangle@1-1-linear-texture,Fail
 spec at arb_texture_rectangle@copyteximage rect,Crash
 spec at arb_texture_rectangle@copyteximage rect samples=2,Crash
 spec at arb_texture_rectangle@copyteximage rect samples=4,Crash
-spec at arb_texture_rg@fbo-alphatest-formats,Fail
-spec at arb_texture_rg@fbo-alphatest-formats-float,Fail
 spec at arb_texture_rg@texwrap formats bordercolor-swizzled,Fail
 spec at arb_texture_rg@texwrap formats-float bordercolor-swizzled,Fail
 spec at arb_texture_rg@texwrap formats-int bordercolor-swizzled,Fail
@@ -275,7 +270,6 @@ spec at ext_framebuffer_multisample@unaligned-blit 2 stencil msaa,Fail
 spec at ext_framebuffer_multisample@unaligned-blit 4 color msaa,Fail
 spec at ext_framebuffer_multisample@unaligned-blit 4 depth msaa,Fail
 spec at ext_framebuffer_multisample@unaligned-blit 4 stencil msaa,Fail
-spec at ext_framebuffer_object@fbo-alphatest-formats,Fail
 spec at ext_framebuffer_object@fbo-alphatest-nocolor,Fail
 spec at ext_framebuffer_object@fbo-alphatest-nocolor-ff,Fail
 spec at ext_framebuffer_object@fbo-blending-format-quirks,Fail
@@ -293,7 +287,6 @@ spec at ext_image_dma_buf_import@ext_image_dma_buf_import-sample_yuyv,Crash
 spec at ext_image_dma_buf_import@ext_image_dma_buf_import-sample_yvu420,Crash
 spec at ext_packed_depth_stencil@texwrap formats bordercolor,Fail
 spec at ext_packed_depth_stencil@texwrap formats bordercolor-swizzled,Fail
-spec at ext_packed_float@fbo-alphatest-formats,Fail
 spec at ext_packed_float@query-rgba-signed-components,Fail
 spec at ext_packed_float@texwrap formats bordercolor-swizzled,Fail
 spec at ext_texture_array@copyteximage 1d_array,Crash
@@ -318,7 +311,6 @@ spec at ext_texture_snorm@fbo-generatemipmap-formats,Fail
 spec at ext_texture_snorm@multisample-formats 2 gl_ext_texture_snorm,Fail
 spec at ext_texture_snorm@multisample-formats 4 gl_ext_texture_snorm,Fail
 spec at ext_texture_snorm@texwrap formats bordercolor-swizzled,Fail
-spec at ext_texture_srgb@fbo-alphatest-formats,Fail
 spec at ext_texture_srgb@texwrap formats bordercolor-swizzled,Fail
 spec at ext_texture_srgb@texwrap formats-s3tc bordercolor-swizzled,Fail
 spec at ext_transform_feedback@geometry-shaders-basic,Fail



More information about the mesa-commit mailing list