summaryrefslogtreecommitdiffstats
path: root/src/compiler/nir/nir_loop_analyze.h
diff options
context:
space:
mode:
Diffstat (limited to 'src/compiler/nir/nir_loop_analyze.h')
-rw-r--r--src/compiler/nir/nir_loop_analyze.h11
1 files changed, 11 insertions, 0 deletions
diff --git a/src/compiler/nir/nir_loop_analyze.h b/src/compiler/nir/nir_loop_analyze.h
index 18c23051717..7b4ed66ee58 100644
--- a/src/compiler/nir/nir_loop_analyze.h
+++ b/src/compiler/nir/nir_loop_analyze.h
@@ -92,4 +92,15 @@ nir_is_trivial_loop_if(nir_if *nif, nir_block *break_block)
return true;
}
+static inline bool
+nir_block_ends_in_break(nir_block *block)
+{
+ if (exec_list_is_empty(&block->instr_list))
+ return false;
+
+ nir_instr *instr = nir_block_last_instr(block);
+ return instr->type == nir_instr_type_jump &&
+ nir_instr_as_jump(instr)->type == nir_jump_break;
+}
+
#endif /* NIR_LOOP_ANALYZE_H */