This series reworks the structure of the pass to make it easier to add
more optimisations to it.

Patches 1-3 can be merged without 4-6

v2: swaped the last two commits
v3: reworked order

changes for shader-db:
total instructions in shared programs : 3499445 -> 3487792 (-0.33%)
total gprs used in shared programs    : 453803 -> 453804 (0.00%)
total local used in shared programs   : 21621 -> 21621 (0.00%)
total bytes used in shared programs   : 32074936 -> 31968072 (-0.33%)

                local        gpr       inst      bytes 
    helped           0          26        4591        4591 
      hurt           0          23          64          64

Karol Herbst (6):
  nv50/ir: restructure postraconstantfolding pass
  nv50/ir: implement mad post ra folding for nvc0+
  nv50/ra: always prefer def == src2 for mad/sad
  gk110/ir: add LIMM form of mad
  gm107/ir: add LIMM form of mad
  nv50/ir: replace post_ra_dead by Instruction::isDead

 src/gallium/drivers/nouveau/codegen/nv50_ir.h      |   2 +-
 .../drivers/nouveau/codegen/nv50_ir_emit_gk110.cpp |  50 ++++--
 .../drivers/nouveau/codegen/nv50_ir_emit_gm107.cpp |  35 +++--
 .../drivers/nouveau/codegen/nv50_ir_peephole.cpp   | 173 +++++++++++++--------
 src/gallium/drivers/nouveau/codegen/nv50_ir_ra.cpp |   3 +-
 5 files changed, 166 insertions(+), 97 deletions(-)

-- 
2.10.1

_______________________________________________
mesa-dev mailing list
mesa-dev@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/mesa-dev

Reply via email to