nir: Add a cursor helper for getting a cursor after any phi nodes
Reviewed-by: Jordan Justen <jordan.l.justen@intel.com>
This commit is contained in:
@@ -1934,6 +1934,22 @@ nir_after_cf_node(nir_cf_node *node)
|
|||||||
return nir_before_block(nir_cf_node_as_block(nir_cf_node_next(node)));
|
return nir_before_block(nir_cf_node_as_block(nir_cf_node_next(node)));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
static inline nir_cursor
|
||||||
|
nir_after_cf_node_and_phis(nir_cf_node *node)
|
||||||
|
{
|
||||||
|
if (node->type == nir_cf_node_block)
|
||||||
|
return nir_after_block(nir_cf_node_as_block(node));
|
||||||
|
|
||||||
|
nir_block *block = nir_cf_node_as_block(nir_cf_node_next(node));
|
||||||
|
assert(block->cf_node.type == nir_cf_node_block);
|
||||||
|
|
||||||
|
nir_foreach_instr(block, instr) {
|
||||||
|
if (instr->type != nir_instr_type_phi)
|
||||||
|
return nir_before_instr(instr);
|
||||||
|
}
|
||||||
|
return nir_after_block(block);
|
||||||
|
}
|
||||||
|
|
||||||
static inline nir_cursor
|
static inline nir_cursor
|
||||||
nir_before_cf_list(struct exec_list *cf_list)
|
nir_before_cf_list(struct exec_list *cf_list)
|
||||||
{
|
{
|
||||||
|
Reference in New Issue
Block a user