Module: Mesa
Branch: staging/23.1
Commit: de46ef3e912063ca47a8fd65fe37ee726ffa98e2
URL:    
http://cgit.freedesktop.org/mesa/mesa/commit/?id=de46ef3e912063ca47a8fd65fe37ee726ffa98e2

Author: Mike Blumenkrantz <[email protected]>
Date:   Thu Apr 13 13:50:12 2023 -0400

zink: slightly rework memoryTypeIndex selection to pre-determine heap

should be no functional changes

Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/22567>

---

 src/gallium/drivers/zink/zink_resource.c | 7 +++----
 1 file changed, 3 insertions(+), 4 deletions(-)

diff --git a/src/gallium/drivers/zink/zink_resource.c 
b/src/gallium/drivers/zink/zink_resource.c
index ca830da37f2..1a7d238370d 100644
--- a/src/gallium/drivers/zink/zink_resource.c
+++ b/src/gallium/drivers/zink/zink_resource.c
@@ -1061,8 +1061,7 @@ resource_object_create(struct zink_screen *screen, const 
struct pipe_resource *t
       alignment = MAX2(alignment, 
screen->info.props.limits.minMemoryMapAlignment);
    obj->alignment = alignment;
 
-   mai.memoryTypeIndex = zink_mem_type_idx_from_bits(screen, heap, 
reqs.memoryTypeBits);
-   if (mai.memoryTypeIndex == UINT32_MAX) {
+   if (zink_mem_type_idx_from_bits(screen, heap, reqs.memoryTypeBits) == 
UINT32_MAX) {
       /* not valid based on reqs; demote to more compatible type */
       switch (heap) {
       case ZINK_HEAP_DEVICE_LOCAL_VISIBLE:
@@ -1074,9 +1073,9 @@ resource_object_create(struct zink_screen *screen, const 
struct pipe_resource *t
       default:
          break;
       }
-      mai.memoryTypeIndex = zink_mem_type_idx_from_bits(screen, heap, 
reqs.memoryTypeBits);
-      assert(mai.memoryTypeIndex != UINT32_MAX);
+      assert(zink_mem_type_idx_from_bits(screen, heap, reqs.memoryTypeBits) != 
UINT32_MAX);
    }
+   mai.memoryTypeIndex = zink_mem_type_idx_from_bits(screen, heap, 
reqs.memoryTypeBits);
    assert(reqs.memoryTypeBits & BITFIELD_BIT(mai.memoryTypeIndex));
 
 retry:

Reply via email to