/external/mesa3d/src/compiler/nir/ |
D | nir_lower_returns.c | 56 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 …]
|
D | nir_opt_conditional_discard.c | 42 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()
|
D | nir_opt_dead_cf.c | 84 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 …]
|
D | nir_control_flow.c | 115 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 …]
|
D | nir_opt_peephole_select.c | 160 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()
|
D | nir_lower_indirect_derefs.c | 58 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()
|
D | nir_validate.c | 79 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 …]
|
D | nir_opt_copy_propagate.c | 238 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()
|
D | nir.c | 375 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 …]
|
D | nir_loop_analyze.h | 50 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()
|
D | nir_lower_gs_intrinsics.c | 87 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()
|
D | nir_opt_gcm.c | 86 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()
|
D | nir_opt_loop_unroll.c | 224 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()
|
D | nir_to_lcssa.c | 167 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()
|
D | nir_opt_global_to_local.c | 62 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()
|
D | nir_propagate_invariant.c | 57 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()
|
D | nir.h | 1679 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/ |
D | ir3_nir_lower_if_else.c | 226 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/ |
D | vtn_cfg.c | 336 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/ |
D | anv_nir_apply_dynamic_offsets.c | 96 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/ |
D | brw_nir_tcs_workarounds.c | 103 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/ |
D | loop_analysis.cpp | 136 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()
|
D | glsl_to_nir.cpp | 523 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, ©->instr); in visit() [all …]
|
D | lower_variable_index_to_cond_assign.cpp | 526 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/ |
D | radv_meta_resolve_cs.c | 125 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()
|