This series reworks the structure of the pass to make it easier to add more optimisations to it.
Also implements folding for mad on gf100+ ISAs to reduce instruction count by ~0.37% I can only test it on a gk106 for now. Karol Herbst (6): nv50/ir: add LIMM form of mad to gk110 nv50/ir: add LIMM form of mad to gm107 nv50/ir: replace post_ra_dead by Instruction::isDead nv50/ir: rework postraconstantfolding pass nv50/ra: always prefer def == src2 for mad/sad nv50/ir: implement mad post ra folding for nvc0+ src/gallium/drivers/nouveau/codegen/nv50_ir.h | 2 +- .../drivers/nouveau/codegen/nv50_ir_emit_gk110.cpp | 49 ++++-- .../drivers/nouveau/codegen/nv50_ir_emit_gm107.cpp | 32 +++- .../drivers/nouveau/codegen/nv50_ir_peephole.cpp | 189 +++++++++++++-------- src/gallium/drivers/nouveau/codegen/nv50_ir_ra.cpp | 3 +- 5 files changed, 176 insertions(+), 99 deletions(-) -- 2.10.0 _______________________________________________ mesa-dev mailing list mesa-dev@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/mesa-dev