summaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
authorKenneth Graunke <kenneth@whitecape.org>2014-07-10 17:49:36 -0700
committerKenneth Graunke <kenneth@whitecape.org>2014-07-15 22:09:49 -0700
commit2eaf3f670fea4ce4466340141244e41a45542c13 (patch)
treea4f13667e314d74896de40ca10418989dad36086 /src
parent419871100638483b82c6fb1f54e306f182abeb01 (diff)
downloadexternal_mesa3d-2eaf3f670fea4ce4466340141244e41a45542c13.zip
external_mesa3d-2eaf3f670fea4ce4466340141244e41a45542c13.tar.gz
external_mesa3d-2eaf3f670fea4ce4466340141244e41a45542c13.tar.bz2
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> Reviewed-by: Matt Turner <mattst88@gmail.com> Reviewed-by: Chris Forbes <chrisf@ijw.co.nz> Cc: mesa-stable@lists.freedesktop.org
Diffstat (limited to 'src')
-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 02e28cf..2924820 100644
--- a/src/mesa/drivers/dri/i965/gen8_fs_generator.cpp
+++ b/src/mesa/drivers/dri/i965/gen8_fs_generator.cpp
@@ -921,7 +921,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;