diff --git a/lib/nir/node.ml b/lib/nir/node.ml
index 94bb663f3cdb4dca095ad62dce6b50c357ba1345..d8bb48d7d6862f9bfc6b7030672a7140f665914f 100644
--- a/lib/nir/node.ml
+++ b/lib/nir/node.ml
@@ -183,7 +183,7 @@ and compute_shape_descr = function
       d1 := !d1 * Shape.get shape i
     done;
     for i = axis to Shape.rank shape - 1 do
-      d2 := !d1 * Shape.get shape i
+      d2 := !d2 * Shape.get shape i
     done;
     Shape.of_list [ !d1; !d2 ]
   | Input { shape } -> shape