Mesa (main): pan/bi: Handle texture offset + index

GitLab Mirror gitlab-mirror at kemper.freedesktop.org
Mon May 2 20:46:31 UTC 2022


Module: Mesa
Branch: main
Commit: 54412afadc395238572fd6460887eb0b48ff3f6e
URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=54412afadc395238572fd6460887eb0b48ff3f6e

Author: Alyssa Rosenzweig <alyssa at collabora.com>
Date:   Mon Apr 25 17:40:34 2022 -0400

pan/bi: Handle texture offset + index

Fixes dEQP-VK.glsl.opaque_type_indexing.sampler.uniform.vertex.sampler1d

Signed-off-by: Alyssa Rosenzweig <alyssa at collabora.com>
Reviewed-by: Jason Ekstrand <jason.ekstrand at collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/16283>

---

 src/panfrost/bifrost/bifrost_compile.c    | 9 +++++++--
 src/panfrost/ci/deqp-panfrost-g52-vk.toml | 1 +
 2 files changed, 8 insertions(+), 2 deletions(-)

diff --git a/src/panfrost/bifrost/bifrost_compile.c b/src/panfrost/bifrost/bifrost_compile.c
index 8c975fccc23..76436907469 100644
--- a/src/panfrost/bifrost/bifrost_compile.c
+++ b/src/panfrost/bifrost/bifrost_compile.c
@@ -3137,12 +3137,17 @@ bi_emit_texc(bi_builder *b, nir_tex_instr *instr)
                         break;
 
                 case nir_tex_src_texture_offset:
-                        assert(instr->texture_index == 0);
+                        if (instr->texture_index)
+                                index = bi_iadd_u32(b, index, bi_imm_u32(instr->texture_index), false);
+
                         dregs[BIFROST_TEX_DREG_TEXTURE] = index;
+
                         break;
 
                 case nir_tex_src_sampler_offset:
-                        assert(instr->sampler_index == 0);
+                        if (instr->sampler_index)
+                                index = bi_iadd_u32(b, index, bi_imm_u32(instr->sampler_index), false);
+
                         dregs[BIFROST_TEX_DREG_SAMPLER] = index;
                         break;
 
diff --git a/src/panfrost/ci/deqp-panfrost-g52-vk.toml b/src/panfrost/ci/deqp-panfrost-g52-vk.toml
index c2220874daf..0ca070ba955 100644
--- a/src/panfrost/ci/deqp-panfrost-g52-vk.toml
+++ b/src/panfrost/ci/deqp-panfrost-g52-vk.toml
@@ -18,6 +18,7 @@ include = [
     "dEQP-VK.glsl.builtin.precision.ldexp.*",
     "dEQP-VK.glsl.builtin_var.*",
     "dEQP-VK.glsl.indexing.varying_array.*",
+    "dEQP-VK.glsl.opaque_type_indexing.sampler.*",
     "dEQP-VK.glsl.conversions.*",
     "dEQP-VK.glsl.derivate.*.constant.*",
     "dEQP-VK.glsl.derivate.*.linear.*",



More information about the mesa-commit mailing list