fprintf (stderr, "%s: %s: unexpected end of file\n",
whoami, filename);
done (1);
- } /* if */
+ }
n_lowpc = (bfd_vma) get_vma (core_bfd, (bfd_byte *) hdr.low_pc);
n_highpc = (bfd_vma) get_vma (core_bfd, (bfd_byte *) hdr.high_pc);
highpc = (bfd_vma) n_highpc / sizeof (UNIT);
hist_num_bins = ncnt;
hz = profrate;
- } /* if */
+ }
DBG (SAMPLEDEBUG,
printf ("[hist_read_rec] n_lowpc 0x%lx n_highpc 0x%lx ncnt %d\n",
fprintf (stderr, "%s: `%s' is incompatible with first gmon file\n",
whoami, filename);
done (1);
- } /* if */
+ }
if (!hist_sample)
{
hist_sample = (int *) xmalloc (hist_num_bins * sizeof (hist_sample[0]));
memset (hist_sample, 0, hist_num_bins * sizeof (hist_sample[0]));
- } /* if */
+ }
for (i = 0; i < hist_num_bins; ++i)
{
"%s: %s: unexpected EOF after reading %d of %d samples\n",
whoami, filename, i, hist_num_bins);
done (1);
- } /* if */
+ }
hist_sample[i] += bfd_get_16 (core_bfd, (bfd_byte *) & count[0]);
- } /* for */
-} /* hist_read_rec */
+ }
+}
/*
{
perror (filename);
done (1);
- } /* if */
+ }
for (i = 0; i < hist_num_bins; ++i)
{
{
perror (filename);
done (1);
- } /* if */
- } /* for */
-} /* hist_write_hist */
+ }
+ }
+}
/*
printf ("[scale_and_align_entries] pushing 0x%lx to 0x%lx\n",
sym->hist.scaled_addr, sym->aligned_addr + UNITS_TO_CODE));
sym->aligned_addr += UNITS_TO_CODE;
- } /* if */
+ }
#endif /* OFFSET_TO_CODE > 0 */
- } /* for */
-} /* scale_and_align_entries */
+ }
+}
/*
if (!bin_count)
{
continue;
- } /* if */
+ }
bin_low_pc = lowpc + (bfd_vma) (hist_scale * i);
bin_high_pc = lowpc + (bfd_vma) (hist_scale * (i + 1));
time = bin_count;
if (bin_high_pc < sym_low_pc)
{
break;
- } /* if */
+ }
/*
* If low end of bin is above high end of symbol, go for
* next symbol.
if (bin_low_pc >= sym_high_pc)
{
continue;
- } /* if */
+ }
overlap =
MIN (bin_high_pc, sym_high_pc) - MAX (bin_low_pc, sym_low_pc);
if (overlap > 0)
else
{
total_time -= credit;
- } /* if */
- } /* if */
- } /* if */
- } /* for */
+ }
+ }
+ }
+ }
DBG (SAMPLEDEBUG, printf ("[assign_samples] total_time %f\n",
total_time));
-} /* hist_assign_samples */
+}
/*
{
printf (" for %.2f%% of %.2f %s\n\n",
100.0 / total_time, total_time / hz, hist_dimension);
- } /* if */
+ }
}
else
{
printf ("\nEach sample counts as %g %s.\n", 1.0 / hz, hist_dimension);
- } /* if */
+ }
if (total_time <= 0.0)
{
printf (" no time accumulated\n\n");
/* this doesn't hurt since all the numerators will be zero: */
total_time = 1.0;
- } /* if */
+ }
printf ("%5.5s %10.10s %8.8s %8.8s %8.8s %8.8s %-8.8s\n",
"% ", "cumulative", "self ", "", "self ", "total ", "");
printf ("%5.5s %9.9s %8.8s %8.8s %8.8s %8.8s %-8.8s\n",
"time", hist_dimension, hist_dimension, "calls", unit, unit,
"name");
-} /* print_header */
+}
static void
if (ignore_zeros && sym->ncalls == 0 && sym->hist.time == 0)
{
return;
- } /* if */
+ }
accum_time += sym->hist.time;
if (bsd_style_output)
printf ("%6.2f %9.2f %8.2f",
total_time > 0.0 ? 100 * sym->hist.time / total_time : 0.0,
accum_time / hz, sym->hist.time / hz);
- } /* if */
+ }
if (sym->ncalls)
{
printf (" %8d %8.2f %8.2f ",
else
{
printf (" %8.8s %8.8s %8.8s ", "", "", "");
- } /* if */
+ }
if (bsd_style_output)
{
print_name (sym);
else
{
print_name_only (sym);
- } /* if */
+ }
printf ("\n");
-} /* print_line */
+}
/*
if (time_diff > 0.0)
{
return 1;
- } /* if */
+ }
if (time_diff < 0.0)
{
return -1;
- } /* if */
+ }
call_diff = right->ncalls - left->ncalls;
if (call_diff > 0)
{
return 1;
- } /* if */
+ }
if (call_diff < 0)
{
return -1;
- } /* if */
+ }
return strcmp (left->name, right->name);
-} /* cmp_time */
+}
/*
else
{
printf ("\f\n");
- } /* if */
+ }
accum_time = 0.0;
if (bsd_style_output)
{
printf ("\n\n\nflat profile:\n");
flat_blurb (stdout);
- } /* if */
+ }
}
else
{
printf ("Flat profile:\n");
- } /* if */
+ }
/*
* Sort the symbol table by time (call-count and name as secondary
* and tertiary keys):
for (index = 0; index < symtab.len; ++index)
{
time_sorted_syms[index] = &symtab.base[index];
- } /* for */
+ }
qsort (time_sorted_syms, symtab.len, sizeof (Sym *), cmp_time);
if (bsd_style_output)
{
top_dog = sym;
top_time = time;
- } /* if */
- } /* if */
- } /* for */
+ }
+ }
+ }
if (top_dog && top_dog->ncalls && top_time > 0.0)
{
top_time /= hz;
&& log_scale < sizeof (SItab) / sizeof (SItab[0]) - 1)
{
++log_scale;
- } /* while */
- } /* if */
- } /* if */
+ }
+ }
+ }
/*
* For now, the dimension is always seconds. In the future, we
&& !sym_lookup (&syms[EXCL_FLAT], addr)))
{
print_line (time_sorted_syms[index], SItab[log_scale].scale);
- } /* if */
- } /* for */
+ }
+ }
free (time_sorted_syms);
if (print_descriptions && !bsd_style_output)
{
flat_blurb (stdout);
- } /* if */
-} /* hist_print */
-
-/*** end of hist.c ***/
+ }
+}