summaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/gallium/drivers/vc4/vc4_opt_algebraic.c11
1 files changed, 11 insertions, 0 deletions
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;
}