intel/fs/cse: Make HALT instruction act as CSE barrier.
authorFrancisco Jerez <currojerez@riseup.net>
Fri, 24 Jan 2020 06:01:00 +0000 (22:01 -0800)
committerFrancisco Jerez <currojerez@riseup.net>
Fri, 14 Feb 2020 22:31:48 +0000 (14:31 -0800)
commitc9e33e5cbf6b8b953932f283e1f0abcb6c77eb1f
tree362830c8f99883031acba87c673dbad5a56d794f
parentfe1b0b7c500af7c489d8dffe72bdb2fadd7cf2ab
intel/fs/cse: Make HALT instruction act as CSE barrier.

Found by inspection.  This seems particularly likely to cause problems
with instructions dependent on the current execution mask like
SHADER_OPCODE_FIND_LIVE_CHANNEL or the FS_OPCODE_LOAD_LIVE_CHANNELS
instruction I'm about to introduce, but one could imagine it leading
to data corruption if CSE ever managed to combine two instructions
before and after the FS_OPCODE_PLACEHOLDER_HALT, since the one before
may not be executed for some channels.

Reviewed-by: Caio Marcelo de Oliveira Filho <caio.oliveira@intel.com>
Cc: 20.0 <mesa-stable@lists.freedesktop.org>
src/intel/compiler/brw_fs_cse.cpp