On 22/10/18 11:24 pm, Alejandro PiƱeiro wrote:
Right now, a type is considered a ubo/ssbo if the mode is uniform/shader_storage and the interface_type is different to NULL. See ir_variable::in_in_buffer_block as an example.
in_in_buffer_block -> is_in_buffer_block Otherwise 1-3: Reviewed-by: Timothy Arceri <[email protected]>
--- src/compiler/spirv/vtn_variables.c | 11 ++++++++++- 1 file changed, 10 insertions(+), 1 deletion(-) diff --git a/src/compiler/spirv/vtn_variables.c b/src/compiler/spirv/vtn_variables.c index 5665106ab14..04103455614 100644 --- a/src/compiler/spirv/vtn_variables.c +++ b/src/compiler/spirv/vtn_variables.c @@ -1731,7 +1731,16 @@ vtn_create_variable(struct vtn_builder *b, struct vtn_value *val, } var->var->data.mode = nir_mode; var->var->data.location = -1; - var->var->interface_type = NULL; + + switch (var->mode) { + case vtn_variable_mode_ubo: + case vtn_variable_mode_ssbo: + var->var->interface_type = without_array->type; + break; + default: + var->var->interface_type = NULL; + break; + } break;case vtn_variable_mode_workgroup:
_______________________________________________ mesa-dev mailing list [email protected] https://lists.freedesktop.org/mailman/listinfo/mesa-dev
