mirror of
https://gitlab.freedesktop.org/mesa/mesa.git
synced 2026-05-01 05:58:05 +02:00
pan/midgard: Use lower_tex_without_implicit_lod
Just a bit of cleanup. lower_tex can do this lowering for us, which should also eliminate some special cases (one less thing to fix if we ever need texturing in tess/geom/etc, perhaps?) Closes #2133 Signed-off-by: Alyssa Rosenzweig <alyssa.rosenzweig@collabora.com> Reviewed-by: Tomeu Vizoso <tomeu.vizoso@collabora.com>
This commit is contained in:
parent
47c7c4263c
commit
4c43b354c3
1 changed files with 3 additions and 10 deletions
|
|
@ -499,7 +499,9 @@ optimise_nir(nir_shader *nir, unsigned quirks)
|
|||
|
||||
nir_lower_tex_options lower_tex_options = {
|
||||
.lower_txs_lod = true,
|
||||
.lower_txp = ~0
|
||||
.lower_txp = ~0,
|
||||
.lower_tex_without_implicit_lod =
|
||||
(quirks & MIDGARD_EXPLICIT_LOD),
|
||||
};
|
||||
|
||||
NIR_PASS(progress, nir, nir_lower_tex, &lower_tex_options);
|
||||
|
|
@ -1829,15 +1831,6 @@ emit_texop_native(compiler_context *ctx, nir_tex_instr *instr,
|
|||
static void
|
||||
emit_tex(compiler_context *ctx, nir_tex_instr *instr)
|
||||
{
|
||||
/* Fixup op, since only textureLod is permitted in VS on later Midgard
|
||||
* but NIR can give generic tex in some cases (which confuses the
|
||||
* hardware). Interestingly, early Midgard lines up with NIR */
|
||||
|
||||
bool is_vertex = ctx->stage == MESA_SHADER_VERTEX;
|
||||
|
||||
if (is_vertex && instr->op == nir_texop_tex && ctx->quirks & MIDGARD_EXPLICIT_LOD)
|
||||
instr->op = nir_texop_txl;
|
||||
|
||||
switch (instr->op) {
|
||||
case nir_texop_tex:
|
||||
case nir_texop_txb:
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue