i965/fs: Add stub lowering pass for logical send-message opcodes.
authorFrancisco Jerez <currojerez@riseup.net>
Mon, 13 Jul 2015 14:44:58 +0000 (17:44 +0300)
committerFrancisco Jerez <currojerez@riseup.net>
Wed, 29 Jul 2015 11:12:46 +0000 (14:12 +0300)
commit1dd3543ac1bebe089bfe3a8ae5efbe3f564e1144
tree04610b80d2b2c9ef9590c099b370dfab08f05ff6
parentfb7eba97d7235d49ac712a21fb51009c86f3bc64
i965/fs: Add stub lowering pass for logical send-message opcodes.

This pass will house ad-hoc lowering code for several send
message-like virtual opcodes that will represent their logically
independent arguments as separate instruction sources rather than as a
single payload blob.  This pass will basically just take the separate
arguments that are supposed to be part of the payload and concatenate
them to construct a message in the form required by the hardware.
Virtual instructions in separate-source form will eventually allow
some simplification of the visitor code and make several
transformations easier like lowering SIMD16 instructions to SIMD8
algorithmically in cases where the hardware doesn't support the former
natively.

Reviewed-by: Jason Ekstrand <jason.ekstrand@intel.com>
src/mesa/drivers/dri/i965/brw_fs.cpp
src/mesa/drivers/dri/i965/brw_fs.h