Lines Matching defs:load

346    nir_intrinsic_instr *load =
348 load->num_components = num_components;
350 nir_intrinsic_set_base(load, var->data.driver_location);
352 nir_intrinsic_set_component(load, component);
354 if (load->intrinsic == nir_intrinsic_load_uniform)
355 nir_intrinsic_set_range(load,
358 if (nir_intrinsic_has_access(load))
359 nir_intrinsic_set_access(load, var->data.access);
361 nir_intrinsic_set_dest_type(load, dest_type);
363 if (load->intrinsic != nir_intrinsic_load_uniform) {
371 nir_intrinsic_set_io_semantics(load, semantics);
375 load->src[0] = nir_src_for_ssa(array_index);
376 load->src[1] = nir_src_for_ssa(offset);
378 load->src[0] = nir_src_for_ssa(barycentric);
379 load->src[1] = nir_src_for_ssa(offset);
381 load->src[0] = nir_src_for_ssa(offset);
384 nir_ssa_dest_init(&load->instr, &load->dest,
386 nir_builder_instr_insert(b, &load->instr);
388 return &load->dest.ssa;
626 nir_ssa_def *load =
636 return load;
791 /** Lower load/store_deref intrinsics on I/O variables to offset-based intrinsics
1237 nir_load_const_instr *load = nir_instr_as_load_const(parent_instr);
1241 base += load->value[1].u32;
1244 base += load->value[1].u32;
1247 base += load->value[2].u32;
1471 nir_intrinsic_instr *load = nir_intrinsic_instr_create(b->shader, op);
1475 load->src[0] = nir_src_for_ssa(
1477 load->src[1] = nir_src_for_ssa(nir_channel(b, addr, 3));
1480 load->src[0] = nir_src_for_ssa(
1482 load->src[1] = nir_src_for_ssa(nir_channel(b, addr, 3));
1483 load->src[2] = nir_src_for_ssa(nir_channel(b, addr, 2));
1485 load->src[0] = nir_src_for_ssa(addr_to_global(b, addr, addr_format));
1488 load->src[0] = nir_src_for_ssa(addr_to_offset(b, addr, addr_format));
1490 load->src[0] = nir_src_for_ssa(addr_to_index(b, addr, addr_format));
1491 load->src[1] = nir_src_for_ssa(addr_to_offset(b, addr, addr_format));
1494 if (nir_intrinsic_has_access(load))
1495 nir_intrinsic_set_access(load, nir_intrinsic_access(intrin));
1498 nir_intrinsic_set_base(load, 0);
1499 nir_intrinsic_set_range(load, b->shader->constant_data_size);
1505 nir_intrinsic_set_base(load, 0);
1506 nir_intrinsic_set_range(load, glsl_get_explicit_size(var->type, false));
1515 if (nir_intrinsic_has_align(load))
1516 nir_intrinsic_set_align(load, align_mul, align_offset);
1518 if (nir_intrinsic_has_range_base(load)) {
1521 nir_intrinsic_set_range_base(load, base);
1522 nir_intrinsic_set_range(load, range);
1526 load->num_components = num_components;
1527 nir_ssa_dest_init(&load->instr, &load->dest, num_components,
1542 nir_ssa_def *zero = nir_imm_zero(b, load->num_components, bit_size);
1545 const unsigned load_size = (bit_size / 8) * load->num_components;
1548 nir_builder_instr_insert(b, &load->instr);
1552 result = nir_if_phi(b, &load->dest.ssa, zero);
1554 nir_builder_instr_insert(b, &load->instr);
1555 result = &load->dest.ssa;
2026 * wide-load use-case. Back-ends should clamp alignments down if 256B
2305 * to tell it exactly how to calculate the offset/address for the given load,
2611 * Return the offset source for a load/store intrinsic.
2709 * Return the vertex index source for a load/store per_vertex intrinsic.