summaryrefslogtreecommitdiff
path: root/src/compiler/llvm/compiler_llvm.h
diff options
context:
space:
mode:
author Sebastien Hertz <shertz@google.com> 2013-06-07 17:40:09 +0200
committer Sebastien Hertz <shertz@google.com> 2013-06-07 17:47:49 +0200
commit74109f6683096de494b1457fa6d5b0ac33b4c98c (patch)
treef8abb4fdb8781738c622ca90de2e4426a649c56e /src/compiler/llvm/compiler_llvm.h
parenta7005960d536cbfd7ba82d2fa52ee1865516435b (diff)
Better inline instrumentation callbacks in interpreter.
While instrumentation callbacks (MethodEnterEvent, MethodExitEvent and DexPcMovedEvent) are inlined, the given arguments (this object, method and current dex pc) are "constructed" even if the callback results in a no-op (because no listener is attached) and these arguments are not used. This CL improves these parts of code by explicitely test whether a listener is attached before calling the callback. Thus, parameters are only created if a listener is attached. In the case no listener is attached, we prevent from loading from memory the 'this' object and the method and prevent from computing the dex pc (which is the difference between the code start address and the current instruction address). Change-Id: Ia93aeca1eaa6c1fc644e932eb67001d46b1cf429
Diffstat (limited to 'src/compiler/llvm/compiler_llvm.h')
0 files changed, 0 insertions, 0 deletions