Mesa (master): panfrost/midgard: Cleanup copy propagation

GitLab Mirror gitlab-mirror at kemper.freedesktop.org
Tue Jun 4 20:23:19 UTC 2019


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

Author: Alyssa Rosenzweig <alyssa at rosenzweig.io>
Date:   Thu May 23 02:23:39 2019 +0000

panfrost/midgard: Cleanup copy propagation

Signed-off-by: Alyssa Rosenzweig <alyssa.rosenzweig at collabora.com>
Reviewed-by: Ryan Houdek <Sonicadvance1 at gmail.com>

---

 src/gallium/drivers/panfrost/midgard/midgard_compile.c | 15 ++++-----------
 1 file changed, 4 insertions(+), 11 deletions(-)

diff --git a/src/gallium/drivers/panfrost/midgard/midgard_compile.c b/src/gallium/drivers/panfrost/midgard/midgard_compile.c
index b57b46aaecd..c519193a56a 100644
--- a/src/gallium/drivers/panfrost/midgard/midgard_compile.c
+++ b/src/gallium/drivers/panfrost/midgard/midgard_compile.c
@@ -1769,17 +1769,10 @@ midgard_opt_copy_prop(compiler_context *ctx, midgard_block *block)
                 if (mir_nontrivial_mod(src, is_int, mask)) continue;
                 if (ins->alu.outmod != midgard_outmod_none) continue;
 
-                mir_foreach_instr_in_block_from(block, v, mir_next_op(ins)) {
-                        if (v->ssa_args.src0 == to) {
-                                v->ssa_args.src0 = from;
-                                progress = true;
-                        }
-
-                        if (v->ssa_args.src1 == to && !v->ssa_args.inline_constant) {
-                                v->ssa_args.src1 = from;
-                                progress = true;
-                        }
-                }
+                /* We're clear -- rewrite */
+                mir_rewrite_index_src(ctx, to, from);
+                mir_remove_instruction(ins);
+                progress |= true;
         }
 
         return progress;




More information about the mesa-commit mailing list