From e51bad669a4c42845c44a925bbb5d8885799c28f Mon Sep 17 00:00:00 2001 From: Neil Roberts Date: Thu, 7 May 2015 14:20:17 +0100 Subject: [PATCH] i965/skl: In opt_sampler_eot always set destination register to null opt_sampler_eot enables a direct write to framebuffer from a sample. In order to do this the sample message needs to have a message header so if there wasn't one already then the function adds one. In addition the function sets the destination register to null because it's no longer used. However it was only doing this in cases where it was adding a message header. This patch just moves setting the destination so that it happens even if there's a messge header. In practice this doesn't seem to make any difference but it's a bit cleaner. Reviewed-by: Anuj Phogat --- src/mesa/drivers/dri/i965/brw_fs.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/mesa/drivers/dri/i965/brw_fs.cpp b/src/mesa/drivers/dri/i965/brw_fs.cpp index 02a1ad5a167..8dd680e1ae3 100644 --- a/src/mesa/drivers/dri/i965/brw_fs.cpp +++ b/src/mesa/drivers/dri/i965/brw_fs.cpp @@ -2668,6 +2668,7 @@ fs_visitor::opt_sampler_eot() tex_inst->offset |= fb_write->target << 24; tex_inst->eot = true; + tex_inst->dst = reg_null_ud; fb_write->remove(cfg->blocks[cfg->num_blocks - 1]); /* If a header is present, marking the eot is sufficient. Otherwise, we need @@ -2706,7 +2707,6 @@ fs_visitor::opt_sampler_eot() tex_inst->header_size = 1; tex_inst->insert_before(cfg->blocks[cfg->num_blocks - 1], new_load_payload); tex_inst->src[0] = send_header; - tex_inst->dst = reg_null_ud; return true; } -- 2.30.2