panfrost: Implement integer varyings
[mesa.git] / src / panfrost / midgard / lcra.c
index c6411b8c3797da9922aa4d9130ea0e841ed2dac9..28f9a735a4466e5773ea7f3c6d5d9d5828eb00b9 100644 (file)
@@ -69,6 +69,9 @@ lcra_alloc_equations(
 void
 lcra_free(struct lcra_state *l)
 {
+        if (!l)
+                return;
+
         free(l->alignment);
         free(l->linear);
         free(l->modulus);
@@ -98,7 +101,7 @@ lcra_set_disjoint_class(struct lcra_state *l, unsigned c1, unsigned c2)
 void
 lcra_restrict_range(struct lcra_state *l, unsigned node, unsigned len)
 {
-        if (l->alignment[node])
+        if (node < l->node_count && l->alignment[node])
                 l->modulus[node] = DIV_ROUND_UP(l->bound - len + 1, 1 << (l->alignment[node] - 1));
 }