Oops :) This probably triggers a lot since they use fma() all over the place. Internally these map to the same opcode, only the optimizer treats them differently. Thanks!
Reviewed-by: Ilia Mirkin <[email protected]> On Sat, Mar 18, 2017 at 8:08 PM, Karol Herbst <[email protected]> wrote: > helps mainly feral ported games > > shader-db changes: > total instructions in shared programs : 3901147 -> 3842505 (-1.50%) > total gprs used in shared programs : 471258 -> 467359 (-0.83%) > total local used in shared programs : 27405 -> 27361 (-0.16%) > total bytes used in shared programs : 35749888 -> 35214176 (-1.50%) > > local gpr inst bytes > helped 17 1829 4091 4091 > hurt 4 44 3 3 > > Signed-off-by: Karol Herbst <[email protected]> > --- > src/gallium/drivers/nouveau/codegen/nv50_ir_target_nvc0.cpp | 1 + > 1 file changed, 1 insertion(+) > > diff --git a/src/gallium/drivers/nouveau/codegen/nv50_ir_target_nvc0.cpp > b/src/gallium/drivers/nouveau/codegen/nv50_ir_target_nvc0.cpp > index abdb328949..1c67e85d19 100644 > --- a/src/gallium/drivers/nouveau/codegen/nv50_ir_target_nvc0.cpp > +++ b/src/gallium/drivers/nouveau/codegen/nv50_ir_target_nvc0.cpp > @@ -105,6 +105,7 @@ static const struct opProperties _initProps[] = > { OP_MAX, 0x3, 0x3, 0x0, 0x0, 0x2, 0x2 }, > { OP_MIN, 0x3, 0x3, 0x0, 0x0, 0x2, 0x2 }, > { OP_MAD, 0x7, 0x0, 0x0, 0x8, 0x6, 0x2 | 0x8 }, // special c[] > constraint > + { OP_FMA, 0x7, 0x0, 0x0, 0x8, 0x6, 0x2 | 0x8 }, // keep the same as > OP_MAD > { OP_SHLADD, 0x5, 0x0, 0x0, 0x0, 0x4, 0x6 }, > { OP_MADSP, 0x0, 0x0, 0x0, 0x0, 0x6, 0x2 }, > { OP_ABS, 0x0, 0x0, 0x0, 0x0, 0x1, 0x0 }, > -- > 2.12.0 > _______________________________________________ mesa-dev mailing list [email protected] https://lists.freedesktop.org/mailman/listinfo/mesa-dev
