Lines Matching defs:deref
655 /* Since we use the deref pass, both vulkan_resource_index and
680 nir_deref_instr *deref = nir_instr_as_deref(src->src.ssa->parent_instr);
681 while (deref->deref_type != nir_deref_type_var) {
682 assert(deref->parent.is_ssa);
684 nir_instr_as_deref(deref->parent.ssa->parent_instr);
686 assert(deref->deref_type == nir_deref_type_array);
688 if (nir_src_is_const(deref->arr.index) && index == NULL) {
690 base_index += nir_src_as_uint(deref->arr.index) * array_elements;
700 nir_ssa_for_src(b, deref->arr.index, 1)));
705 deref = parent;
725 uint32_t set = deref->var->data.descriptor_set;
726 uint32_t binding = deref->var->data.binding;
732 bool relaxed_precision = deref->var->data.precision == GLSL_PRECISION_MEDIUM ||
733 deref->var->data.precision == GLSL_PRECISION_LOW;
742 deref->var->data.index + base_index :
758 deref->var->data.descriptor_set,
759 deref->var->data.binding,
813 nir_deref_instr *deref = nir_src_as_deref(instr->src[0]);
818 while (deref->deref_type != nir_deref_type_var) {
819 assert(deref->parent.is_ssa);
821 nir_instr_as_deref(deref->parent.ssa->parent_instr);
823 assert(deref->deref_type == nir_deref_type_array);
825 if (nir_src_is_const(deref->arr.index) && index == NULL) {
827 base_index += nir_src_as_uint(deref->arr.index) * array_elements;
837 nir_ssa_for_src(b, deref->arr.index, 1)));
842 deref = parent;
848 uint32_t set = deref->var->data.descriptor_set;
849 uint32_t binding = deref->var->data.binding;
854 uint32_t array_index = deref->var->data.index + base_index;
865 deref->var->data.descriptor_set,
866 deref->var->data.binding,