Home | History | Annotate | Download | only in gprof

Lines Matching refs:arc

51 Arc **arcs;
55 * Return TRUE iff PARENT has an arc to covers the address
58 Arc *
61 Arc *arc;
70 for (arc = parent->cg.children; arc; arc = arc->next_child)
73 arc->parent->name, arc->child->name));
74 if (child->addr >= arc->child->addr
75 && child->end_addr <= arc->child->end_addr)
77 return arc;
85 * Add (or just increment) an arc:
91 Arc *arc, **newarcs;
95 arc = arc_lookup (parent, child);
96 if (arc)
102 arc->count, count));
103 arc->count += count;
106 arc = (Arc *) xmalloc (sizeof (*arc));
107 memset (arc, 0, sizeof (*arc));
108 arc->parent = parent;
109 arc->child = child;
110 arc->count = count;
112 /* If this isn't an arc for a recursive call to parent, then add it
127 newarcs = (Arc **)xmalloc(sizeof (Arc *) * maxarcs);
130 memcpy (newarcs, arcs, numarcs * sizeof (Arc *));
139 /* Place this arc in the arc array. */
140 arcs[numarcs++] = arc;
144 arc->next_child = parent->cg.children;
145 parent->cg.children = arc;
148 arc->next_parent = child->cg.parents;
149 child->cg.parents = arc;
166 Arc *arc;
177 for (arc = parent->cg.children; arc; arc = arc->next_child)
179 child = arc->child;
180 if (arc->count == 0 || child == parent || child->cg.prop.fract == 0)
209 /* distribute time for this arc: */
210 arc->time = child->hist.time * (((double) arc->count)
212 arc->child_time = child->cg.child_time
213 * (((double) arc->count) / ((double) child->ncalls));
214 share = arc->time + arc->child_time;
222 arc->time *= parent->cg.prop.fract;
223 arc->child_time *= parent->cg.prop.fract;
235 child->cg.child_time, arc->count, child->ncalls);
275 Arc *arc;
333 for (arc = member->cg.parents; arc; arc = arc->next_parent)
335 if (arc->parent == member)
339 if (arc->parent->cg.cyc.num == num)
341 cyc->cg.self_calls += arc->count;
345 cyc->ncalls += arc->count;
363 Arc *arc;
371 for (arc = child->cg.parents; arc; arc = arc->next_parent)
373 parent = arc->parent;
380 * If the child was never actually called (e.g., this arc
382 * along this arc.
387 * (((double) arc->count) / ((double) child->ncalls));
401 for (arc = member->cg.parents; arc; arc = arc->next_parent)
403 if (arc->parent->cg.cyc.head == head)
407 parent = arc->parent;
411 * arc is static (and all others are, too)) no time
412 * propagates along this arc.
417 * (((double) arc->count) / ((double) head->ncalls));
598 Arc *arc;
607 arc = arc_lookup (parent, parent);
608 if (arc && parent == arc->child)
610 parent->ncalls -= arc->count;
611 parent->cg.self_calls = arc->count;