Mesa (master): panfrost: Ignore discards in dead branch analysis
GitLab Mirror
gitlab-mirror at kemper.freedesktop.org
Mon Jun 10 15:23:37 UTC 2019
Module: Mesa
Branch: master
Commit: e9703fb4162e85943c52b6559d3554b521125da4
URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=e9703fb4162e85943c52b6559d3554b521125da4
Author: Alyssa Rosenzweig <alyssa.rosenzweig at collabora.com>
Date: Mon Jun 10 08:21:24 2019 -0700
panfrost: Ignore discards in dead branch analysis
Fixes regressions in
dEQP-GLES2.functional.shaders.discard.dynamic_loop_*
Signed-off-by: Alyssa Rosenzweig <alyssa.rosenzweig at collabora.com>
---
src/gallium/drivers/panfrost/midgard/midgard_compile.c | 5 +++++
1 file changed, 5 insertions(+)
diff --git a/src/gallium/drivers/panfrost/midgard/midgard_compile.c b/src/gallium/drivers/panfrost/midgard/midgard_compile.c
index bc9521aa9ed..4ea8834de2b 100644
--- a/src/gallium/drivers/panfrost/midgard/midgard_compile.c
+++ b/src/gallium/drivers/panfrost/midgard/midgard_compile.c
@@ -1731,6 +1731,11 @@ midgard_opt_cull_dead_branch(compiler_context *ctx, midgard_block *block)
* just generally special */
if (ins->prepacked_branch) continue;
+ /* Discards are similarly special and may not correspond to the
+ * end of a block */
+
+ if (ins->branch.target_type == TARGET_DISCARD) continue;
+
if (branched) {
/* We already branched, so this is dead */
mir_remove_instruction(ins);
More information about the mesa-commit
mailing list