From: Jason Ekstrand Date: Mon, 2 Sep 2019 02:57:05 +0000 (-0500) Subject: intel/fs: Fix FB write inst groups X-Git-Tag: upstream/19.3.0~2182 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=47e974354715702a75ad2f1ee803b72cbd8cc9f1;p=platform%2Fupstream%2Fmesa.git intel/fs: Fix FB write inst groups This commit does two things. First, it simplifies the way we compute the FB write group bit. There's no reason to use a ternary because inst->group / 16 can only be 0 or 1. Second, it fixes an order-of- operations bug where the ternary wasn't selecting between (1 << 11) and 0 but between (1 << 11) and 0 | brw_dp_write_desc(...). Fixes: 0d9648416 "intel/compiler: Use generic SEND for Gen7+ FB writes" Reviewed-by: Francisco Jerez Reviewed-by: Kenneth Graunke --- diff --git a/src/intel/compiler/brw_fs.cpp b/src/intel/compiler/brw_fs.cpp index 8bf11f9..381d10b 100644 --- a/src/intel/compiler/brw_fs.cpp +++ b/src/intel/compiler/brw_fs.cpp @@ -4447,7 +4447,7 @@ lower_fb_write_logical_send(const fs_builder &bld, fs_inst *inst, uint32_t ex_desc = 0; inst->desc = - (inst->group / 16) ? (1 << 11) : 0 | /* rt slot group */ + (inst->group / 16) << 11 | /* rt slot group */ brw_dp_write_desc(devinfo, inst->target, msg_ctl, GEN6_DATAPORT_WRITE_MESSAGE_RENDER_TARGET_WRITE, inst->last_rt, false);