Commit 3b3653c4 authored by Dave Airlie's avatar Dave Airlie
Browse files

nir/spirv: don't use bare types, remove assert in split vars for testing



For OpenCL we never want to strip the info from the types, and it makes
type comparisons easier in later stages. We might later need a nir pass to
strip this for GLSL, but so far the only regression is the assert and Jason
said removing that is fine.
Reviewed-by: Jason Ekstrand's avatarJason Ekstrand <jason@jlekstrand.net>
Signed-off-by: default avatarDave Airlie <airlied@redhat.com>
parent e7c84021
Pipeline #25204 passed with stages
in 29 minutes and 8 seconds
......@@ -341,7 +341,6 @@ init_var_list_array_infos(struct exec_list *vars,
const struct glsl_type *type = var->type;
for (int i = 0; i < num_levels; i++) {
assert(glsl_get_explicit_stride(type) == 0);
info->levels[i].array_len = glsl_get_length(type);
type = glsl_get_array_element(type);
......
......@@ -2054,7 +2054,7 @@ vtn_create_variable(struct vtn_builder *b, struct vtn_value *val,
/* Private variables don't have any explicit layout but some layouts
* may have leaked through due to type deduplication in the SPIR-V.
*/
var->var->type = glsl_get_bare_type(var->type->type);
var->var->type = var->type->type;
}
var->var->data.mode = nir_mode;
var->var->data.location = -1;
......@@ -2072,7 +2072,7 @@ vtn_create_variable(struct vtn_builder *b, struct vtn_value *val,
* layouts may have leaked through due to type deduplication in the
* SPIR-V.
*/
var->var->type = glsl_get_bare_type(var->type->type);
var->var->type = var->type->type;
var->var->data.mode = nir_var_mem_shared;
}
break;
......@@ -2130,7 +2130,7 @@ vtn_create_variable(struct vtn_builder *b, struct vtn_value *val,
* the SPIR-V. We do, however, keep the layouts in the variable's
* interface_type because we need offsets for XFB arrays of blocks.
*/
var->var->type = glsl_get_bare_type(var->type->type);
var->var->type = var->type->type;
var->var->data.mode = nir_mode;
var->var->data.patch = var->patch;
......
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment