nir/lower_poly_line_smooth: don't reject fp16

Reviewed-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Reviewed-by: Marek Olšák <marek.olsak@amd.com>
Acked-by: Erik Faye-Lund <erik.faye-lund@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/33340>
This commit is contained in:
Georg Lehmann
2025-02-01 20:33:32 +01:00
committed by Marge Bot
parent ff225dee67
commit 998e2299f7
@@ -45,7 +45,7 @@ lower_polylinesmooth(nir_builder *b, nir_instr *instr, void *data)
int location = nir_intrinsic_io_semantics(intr).location;
int alpha_comp = 3 - nir_intrinsic_component(intr);
if ((location != FRAG_RESULT_COLOR && location != FRAG_RESULT_DATA0) ||
nir_intrinsic_src_type(intr) != nir_type_float32 ||
nir_alu_type_get_base_type(nir_intrinsic_src_type(intr)) != nir_type_float ||
!(nir_intrinsic_write_mask(intr) & BITFIELD_BIT(alpha_comp)))
return false;
@@ -55,7 +55,7 @@ lower_polylinesmooth(nir_builder *b, nir_instr *instr, void *data)
/* coverage = (coverage) / num_smooth_aa_sample */
coverage = nir_bit_count(b, coverage);
coverage = nir_u2f32(b, coverage);
coverage = nir_u2fN(b, coverage, intr->src[0].ssa->bit_size);
coverage = nir_fmul_imm(b, coverage, 1.0 / *num_smooth_aa_sample);
nir_def *smooth_enabled = nir_load_poly_line_smooth_enabled(b);