/** * mono_counters_dump: * @section_mask: The sections to dump counters for * @outfile: a FILE to dump the results to * * Displays the counts of all the enabled counters registered. * To filter by variance, you can OR one or more variance with the specific section you want. * Use MONO_COUNTER_SECTION_MASK to dump all categories of a specific variance. */ void mono_counters_dump (int section_mask, FILE *outfile) { int i, j; int variance; section_mask &= valid_mask; if (!initialized) return; mono_os_mutex_lock (&counters_mutex); if (!counters) { mono_os_mutex_unlock (&counters_mutex); return; } variance = section_mask & MONO_COUNTER_VARIANCE_MASK; /* If no variance mask is supplied, we default to all kinds. */ if (!variance) variance = MONO_COUNTER_VARIANCE_MASK; section_mask &= ~MONO_COUNTER_VARIANCE_MASK; for (j = 0, i = MONO_COUNTER_JIT; i < MONO_COUNTER_LAST_SECTION; j++, i <<= 1) { if ((section_mask & i) && (set_mask & i)) { fprintf (outfile, "\n%s statistics\n", section_names [j]); mono_counters_dump_section (i, variance, outfile); } } fflush (outfile); mono_os_mutex_unlock (&counters_mutex); }
/** * mono_counters_dump: * @section_mask: The sections to dump counters for * @outfile: a FILE to dump the results to * * Displays the counts of all the enabled counters registered. */ void mono_counters_dump (int section_mask, FILE *outfile) { int i, j; section_mask &= valid_mask; if (!counters) return; for (j = 0, i = MONO_COUNTER_JIT; i < MONO_COUNTER_LAST_SECTION; j++, i <<= 1) { if ((section_mask & i) && (set_mask & i)) { fprintf (outfile, "\n%s statistics\n", section_names [j]); mono_counters_dump_section (i, outfile); } } fflush (outfile); }
/** * mono_counters_dump: * @section_mask: The sections to dump counters for * @outfile: a FILE to dump the results to * * Displays the counts of all the enabled counters registered. * To filter by variance, you can OR one or more variance with the specific section you want. * Use MONO_COUNTER_SECTION_MASK to dump all categories of a specific variance. */ void mono_counters_dump (int section_mask, FILE *outfile) { int i, j; section_mask &= valid_mask; if (!counters) return; /* If no variance mask is supplied, we default to all kinds. */ if (!(section_mask & MONO_COUNTER_VARIANCE_MASK)) section_mask |= MONO_COUNTER_VARIANCE_MASK; for (j = 0, i = MONO_COUNTER_JIT; i < MONO_COUNTER_LAST_SECTION; j++, i <<= 1) { if ((section_mask & i) && (set_mask & i)) { fprintf (outfile, "\n%s statistics\n", section_names [j]); mono_counters_dump_section (i | (section_mask & MONO_COUNTER_VARIANCE_MASK), outfile); } } fflush (outfile); }