i965/fs: No need to unzip SIMD-periodic sources during SIMD lowering.
authorFrancisco Jerez <currojerez@riseup.net>
Tue, 17 May 2016 23:54:16 +0000 (16:54 -0700)
committerFrancisco Jerez <currojerez@riseup.net>
Sat, 28 May 2016 06:19:20 +0000 (23:19 -0700)
commit1760c24b4bcf028477404e283f5768f2b6f25123
tree413e8f0d88713d142428276ceb29a2c9aec15403
parent168163f5f08ac1c0f3e3af20d0b2ac3391d358ab
i965/fs: No need to unzip SIMD-periodic sources during SIMD lowering.

If the source value is going to the same for all SIMD-lowered chunks
of the instruction there should be no need to unzip the value into
multiple temporary registers one for each lowered chunk.  As a side
effect this fixes SIMD lowering of instructions with a vector
immediate source.  In the long term it *might* still be worth fixing
offset() to handle vector immediates correctly though, this should be
good enough for the moment.

Reviewed-by: Jason Ekstrand <jason@jlekstrand.net>
src/mesa/drivers/dri/i965/brw_fs.cpp