From: Alyssa Rosenzweig Date: Wed, 14 Aug 2019 15:44:40 +0000 (-0700) Subject: panfrost: Implement native RECT textures X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=44a6c38bd678f34c6a3c5446bfc422de13f45f8e;p=mesa.git panfrost: Implement native RECT textures We started honouring the normalized_coords flag in the texture descriptor, but a bisection revealed that broke RECT textures -- since we were *also* lowering them in the shader. So just remove the shader-based lowering, use native RECT textures, and enjoy the nominal reduction in complexity and performance boost. Fixes: 3e47a1181b7 ("panfrost: Add MALI_SAMP_NORM_COORDS flag") Signed-off-by: Alyssa Rosenzweig --- diff --git a/src/panfrost/midgard/midgard_compile.c b/src/panfrost/midgard/midgard_compile.c index 23d2e6021d5..59a323c828b 100644 --- a/src/panfrost/midgard/midgard_compile.c +++ b/src/panfrost/midgard/midgard_compile.c @@ -460,17 +460,12 @@ optimise_nir(nir_shader *nir) NIR_PASS(progress, nir, midgard_nir_lower_fdot2); NIR_PASS(progress, nir, nir_lower_idiv); - nir_lower_tex_options lower_tex_1st_pass_options = { - .lower_rect = true, - .lower_txp = ~0 - }; - - nir_lower_tex_options lower_tex_2nd_pass_options = { + nir_lower_tex_options lower_tex_options = { .lower_txs_lod = true, + .lower_txp = ~0 }; - NIR_PASS(progress, nir, nir_lower_tex, &lower_tex_1st_pass_options); - NIR_PASS(progress, nir, nir_lower_tex, &lower_tex_2nd_pass_options); + NIR_PASS(progress, nir, nir_lower_tex, &lower_tex_options); do { progress = false; @@ -1653,6 +1648,7 @@ midgard_tex_format(enum glsl_sampler_dim dim) case GLSL_SAMPLER_DIM_2D: case GLSL_SAMPLER_DIM_EXTERNAL: + case GLSL_SAMPLER_DIM_RECT: return MALI_TEX_2D; case GLSL_SAMPLER_DIM_3D: