r300: drop GLSL 4.x texture ops from ntr

Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/41467>
This commit is contained in:
Pavel Ondračka 2026-05-07 10:06:48 +02:00 committed by Marge Bot
parent a2d70557d5
commit 1c6e2a8625

View file

@ -1295,21 +1295,6 @@ ntr_emit_texture(struct ntr_compile *c, nir_tex_instr *instr)
case nir_texop_txd:
tex_opcode = TGSI_OPCODE_TXD;
break;
case nir_texop_txs:
tex_opcode = TGSI_OPCODE_TXQ;
break;
case nir_texop_tg4:
tex_opcode = TGSI_OPCODE_TG4;
break;
case nir_texop_query_levels:
tex_opcode = TGSI_OPCODE_TXQ;
break;
case nir_texop_lod:
tex_opcode = TGSI_OPCODE_LODQ;
break;
case nir_texop_texture_samples:
tex_opcode = TGSI_OPCODE_TXQS;
break;
default:
UNREACHABLE("unsupported tex op");
}
@ -1318,15 +1303,6 @@ ntr_emit_texture(struct ntr_compile *c, nir_tex_instr *instr)
ntr_push_tex_arg(c, instr, nir_tex_src_backend1, &s);
ntr_push_tex_arg(c, instr, nir_tex_src_backend2, &s);
/* non-coord arg for TXQ */
if (tex_opcode == TGSI_OPCODE_TXQ) {
ntr_push_tex_arg(c, instr, nir_tex_src_lod, &s);
/* virglrenderer mistakenly looks at .w instead of .x, so make sure it's
* scalar
*/
s.srcs[s.i - 1] = ureg_scalar(s.srcs[s.i - 1], 0);
}
if (s.i > 1) {
if (tex_opcode == TGSI_OPCODE_TEX)
tex_opcode = TGSI_OPCODE_TEX2;
@ -1344,15 +1320,6 @@ ntr_emit_texture(struct ntr_compile *c, nir_tex_instr *instr)
s.srcs[s.i++] = ntr_get_src(c, instr->src[ddy].src);
}
if (instr->op == nir_texop_tg4 && target != TGSI_TEXTURE_SHADOWCUBE_ARRAY) {
if (c->screen->caps.tgsi_tg4_component_in_swizzle) {
sampler = ureg_scalar(sampler, instr->component);
s.srcs[s.i++] = ureg_src_undef();
} else {
s.srcs[s.i++] = ureg_imm1u(c->ureg, instr->component);
}
}
s.srcs[s.i++] = sampler;
struct ureg_dst tex_dst;