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
Loading
Please sign in to comment