[counters] ulongs can be time, too.
authorMark Probst <mark.probst@gmail.com>
Tue, 2 Dec 2014 20:38:53 +0000 (12:38 -0800)
committerMark Probst <mark.probst@gmail.com>
Tue, 2 Dec 2014 20:39:54 +0000 (12:39 -0800)
mono/utils/mono-counters.c

index c669454054247c70274ea67e2407452c320ddfc7..6ab29970a877a989dd44147b688625127997c8c4 100644 (file)
@@ -537,7 +537,10 @@ dump_counter (MonoCounter *counter, FILE *outfile) {
                        fprintf (outfile, ENTRY_FMT "%lld\n", counter->name, *(long long *)buffer);
                break;
        case MONO_COUNTER_ULONG:
-               fprintf (outfile, ENTRY_FMT "%llu\n", counter->name, *(unsigned long long *)buffer);
+               if ((counter->type & MONO_COUNTER_UNIT_MASK) == MONO_COUNTER_TIME)
+                       fprintf (outfile, ENTRY_FMT "%.2f ms\n", counter->name, (double)(*(guint64*)buffer) / 10000.0);
+               else
+                       fprintf (outfile, ENTRY_FMT "%llu\n", counter->name, *(unsigned long long *)buffer);
                break;
        case MONO_COUNTER_WORD:
                fprintf (outfile, ENTRY_FMT "%zd\n", counter->name, *(gssize*)buffer);