nir: add new partially_unrolled bool to nir_loop
In order to stop continuously partially unrolling the same loop we add the bool partially_unrolled to nir_loop, we add it here rather than in nir_loop_info because nir_loop_info is only set via loop analysis and is intended to be cleared before each analysis. Also nir_loop_info is never cloned. Reviewed-by: Ian Romanick <ian.d.romanick@intel.com>
This commit is contained in:
@@ -1949,6 +1949,7 @@ typedef struct {
|
||||
struct exec_list body; /** < list of nir_cf_node */
|
||||
|
||||
nir_loop_info *info;
|
||||
bool partially_unrolled;
|
||||
} nir_loop;
|
||||
|
||||
/**
|
||||
|
@@ -551,6 +551,7 @@ static nir_loop *
|
||||
clone_loop(clone_state *state, struct exec_list *cf_list, const nir_loop *loop)
|
||||
{
|
||||
nir_loop *nloop = nir_loop_create(state->ns);
|
||||
nloop->partially_unrolled = loop->partially_unrolled;
|
||||
|
||||
nir_cf_node_insert_end(cf_list, &nloop->cf_node);
|
||||
|
||||
|
Reference in New Issue
Block a user