From fbbdc965aadee71bd386ce590fba67942c23f595 Mon Sep 17 00:00:00 2001 From: Alyssa Rosenzweig Date: Thu, 1 Aug 2024 22:31:50 -0400 Subject: [PATCH] asahi: don't count helper invs in pipeline stats query Signed-off-by: Alyssa Rosenzweig Part-of: --- src/asahi/lib/agx_nir_prolog_epilog.c | 2 ++ 1 file changed, 2 insertions(+) diff --git a/src/asahi/lib/agx_nir_prolog_epilog.c b/src/asahi/lib/agx_nir_prolog_epilog.c index 459bde7b80c..242a75da855 100644 --- a/src/asahi/lib/agx_nir_prolog_epilog.c +++ b/src/asahi/lib/agx_nir_prolog_epilog.c @@ -605,12 +605,14 @@ agx_nir_lower_stats_fs(nir_shader *s) nir_builder_at(nir_before_impl(nir_shader_get_entrypoint(s))); nir_builder *b = &b_; + nir_push_if(b, nir_inot(b, nir_load_helper_invocation(b, 1))); nir_def *samples = nir_bit_count(b, nir_load_sample_mask_in(b)); unsigned query = PIPE_STAT_QUERY_PS_INVOCATIONS; nir_def *addr = nir_load_stat_query_address_agx(b, .base = query); nir_global_atomic(b, 32, addr, samples, .atomic_op = nir_atomic_op_iadd); + nir_pop_if(b, NULL); nir_metadata_preserve(b->impl, nir_metadata_control_flow); return true; }