zink: fix separate shader patch variable location adjustment
in spirv, these start at location 0, not location 32
fixes #10414
Fixes: d9942442f2 ("zink: handle patch variable locations for separate shaders better")
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/26981>
This commit is contained in:
committed by
Marge Bot
parent
695b4a2992
commit
565ee4fafc
@@ -4909,7 +4909,7 @@ fixup_io_locations(nir_shader *nir)
|
||||
if (var->data.location == VARYING_SLOT_VAR0)
|
||||
var->data.driver_location = 0;
|
||||
else if (var->data.patch)
|
||||
var->data.driver_location = var->data.location - VARYING_SLOT_VAR0;
|
||||
var->data.driver_location = var->data.location - VARYING_SLOT_PATCH0;
|
||||
else
|
||||
var->data.driver_location = var->data.location;
|
||||
}
|
||||
@@ -4936,7 +4936,7 @@ fixup_io_locations(nir_shader *nir)
|
||||
size += glsl_count_vec4_slots(var->type, false, false);
|
||||
}
|
||||
if (var->data.patch)
|
||||
var->data.driver_location = var->data.location - VARYING_SLOT_VAR0;
|
||||
var->data.driver_location = var->data.location - VARYING_SLOT_PATCH0;
|
||||
else
|
||||
var->data.driver_location = slot;
|
||||
found = true;
|
||||
|
||||
Reference in New Issue
Block a user