From 7f247743a3c3fd2c9d25171f3fd6f49e677f437e Mon Sep 17 00:00:00 2001 From: Alyssa Rosenzweig Date: Wed, 23 Nov 2022 14:46:22 -0500 Subject: [PATCH] asahi: Check-box implement rasterizer discard Passes dEQP-GLES3.functional.rasterizer_discard.* Signed-off-by: Alyssa Rosenzweig Part-of: --- src/gallium/drivers/asahi/agx_state.c | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/src/gallium/drivers/asahi/agx_state.c b/src/gallium/drivers/asahi/agx_state.c index e0b59ba03ce..ae140c2da51 100644 --- a/src/gallium/drivers/asahi/agx_state.c +++ b/src/gallium/drivers/asahi/agx_state.c @@ -2041,6 +2041,10 @@ agx_draw_vbo(struct pipe_context *pctx, const struct pipe_draw_info *info, if (agx_scissor_culls_everything(ctx)) return; + /* We don't support side effects in vertex stages, so this is trivial */ + if (ctx->rast->base.rasterizer_discard) + return; + /* Dirty track the reduced prim: lines vs points vs triangles */ enum pipe_prim_type reduced_prim = u_reduced_prim(info->mode); if (reduced_prim != batch->reduced_prim) ctx->dirty |= AGX_DIRTY_PRIM;