intel/fs: Drop high_quality_derivatives
We've never bothered to hook it up in crocus or iris. If we do in the future, it should probably be a NIR pasa anyway. Reviewed-by: Caio Oliveira <caio.oliveira@intel.com> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/14056>
This commit is contained in:

committed by
Marge Bot

parent
6dc9958bf3
commit
b8d04863e2
@@ -4849,8 +4849,6 @@ crocus_populate_fs_key(const struct crocus_context *ice,
|
|||||||
screen->driconf.dual_color_blend_by_location &&
|
screen->driconf.dual_color_blend_by_location &&
|
||||||
(blend->blend_enables & 1) && blend->dual_color_blending;
|
(blend->blend_enables & 1) && blend->dual_color_blending;
|
||||||
|
|
||||||
/* TODO: Respect glHint for key->high_quality_derivatives */
|
|
||||||
|
|
||||||
#if GFX_VER <= 5
|
#if GFX_VER <= 5
|
||||||
if (fb->nr_cbufs > 1 && zsa->cso.alpha_enabled) {
|
if (fb->nr_cbufs > 1 && zsa->cso.alpha_enabled) {
|
||||||
key->alpha_test_func = compare_func_to_gl(zsa->cso.alpha_func);
|
key->alpha_test_func = compare_func_to_gl(zsa->cso.alpha_func);
|
||||||
|
@@ -4288,8 +4288,6 @@ iris_populate_fs_key(const struct iris_context *ice,
|
|||||||
key->force_dual_color_blend =
|
key->force_dual_color_blend =
|
||||||
screen->driconf.dual_color_blend_by_location &&
|
screen->driconf.dual_color_blend_by_location &&
|
||||||
(blend->blend_enables & 1) && blend->dual_color_blending;
|
(blend->blend_enables & 1) && blend->dual_color_blending;
|
||||||
|
|
||||||
/* TODO: Respect glHint for key->high_quality_derivatives */
|
|
||||||
}
|
}
|
||||||
|
|
||||||
static void
|
static void
|
||||||
|
@@ -492,7 +492,6 @@ struct brw_wm_prog_key {
|
|||||||
bool persample_interp:1;
|
bool persample_interp:1;
|
||||||
bool multisample_fbo:1;
|
bool multisample_fbo:1;
|
||||||
enum brw_wm_aa_enable line_aa:2;
|
enum brw_wm_aa_enable line_aa:2;
|
||||||
bool high_quality_derivatives:1;
|
|
||||||
bool force_dual_color_blend:1;
|
bool force_dual_color_blend:1;
|
||||||
bool coherent_fb_fetch:1;
|
bool coherent_fb_fetch:1;
|
||||||
bool ignore_sample_mask_out:1;
|
bool ignore_sample_mask_out:1;
|
||||||
|
@@ -178,7 +178,6 @@ debug_fs_recompile(const struct brw_compiler *c, void *log,
|
|||||||
found |= check("per-sample interpolation", persample_interp);
|
found |= check("per-sample interpolation", persample_interp);
|
||||||
found |= check("multisampled FBO", multisample_fbo);
|
found |= check("multisampled FBO", multisample_fbo);
|
||||||
found |= check("line smoothing", line_aa);
|
found |= check("line smoothing", line_aa);
|
||||||
found |= check("high quality derivatives", high_quality_derivatives);
|
|
||||||
found |= check("force dual color blending", force_dual_color_blend);
|
found |= check("force dual color blending", force_dual_color_blend);
|
||||||
found |= check("coherent fb fetch", coherent_fb_fetch);
|
found |= check("coherent fb fetch", coherent_fb_fetch);
|
||||||
|
|
||||||
|
@@ -971,7 +971,6 @@ void
|
|||||||
fs_visitor::nir_emit_alu(const fs_builder &bld, nir_alu_instr *instr,
|
fs_visitor::nir_emit_alu(const fs_builder &bld, nir_alu_instr *instr,
|
||||||
bool need_dest)
|
bool need_dest)
|
||||||
{
|
{
|
||||||
struct brw_wm_prog_key *fs_key = (struct brw_wm_prog_key *) this->key;
|
|
||||||
fs_inst *inst;
|
fs_inst *inst;
|
||||||
unsigned execution_mode =
|
unsigned execution_mode =
|
||||||
bld.shader->nir->info.float_controls_execution_mode;
|
bld.shader->nir->info.float_controls_execution_mode;
|
||||||
@@ -1228,29 +1227,17 @@ fs_visitor::nir_emit_alu(const fs_builder &bld, nir_alu_instr *instr,
|
|||||||
inst = bld.emit(SHADER_OPCODE_COS, result, op[0]);
|
inst = bld.emit(SHADER_OPCODE_COS, result, op[0]);
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case nir_op_fddx:
|
|
||||||
if (fs_key->high_quality_derivatives) {
|
|
||||||
inst = bld.emit(FS_OPCODE_DDX_FINE, result, op[0]);
|
|
||||||
} else {
|
|
||||||
inst = bld.emit(FS_OPCODE_DDX_COARSE, result, op[0]);
|
|
||||||
}
|
|
||||||
break;
|
|
||||||
case nir_op_fddx_fine:
|
case nir_op_fddx_fine:
|
||||||
inst = bld.emit(FS_OPCODE_DDX_FINE, result, op[0]);
|
inst = bld.emit(FS_OPCODE_DDX_FINE, result, op[0]);
|
||||||
break;
|
break;
|
||||||
|
case nir_op_fddx:
|
||||||
case nir_op_fddx_coarse:
|
case nir_op_fddx_coarse:
|
||||||
inst = bld.emit(FS_OPCODE_DDX_COARSE, result, op[0]);
|
inst = bld.emit(FS_OPCODE_DDX_COARSE, result, op[0]);
|
||||||
break;
|
break;
|
||||||
case nir_op_fddy:
|
|
||||||
if (fs_key->high_quality_derivatives) {
|
|
||||||
inst = bld.emit(FS_OPCODE_DDY_FINE, result, op[0]);
|
|
||||||
} else {
|
|
||||||
inst = bld.emit(FS_OPCODE_DDY_COARSE, result, op[0]);
|
|
||||||
}
|
|
||||||
break;
|
|
||||||
case nir_op_fddy_fine:
|
case nir_op_fddy_fine:
|
||||||
inst = bld.emit(FS_OPCODE_DDY_FINE, result, op[0]);
|
inst = bld.emit(FS_OPCODE_DDY_FINE, result, op[0]);
|
||||||
break;
|
break;
|
||||||
|
case nir_op_fddy:
|
||||||
case nir_op_fddy_coarse:
|
case nir_op_fddy_coarse:
|
||||||
inst = bld.emit(FS_OPCODE_DDY_COARSE, result, op[0]);
|
inst = bld.emit(FS_OPCODE_DDY_COARSE, result, op[0]);
|
||||||
break;
|
break;
|
||||||
|
@@ -518,9 +518,6 @@ populate_wm_prog_key(const struct anv_graphics_pipeline *pipeline,
|
|||||||
*/
|
*/
|
||||||
key->input_slots_valid = 0;
|
key->input_slots_valid = 0;
|
||||||
|
|
||||||
/* Vulkan doesn't specify a default */
|
|
||||||
key->high_quality_derivatives = false;
|
|
||||||
|
|
||||||
/* XXX Vulkan doesn't appear to specify */
|
/* XXX Vulkan doesn't appear to specify */
|
||||||
key->clamp_fragment_color = false;
|
key->clamp_fragment_color = false;
|
||||||
|
|
||||||
|
Reference in New Issue
Block a user