Home | History | Annotate | Download | only in nir

Lines Matching refs:block

37 init_block(nir_block *block, nir_function_impl *impl)
39 if (block == nir_start_block(impl))
40 block->imm_dom = block;
42 block->imm_dom = NULL;
43 block->num_dom_children = 0;
46 set_foreach(block->dom_frontier, entry) {
47 _mesa_set_remove(block->dom_frontier, entry);
72 calc_dominance(nir_block *block)
76 set_foreach(block->predecessors, entry) {
87 if (block->imm_dom != new_idom) {
88 block->imm_dom = new_idom;
96 calc_dom_frontier(nir_block *block)
98 if (block->predecessors->entries > 1) {
100 set_foreach(block->predecessors, entry) {
107 while (runner != block->imm_dom) {
108 _mesa_set_add(runner->dom_frontier, block);
133 nir_foreach_block(block, impl) {
134 if (block->imm_dom)
135 block->imm_dom->num_dom_children++;
138 nir_foreach_block(block, impl) {
139 block->dom_children = ralloc_array(mem_ctx, nir_block *,
140 block->num_dom_children);
141 block->num_dom_children = 0;
144 nir_foreach_block(block, impl) {
145 if (block->imm_dom) {
146 block->imm_dom->dom_children[block->imm_dom->num_dom_children++]
147 = block;
153 calc_dfs_indicies(nir_block *block, unsigned *index)
155 block->dom_pre_index = (*index)++;
157 for (unsigned i = 0; i < block->num_dom_children; i++)
158 calc_dfs_indicies(block->dom_children[i], index);
160 block->dom_post_index = (*index)++;
172 nir_foreach_block(block, impl) {
173 init_block(block, impl);
179 nir_foreach_block(block, impl) {
180 if (block != nir_start_block(impl))
181 progress |= calc_dominance(block);
185 nir_foreach_block(block, impl) {
186 calc_dom_frontier(block);
209 * is null, the other block is returned.
250 nir_foreach_block(block, impl) {
251 if (block->imm_dom)
252 fprintf(fp, "\t%u -> %u\n", block->imm_dom->index, block->index);
270 nir_foreach_block(block, impl) {
271 fprintf(fp, "DF(%u) = {", block->index);
273 set_foreach(block->dom_frontier, entry) {
295 nir_foreach_block(block, impl) {
296 if (block->successors[0])
297 fprintf(fp, "\t%u -> %u\n", block->index, block->successors[0]->index);
298 if (block->successors[1])
299 fprintf(fp, "\t%u -> %u\n", block->index, block->successors[1]->index);