agx: Legalize LOD sources to be 16-bit only
authorAlyssa Rosenzweig <alyssa@rosenzweig.io>
Mon, 5 Jul 2021 03:26:07 +0000 (23:26 -0400)
committerMarge Bot <eric+marge@anholt.net>
Mon, 5 Jul 2021 20:56:04 +0000 (20:56 +0000)
I'm not convinced this is /right/ but it's a step.

Signed-off-by: Alyssa Rosenzweig <alyssa@rosenzweig.io>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/11718>

src/asahi/compiler/agx_compile.c

index 2792197..64b4896 100644 (file)
@@ -1312,7 +1312,12 @@ agx_compile_shader_nir(nir_shader *nir,
       .lower_txp = ~0,
    };
 
+   nir_tex_src_type_constraints tex_constraints = {
+      [nir_tex_src_lod] = { true, 16 }
+   };
+
    NIR_PASS_V(nir, nir_lower_tex, &lower_tex_options);
+   NIR_PASS_V(nir, nir_legalize_16bit_sampler_srcs, tex_constraints);
 
    agx_optimize_nir(nir);