summaryrefslogtreecommitdiffstats
path: root/src/mesa/drivers/dri/i965/brw_vec4_copy_propagation.cpp
diff options
context:
space:
mode:
authorMatt Turner <mattst88@gmail.com>2013-04-25 11:02:02 -0700
committerMatt Turner <mattst88@gmail.com>2013-04-25 18:27:39 -0700
commitc0f67a127b0b3e4bb715d1562a82c984d160280e (patch)
tree6497e19c98df7e7b1386278049b8789e0dfe534b /src/mesa/drivers/dri/i965/brw_vec4_copy_propagation.cpp
parentabb96fdea70546f974ba59cbd00bc54afee9cfdb (diff)
downloadexternal_mesa3d-c0f67a127b0b3e4bb715d1562a82c984d160280e.zip
external_mesa3d-c0f67a127b0b3e4bb715d1562a82c984d160280e.tar.gz
external_mesa3d-c0f67a127b0b3e4bb715d1562a82c984d160280e.tar.bz2
i965/vs: Add a function to fix-up uniform arguments for 3-src insts.
Three-source instructions have a vertical stride overloaded to 4, which prevents directly using vec4 uniforms as arguments. Instead we need to insert a MOV instruction to do the replication for the three-source instruction. With this in place, we can use three-source instructions in the vertex shader. While some thought needs to go into deciding whether its better to use a three-source instruction rather than a sequence of equivalent instructions (when one or more sources are uniforms or immediates), this will allow us to skip a lot of ugly lowering code and use the BFE and BFI2 instructions directly. Reviewed-by: Chris Forbes <chrisf@ijw.co.nz> Reviewed-by: Eric Anholt <eric@anholt.net>
Diffstat (limited to 'src/mesa/drivers/dri/i965/brw_vec4_copy_propagation.cpp')
0 files changed, 0 insertions, 0 deletions