Commit 25bf4462 authored by Alex Light's avatar Alex Light
Browse files

Rewrite JVMTI method tracing to use trampolines

Now that we have working instrumentation trampolines we can rewrite
the MethodEntry and MethodExit events to use these instead of the
interpreter. This will improve performance of code being traced in
this way by allowing the actual code to still use optimized jit code.

Test: ./test/testrunner/testrunner.py --host --runtime-option=-Xjitthreshold:0 --jit
Test: ./test/testrunner/testrunner.py --host --jit --debug --runtime-option=-Xplugin:libtracefast-trampolined.so
Test: ./test/testrunner/testrunner.py --host --jit --debug --runtime-option=-Xjitthreshold:0 --runtime-option=-Xplugin:libtracefast-trampolined.so
Test: ./test/testrunner/testrunner.py --host --debuggable --run-test-option='--with-agent libtifast.so=MethodEntry,MethodExit'
Test: ./test/testrunner/testrunner.py --host --debuggable --jit --runtime-option=-Xjitthreshold:0 --run-test-option='--with-agent libtifast.so=MethodEntry,MethodExit'
Test: adb shell am start-activity -S --attach-agent /data/local/tmp/libtifast.so=MethodEntry,MethodExit <some app>

Change-Id: I37c2ece14b1b12a79390da7d668ebbefa2966f87
parent d109e30e
Loading
Loading
Loading
Loading
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please to comment