[Mesa-dev] [PATCH] i965/fs: don't lower different type size conversions on opt_peephole_sel()
Samuel Iglesias Gonsálvez
siglesias at igalia.com
Wed Jan 25 10:20:43 UTC 2017
Don't lower a type conversion between different type sizes
because SEL does't support them, SEL without conditional modifier
just do a raw move.
Signed-off-by: Samuel Iglesias Gonsálvez <siglesias at igalia.com>
---
src/mesa/drivers/dri/i965/brw_fs_sel_peephole.cpp | 2 ++
1 file changed, 2 insertions(+)
diff --git a/src/mesa/drivers/dri/i965/brw_fs_sel_peephole.cpp b/src/mesa/drivers/dri/i965/brw_fs_sel_peephole.cpp
index 8cd897f72e0..8a9f6e67a14 100644
--- a/src/mesa/drivers/dri/i965/brw_fs_sel_peephole.cpp
+++ b/src/mesa/drivers/dri/i965/brw_fs_sel_peephole.cpp
@@ -167,6 +167,8 @@ fs_visitor::opt_peephole_sel()
then_mov[i]->force_writemask_all != else_mov[i]->force_writemask_all ||
then_mov[i]->is_partial_write() ||
else_mov[i]->is_partial_write() ||
+ type_sz(then_mov[i]->dst.type) != type_sz(then_mov[i]->src[0].type) ||
+ type_sz(else_mov[i]->dst.type) != type_sz(else_mov[i]->src[0].type) ||
then_mov[i]->conditional_mod != BRW_CONDITIONAL_NONE ||
else_mov[i]->conditional_mod != BRW_CONDITIONAL_NONE) {
movs = i;
--
2.11.0
More information about the mesa-dev
mailing list