nir: add lowering for Loop Continue Constructs

This pass lowers Loop Continue Constructs to the previous solution
by inserting it at the beginning of the loop:

loop {
   if (i != 0) {
      continue construct
   }
   loop body
}

Reviewed-by: Faith Ekstrand <faith.ekstrand@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/13962>
This commit is contained in:
Daniel Schürmann
2021-12-01 17:46:16 +01:00
committed by Marge Bot
parent 312510448f
commit c20751d61d
3 changed files with 143 additions and 0 deletions

View File

@@ -145,6 +145,7 @@ files_libnir = files(
'nir_lower_clip_disable.c',
'nir_lower_clip_halfz.c',
'nir_lower_const_arrays_to_uniforms.c',
'nir_lower_continue_constructs.c',
'nir_lower_convert_alu_types.c',
'nir_lower_variable_initializers.c',
'nir_lower_discard_if.c',