summaryrefslogtreecommitdiffstats
path: root/src/compiler/nir/nir_control_flow.h
diff options
context:
space:
mode:
Diffstat (limited to 'src/compiler/nir/nir_control_flow.h')
-rw-r--r--src/compiler/nir/nir_control_flow.h10
1 files changed, 10 insertions, 0 deletions
diff --git a/src/compiler/nir/nir_control_flow.h b/src/compiler/nir/nir_control_flow.h
index 2ea460e5df3..9111b30a297 100644
--- a/src/compiler/nir/nir_control_flow.h
+++ b/src/compiler/nir/nir_control_flow.h
@@ -146,6 +146,16 @@ void nir_cf_list_clone(nir_cf_list *dst, nir_cf_list *src, nir_cf_node *parent,
struct hash_table *remap_table);
static inline void
+nir_cf_list_clone_and_reinsert(nir_cf_list *src_list, nir_cf_node *parent,
+ nir_cursor cursor,
+ struct hash_table *remap_table)
+{
+ nir_cf_list list;
+ nir_cf_list_clone(&list, src_list, parent, remap_table);
+ nir_cf_reinsert(&list, cursor);
+}
+
+static inline void
nir_cf_list_extract(nir_cf_list *extracted, struct exec_list *cf_list)
{
nir_cf_extract(extracted, nir_before_cf_list(cf_list),