nir: Handle complex derefs in nir_split_array_vars

We already bail and don't split the vars but we were passing a NULL to
_mesa_hash_table_search which is not allowed.

Fixes: f1cb3348f1 "nir/split_vars: Properly bail in the presence of ..."
Reviewed-by: Caio Marcelo de Oliveira Filho <caio.oliveira@intel.com>
This commit is contained in:
Jason Ekstrand 2019-08-30 13:21:00 -05:00
parent 34541be7b0
commit 37cdb7fc44

View file

@ -427,8 +427,11 @@ get_array_deref_info(nir_deref_instr *deref,
if (!(deref->mode & modes))
return NULL;
return get_array_var_info(nir_deref_instr_get_variable(deref),
var_info_map);
nir_variable *var = nir_deref_instr_get_variable(deref);
if (var == NULL)
return NULL;
return get_array_var_info(var, var_info_map);
}
static void