freedreno/ir3: enable pre-fs texture fetch for a6xx
authorRob Clark <robdclark@chromium.org>
Fri, 18 Oct 2019 18:30:48 +0000 (11:30 -0700)
committerRob Clark <robdclark@gmail.com>
Fri, 18 Oct 2019 21:11:54 +0000 (21:11 +0000)
Signed-off-by: Rob Clark <robdclark@chromium.org>
Reviewed-by: Kristian H. Kristensen <hoegsberg@google.com>
src/freedreno/ir3/ir3_context.c

index c389f750bd57596f06b4b09ed6a3972b238f9180..a75bbfa1effabeb559a0339b4898e619cccf9571 100644 (file)
@@ -96,6 +96,12 @@ ir3_context_init(struct ir3_compiler *compiler,
                NIR_PASS_V(ctx->s, nir_opt_constant_folding);
        }
 
+       /* Enable the texture pre-fetch feature only a4xx onwards.  But
+        * only enable it on generations that have been tested:
+        */
+       if ((so->type == MESA_SHADER_FRAGMENT) && (compiler->gpu_id >= 600))
+               NIR_PASS_V(ctx->s, ir3_nir_lower_tex_prefetch);
+
        NIR_PASS_V(ctx->s, nir_convert_from_ssa, true);
 
        if (ir3_shader_debug & IR3_DBG_DISASM) {