diff options
author | Alyssa Rosenzweig <[email protected]> | 2019-08-14 08:44:40 -0700 |
---|---|---|
committer | Alyssa Rosenzweig <[email protected]> | 2019-08-14 16:57:42 -0700 |
commit | 44a6c38bd678f34c6a3c5446bfc422de13f45f8e (patch) | |
tree | bac061b09fc42de159ff2f2ef146a740082db3a1 /src | |
parent | 6fe4822cca42ada57b24992d73f9bfb94031da03 (diff) |
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 <[email protected]>
Diffstat (limited to 'src')
-rw-r--r-- | src/panfrost/midgard/midgard_compile.c | 12 |
1 files changed, 4 insertions, 8 deletions
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: |