NIR already has these so they are redundant. A run of shader-db confirms that the only cases where these backend optimizations are activated are some Tomb Raider shaders where the affected variables are qualified as "precise", which is why NIR won't apply them and why the backend shouldn't either (so it is actually a bug).
Suggested-by: Jason Ekstrand <ja...@jlekstrand.net> --- src/intel/compiler/brw_fs.cpp | 37 ----------------------------------- 1 file changed, 37 deletions(-) diff --git a/src/intel/compiler/brw_fs.cpp b/src/intel/compiler/brw_fs.cpp index 01fe92b36b0..6d965d85e56 100644 --- a/src/intel/compiler/brw_fs.cpp +++ b/src/intel/compiler/brw_fs.cpp @@ -2518,16 +2518,6 @@ fs_visitor::opt_algebraic() break; } break; - case BRW_OPCODE_LRP: - if (inst->src[1].equals(inst->src[2])) { - inst->opcode = BRW_OPCODE_MOV; - inst->src[0] = inst->src[1]; - inst->src[1] = reg_undef; - inst->src[2] = reg_undef; - progress = true; - break; - } - break; case BRW_OPCODE_CMP: if (inst->conditional_mod == BRW_CONDITIONAL_GE && inst->src[0].abs && @@ -2583,33 +2573,6 @@ fs_visitor::opt_algebraic() } } break; - case BRW_OPCODE_MAD: - if (inst->src[1].is_zero() || inst->src[2].is_zero()) { - inst->opcode = BRW_OPCODE_MOV; - inst->src[1] = reg_undef; - inst->src[2] = reg_undef; - progress = true; - } else if (inst->src[0].is_zero()) { - inst->opcode = BRW_OPCODE_MUL; - inst->src[0] = inst->src[2]; - inst->src[2] = reg_undef; - progress = true; - } else if (inst->src[1].is_one()) { - inst->opcode = BRW_OPCODE_ADD; - inst->src[1] = inst->src[2]; - inst->src[2] = reg_undef; - progress = true; - } else if (inst->src[2].is_one()) { - inst->opcode = BRW_OPCODE_ADD; - inst->src[2] = reg_undef; - progress = true; - } else if (inst->src[1].file == IMM && inst->src[2].file == IMM) { - inst->opcode = BRW_OPCODE_ADD; - inst->src[1].f *= inst->src[2].f; - inst->src[2] = reg_undef; - progress = true; - } - break; case SHADER_OPCODE_BROADCAST: if (is_uniform(inst->src[0])) { inst->opcode = BRW_OPCODE_MOV; -- 2.17.1 _______________________________________________ mesa-dev mailing list mesa-dev@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/mesa-dev