--- mesa-mesa-21.3.0/src/gallium/drivers/zink/zink_framebuffer.c.orig 2021-11-17 21:16:20.000000000 +0100 +++ mesa-mesa-21.3.0/src/gallium/drivers/zink/zink_framebuffer.c 2021-11-17 22:27:05.031355842 +0100 @@ -37,7 +37,7 @@ struct zink_framebuffer *fb) { hash_table_foreach(&fb->objects, he) { -#if defined(_WIN64) || defined(__x86_64__) +#if defined(_WIN64) || (defined(__x86_64__) && !defined(__ILP32__)) VKSCR(DestroyFramebuffer)(screen->dev, he->data, NULL); #else VkFramebuffer *ptr = he->data; @@ -60,7 +60,7 @@ struct hash_entry *he = _mesa_hash_table_search_pre_hashed(&fb->objects, hash, rp); if (he) { -#if defined(_WIN64) || defined(__x86_64__) +#if defined(_WIN64) || (defined(__x86_64__) && !defined(__ILP32__)) ret = (VkFramebuffer)he->data; #else VkFramebuffer *ptr = he->data; @@ -90,7 +90,7 @@ if (VKSCR(CreateFramebuffer)(screen->dev, &fci, NULL, &ret) != VK_SUCCESS) return; -#if defined(_WIN64) || defined(__x86_64__) +#if defined(_WIN64) || (defined(__x86_64__) && !defined(__ILP32__)) _mesa_hash_table_insert_pre_hashed(&fb->objects, hash, rp, ret); #else VkFramebuffer *ptr = ralloc(fb, VkFramebuffer); @@ -207,7 +207,7 @@ struct hash_entry *he = _mesa_hash_table_search_pre_hashed(&fb->objects, hash, rp); if (he) { -#if defined(_WIN64) || defined(__x86_64__) +#if defined(_WIN64) || (defined(__x86_64__) && !defined(__ILP32__)) ret = (VkFramebuffer)he->data; #else VkFramebuffer *ptr = he->data; @@ -229,7 +229,7 @@ if (VKSCR(CreateFramebuffer)(screen->dev, &fci, NULL, &ret) != VK_SUCCESS) return; -#if defined(_WIN64) || defined(__x86_64__) +#if defined(_WIN64) || (defined(__x86_64__) && !defined(__ILP32__)) _mesa_hash_table_insert_pre_hashed(&fb->objects, hash, rp, ret); #else VkFramebuffer *ptr = ralloc(fb, VkFramebuffer);