Lines Matching defs:impl
253 nir_local_reg_create(nir_function_impl *impl)
255 nir_register *reg = reg_create(ralloc_parent(impl), &impl->registers);
256 reg->index = impl->reg_alloc++;
326 nir_local_variable_create(nir_function_impl *impl,
329 nir_variable *var = rzalloc(impl->function->shader, nir_variable);
334 nir_function_impl_add_variable(impl, var);
424 func->impl = NULL;
539 nir_function_impl *impl = ralloc(shader, nir_function_impl);
541 impl->function = NULL;
542 impl->preamble = NULL;
544 cf_init(&impl->cf_node, nir_cf_node_function);
546 exec_list_make_empty(&impl->body);
547 exec_list_make_empty(&impl->registers);
548 exec_list_make_empty(&impl->locals);
549 impl->reg_alloc = 0;
550 impl->ssa_alloc = 0;
551 impl->num_blocks = 0;
552 impl->valid_metadata = nir_metadata_none;
553 impl->structured = true;
558 start_block->cf_node.parent = &impl->cf_node;
559 end_block->cf_node.parent = &impl->cf_node;
560 impl->end_block = end_block;
562 exec_list_push_tail(&impl->body, &start_block->cf_node.node);
566 return impl;
572 assert(function->impl == NULL);
574 nir_function_impl *impl = nir_function_impl_create_bare(function->shader);
576 function->impl = impl;
577 impl->function = function;
579 return impl;
1095 nir_function_impl *impl =
1098 def->index = impl->ssa_alloc++;
1100 impl->valid_metadata &= ~nir_metadata_live_ssa_defs;
1174 nir_function_impl *impl = nir_cf_node_get_function(&instr->block->cf_node);
1175 impl->valid_metadata &= ~nir_metadata_instr_index;
1381 nir_index_local_regs(nir_function_impl *impl)
1384 foreach_list_typed(nir_register, reg, node, &impl->registers) {
1387 impl->reg_alloc = index;
1749 nir_function_impl *impl =
1752 def->index = impl->ssa_alloc++;
1754 impl->valid_metadata &= ~nir_metadata_live_ssa_defs;
1923 nir_unstructured_start_block(nir_function_impl *impl)
1925 return nir_start_block(impl);
2011 nir_function_impl *impl = nir_cf_node_as_function(node);
2012 return nir_start_block(impl);
2038 nir_function_impl *impl = nir_cf_node_as_function(node);
2039 return nir_impl_last_block(impl);
2132 nir_index_blocks(nir_function_impl *impl)
2136 if (impl->valid_metadata & nir_metadata_block_index)
2139 nir_foreach_block_unstructured(block, impl) {
2146 impl->num_blocks = impl->end_block->index = index;
2163 nir_index_ssa_defs(nir_function_impl *impl)
2167 impl->valid_metadata &= ~nir_metadata_live_ssa_defs;
2169 nir_foreach_block_unstructured(block, impl) {
2174 impl->ssa_alloc = index;
2182 nir_index_instrs(nir_function_impl *impl)
2186 nir_foreach_block(block, impl) {
2208 nir_function_impl_index_vars(nir_function_impl *impl)
2211 nir_foreach_function_temp_variable(var, impl)
2260 nir_function_impl_lower_instructions(nir_function_impl *impl,
2266 nir_builder_init(&b, impl);
2272 nir_cursor iter = nir_before_cf_list(&impl->body);
2343 nir_metadata_preserve(impl, preserved);
2345 nir_metadata_preserve(impl, nir_metadata_all);
2360 if (function->impl &&
2361 nir_function_impl_lower_instructions(function->impl,