i965: add a new virtual opcode: SHADER_OPCODE_TXF_MS
authorChris Forbes <chrisf@ijw.co.nz>
Thu, 24 Jan 2013 08:35:15 +0000 (21:35 +1300)
committerChris Forbes <chrisf@ijw.co.nz>
Fri, 1 Mar 2013 22:40:49 +0000 (11:40 +1300)
commitf52ce6a0ca73d1cd89091689efd8ea2e14748723
tree5e6037eae92c8fcb30857db1f30c8a9d11501a7c
parent555dc6d74de76becac30289c6da0205489057a21
i965: add a new virtual opcode: SHADER_OPCODE_TXF_MS

This is very similar to the TXF opcode, but lowers to `ld2dms` rather
than `ld` on Gen7.

V4: - add SHADER_OPCODE_TXF_MS to is_tex() functions, so regalloc thinks
      it actually writes the correct number of registers. Otherwise in
      nontrivial shaders some of the registers tend to get clobbered,
      producing bad results.

Signed-off-by: Chris Forbes <chrisf@ijw.co.nz>
Reviewed-by: Paul Berry <stereotype441@gmail.com>
src/mesa/drivers/dri/i965/brw_defines.h
src/mesa/drivers/dri/i965/brw_fs.cpp
src/mesa/drivers/dri/i965/brw_fs_emit.cpp
src/mesa/drivers/dri/i965/brw_vec4.cpp
src/mesa/drivers/dri/i965/brw_vec4_emit.cpp