Home
last modified time | relevance | path

Searched refs:parent_instr (Results 1 - 25 of 174) sorted by relevance

1234567

/third_party/mesa3d/src/compiler/nir/
H A Dnir_repair_ssa.c60 if (src->parent_instr->type == nir_instr_type_phi) { in get_src_block()
63 return src->parent_instr->block; in get_src_block()
75 !nir_block_dominates(def->parent_instr->block, get_src_block(src))) { in repair_ssa_def()
85 !nir_block_dominates(def->parent_instr->block, block_before_if)) { in repair_ssa_def()
96 BITSET_SET(state->def_set, def->parent_instr->block->index); in repair_ssa_def()
102 nir_phi_builder_value_set_block_def(val, def->parent_instr->block, def); in repair_ssa_def()
106 if (src_block == def->parent_instr->block) { in repair_ssa_def()
120 if (def->parent_instr->type == nir_instr_type_deref && in repair_ssa_def()
121 src->parent_instr->type == nir_instr_type_deref && in repair_ssa_def()
122 nir_instr_as_deref(src->parent_instr) in repair_ssa_def()
[all...]
H A Dnir_to_lcssa.c84 if (use->parent_instr->block->index <= block_before_loop->index || in is_use_inside_loop()
85 use->parent_instr->block->index >= block_after_loop->index) { in is_use_inside_loop()
95 nir_instr *instr = def->parent_instr; in is_defined_before_loop()
117 if (def->parent_instr->pass_flags == undefined) in def_is_invariant()
118 def->parent_instr->pass_flags = instr_is_invariant(def->parent_instr, loop); in def_is_invariant()
120 return def->parent_instr->pass_flags == invariant; in def_is_invariant()
201 assert(def->parent_instr->pass_flags != undefined); in convert_loop_exit_for_ssa()
202 if (def->parent_instr->pass_flags == invariant) in convert_loop_exit_for_ssa()
207 if (use->parent_instr in convert_loop_exit_for_ssa()
[all...]
H A Dnir_lower_flrp.c55 nir_instr_as_alu(neg_a->parent_instr)->exact = alu->exact; in replace_with_strict_ffma()
58 nir_instr_as_alu(inner_ffma->parent_instr)->exact = alu->exact; in replace_with_strict_ffma()
61 nir_instr_as_alu(outer_ffma->parent_instr)->exact = alu->exact; in replace_with_strict_ffma()
84 nir_instr_as_alu(neg_c->parent_instr)->exact = alu->exact; in replace_with_single_ffma()
88 nir_instr_as_alu(one_minus_c->parent_instr)->exact = alu->exact; in replace_with_single_ffma()
91 nir_instr_as_alu(b_times_c->parent_instr)->exact = alu->exact; in replace_with_single_ffma()
94 nir_instr_as_alu(final_ffma->parent_instr)->exact = alu->exact; in replace_with_single_ffma()
117 nir_instr_as_alu(neg_c->parent_instr)->exact = alu->exact; in replace_with_strict()
121 nir_instr_as_alu(one_minus_c->parent_instr)->exact = alu->exact; in replace_with_strict()
124 nir_instr_as_alu(first_product->parent_instr) in replace_with_strict()
[all...]
H A Dnir_move_vec_src_uses_to_dest.c55 if (instr->index <= def->parent_instr->index) { in ssa_def_dominates_instr()
57 } else if (def->parent_instr->block == instr->block) { in ssa_def_dominates_instr()
58 return def->parent_instr->index < instr->index; in ssa_def_dominates_instr()
60 return nir_block_dominates(def->parent_instr->block, instr->block); in ssa_def_dominates_instr()
128 if (use->parent_instr == &vec->instr) in move_vec_src_uses_to_dest_block()
132 if (!ssa_def_dominates_instr(&vec->dest.dest.ssa, use->parent_instr)) in move_vec_src_uses_to_dest_block()
136 if (use->parent_instr->type != nir_instr_type_alu) in move_vec_src_uses_to_dest_block()
141 nir_alu_instr *use_alu = nir_instr_as_alu(use->parent_instr); in move_vec_src_uses_to_dest_block()
166 nir_instr_rewrite_src(use->parent_instr, use, in move_vec_src_uses_to_dest_block()
H A Dnir_from_ssa.c64 if (a->parent_instr->type == nir_instr_type_ssa_undef) in def_after()
67 if (b->parent_instr->type == nir_instr_type_ssa_undef) in def_after()
73 if (a->parent_instr->block == b->parent_instr->block) in def_after()
74 return a->parent_instr->index > b->parent_instr->index; in def_after()
77 return a->parent_instr->block->dom_pre_index > in def_after()
78 b->parent_instr->block->dom_pre_index; in def_after()
85 if (a->parent_instr->type == nir_instr_type_ssa_undef) { in ssa_def_dominates()
90 } else if (a->parent_instr in ssa_def_dominates()
594 nir_instr *parent_instr = def->parent_instr; rewrite_ssa_def() local
[all...]
H A Dnir_liveness.c315 def->parent_instr->block == instr->block) { in nir_ssa_def_is_live_at()
330 if (a->parent_instr == b->parent_instr) { in nir_ssa_defs_interfere()
335 } else if (a->parent_instr->type == nir_instr_type_ssa_undef || in nir_ssa_defs_interfere()
336 b->parent_instr->type == nir_instr_type_ssa_undef) { in nir_ssa_defs_interfere()
339 } else if (a->parent_instr->index < b->parent_instr->index) { in nir_ssa_defs_interfere()
340 return nir_ssa_def_is_live_at(a, b->parent_instr); in nir_ssa_defs_interfere()
342 return nir_ssa_def_is_live_at(b, a->parent_instr); in nir_ssa_defs_interfere()
H A Dnir_opt_if.c164 if (cond->parent_instr->type != nir_instr_type_phi) in opt_peel_loop_initial_if()
167 nir_phi_instr *cond_phi = nir_instr_as_phi(cond->parent_instr); in opt_peel_loop_initial_if()
168 if (cond->parent_instr->block != header_block) 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()
500 if (!is_trivial_bcsel(use->parent_instr, tru in opt_split_alu_of_phi()
[all...]
H A Dnir_group_loads.c91 return intr->src[0].ssa->parent_instr; in get_intrinsic_resource()
147 return tex->src[i].src.ssa->parent_instr; in get_uniform_inst_resource()
173 return state->block != src->ssa->parent_instr->block || in has_only_sources_less_than()
174 src->ssa->parent_instr->index < state->first_index; in has_only_sources_less_than()
196 if (use->parent_instr->block == instr->block && in group_loads()
197 use->parent_instr->index <= last->index) { in group_loads()
330 nir_instr *instr = src->ssa->parent_instr; in gather_indirections()
334 unsigned indirections = get_num_indirections(src->ssa->parent_instr); in gather_indirections()
H A Dnir_schedule.c254 src->parent_instr); in nir_schedule_reg_src_deps()
271 dest->reg.parent_instr); in nir_schedule_reg_dest_deps()
291 nir_schedule_node *def_n = nir_schedule_get_node(instr_map, def->parent_instr); in nir_schedule_ssa_deps()
295 src->parent_instr); in nir_schedule_ssa_deps()
558 _mesa_set_search(remaining_uses, src->parent_instr)) { in nir_schedule_regs_freed_src_cb()
870 src->parent_instr); in nir_schedule_mark_src_scheduled()
881 src->ssa->parent_instr->type != nir_instr_type_load_const) { in nir_schedule_mark_src_scheduled()
883 if (other_src->parent_instr == src->parent_instr) in nir_schedule_mark_src_scheduled()
888 other_src->parent_instr); in nir_schedule_mark_src_scheduled()
[all...]
H A Dnir_opt_gcm.c172 nir_instr *src_instr = src->ssa->parent_instr; in is_src_scalarizable()
435 gcm_schedule_early_instr(src->ssa->parent_instr, void_state); in gcm_schedule_early_src()
445 &state->instr_infos[src->ssa->parent_instr->index]; in gcm_schedule_early_src()
633 nir_instr *use_instr = use_src->parent_instr; in gcm_schedule_late_def()
669 state->instr_infos[def->parent_instr->index].early_block; in gcm_schedule_late_def()
675 def->parent_instr->block = NULL; in gcm_schedule_late_def()
679 if (def->parent_instr->pass_flags & GCM_INSTR_SCHEDULE_EARLIER_ONLY && in gcm_schedule_late_def()
680 lca != def->parent_instr->block && in gcm_schedule_late_def()
681 nir_block_dominates(def->parent_instr->block, lca)) { in gcm_schedule_late_def()
682 lca = def->parent_instr in gcm_schedule_late_def()
[all...]
H A Dnir_opt_undef.c50 nir_instr *parent = instr->src[i].src.ssa->parent_instr; in opt_undef_csel()
86 alu->src[i].src.ssa->parent_instr->type != nir_instr_type_ssa_undef) in opt_undef_vecN()
101 nir_instr *instr = def->parent_instr; in nir_get_undef_mask()
115 alu->src[i].src.ssa->parent_instr->type == in nir_get_undef_mask()
H A Dnir_opt_ray_queries.c42 if (rq_def->parent_instr->type == nir_instr_type_intrinsic) { in mark_query_read()
44 nir_instr_as_intrinsic(rq_def->parent_instr); in mark_query_read()
48 } else if (rq_def->parent_instr->type == nir_instr_type_deref) { in mark_query_read()
50 nir_instr_as_deref(rq_def->parent_instr)); in mark_query_read()
H A Dnir.c910 phi_src->src.parent_instr = &instr->instr; in nir_phi_instr_add_src()
1082 src->parent_instr = instr; in add_use_cb()
1112 dest->reg.parent_instr = instr; in add_reg_def_cb()
1324 if (!nir_instr_free_and_dce_is_live(src->ssa->parent_instr)) in nir_instr_dce_add_dead_srcs_cb()
1325 nir_instr_worklist_push_tail(wl, src->ssa->parent_instr); in nir_instr_dce_add_dead_srcs_cb()
1583 if (src.ssa->parent_instr->type != nir_instr_type_load_const) in nir_src_as_const_value()
1586 nir_load_const_instr *load = nir_instr_as_load_const(src.ssa->parent_instr); in nir_src_as_const_value()
1605 if (src.ssa->parent_instr->type == nir_instr_type_load_const) in nir_src_is_always_uniform()
1608 if (src.ssa->parent_instr->type == nir_instr_type_intrinsic) { in nir_src_is_always_uniform()
1609 nir_intrinsic_instr *intr = nir_instr_as_intrinsic(src.ssa->parent_instr); in nir_src_is_always_uniform()
1654 src_add_all_uses(nir_src *src, nir_instr *parent_instr, nir_if *parent_if) src_add_all_uses() argument
[all...]
H A Dnir_lower_scratch.c81 if (!src->parent_instr) in only_used_for_load_store()
83 if (src->parent_instr->type == nir_instr_type_deref) { in only_used_for_load_store()
84 if (!only_used_for_load_store(nir_instr_as_deref(src->parent_instr))) in only_used_for_load_store()
86 } else if (src->parent_instr->type != nir_instr_type_intrinsic) { in only_used_for_load_store()
89 nir_intrinsic_instr *intrin = nir_instr_as_intrinsic(src->parent_instr); in only_used_for_load_store()
/third_party/mesa3d/src/gallium/drivers/lima/ir/
H A Dlima_nir_split_loads.c70 if (intrin->src[0].ssa->parent_instr->type == nir_instr_type_load_const) in replace_intrinsic()
77 _mesa_hash_table_search(visited_instrs, src->parent_instr); in replace_intrinsic()
78 if (entry && (src->parent_instr->type != nir_instr_type_phi)) { in replace_intrinsic()
80 nir_instr_rewrite_src(src->parent_instr, src, nir_src_for_ssa(def)); in replace_intrinsic()
85 nir_instr_rewrite_src(src->parent_instr, src, nir_src_for_ssa(new)); in replace_intrinsic()
86 _mesa_hash_table_insert(visited_instrs, src->parent_instr, new); in replace_intrinsic()
106 _mesa_hash_table_search(visited_instrs, src->parent_instr); in replace_load_const()
107 if (entry && (src->parent_instr->type != nir_instr_type_phi)) { in replace_load_const()
109 nir_instr_rewrite_src(src->parent_instr, src, nir_src_for_ssa(def)); in replace_load_const()
116 nir_instr_rewrite_src(src->parent_instr, sr in replace_load_const()
[all...]
H A Dlima_nir_duplicate_consts.c37 if (last_parent_instr != use_src->parent_instr) { in lima_nir_duplicate_load_const()
39 b->cursor = nir_before_instr(use_src->parent_instr); in lima_nir_duplicate_load_const()
52 nir_instr_rewrite_src(use_src->parent_instr, use_src, nir_src_for_ssa(&dupl->def)); in lima_nir_duplicate_load_const()
53 last_parent_instr = use_src->parent_instr; in lima_nir_duplicate_load_const()
63 if (last_parent_instr != use_src->parent_instr) { in lima_nir_duplicate_load_const()
79 last_parent_instr = use_src->parent_instr; in lima_nir_duplicate_load_const()
H A Dlima_nir_duplicate_intrinsic.c38 if (last_parent_instr != use_src->parent_instr) { in lima_nir_duplicate_intrinsic()
40 b->cursor = nir_before_instr(use_src->parent_instr); 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()
61 last_parent_instr = use_src->parent_instr; in lima_nir_duplicate_intrinsic()
71 if (last_parent_instr != use_src->parent_instr) { in lima_nir_duplicate_intrinsic()
94 last_parent_instr = use_src->parent_instr; in lima_nir_duplicate_intrinsic()
H A Dlima_nir_lower_txp.c58 if (coord_src_ssa->parent_instr->type != nir_instr_type_intrinsic) in get_proj_index()
61 nir_intrinsic_instr *intrin = nir_instr_as_intrinsic(coord_src_ssa->parent_instr); in get_proj_index()
117 nir_ssa_def *load_input = get_proj_index(coords_ssa->parent_instr, in lima_nir_lower_txp_instr()
118 proj_ssa->parent_instr, in lima_nir_lower_txp_instr()
/third_party/mesa3d/src/freedreno/ir3/
H A Dir3_nir_lower_tex_prefetch.c34 nir_instr *parent_instr = ssa->parent_instr; in coord_offset() local
42 if (parent_instr->type == nir_instr_type_alu) { in coord_offset()
43 nir_alu_instr *alu = nir_instr_as_alu(parent_instr); in coord_offset()
69 if (parent_instr->type != nir_instr_type_intrinsic) in coord_offset()
72 nir_intrinsic_instr *input = nir_instr_as_intrinsic(parent_instr); in coord_offset()
84 nir_instr_as_intrinsic(input->src[0].ssa->parent_instr); in coord_offset()
211 nir_instr *cond = nif->condition.ssa->parent_instr; in lower_tex_prefetch_func()
/third_party/mesa3d/src/imagination/rogue/nir/
H A Drogue_nir_constreg.c61 if (use_src->parent_instr == mov->parent_instr) in rogue_nir_constreg()
67 if (use_src->parent_instr->type == nir_instr_type_intrinsic) in rogue_nir_constreg()
70 nir_instr_rewrite_src_ssa(use_src->parent_instr, use_src, mov); in rogue_nir_constreg()
/third_party/mesa3d/src/compiler/nir/tests/
H A Dserialize_tests.cpp130 nir_alu_instr *fmax_alu = nir_instr_as_alu(fmax->parent_instr); in TEST_P()
154 nir_alu_instr *vec_alu = nir_instr_as_alu(vec->parent_instr); in TEST_P()
169 nir_alu_instr *fma_alu = nir_instr_as_alu(fma->parent_instr); in TEST_P()
191 nir_alu_instr *fma_alu = nir_instr_as_alu(fma->parent_instr); in TEST_P()
220 nir_alu_instr *fma_alu = nir_instr_as_alu(fma->parent_instr); in TEST_P()
248 nir_alu_instr *fma_alu = nir_instr_as_alu(fma->parent_instr); in TEST_P()
274 nir_alu_instr *vec_alu = nir_instr_as_alu(vec->parent_instr); in TEST_P()
H A Dcore_tests.cpp100 nir_cursor c = nir_instr_free_and_dce(add01->parent_instr); in TEST_F()
106 ASSERT_TRUE(nir_cursors_equal(c, nir_before_instr(add11->parent_instr))); in TEST_F()
116 nir_cursor c = nir_instr_free_and_dce(add->parent_instr); in TEST_F()
134 nir_cursor c = nir_instr_free_and_dce(add2->parent_instr); in TEST_F()
H A Dload_store_vectorizer_tests.cpp253 nir_alu_instr *mov = nir_instr_as_alu(nir_mov(b, &load->dest.ssa)->parent_instr); in create_indirect_load()
320 nir_alu_instr *mov = nir_instr_as_alu(nir_mov(b, load)->parent_instr); in create_shared_load()
625 ASSERT_TRUE(test_alu(load->src[1].ssa->parent_instr, nir_op_ineg)); in TEST_F()
626 nir_ssa_def *offset = nir_instr_as_alu(load->src[1].ssa->parent_instr)->src[0].src.ssa; in TEST_F()
627 ASSERT_TRUE(test_alu(offset->parent_instr, nir_op_ishl)); in TEST_F()
628 nir_alu_instr *shl = nir_instr_as_alu(offset->parent_instr); in TEST_F()
742 nir_const_value *cv = nir_instr_as_load_const(val->parent_instr)->value; in TEST_F()
765 nir_const_value *cv = nir_instr_as_load_const(val->parent_instr)->value; in TEST_F()
952 ASSERT_TRUE(test_alu(val->parent_instr, nir_op_ior)); in TEST_F()
953 nir_ssa_def *low = nir_instr_as_alu(val->parent_instr) in TEST_F()
[all...]
/third_party/mesa3d/src/imagination/rogue/
H A Drogue_nir_helpers.h81 assert(alu->src[src].src.ssa->parent_instr); in nir_alu_src_is_const()
83 return (alu->src[src].src.ssa->parent_instr->type == in nir_alu_src_is_const()
133 assert(intr->src[src].ssa->parent_instr); in nir_intr_src_is_const()
135 return (intr->src[src].ssa->parent_instr->type == nir_instr_type_load_const); in nir_intr_src_is_const()
/third_party/mesa3d/src/panfrost/util/
H A Dnir_mod_helpers.c42 if (!src->src.is_ssa || src->src.ssa->parent_instr->type != nir_instr_type_alu) in pan_has_source_mod()
45 nir_alu_instr *alu = nir_instr_as_alu(src->src.ssa->parent_instr); in pan_has_source_mod()
100 nir_instr *parent = use->parent_instr; in pan_has_dest_mod()

Completed in 28 milliseconds

1234567