aboutsummaryrefslogtreecommitdiffhomepage
path: root/src/main/java/com/google/devtools/build/lib/syntax/BuiltinFunction.java
diff options
context:
space:
mode:
authorGravatar ulfjack <ulfjack@google.com>2018-06-11 06:00:36 -0700
committerGravatar Copybara-Service <copybara-piper@google.com>2018-06-11 06:01:34 -0700
commit4cf2ebdcef7b5d4c46e533a560642b89eb3f02a5 (patch)
treecf2b64cf0f82827955cb34ce7b188fc641b946d6 /src/main/java/com/google/devtools/build/lib/syntax/BuiltinFunction.java
parentc720152ec1936a537c9519d522d3cb41d19cff77 (diff)
Add AutoProfiler-like API to Profiler
- migrate all startTask/completeTask pairs to the new API PiperOrigin-RevId: 200038703
Diffstat (limited to 'src/main/java/com/google/devtools/build/lib/syntax/BuiltinFunction.java')
-rw-r--r--src/main/java/com/google/devtools/build/lib/syntax/BuiltinFunction.java6
1 files changed, 3 insertions, 3 deletions
diff --git a/src/main/java/com/google/devtools/build/lib/syntax/BuiltinFunction.java b/src/main/java/com/google/devtools/build/lib/syntax/BuiltinFunction.java
index 10a14a6631..03d24bd0a6 100644
--- a/src/main/java/com/google/devtools/build/lib/syntax/BuiltinFunction.java
+++ b/src/main/java/com/google/devtools/build/lib/syntax/BuiltinFunction.java
@@ -18,6 +18,7 @@ import com.google.common.base.Throwables;
import com.google.devtools.build.lib.events.Location;
import com.google.devtools.build.lib.profiler.Profiler;
import com.google.devtools.build.lib.profiler.ProfilerTask;
+import com.google.devtools.build.lib.profiler.SilentCloseable;
import com.google.devtools.build.lib.skylarkinterface.SkylarkPrinter;
import com.google.devtools.build.lib.skylarkinterface.SkylarkSignature;
import com.google.devtools.build.lib.syntax.Environment.LexicalFrame;
@@ -166,9 +167,9 @@ public class BuiltinFunction extends BaseFunction {
}
}
- Profiler.instance().startTask(ProfilerTask.SKYLARK_BUILTIN_FN, getName());
// Last but not least, actually make an inner call to the function with the resolved arguments.
- try {
+ try (SilentCloseable c =
+ Profiler.instance().profile(ProfilerTask.SKYLARK_BUILTIN_FN, getName())) {
env.enterScope(this, SHARED_LEXICAL_FRAME_FOR_BUILTIN_FUNCTION_CALLS, ast, env.getGlobals());
return invokeMethod.invoke(this, args);
} catch (InvocationTargetException x) {
@@ -208,7 +209,6 @@ public class BuiltinFunction extends BaseFunction {
} catch (IllegalAccessException e) {
throw badCallException(loc, e, args);
} finally {
- Profiler.instance().completeTask(ProfilerTask.SKYLARK_BUILTIN_FN);
env.exitScope();
}
}