changeset 11630:103e4438bb19

added support for accumulative times to TimerImpl
author Doug Simon <doug.simon@oracle.com>
date Fri, 13 Sep 2013 15:39:14 +0200
parents a0da0bff042e
children 1aed684853f6
files graal/com.oracle.graal.debug/src/com/oracle/graal/debug/internal/TimerImpl.java
diffstat 1 files changed, 12 insertions(+), 2 deletions(-) [+]
line wrap: on
line diff
--- a/graal/com.oracle.graal.debug/src/com/oracle/graal/debug/internal/TimerImpl.java	Fri Sep 13 15:21:51 2013 +0200
+++ b/graal/com.oracle.graal.debug/src/com/oracle/graal/debug/internal/TimerImpl.java	Fri Sep 13 15:39:14 2013 +0200
@@ -42,8 +42,17 @@
      */
     private static ThreadLocal<AbstractTimer> currentTimer = new ThreadLocal<>();
 
+    private final DebugValue flat;
+
     public TimerImpl(String name, boolean conditional) {
-        super(name, conditional);
+        super(name + "_Accm", conditional);
+        this.flat = new DebugValue(name + "_Flat", conditional) {
+
+            @Override
+            public String toString(long value) {
+                return valueToString(value);
+            }
+        };
     }
 
     @Override
@@ -98,7 +107,8 @@
             }
             currentTimer.set(parent);
             long flatTime = timeSpan - nestedTimeToSubtract;
-            TimerImpl.this.addToCurrentValue(flatTime);
+            TimerImpl.this.addToCurrentValue(timeSpan);
+            flat.addToCurrentValue(flatTime);
         }
 
         protected abstract long currentTime();