Lines Matching defs:index
133 !nir_src_is_const(instr->arr.index))
147 nir_src_is_const(instr->arr.index) &&
148 nir_src_as_uint(instr->arr.index) >=
170 /* If a deref shows up in an array index or something like that, it's
314 offset += nir_src_as_uint((*p)->arr.index) *
321 (*p)->strct.index);
349 nir_ssa_def *index = nir_ssa_for_src(b, (*p)->arr.index, 1);
351 offset = nir_iadd(b, offset, nir_amul_imm(b, index, stride));
359 (*p)->strct.index);
524 assert(a[*i]->arr.index.is_ssa && b[*i]->arr.index.is_ssa);
526 if (nir_src_is_const(a[*i]->arr.index) &&
527 nir_src_is_const(b[*i]->arr.index)) {
531 if (nir_src_as_uint(a[*i]->arr.index) !=
532 nir_src_as_uint(b[*i]->arr.index))
534 } else if (a[*i]->arr.index.ssa == b[*i]->arr.index.ssa) {
537 /* They're not the same index so we can't prove anything about
548 if (a[*i]->strct.index != b[*i]->strct.index)
776 assert(!nir_src_as_deref(deref->arr.index));
777 nir_src_copy(&new_deref->arr.index, &deref->arr.index);
781 new_deref->strct.index = deref->strct.index;
889 child->strct.index);
1202 if (nir_src_is_const(deref->arr.index) &&
1203 nir_src_as_int(deref->arr.index) == 0) {
1204 /* If it's a ptr_as_array deref with an index of 0, it does nothing
1229 assert(parent->arr.index.is_ssa);
1230 assert(deref->arr.index.is_ssa);
1234 nir_ssa_def *new_idx = nir_iadd(b, parent->arr.index.ssa,
1235 deref->arr.index.ssa);
1239 nir_instr_rewrite_src(&deref->instr, &deref->arr.index,