summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMike Blumenkrantz <michael.blumenkrantz@gmail.com>2023-05-09 19:17:39 -0400
committerEric Engestrom <eric@engestrom.ch>2023-05-10 12:40:08 +0100
commit0c447913c0ed706b19566f1b5028bb82deb1bdb9 (patch)
tree08791fdcd32a94c7d8daea5f8f1d29db6b0ce3dd
parentc7f257a09cf893197ccbb5194009e50074d89fb7 (diff)
downloadmesa-0c447913c0ed706b19566f1b5028bb82deb1bdb9.tar.gz
zink: compare desc set to detect bindless vars in separate shaders
the bindless flag here isn't set, so this check did nothing Fixes: e3b746e3a31 ("zink: use GPL to handle (simple) separate shader objects") Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/22931> (cherry picked from commit 8ef098a6008860cf6a10c51adecd4a5d0c5f4aa7)
-rw-r--r--.pick_status.json2
-rw-r--r--src/gallium/drivers/zink/zink_compiler.c2
2 files changed, 2 insertions, 2 deletions
diff --git a/.pick_status.json b/.pick_status.json
index 8daaf2a1f68..96d63060818 100644
--- a/.pick_status.json
+++ b/.pick_status.json
@@ -148,7 +148,7 @@
"description": "zink: compare desc set to detect bindless vars in separate shaders",
"nominated": true,
"nomination_type": 1,
- "resolution": 0,
+ "resolution": 1,
"main_sha": null,
"because_sha": "e3b746e3a31e350e9f0962717e49acba28efee30"
},
diff --git a/src/gallium/drivers/zink/zink_compiler.c b/src/gallium/drivers/zink/zink_compiler.c
index 2edd2ac1605..c5addf13655 100644
--- a/src/gallium/drivers/zink/zink_compiler.c
+++ b/src/gallium/drivers/zink/zink_compiler.c
@@ -3693,7 +3693,7 @@ zink_shader_compile_separate(struct zink_screen *screen, struct zink_shader *zs)
unsigned offsets[4];
zink_descriptor_shader_get_binding_offsets(zs, offsets);
nir_foreach_variable_with_modes(var, nir, nir_var_mem_ubo | nir_var_mem_ssbo | nir_var_uniform | nir_var_image) {
- if (var->data.bindless)
+ if (var->data.descriptor_set == screen->desc_set_id[ZINK_DESCRIPTOR_BINDLESS])
continue;
var->data.descriptor_set = set;
switch (var->data.mode) {