diff --git a/src/gallium/drivers/lima/ir/gp/reduce_scheduler.c b/src/gallium/drivers/lima/ir/gp/reduce_scheduler.c index bcfe6fd89b0..d0d341e5054 100644 --- a/src/gallium/drivers/lima/ir/gp/reduce_scheduler.c +++ b/src/gallium/drivers/lima/ir/gp/reduce_scheduler.c @@ -54,7 +54,9 @@ static void schedule_calc_sched_info(gpir_node *node) if (node->rsched.est < est) node->rsched.est = est; - float reg_weight = 1.0f - 1.0f / list_length(&pred->succ_list); + unsigned len = list_length(&pred->succ_list); + assert(len > 0); + float reg_weight = 1.0f - 1.0f / len; if (extra_reg > reg_weight) extra_reg = reg_weight;