]> granicus.if.org Git - graphviz/commitdiff
lib/mingle: scope use of an array to a local temp
authorMatthew Fernandez <matthew.fernandez@gmail.com>
Thu, 6 Jan 2022 06:00:51 +0000 (22:00 -0800)
committerMatthew Fernandez <matthew.fernandez@gmail.com>
Sat, 8 Jan 2022 16:15:32 +0000 (08:15 -0800)
It is not clear to me why this loop was using the `sources` array. AFAICT the
values written to this array are (1) not used by subsequent loop iterations (no
loop-carried dependency) and (2) not used after the loop before being
overwritten by other values.

This change cuts the dependency. A future commit will refactor the allocation in
this area to avoid allocating a possibly-unused array upfront.

lib/mingle/ink.cpp

index 8079f0980c9c3ac897ebebf4cfb9c14cf946df1c..4ddcc35647cb12ea51be0234a2c428ecf4f478b9 100644 (file)
@@ -251,12 +251,11 @@ double ink(pedge* edges, int numEdges, int *pick, double *ink0, point_t *meet1,
       e = edges[i];
     }
     x = e->x;
-    sources[i].x = x[0];
-    sources[i].y = x[1];
+    point_t source = {x[0], x[1]};
     targets[i].x = x[e->dim*e->npoints - e->dim];
     targets[i].y = x[e->dim*e->npoints - e->dim + 1];
-    (*ink0) += hypot(sources[i].x - targets[i].x, sources[i].y - targets[i].y);
-    begin = addPoint (begin, scalePoint(sources[i], e->wgt));
+    (*ink0) += hypot(source.x - targets[i].x, source.y - targets[i].y);
+    begin = addPoint (begin, scalePoint(source, e->wgt));
     end = addPoint (end, scalePoint(targets[i], e->wgt));
     wgt += e->wgt;
   }