diff options
author | Ilia Mirkin <[email protected]> | 2016-01-12 14:41:52 -0500 |
---|---|---|
committer | Ilia Mirkin <[email protected]> | 2016-01-14 20:13:59 -0500 |
commit | e231f59b6d5b12035a8041305c3a732d39a39c19 (patch) | |
tree | f740144006e8ebe967790d0cea4a7c6516772c85 /src/gallium/drivers/nouveau/nouveau_debug.h | |
parent | 37b67db6ae34fb6586d640a7a1b6232f091dd812 (diff) |
nv50/ir: only use FILE_LOCAL_MEMORY for temp arrays that use indirection
Previously we were treating any indirect temp array usage to mean that
everything should end up in lmem. The MemoryOpt pass would clean a lot
of that up later, but in the meanwhile we would lose a lot of
opportunity for optimization.
This helps a lot of Metro 2033 Redux and a handful of KSP shaders:
total instructions in shared programs : 6288373 -> 6261517 (-0.43%)
total gprs used in shared programs : 944051 -> 945131 (0.11%)
total local used in shared programs : 54116 -> 54116 (0.00%)
A typical case is for register usage to double and for instructions to
halve. A future commit can also optimize local memory usage size to be
reduced with better packing.
Signed-off-by: Ilia Mirkin <[email protected]>
Diffstat (limited to 'src/gallium/drivers/nouveau/nouveau_debug.h')
0 files changed, 0 insertions, 0 deletions