From: Iago Toral Quiroga Date: Tue, 17 Jul 2018 09:10:34 +0000 (+0200) Subject: intel/compiler: fix lower conversions to account for predication X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=615aaedb934bb573bf1486de0f4d3b5742da9065;p=mesa.git intel/compiler: fix lower conversions to account for predication The pass can create a temporary result for the instruction and then moves from it to the original destination, however, if the original instruction was predicated, the mov has to be predicated as well. Reviewed-by: Jose Maria Casanova Crespo --- diff --git a/src/intel/compiler/brw_fs_lower_conversions.cpp b/src/intel/compiler/brw_fs_lower_conversions.cpp index e27e2402746..145fb55f995 100644 --- a/src/intel/compiler/brw_fs_lower_conversions.cpp +++ b/src/intel/compiler/brw_fs_lower_conversions.cpp @@ -98,7 +98,10 @@ fs_visitor::lower_conversions() * size_written accordingly. */ inst->size_written = inst->dst.component_size(inst->exec_size); - ibld.at(block, inst->next).MOV(dst, strided_temp)->saturate = saturate; + + fs_inst *mov = ibld.at(block, inst->next).MOV(dst, strided_temp); + mov->saturate = saturate; + mov->predicate = inst->predicate; progress = true; }