Isabella Bosia : vkd3d-shader: Don't print 1-st index in constant buffers if < 5.1.

Alexandre Julliard julliard at winehq.org
Thu Sep 17 15:50:41 CDT 2020


Module: vkd3d
Branch: master
Commit: 149a8e311f135f88b24c7fd97cb81273ee1854e5
URL:    https://source.winehq.org/git/vkd3d.git/?a=commit;h=149a8e311f135f88b24c7fd97cb81273ee1854e5

Author: Isabella Bosia <ibosia at codeweavers.com>
Date:   Wed Sep 16 12:45:38 2020 +0100

vkd3d-shader: Don't print 1-st index in constant buffers if < 5.1.

Signed-off-by: Isabella Bosia <ibosia at codeweavers.com>
Signed-off-by: Henri Verbeet <hverbeet at codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard at winehq.org>

---

 libs/vkd3d-shader/trace.c | 6 +++++-
 1 file changed, 5 insertions(+), 1 deletion(-)

diff --git a/libs/vkd3d-shader/trace.c b/libs/vkd3d-shader/trace.c
index 6412208..7562e52 100644
--- a/libs/vkd3d-shader/trace.c
+++ b/libs/vkd3d-shader/trace.c
@@ -955,7 +955,11 @@ static void shader_dump_register(struct vkd3d_string_buffer *buffer,
             if (printbrackets)
                 shader_addline(buffer, "]");
 
-            if (reg->idx[1].offset != ~0u)
+            /* For CBs in sm < 5.1 we move the buffer offset from idx[1] to idx[2]
+             * to normalise it with 5.1.
+             * Here we should ignore it if it's a CB in sm < 5.1. */
+            if (reg->idx[1].offset != ~0u &&
+                    (reg->type != VKD3DSPR_CONSTBUFFER || shader_ver_ge(shader_version, 5, 1)))
             {
                 shader_addline(buffer, "[");
                 if (reg->idx[1].rel_addr)




More information about the wine-cvs mailing list