Home
last modified time | relevance | path

Searched refs:if_stmt (Results 1 – 25 of 59) sorted by relevance

123

/external/mesa3d/src/compiler/nir/
Dnir_lower_returns.c56 nir_if *if_stmt = nir_if_create(b->shader); in predicate_following() local
57 if_stmt->condition = nir_src_for_ssa(nir_load_var(b, state->return_flag)); in predicate_following()
58 nir_cf_node_insert(b->cursor, &if_stmt->cf_node); in predicate_following()
66 nir_instr_insert(nir_before_cf_list(&if_stmt->then_list), &brk->instr); in predicate_following()
72 nir_cf_extract(&list, nir_after_cf_node(&if_stmt->cf_node), in predicate_following()
75 nir_cf_reinsert(&list, nir_before_cf_list(&if_stmt->else_list)); in predicate_following()
101 lower_returns_in_if(nir_if *if_stmt, struct lower_returns_state *state) in lower_returns_in_if() argument
108 then_progress = lower_returns_in_cf_list(&if_stmt->then_list, state); in lower_returns_in_if()
109 else_progress = lower_returns_in_cf_list(&if_stmt->else_list, state); in lower_returns_in_if()
124 predicate_following(&if_stmt->cf_node, state); in lower_returns_in_if()
[all …]
Dnir_opt_conditional_discard.c42 nir_if *if_stmt = nir_cf_node_as_if(prev_node); in nir_opt_conditional_discard_block() local
43 nir_block *then_block = nir_if_first_then_block(if_stmt); in nir_opt_conditional_discard_block()
44 nir_block *else_block = nir_if_first_else_block(if_stmt); in nir_opt_conditional_discard_block()
47 if (nir_if_last_else_block(if_stmt) != else_block) in nir_opt_conditional_discard_block()
53 if (nir_if_last_then_block(if_stmt) != then_block) in nir_opt_conditional_discard_block()
62 nir_block *after = nir_cf_node_as_block(nir_cf_node_next(&if_stmt->cf_node)); in nir_opt_conditional_discard_block()
91 cond = if_stmt->condition; in nir_opt_conditional_discard_block()
94 nir_ssa_for_src(b, if_stmt->condition, 1), in nir_opt_conditional_discard_block()
103 nir_cf_node_remove(&if_stmt->cf_node); in nir_opt_conditional_discard_block()
Dnir_opt_dead_cf.c84 opt_constant_if(nir_if *if_stmt, bool condition) in opt_constant_if() argument
89 nir_block *after = nir_cf_node_as_block(nir_cf_node_next(&if_stmt->cf_node)); in opt_constant_if()
90 nir_block *last_block = condition ? nir_if_last_then_block(if_stmt) in opt_constant_if()
91 : nir_if_last_else_block(if_stmt); in opt_constant_if()
122 remove_after_cf_node(&if_stmt->cf_node); in opt_constant_if()
126 struct exec_list *cf_list = condition ? &if_stmt->then_list in opt_constant_if()
127 : &if_stmt->else_list; in opt_constant_if()
131 nir_cf_reinsert(&list, nir_after_cf_node(&if_stmt->cf_node)); in opt_constant_if()
132 nir_cf_node_remove(&if_stmt->cf_node); in opt_constant_if()
298 nir_if *if_stmt = nir_cf_node_as_if(cur); in dead_cf_list() local
[all …]
Dnir_control_flow.c115 nir_if *if_stmt = nir_cf_node_as_if(node); in link_non_block_to_block() local
117 nir_block *last_then_block = nir_if_last_then_block(if_stmt); in link_non_block_to_block()
118 nir_block *last_else_block = nir_if_last_else_block(if_stmt); in link_non_block_to_block()
143 nir_if *if_stmt = nir_cf_node_as_if(node); in link_block_to_non_block() local
145 nir_block *first_then_block = nir_if_first_then_block(if_stmt); in link_block_to_non_block()
146 nir_block *first_else_block = nir_if_first_else_block(if_stmt); in link_block_to_non_block()
529 nir_if *if_stmt = nir_cf_node_as_if(node); in update_if_uses() local
531 if_stmt->condition.parent_if = if_stmt; in update_if_uses()
532 if (if_stmt->condition.is_ssa) { in update_if_uses()
533 list_addtail(&if_stmt->condition.use_link, in update_if_uses()
[all …]
Dnir_opt_peephole_select.c160 nir_if *if_stmt = nir_cf_node_as_if(prev_node); in nir_opt_peephole_select_block() local
161 nir_block *then_block = nir_if_first_then_block(if_stmt); in nir_opt_peephole_select_block()
162 nir_block *else_block = nir_if_first_else_block(if_stmt); in nir_opt_peephole_select_block()
165 if (nir_if_last_then_block(if_stmt) != then_block || in nir_opt_peephole_select_block()
166 nir_if_last_else_block(if_stmt) != else_block) in nir_opt_peephole_select_block()
208 nir_src_copy(&sel->src[0].src, &if_stmt->condition, sel); in nir_opt_peephole_select_block()
233 nir_cf_node_remove(&if_stmt->cf_node); in nir_opt_peephole_select_block()
Dnir_lower_indirect_derefs.c58 nir_if *if_stmt = nir_if_create(b->shader); in emit_indirect_load_store() local
59 if_stmt->condition = nir_src_for_ssa(nir_ilt(b, arr->indirect.ssa, in emit_indirect_load_store()
61 nir_cf_node_insert(b->cursor, &if_stmt->cf_node); in emit_indirect_load_store()
63 b->cursor = nir_after_cf_list(&if_stmt->then_list); in emit_indirect_load_store()
67 b->cursor = nir_after_cf_list(&if_stmt->else_list); in emit_indirect_load_store()
71 b->cursor = nir_after_cf_node(&if_stmt->cf_node); in emit_indirect_load_store()
81 src0->pred = nir_if_last_then_block(if_stmt); in emit_indirect_load_store()
86 src1->pred = nir_if_last_else_block(if_stmt); in emit_indirect_load_store()
Dnir_validate.c79 nir_if *if_stmt; member
145 validate_assert(state, state->if_stmt); in validate_reg_src()
187 validate_assert(state, state->if_stmt); in validate_ssa_src()
200 validate_assert(state, src->parent_if == state->if_stmt); in validate_src()
751 nir_if *if_stmt = nir_cf_node_as_if(next); in validate_block() local
753 nir_if_first_then_block(if_stmt)); in validate_block()
755 nir_if_first_else_block(if_stmt)); in validate_block()
768 validate_if(nir_if *if_stmt, validate_state *state) in validate_if() argument
770 state->if_stmt = if_stmt; in validate_if()
772 validate_assert(state, !exec_node_is_head_sentinel(if_stmt->cf_node.node.prev)); in validate_if()
[all …]
Dnir_opt_copy_propagate.c238 copy_prop_if(nir_if *if_stmt) in copy_prop_if() argument
240 return copy_prop_src(&if_stmt->condition, NULL, if_stmt); in copy_prop_if()
254 nir_if *if_stmt = nir_block_get_following_if(block); in nir_copy_prop_impl() local
255 if (if_stmt && copy_prop_if(if_stmt)) in nir_copy_prop_impl()
Dnir.c375 nir_if *if_stmt = ralloc(shader, nir_if); in nir_if_create() local
377 cf_init(&if_stmt->cf_node, nir_cf_node_if); in nir_if_create()
378 src_init(&if_stmt->condition); in nir_if_create()
381 exec_list_make_empty(&if_stmt->then_list); in nir_if_create()
382 exec_list_push_tail(&if_stmt->then_list, &then->cf_node.node); in nir_if_create()
383 then->cf_node.parent = &if_stmt->cf_node; in nir_if_create()
386 exec_list_make_empty(&if_stmt->else_list); in nir_if_create()
387 exec_list_push_tail(&if_stmt->else_list, &else_stmt->cf_node.node); in nir_if_create()
388 else_stmt->cf_node.parent = &if_stmt->cf_node; in nir_if_create()
390 return if_stmt; in nir_if_create()
[all …]
Dnir_loop_analyze.h50 nir_if *if_stmt = nir_cf_node_as_if(node); in contains_other_jump() local
52 foreach_list_typed_safe(nir_cf_node, node, node, &if_stmt->then_list) { in contains_other_jump()
57 foreach_list_typed_safe(nir_cf_node, node, node, &if_stmt->else_list) { in contains_other_jump()
Dnir_lower_gs_intrinsics.c87 nir_if *if_stmt = nir_if_create(b->shader); in rewrite_emit_vertex() local
88 if_stmt->condition = nir_src_for_ssa(nir_ilt(b, count, max_vertices)); in rewrite_emit_vertex()
89 nir_builder_cf_insert(b, &if_stmt->cf_node); in rewrite_emit_vertex()
92 b->cursor = nir_after_cf_list(&if_stmt->then_list); in rewrite_emit_vertex()
Dnir_opt_gcm.c86 nir_if *if_stmt = nir_cf_node_as_if(node); in gcm_build_block_info() local
87 gcm_build_block_info(&if_stmt->then_list, state, loop_depth); in gcm_build_block_info()
88 gcm_build_block_info(&if_stmt->else_list, state, loop_depth); in gcm_build_block_info()
306 nir_if *if_stmt = use_src->parent_if; in gcm_schedule_late_def() local
312 nir_cf_node_as_block(nir_cf_node_prev(&if_stmt->cf_node)); in gcm_schedule_late_def()
Dnir_opt_loop_unroll.c224 nir_if *if_stmt = nir_cf_node_as_if(node); in get_complex_unroll_insert_location() local
226 return nir_after_block(nir_if_last_then_block(if_stmt)); in get_complex_unroll_insert_location()
228 return nir_after_block(nir_if_last_else_block(if_stmt)); in get_complex_unroll_insert_location()
478 nir_if *if_stmt = nir_cf_node_as_if(cf_node); in process_loops() local
479 foreach_list_typed_safe(nir_cf_node, nested_node, node, &if_stmt->then_list) in process_loops()
481 foreach_list_typed_safe(nir_cf_node, nested_node, node, &if_stmt->else_list) in process_loops()
Dnir_to_lcssa.c167 nir_if *if_stmt = nir_cf_node_as_if(cf_node); in convert_to_lcssa() local
168 foreach_list_typed(nir_cf_node, nested_node, node, &if_stmt->then_list) in convert_to_lcssa()
170 foreach_list_typed(nir_cf_node, nested_node, node, &if_stmt->else_list) in convert_to_lcssa()
Dnir_opt_global_to_local.c62 nir_if *if_stmt = use_src->parent_if; in global_to_local() local
63 nir_function_impl *if_impl = nir_cf_node_get_function(&if_stmt->cf_node); in global_to_local()
Dnir_propagate_invariant.c57 nir_if *if_stmt = nir_cf_node_as_if(cf); in add_cf_node() local
58 add_src(&if_stmt->condition, invariants); in add_cf_node()
Dnir.h1679 nir_if_first_then_block(nir_if *if_stmt) in NIR_DEFINE_CAST()
1681 struct exec_node *head = exec_list_get_head(&if_stmt->then_list); in NIR_DEFINE_CAST()
1686 nir_if_last_then_block(nir_if *if_stmt) in nir_if_last_then_block() argument
1688 struct exec_node *tail = exec_list_get_tail(&if_stmt->then_list); in nir_if_last_then_block()
1693 nir_if_first_else_block(nir_if *if_stmt) in nir_if_first_else_block() argument
1695 struct exec_node *head = exec_list_get_head(&if_stmt->else_list); in nir_if_first_else_block()
1700 nir_if_last_else_block(nir_if *if_stmt) in nir_if_last_else_block() argument
1702 struct exec_node *tail = exec_list_get_tail(&if_stmt->else_list); in nir_if_last_else_block()
2180 void nir_if_rewrite_condition(nir_if *if_stmt, nir_src new_src);
/external/mesa3d/src/gallium/drivers/freedreno/ir3/
Dir3_nir_lower_if_else.c226 nir_if *if_stmt = nir_cf_node_as_if(prev_node); in lower_if_else_block() local
227 nir_block *then_block = nir_if_first_then_block(if_stmt); in lower_if_else_block()
228 nir_block *else_block = nir_if_first_else_block(if_stmt); in lower_if_else_block()
231 if (nir_if_last_then_block(if_stmt) != then_block || in lower_if_else_block()
232 nir_if_last_else_block(if_stmt) != else_block) in lower_if_else_block()
241 if (!if_stmt->condition.is_ssa) in lower_if_else_block()
258 if_stmt->condition.ssa, false); in lower_if_else_block()
260 if_stmt->condition.ssa, true); in lower_if_else_block()
268 nir_src_copy(&sel->src[0].src, &if_stmt->condition, mem_ctx); in lower_if_else_block()
292 nir_cf_node_remove(&if_stmt->cf_node); in lower_if_else_block()
/external/mesa3d/src/compiler/spirv/
Dvtn_cfg.c336 struct vtn_if *if_stmt = ralloc(b, struct vtn_if); in vtn_cfg_walk_blocks() local
338 if_stmt->node.type = vtn_cf_node_type_if; in vtn_cfg_walk_blocks()
339 if_stmt->condition = block->branch[1]; in vtn_cfg_walk_blocks()
340 list_inithead(&if_stmt->then_body); in vtn_cfg_walk_blocks()
341 list_inithead(&if_stmt->else_body); in vtn_cfg_walk_blocks()
343 list_addtail(&if_stmt->node.link, cf_list); in vtn_cfg_walk_blocks()
347 if_stmt->control = block->merge[2]; in vtn_cfg_walk_blocks()
350 if_stmt->then_type = vtn_get_branch_type(then_block, in vtn_cfg_walk_blocks()
353 if_stmt->else_type = vtn_get_branch_type(else_block, in vtn_cfg_walk_blocks()
357 if (if_stmt->then_type == vtn_branch_type_none && in vtn_cfg_walk_blocks()
[all …]
/external/mesa3d/src/intel/vulkan/
Danv_nir_apply_dynamic_offsets.c96 nir_if *if_stmt = nir_if_create(b->shader); in apply_dynamic_offsets_block() local
97 if_stmt->condition = nir_src_for_ssa(pred); in apply_dynamic_offsets_block()
98 nir_cf_node_insert(b->cursor, &if_stmt->cf_node); in apply_dynamic_offsets_block()
101 nir_instr_insert_after_cf_list(&if_stmt->then_list, &intrin->instr); in apply_dynamic_offsets_block()
111 struct exec_node *tnode = exec_list_get_tail(&if_stmt->then_list); in apply_dynamic_offsets_block()
116 b->cursor = nir_after_cf_list(&if_stmt->else_list); in apply_dynamic_offsets_block()
122 struct exec_node *enode = exec_list_get_tail(&if_stmt->else_list); in apply_dynamic_offsets_block()
131 nir_instr_insert_after_cf(&if_stmt->cf_node, &phi->instr); in apply_dynamic_offsets_block()
/external/mesa3d/src/mesa/drivers/dri/i965/
Dbrw_nir_tcs_workarounds.c103 nir_if *if_stmt = nir_if_create(b->shader); in emit_quads_workaround() local
104 if_stmt->condition = nir_src_for_ssa(any_greater_than_1); in emit_quads_workaround()
105 nir_builder_cf_insert(b, &if_stmt->cf_node); in emit_quads_workaround()
108 b->cursor = nir_after_cf_list(&if_stmt->then_list); in emit_quads_workaround()
/external/mesa3d/src/compiler/glsl/
Dloop_analysis.cpp136 loop_variable_state::insert(ir_if *if_stmt) in insert() argument
141 t->ir = if_stmt; in insert()
296 ir_if *if_stmt = ((ir_instruction *) node)->as_if(); in visit_leave() local
298 if ((if_stmt != NULL) && is_loop_terminator(if_stmt)) in visit_leave()
299 ls->insert(if_stmt); in visit_leave()
399 ir_if *if_stmt = t->ir; in visit_leave() local
404 ir_expression *cond = if_stmt->condition->as_expression(); in visit_leave()
Dglsl_to_nir.cpp523 nir_if *if_stmt = nir_if_create(this->shader); in visit() local
524 if_stmt->condition = condition; in visit()
525 nir_builder_cf_insert(&b, &if_stmt->cf_node); in visit()
527 b.cursor = nir_after_cf_list(&if_stmt->then_list); in visit()
530 b.cursor = nir_after_cf_list(&if_stmt->else_list); in visit()
533 b.cursor = nir_after_cf_node(&if_stmt->cf_node); in visit()
1182 nir_if *if_stmt = nir_if_create(this->shader); in visit() local
1183 if_stmt->condition = nir_src_for_ssa(evaluate_rvalue(ir->condition)); in visit()
1184 nir_builder_cf_insert(&b, &if_stmt->cf_node); in visit()
1185 nir_instr_insert_after_cf_list(&if_stmt->then_list, &copy->instr); in visit()
[all …]
Dlower_variable_index_to_cond_assign.cpp526 ir_if *if_stmt = new(mem_ctx) ir_if(orig_assign->condition); in convert_dereference_array() local
528 sg.generate(0, length, &if_stmt->then_instructions); in convert_dereference_array()
529 base_ir->insert_before(if_stmt); in convert_dereference_array()
/external/mesa3d/src/amd/vulkan/
Dradv_meta_resolve_cs.c125 nir_if *if_stmt = nir_if_create(b.shader); in build_resolve_compute_shader() local
126 if_stmt->condition = nir_src_for_ssa(all_same); in build_resolve_compute_shader()
127 nir_cf_node_insert(b.cursor, &if_stmt->cf_node); in build_resolve_compute_shader()
129 b.cursor = nir_after_cf_list(&if_stmt->then_list); in build_resolve_compute_shader()
152 b.cursor = nir_after_cf_list(&if_stmt->else_list); in build_resolve_compute_shader()
153 outer_if = if_stmt; in build_resolve_compute_shader()

123