diff --git a/src/intel/compiler/brw_fs_scoreboard.cpp b/src/intel/compiler/brw_fs_scoreboard.cpp index 12f1e5eab1a..144179941c2 100644 --- a/src/intel/compiler/brw_fs_scoreboard.cpp +++ b/src/intel/compiler/brw_fs_scoreboard.cpp @@ -1030,6 +1030,7 @@ namespace { for (unsigned i = 0; i < inst->sources; i++) { const dependency rd_dep = (inst->is_payload(i) || + inst->opcode == BRW_OPCODE_DPAS || is_unordered_math) ? dependency(TGL_SBID_SRC, ip, exec_all) : is_ordered ? dependency(TGL_REGDIST_SRC, jp, exec_all) : dependency::done; diff --git a/src/intel/compiler/brw_ir_fs.h b/src/intel/compiler/brw_ir_fs.h index 184d50bc5da..169449bbab8 100644 --- a/src/intel/compiler/brw_ir_fs.h +++ b/src/intel/compiler/brw_ir_fs.h @@ -576,6 +576,7 @@ static inline bool is_unordered(const intel_device_info *devinfo, const fs_inst *inst) { return is_send(inst) || (devinfo->ver < 20 && inst->is_math()) || + inst->opcode == BRW_OPCODE_DPAS || (devinfo->has_64bit_float_via_math_pipe && (get_exec_type(inst) == BRW_REGISTER_TYPE_DF || inst->dst.type == BRW_REGISTER_TYPE_DF));