From 1bf93ee4ecaaf045b284be81178c66a7baa73029 Mon Sep 17 00:00:00 2001 From: Francisco Jerez Date: Thu, 29 Sep 2022 10:33:29 -0700 Subject: [PATCH] intel/brw/xe2+: Don't use SEL peephole on 64-bit moves. 64-bit SEL isn't supported by the INT pipeline on this platform. Reviewed-by: Ian Romanick Part-of: --- src/intel/compiler/brw_fs_sel_peephole.cpp | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/src/intel/compiler/brw_fs_sel_peephole.cpp b/src/intel/compiler/brw_fs_sel_peephole.cpp index cef10f51bbe..65fa8ca068c 100644 --- a/src/intel/compiler/brw_fs_sel_peephole.cpp +++ b/src/intel/compiler/brw_fs_sel_peephole.cpp @@ -71,7 +71,8 @@ count_movs_from_if(const intel_device_info *devinfo, int then_movs = 0; foreach_inst_in_block(fs_inst, inst, then_block) { if (then_movs == MAX_MOVS || inst->opcode != BRW_OPCODE_MOV || - inst->flags_written(devinfo)) + inst->flags_written(devinfo) || + (devinfo->ver >= 20 && get_exec_type_size(inst) > 4)) break; then_mov[then_movs] = inst; @@ -81,7 +82,8 @@ count_movs_from_if(const intel_device_info *devinfo, int else_movs = 0; foreach_inst_in_block(fs_inst, inst, else_block) { if (else_movs == MAX_MOVS || inst->opcode != BRW_OPCODE_MOV || - inst->flags_written(devinfo)) + inst->flags_written(devinfo) || + (devinfo->ver >= 20 && get_exec_type_size(inst) > 4)) break; else_mov[else_movs] = inst;