r300: drop GLSL 4.x interpolation intrinsics from ntr

Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/41467>
This commit is contained in:
Pavel Ondračka 2026-05-07 11:28:19 +02:00 committed by Marge Bot
parent 085cb55f96
commit e1b042d2d7

View file

@ -1046,9 +1046,8 @@ ntr_emit_load_input(struct ntr_compile *c, nir_intrinsic_instr *instr)
switch (bary_instr->intrinsic) {
case nir_intrinsic_load_barycentric_pixel:
case nir_intrinsic_load_barycentric_sample:
/* For these, we know that the barycentric load matches the
* interpolation on the input declaration, so we can use it directly.
/* The barycentric load matches the interpolation on the input
* declaration, so we can use it directly.
*/
ntr_store(c, &instr->def, input);
break;
@ -1065,16 +1064,6 @@ ntr_emit_load_input(struct ntr_compile *c, nir_intrinsic_instr *instr)
}
break;
case nir_intrinsic_load_barycentric_at_sample:
/* We stored the sample in the fake "bary" dest. */
ntr_INTERP_SAMPLE(c, ntr_get_dest(c, &instr->def), input, ntr_get_src(c, instr->src[0]));
break;
case nir_intrinsic_load_barycentric_at_offset:
/* We stored the offset in the fake "bary" dest. */
ntr_INTERP_OFFSET(c, ntr_get_dest(c, &instr->def), input, ntr_get_src(c, instr->src[0]));
break;
default:
UNREACHABLE("bad barycentric interp intrinsic\n");
}
@ -1179,17 +1168,13 @@ ntr_emit_intrinsic(struct ntr_compile *c, nir_intrinsic_instr *instr)
ntr_KILL_IF(c, ureg_negate(cond));
break;
}
/* In TGSI we don't actually generate the barycentric coords, and emit
* interp intrinsics later. However, we do need to store the
* load_barycentric_at_* argument so that we can use it at that point.
/* In TGSI we don't actually generate the barycentric coords, and
* emit the corresponding INTERP_CENTROID instruction in
* ntr_emit_load_input. The barycentric loads themselves are
* therefore consumed there.
*/
case nir_intrinsic_load_barycentric_pixel:
case nir_intrinsic_load_barycentric_centroid:
case nir_intrinsic_load_barycentric_sample:
break;
case nir_intrinsic_load_barycentric_at_sample:
case nir_intrinsic_load_barycentric_at_offset:
ntr_store(c, &instr->def, ntr_get_src(c, instr->src[0]));
break;
case nir_intrinsic_ddx: