summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorKenneth Graunke <kenneth@whitecape.org>2014-07-10 17:49:36 -0700
committerCarl Worth <cworth@cworth.org>2014-07-17 15:59:00 -0700
commitcb04294b42ff8fac269eae3b76ad0814bd984dfe (patch)
tree2f7c37f94b0cf600f004591c2a1484bf20592af8
parentd389a863f2f4bd424baf264bfb71950b1dfe32f5 (diff)
downloadmesa-cb04294b42ff8fac269eae3b76ad0814bd984dfe.tar.gz
mesa-cb04294b42ff8fac269eae3b76ad0814bd984dfe.tar.xz
i965: Set execution size to 8 for instructions with force_sechalf set.
Both inst->force_uncompressed and inst->force_sechalf mean that the generated instruction should be uncompressed and have an execution size of 8. We don't require the visitor to set both flags - setting inst->force_sechalf by itself is supposed to be enough. On Gen4-7, guess_execution_size() demoted instructions to 8-wide based on the default compression state. On Gen8+, we instead set a default execution size, which worked great...except that we forgot to check inst->force_sechalf when deciding whether to use 8 or 16. Signed-off-by: Kenneth Graunke <kenneth@whitecape.org> Cc: mesa-stable@lists.freedesktop.org (cherry picked from commit 1c62126612752f6eedb66f705cc3ff1e11beea5d)
-rw-r--r--src/mesa/drivers/dri/i965/gen8_fs_generator.cpp2
1 files changed, 1 insertions, 1 deletions
diff --git a/src/mesa/drivers/dri/i965/gen8_fs_generator.cpp b/src/mesa/drivers/dri/i965/gen8_fs_generator.cpp
index 97f6404c03..b96860e336 100644
--- a/src/mesa/drivers/dri/i965/gen8_fs_generator.cpp
+++ b/src/mesa/drivers/dri/i965/gen8_fs_generator.cpp
@@ -973,7 +973,7 @@ gen8_fs_generator::generate_code(exec_list *instructions)
default_state.mask_control = ir->force_writemask_all;
default_state.flag_subreg_nr = ir->flag_subreg;
- if (dispatch_width == 16 && !ir->force_uncompressed)
+ if (dispatch_width == 16 && !ir->force_uncompressed && !ir->force_sechalf)
default_state.exec_size = BRW_EXECUTE_16;
else
default_state.exec_size = BRW_EXECUTE_8;