nir/i965: add before ffma algebraic opts
authorTimothy Arceri <timothy.arceri@collabora.com>
Fri, 13 Jan 2017 06:25:11 +0000 (17:25 +1100)
committerTimothy Arceri <tarceri@itsqueeze.com>
Mon, 24 Apr 2017 02:08:14 +0000 (12:08 +1000)
commit7a7ee40c2de01a927d78852b18fc0b93e780df9c
tree4795bff9c50f36918b16b7298a1423cf4d90a9d1
parentfb2269fed16cf804f5b7538537ec6d53ed1e20c9
nir/i965: add before ffma algebraic opts

This shuffles constants down in the reverse of what the previous
patch does and applies some simpilifications that may be made
possible from doing so.

Shader-db results BDW:

total instructions in shared programs: 12980814 -> 12977822 (-0.02%)
instructions in affected programs: 281889 -> 278897 (-1.06%)
helped: 1231
HURT: 128

total cycles in shared programs: 246562852 -> 246567288 (0.00%)
cycles in affected programs: 11271524 -> 11275960 (0.04%)
helped: 1630
HURT: 1378

V2: mark float opts as inexact

Reviewed-by: Elie Tournier <elie.tournier@collabora.com>
Reviewed-by: Kenneth Graunke <kenneth@whitecape.org>
src/compiler/nir/nir.h
src/compiler/nir/nir_opt_algebraic.py
src/intel/compiler/brw_nir.c