/third_party/mesa3d/src/compiler/nir/ |
D | nir_divergence_analysis.c | 65 if (instr->dest.dest.ssa.divergent) in visit_alu() 71 if (instr->src[i].src.ssa->divergent) { in visit_alu() 72 instr->dest.dest.ssa.divergent = true; in visit_alu() 86 if (instr->dest.ssa.divergent) in visit_intrinsic() 192 is_divergent = instr->src[0].ssa->divergent; in visit_intrinsic() 201 is_divergent = instr->src[0].ssa->divergent || in visit_intrinsic() 202 instr->src[1].ssa->divergent; in visit_intrinsic() 211 is_divergent = instr->src[1].ssa->divergent; in visit_intrinsic() 216 is_divergent = instr->src[0].ssa->divergent; in visit_intrinsic() 234 is_divergent = instr->src[0].ssa->divergent || in visit_intrinsic() [all …]
|
D | nir_opt_remove_phis.c | 32 get_parent_mov(nir_ssa_def *ssa) in get_parent_mov() argument 34 if (ssa->parent_instr->type != nir_instr_type_alu) in get_parent_mov() 37 nir_alu_instr *alu = nir_instr_as_alu(ssa->parent_instr); in get_parent_mov() 42 matching_mov(nir_alu_instr *mov1, nir_ssa_def *ssa) in matching_mov() argument 47 nir_alu_instr *mov2 = get_parent_mov(ssa); in matching_mov() 95 if (src->src.ssa == &phi->dest.ssa) in remove_phis_block() 99 def = src->src.ssa; in remove_phis_block() 105 if (src->src.ssa != def && !matching_mov(mov, src->src.ssa)) { in remove_phis_block() 119 def = nir_ssa_undef(b, phi->dest.ssa.num_components, in remove_phis_block() 120 phi->dest.ssa.bit_size); in remove_phis_block() [all …]
|
D | nir_lower_bit_size.c | 52 unsigned dst_bit_size = alu->dest.dest.ssa.bit_size; in lower_alu_instr() 109 nir_ssa_def_rewrite_uses(&alu->dest.dest.ssa, dst); in lower_alu_instr() 111 nir_ssa_def_rewrite_uses(&alu->dest.dest.ssa, lowered_dst); in lower_alu_instr() 136 const unsigned old_bit_size = intrin->dest.ssa.bit_size; in lower_intrinsic_instr() 149 nir_ssa_def *new_src = nir_convert_to_bit_size(b, intrin->src[0].ssa, in lower_intrinsic_instr() 156 assert(new_intrin->dest.ssa.bit_size == 1); in lower_intrinsic_instr() 161 assert(intrin->src[0].ssa->bit_size == intrin->dest.ssa.bit_size); in lower_intrinsic_instr() 162 new_intrin->dest.ssa.bit_size = bit_size; in lower_intrinsic_instr() 167 nir_ssa_def *res = &new_intrin->dest.ssa; in lower_intrinsic_instr() 195 nir_ssa_def_rewrite_uses(&intrin->dest.ssa, res); in lower_intrinsic_instr() [all …]
|
D | nir_lower_subgroups.c | 38 comp = nir_unpack_64_2x32_split_x(b, intrin->src[0].ssa); in lower_subgroups_64bit_split_intrinsic() 40 comp = nir_unpack_64_2x32_split_y(b, intrin->src[0].ssa); in lower_subgroups_64bit_split_intrinsic() 58 assert(intrin->src[0].ssa->bit_size == 64); in lower_subgroup_op_to_32bit() 61 return nir_pack_64_2x32_split(b, &intr_x->dest.ssa, &intr_y->dest.ssa); in lower_subgroup_op_to_32bit() 111 assert(intrin->dest.ssa.num_components > 1); in lower_subgroup_op_to_scalar() 121 1, intrin->dest.ssa.bit_size, NULL); in lower_subgroup_op_to_scalar() 135 if (lower_to_32bit && chan_intrin->src[0].ssa->bit_size == 64) { in lower_subgroup_op_to_scalar() 139 reads[i] = &chan_intrin->dest.ssa; in lower_subgroup_op_to_scalar() 150 nir_ssa_def *value = intrin->src[0].ssa; in lower_vote_eq_to_scalar() 157 1, intrin->dest.ssa.bit_size, NULL); in lower_vote_eq_to_scalar() [all …]
|
D | nir_opt_vectorize.c | 46 void *hash_data = nir_src_is_const(*src) ? NULL : src->ssa; in hash_src() 76 hash = HASH(hash, alu->dest.dest.ssa.bit_size); in hash_instr() 80 alu->dest.dest.ssa.num_components, in hash_instr() 92 return src1->ssa == src2->ssa || in srcs_equal() 126 if (alu1->dest.dest.ssa.bit_size != alu2->dest.dest.ssa.bit_size) in instrs_equal() 152 if (alu->dest.dest.ssa.num_components >= instr->pass_flags) in instr_can_rewrite() 165 for (unsigned j = 1; j < alu->dest.dest.ssa.num_components; j++) { in instr_can_rewrite() 195 assert(alu1->dest.dest.ssa.bit_size == alu2->dest.dest.ssa.bit_size); in instr_try_combine() 196 unsigned alu1_components = alu1->dest.dest.ssa.num_components; in instr_try_combine() 197 unsigned alu2_components = alu2->dest.dest.ssa.num_components; in instr_try_combine() [all …]
|
D | nir_opt_copy_propagate.c | 38 unsigned num_comp = instr->dest.dest.ssa.num_components; in is_swizzleless_move() 40 if (instr->src[0].src.ssa->num_components != num_comp) in is_swizzleless_move() 51 instr->src[i].src.ssa != instr->src[0].src.ssa) in is_swizzleless_move() 69 unsigned num_comp = mov->dest.dest.ssa.num_components; in rewrite_to_vec() 75 nir_ssa_def_rewrite_uses(&mov->dest.dest.ssa, new); in rewrite_to_vec() 93 def = copy->src[0].src.ssa; in copy_propagate_alu() 98 def = copy->src[src->swizzle[0]].src.ssa; in copy_propagate_alu() 101 if (copy->src[src->swizzle[i]].src.ssa != def) in copy_propagate_alu() 120 nir_instr_rewrite_src_ssa(src->parent_instr, src, copy->src[0].src.ssa); in copy_propagate() 131 nir_if_rewrite_condition_ssa(src->parent_if, src, copy->src[0].src.ssa); in copy_propagate_if() [all …]
|
D | nir_opt_copy_prop_vars.c | 69 } ssa; member 79 memset(&value->ssa, 0, sizeof(value->ssa)); in value_set_ssa_components() 82 value->ssa.def[i] = def; in value_set_ssa_components() 83 value->ssa.component[i] = i; in value_set_ssa_components() 115 (value->ssa.def[i] != intrin->src[1].ssa || in value_equals_store_src() 116 value->ssa.component[i] != i)) in value_equals_store_src() 471 memset(&value->ssa, 0, sizeof(value->ssa)); in value_set_from_value() 476 value->ssa.def[base_index + i] = from->ssa.def[i]; in value_set_from_value() 477 value->ssa.component[base_index + i] = from->ssa.component[i]; in value_set_from_value() 499 if (!entry->src.ssa.def[index]) in load_element_from_ssa_entry_value() [all …]
|
D | nir_gather_ssa_types.c | 76 copy_type(src.ssa->index, dest->ssa.index, src_is_sink, float_types, progress); in copy_types() 77 copy_type(src.ssa->index, dest->ssa.index, src_is_sink, int_types, progress); in copy_types() 125 set_type(alu->src[0].src.ssa->index, nir_type_bool, in nir_gather_ssa_types() 136 set_type(alu->src[i].src.ssa->index, info->input_types[i], in nir_gather_ssa_types() 139 set_type(alu->dest.dest.ssa.index, info->output_type, in nir_gather_ssa_types() 149 set_type(tex->src[i].src.ssa->index, in nir_gather_ssa_types() 154 set_type(tex->dest.ssa.index, tex->dest_type, in nir_gather_ssa_types() 169 set_type(intrin->dest.ssa.index, in nir_gather_ssa_types() 179 set_type(intrin->src[1].ssa->index, in nir_gather_ssa_types() 188 set_type(intrin->dest.ssa.index, in nir_gather_ssa_types() [all …]
|
D | nir_opt_constant_folding.c | 62 bit_size = alu->dest.dest.ssa.bit_size; in try_fold_alu() 70 bit_size = alu->src[i].src.ssa->bit_size; in try_fold_alu() 72 nir_instr *src_instr = alu->src[i].src.ssa->parent_instr; in try_fold_alu() 98 nir_eval_const_opcode(alu->op, dest, alu->dest.dest.ssa.num_components, in try_fold_alu() 103 nir_ssa_def *imm = nir_build_imm(b, alu->dest.dest.ssa.num_components, in try_fold_alu() 104 alu->dest.dest.ssa.bit_size, in try_fold_alu() 106 nir_ssa_def_rewrite_uses(&alu->dest.dest.ssa, imm); in try_fold_alu() 220 nir_ssa_def *val = nir_build_imm(b, intrin->dest.ssa.num_components, in try_fold_intrinsic() 221 intrin->dest.ssa.bit_size, v); in try_fold_intrinsic() 222 nir_ssa_def_rewrite_uses(&intrin->dest.ssa, val); in try_fold_intrinsic() [all …]
|
D | nir_scale_fdiv.c | 34 if (alu->op != nir_op_fdiv || alu->src[0].src.ssa->bit_size != 32) in nir_scale_fdiv_instr() 39 nir_ssa_def *fabs = nir_fabs(b, alu->src[1].src.ssa); in nir_scale_fdiv_instr() 43 nir_ssa_def *scaled_down_a = nir_fmul_imm(b, alu->src[0].src.ssa, 0.25); in nir_scale_fdiv_instr() 44 nir_ssa_def *scaled_down_b = nir_fmul_imm(b, alu->src[1].src.ssa, 0.25); in nir_scale_fdiv_instr() 45 nir_ssa_def *scaled_up_a = nir_fmul_imm(b, alu->src[0].src.ssa, 16777216.0); in nir_scale_fdiv_instr() 46 nir_ssa_def *scaled_up_b = nir_fmul_imm(b, alu->src[1].src.ssa, 16777216.0); in nir_scale_fdiv_instr() 50 (nir_bcsel(b, small, scaled_up_a, alu->src[0].src.ssa))); in nir_scale_fdiv_instr() 53 (nir_bcsel(b, small, scaled_up_b, alu->src[1].src.ssa))); in nir_scale_fdiv_instr()
|
D | nir_opt_phi_precision.c | 202 if (phi->dest.ssa.bit_size != 32) in try_move_narrowing_dst() 208 nir_foreach_use (use, &phi->dest.ssa) { in try_move_narrowing_dst() 219 if (!list_is_empty(&phi->dest.ssa.if_uses)) in try_move_narrowing_dst() 229 phi->dest.ssa.num_components, in try_move_narrowing_dst() 238 b->cursor = nir_after_instr_and_phis(src->src.ssa->parent_instr); in try_move_narrowing_dst() 239 nir_ssa_def *old_src = src->src.ssa; in try_move_narrowing_dst() 250 nir_foreach_use (use, &phi->dest.ssa) { in try_move_narrowing_dst() 257 nir_ssa_def_rewrite_uses(&phi->dest.ssa, &new_phi->dest.ssa); in try_move_narrowing_dst() 312 nir_instr *instr = src->src.ssa->parent_instr; in find_widening_op() 350 nir_instr *instr = src->src.ssa->parent_instr; in find_widening_op() [all …]
|
D | nir_opt_peephole_select.c | 228 if (!list_is_empty(&mov->dest.dest.ssa.if_uses)) in block_check_for_allowed_instrs() 232 nir_foreach_use(use, &mov->dest.dest.ssa) { in block_check_for_allowed_instrs() 315 nir_foreach_use (src, &phi->dest.ssa) { in nir_opt_collapse_if() 320 if (phi_src->src.ssa != else_src->src.ssa) in nir_opt_collapse_if() 346 nir_foreach_use_safe(src, &phi->dest.ssa) { in nir_opt_collapse_if() 350 if (phi_src->src.ssa == else_src->src.ssa) in nir_opt_collapse_if() 352 nir_src_for_ssa(&phi->dest.ssa)); in nir_opt_collapse_if() 360 nir_ssa_def *cond = nir_iand(&b, if_stmt->condition.ssa, in nir_opt_collapse_if() 361 parent_if->condition.ssa); in nir_opt_collapse_if() 474 phi->dest.ssa.num_components, in nir_opt_peephole_select_block() [all …]
|
D | nir_split_64bit_vec3_and_vec4.c | 111 nir_ssa_def *offset = nir_imm_intN_t(b, 0, deref->dest.ssa.bit_size); in get_linear_array_offset() 185 nir_ssa_def *load1 = nir_build_load_deref(b, 2, 64, &deref1->dest.ssa, 0); in split_load_deref() 187 &deref2->dest.ssa, 0); in split_load_deref() 210 nir_ssa_def *src_xy = nir_channels(b, intr->src[1].ssa, 3); in split_store_deref() 211 nir_build_store_deref(b, &deref_xy->dest.ssa, src_xy, write_mask_xy); in split_store_deref() 216 nir_ssa_def *src_zw = nir_channels(b, intr->src[1].ssa, write_mask_zw); in split_store_deref() 217 nir_build_store_deref(b, &deref_zw->dest.ssa, src_zw, write_mask_zw >> 2); in split_store_deref() 226 nir_op vec_op = nir_op_vec(phi->dest.ssa.num_components); in split_phi() 230 phi->dest.ssa.num_components, in split_phi() 232 vec->dest.write_mask = (1 << phi->dest.ssa.num_components) - 1; in split_phi() [all …]
|
D | nir_lower_phis_to_scalar.c | 60 nir_instr *src_instr = src->src.ssa->parent_instr; in is_phi_src_scalarizable() 149 if (phi->dest.ssa.num_components == 1) in should_lower_phi() 215 unsigned bit_size = phi->dest.ssa.bit_size; in lower_phis_to_scalar_block() 221 nir_op vec_op = nir_op_vec(phi->dest.ssa.num_components); in lower_phis_to_scalar_block() 225 phi->dest.ssa.num_components, in lower_phis_to_scalar_block() 227 vec->dest.write_mask = (1 << phi->dest.ssa.num_components) - 1; in lower_phis_to_scalar_block() 229 for (unsigned i = 0; i < phi->dest.ssa.num_components; i++) { in lower_phis_to_scalar_block() 232 phi->dest.ssa.bit_size, NULL); in lower_phis_to_scalar_block() 234 vec->src[i].src = nir_src_for_ssa(&new_phi->dest.ssa); in lower_phis_to_scalar_block() 252 nir_phi_instr_add_src(new_phi, src->pred, nir_src_for_ssa(&mov->dest.dest.ssa)); in lower_phis_to_scalar_block() [all …]
|
D | nir_opt_if.c | 163 nir_ssa_def *cond = nif->condition.ssa; in opt_peel_loop_initial_if() 311 bcsel->src[i].src.ssa->parent_instr->block != instr->block) in is_trivial_bcsel() 314 if (bcsel->src[i].src.ssa->parent_instr->type != nir_instr_type_phi) { in is_trivial_bcsel() 322 nir_foreach_phi_src(src, nir_instr_as_phi(bcsel->src[0].src.ssa->parent_instr)) { in is_trivial_bcsel() 438 nir_instr *const src_instr = alu->src[i].src.ssa->parent_instr; in opt_split_alu_of_phi() 458 if (src_of_phi->src.ssa->parent_instr->type != in opt_split_alu_of_phi() 463 if (src_of_phi->src.ssa->parent_instr->type != in opt_split_alu_of_phi() 468 prev_srcs[i] = src_of_phi->src.ssa; in opt_split_alu_of_phi() 471 continue_srcs[i] = src_of_phi->src.ssa; in opt_split_alu_of_phi() 485 prev_srcs[i] = alu->src[i].src.ssa; in opt_split_alu_of_phi() [all …]
|
D | nir_opt_rematerialize_compares.c | 78 nir_foreach_use(use, &instr->dest.dest.ssa) { in all_uses_are_bcsel() 90 if (alu->src[0].src.ssa != &instr->dest.dest.ssa) in all_uses_are_bcsel() 127 nir_foreach_use_safe(use, &alu->dest.dest.ssa) { in nir_opt_rematerialize_compares_impl() 142 if (use_alu->src[i].src.ssa == &alu->dest.dest.ssa) { in nir_opt_rematerialize_compares_impl() 145 nir_src_for_ssa(&clone->dest.dest.ssa)); in nir_opt_rematerialize_compares_impl() 151 nir_foreach_if_use_safe(use, &alu->dest.dest.ssa) { in nir_opt_rematerialize_compares_impl() 168 nir_src_for_ssa(&clone->dest.dest.ssa)); in nir_opt_rematerialize_compares_impl()
|
D | nir_opt_intrinsics.c | 42 if (!list_is_empty(&shuffle->dest.ssa.if_uses) || in src_is_single_use_shuffle() 43 !list_is_singular(&shuffle->dest.ssa.uses)) in src_is_single_use_shuffle() 49 *data = shuffle->src[0].ssa; in src_is_single_use_shuffle() 50 *index = shuffle->src[1].ssa; in src_is_single_use_shuffle() 74 alu->src[1].src.ssa->parent_instr->block != alu->instr.block || in try_opt_bcsel_of_shuffle() 80 alu->src[2].src.ssa->parent_instr->block != alu->instr.block || in try_opt_bcsel_of_shuffle() 87 nir_ssa_def *index = nir_bcsel(b, alu->src[0].src.ssa, index1, index2); in try_opt_bcsel_of_shuffle() 109 nir_ssa_def_rewrite_uses(&alu->dest.dest.ssa, in opt_intrinsics_alu() 132 nir_foreach_use_safe(use_src, &intrin->dest.ssa) { in opt_intrinsics_intrin() 151 nir_ssa_def_rewrite_uses(&alu->dest.dest.ssa, in opt_intrinsics_intrin()
|
/third_party/mesa3d/src/gallium/drivers/etnaviv/ |
D | etnaviv_nir.c | 49 intr->dest.ssa.bit_size = 32; in etna_lower_io() 53 nir_ssa_def *ssa = nir_ine(&b, &intr->dest.ssa, nir_imm_int(&b, 0)); in etna_lower_io() local 55 nir_instr_as_alu(ssa->parent_instr)->op = nir_op_ieq; in etna_lower_io() 57 nir_ssa_def_rewrite_uses_after(&intr->dest.ssa, in etna_lower_io() 58 ssa, in etna_lower_io() 59 ssa->parent_instr); in etna_lower_io() 74 nir_ssa_def *ssa = nir_mov(&b, intr->src[1].ssa); in etna_lower_io() local 75 nir_alu_instr *alu = nir_instr_as_alu(ssa->parent_instr); in etna_lower_io() 78 nir_instr_rewrite_src(instr, &intr->src[1], nir_src_for_ssa(ssa)); in etna_lower_io() 130 vec->src[i].src = nir_src_for_ssa(coord->ssa); in etna_lower_io() [all …]
|
/third_party/mesa3d/src/intel/compiler/ |
D | brw_nir_opt_peephole_ffma.c | 57 if (!are_all_uses_fadd(&use_alu->dest.dest.ssa)) in are_all_uses_fadd() 76 nir_instr *instr = src->src.ssa->parent_instr; in get_mul_for_src() 94 alu = get_mul_for_src(&alu->src[0], alu->dest.dest.ssa.num_components, in get_mul_for_src() 99 alu = get_mul_for_src(&alu->src[0], alu->dest.dest.ssa.num_components, in get_mul_for_src() 105 alu = get_mul_for_src(&alu->src[0], alu->dest.dest.ssa.num_components, in get_mul_for_src() 116 if (!are_all_uses_fadd(&alu->dest.dest.ssa)) in get_mul_for_src() 151 if (srcs[i].src.ssa->parent_instr->type == nir_instr_type_load_const) { in any_alu_src_is_a_constant() 153 nir_instr_as_load_const (srcs[i].src.ssa->parent_instr); in any_alu_src_is_a_constant() 188 if (add->src[0].src.ssa == add->src[1].src.ssa) in brw_nir_opt_peephole_ffma_instr() 202 add->dest.dest.ssa.num_components, in brw_nir_opt_peephole_ffma_instr() [all …]
|
/third_party/mesa3d/src/gallium/drivers/r600/sfn/ |
D | sfn_nir_lower_64bit.cpp | 137 intr->dest.ssa.num_components *= 2; in lower() 138 intr->dest.ssa.bit_size = 32; in lower() 149 nir_channel(b, &intr->dest.ssa, 2 * i), in lower() 150 nir_channel(b, &intr->dest.ssa, 2 * i + 1)); in lower() 276 nir_ssa_dest_init(&phi_lo->instr, &phi_lo->dest, phi->dest.ssa.num_components * 2, 32, ""); in lower() 277 nir_ssa_dest_init(&phi_hi->instr, &phi_hi->dest, phi->dest.ssa.num_components * 2, 32, ""); in lower() 284 return nir_pack_64_2x32_split(b, &phi_lo->dest.ssa, &phi_hi->dest.ssa); in lower() 386 auto deref = nir_instr_as_deref(intr->src[0].ssa->parent_instr); in split_double_store_deref() 399 auto deref = nir_instr_as_deref(intr->src[0].ssa->parent_instr); in split_double_load_deref() 422 … auto load1 = nir_build_load_deref(b, 2, 64, &deref_array1->dest.ssa, (enum gl_access_qualifier)0); in split_load_deref_array() [all …]
|
/third_party/mesa3d/src/compiler/nir/tests/ |
D | load_store_vectorizer_tests.cpp | 31 EXPECT_EQ((instr)->src[0].src.ssa, &(load)->dest.ssa); \ 196 res_map[binding] = &res->dest.ssa; in get_resource() 197 return &res->dest.ssa; in get_resource() 253 nir_alu_instr *mov = nir_instr_as_alu(nir_mov(b, &load->dest.ssa)->parent_instr); in create_indirect_load() 352 if (alu->src[index].src.ssa != def) in test_alu_def() 402 ASSERT_EQ(load->dest.ssa.bit_size, 32); in TEST_F() 403 ASSERT_EQ(load->dest.ssa.num_components, 2); in TEST_F() 424 ASSERT_EQ(load->dest.ssa.bit_size, 32); in TEST_F() 425 ASSERT_EQ(load->dest.ssa.num_components, 3); in TEST_F() 447 ASSERT_EQ(load->dest.ssa.bit_size, 32); in TEST_F() [all …]
|
/third_party/mesa3d/src/freedreno/ir3/ |
D | ir3_nir_lower_io_offsets.c | 90 nir_ssa_def *shift_ssa = alu_instr->src[1].src.ssa; in check_and_propagate_bit_shift32() 173 nir_ssa_def *descriptor = intrinsic->src[0].ssa; in scalarize_load() 174 nir_ssa_def *offset = intrinsic->src[1].ssa; in scalarize_load() 175 nir_ssa_def *new_offset = intrinsic->src[2].ssa; in scalarize_load() 176 unsigned comp_size = intrinsic->dest.ssa.bit_size / 8; in scalarize_load() 177 for (unsigned i = 0; i < intrinsic->dest.ssa.num_components; i++) { in scalarize_load() 179 nir_load_ssbo_ir3(b, 1, intrinsic->dest.ssa.bit_size, descriptor, in scalarize_load() 187 nir_ssa_def *result = nir_vec(b, results, intrinsic->dest.ssa.num_components); in scalarize_load() 189 nir_ssa_def_rewrite_uses(&intrinsic->dest.ssa, result); in scalarize_load() 205 if ((has_dest && intrinsic->dest.ssa.bit_size == 16) || in lower_offset_for_ssbo() [all …]
|
D | ir3_nir_lower_tex_prefetch.c | 32 coord_offset(nir_ssa_def *ssa) in coord_offset() argument 34 nir_instr *parent_instr = ssa->parent_instr; in coord_offset() 52 coord_offset(alu->src[0].src.ssa) + alu->src[0].swizzle[0]; in coord_offset() 60 coord_offset(alu->src[i].src.ssa) + alu->src[i].swizzle[0]; in coord_offset() 84 nir_instr_as_intrinsic(input->src[0].ssa->parent_instr); in coord_offset() 100 ir3_nir_coord_offset(nir_ssa_def *ssa) in ir3_nir_coord_offset() argument 103 assert(ssa->num_components == 2); in ir3_nir_coord_offset() 104 return coord_offset(ssa); in ir3_nir_coord_offset() 186 if (ir3_nir_coord_offset(coord->src.ssa) >= 0) { in lower_tex_prefetch_block() 211 nir_instr *cond = nif->condition.ssa->parent_instr; in lower_tex_prefetch_func()
|
/third_party/mesa3d/src/intel/vulkan/ |
D | anv_nir_lower_ubo_loads.c | 40 nir_ssa_def *base_addr = load->src[0].ssa; in lower_ubo_load_instr() 43 bound = load->src[2].ssa; in lower_ubo_load_instr() 45 unsigned bit_size = load->dest.ssa.bit_size; in lower_ubo_load_instr() 81 nir_ssa_def *offset = load->src[1].ssa; in lower_ubo_load_instr() 94 nir_build_load_global_constant(b, load->dest.ssa.num_components, in lower_ubo_load_instr() 95 load->dest.ssa.bit_size, addr, in lower_ubo_load_instr() 104 val = nir_build_load_global_constant(b, load->dest.ssa.num_components, in lower_ubo_load_instr() 105 load->dest.ssa.bit_size, addr, in lower_ubo_load_instr() 112 nir_ssa_def_rewrite_uses(&load->dest.ssa, val); in lower_ubo_load_instr()
|
/third_party/mesa3d/src/gallium/drivers/lima/ir/ |
D | lima_nir_duplicate_intrinsic.c | 35 nir_foreach_use_safe(use_src, &itr->dest.ssa) { in lima_nir_duplicate_intrinsic() 46 dupl->src[0].ssa = itr->src[0].ssa; in lima_nir_duplicate_intrinsic() 51 dupl->num_components, itr->dest.ssa.bit_size, NULL); in lima_nir_duplicate_intrinsic() 60 nir_instr_rewrite_src(use_src->parent_instr, use_src, nir_src_for_ssa(&dupl->dest.ssa)); in lima_nir_duplicate_intrinsic() 68 nir_foreach_if_use_safe(use_src, &itr->dest.ssa) { in lima_nir_duplicate_intrinsic() 79 dupl->src[0].ssa = itr->src[0].ssa; in lima_nir_duplicate_intrinsic() 84 dupl->num_components, itr->dest.ssa.bit_size, NULL); in lima_nir_duplicate_intrinsic() 93 nir_if_rewrite_condition(use_src->parent_if, nir_src_for_ssa(&dupl->dest.ssa)); in lima_nir_duplicate_intrinsic()
|