Mesa (master): pan/midgard: Implement non-aligned UBOs

GitLab Mirror gitlab-mirror at kemper.freedesktop.org
Mon Nov 18 03:40:39 UTC 2019


Module: Mesa
Branch: master
Commit: 2236904f722d02d82232cf02f8160c2c5315c711
URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=2236904f722d02d82232cf02f8160c2c5315c711

Author: Alyssa Rosenzweig <alyssa.rosenzweig at collabora.com>
Date:   Fri Nov 15 14:13:18 2019 -0500

pan/midgard: Implement non-aligned UBOs

The field is more fine-grained than we had assumed.

Signed-off-by: Alyssa Rosenzweig <alyssa.rosenzweig at collabora.com>

---

 src/panfrost/midgard/midgard_compile.c | 7 ++-----
 1 file changed, 2 insertions(+), 5 deletions(-)

diff --git a/src/panfrost/midgard/midgard_compile.c b/src/panfrost/midgard/midgard_compile.c
index bf794997796..19573900bd9 100644
--- a/src/panfrost/midgard/midgard_compile.c
+++ b/src/panfrost/midgard/midgard_compile.c
@@ -1131,12 +1131,9 @@ emit_ubo_read(
 
         midgard_instruction ins = m_ld_ubo_int4(dest, offset);
 
-        assert((offset & 0xF) == 0);
-        offset /= 16;
-
         /* TODO: Don't split */
-        ins.load_store.varying_parameters = (offset & 7) << 7;
-        ins.load_store.address = offset >> 3;
+        ins.load_store.varying_parameters = (offset & 0x7F) << 3;
+        ins.load_store.address = offset >> 7;
         ins.mask = mir_mask_for_intr(instr, true);
 
         if (indirect_offset) {




More information about the mesa-commit mailing list