projects
/
mesa.git
/ commitdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
| commitdiff |
tree
raw
|
patch
| inline |
side by side
(parent:
2591bee
)
vc4: When doing algebraic optimization into a MOV, use the right MOV.
author
Eric Anholt
<eric@anholt.net>
Fri, 11 Dec 2015 06:02:30 +0000
(22:02 -0800)
committer
Eric Anholt
<eric@anholt.net>
Fri, 11 Dec 2015 20:21:22 +0000
(12:21 -0800)
If there were src unpacks, changing to the integer MOV instead of float
(for example) would change the unpack operation.
src/gallium/drivers/vc4/vc4_opt_algebraic.c
patch
|
blob
|
history
diff --git
a/src/gallium/drivers/vc4/vc4_opt_algebraic.c
b/src/gallium/drivers/vc4/vc4_opt_algebraic.c
index f2e1938f474033461276c08a10031b679dce692f..207686b4af7defc689280fec788e533ddbd5702c 100644
(file)
--- a/
src/gallium/drivers/vc4/vc4_opt_algebraic.c
+++ b/
src/gallium/drivers/vc4/vc4_opt_algebraic.c
@@
-94,7
+94,12
@@
static void
replace_with_mov(struct vc4_compile *c, struct qinst *inst, struct qreg arg)
{
dump_from(c, inst);
- inst->op = QOP_MOV;
+ if (qir_is_mul(inst))
+ inst->op = QOP_MMOV;
+ else if (qir_is_float_input(inst))
+ inst->op = QOP_FMOV;
+ else
+ inst->op = QOP_MOV;
inst->src[0] = arg;
inst->src[1] = c->undef;
dump_to(c, inst);