From 76cd9955d96c1b0a13905e255571eb35b3aa2a99 Mon Sep 17 00:00:00 2001 From: Eric Anholt Date: Wed, 24 Sep 2014 21:57:06 -0700 Subject: vc4: Optimize out silly SUBs of 0. Drops instructions on vs-temp-array-mat4-index-col-row-wr.shader_test, which I was looking at because it's failing to register allocate. --- src/gallium/drivers/vc4/vc4_opt_algebraic.c | 11 +++++++++++ 1 file changed, 11 insertions(+) diff --git a/src/gallium/drivers/vc4/vc4_opt_algebraic.c b/src/gallium/drivers/vc4/vc4_opt_algebraic.c index b5cde0511d0..f88a5c17d2a 100644 --- a/src/gallium/drivers/vc4/vc4_opt_algebraic.c +++ b/src/gallium/drivers/vc4/vc4_opt_algebraic.c @@ -117,6 +117,17 @@ qir_opt_algebraic(struct vc4_compile *c) } break; + case QOP_FSUB: + case QOP_SUB: + if (is_zero(c, defs, inst->src[1])) { + dump_from(c, inst); + inst->op = QOP_MOV; + inst->src[1] = c->undef; + progress = true; + dump_to(c, inst); + } + break; + default: break; } -- cgit v1.2.3