diff options
author | Ilia Mirkin <[email protected]> | 2015-12-06 23:25:54 -0500 |
---|---|---|
committer | Ilia Mirkin <[email protected]> | 2015-12-08 23:15:29 -0500 |
commit | 99581ca393037e10d17aab1f4c90ff2bdb1ec557 (patch) | |
tree | 6dfd71adaeb4ae8c5e9d24263213a54efb184a24 /src/gallium/state_trackers | |
parent | 0f647bd65bae16c7a2dc7a960c96593ad6ab729c (diff) |
nv50/ir: only unspill once ahead of a group of instructions
We already semi-did this but the list of uses as unsorted, so it was
unreliable. Sort the uses by bb and serial, and don't unspill for each
instruction in a sequence. (And also don't unspill multiple times for a
single instruction that uses the value in question multiple times.)
This causes a minor reduction in generated instructions for shader-db
(as few programs spill) but more importantly it brings determinism to
each run's output.
On SM10:
total instructions in shared programs : 6387945 -> 6379359 (-0.13%)
total gprs used in shared programs : 728544 -> 728544 (0.00%)
total local used in shared programs : 9904 -> 9904 (0.00%)
local gpr inst bytes
helped 0 0 322 322
hurt 0 0 0 0
Signed-off-by: Ilia Mirkin <[email protected]>
Diffstat (limited to 'src/gallium/state_trackers')
0 files changed, 0 insertions, 0 deletions