From cead9ca9deeab2b3ca0f47c999aa7285b749f7e7 Mon Sep 17 00:00:00 2001 From: Carl Shapiro Date: Mon, 12 Apr 2010 16:31:59 -0700 Subject: [PATCH] Add command line flags to enable lock profiling. Change-Id: I5d1b5296020899c1af6ba5d93cece48f12173d2d --- core/jni/AndroidRuntime.cpp | 18 ++++++++++++++++++ 1 file changed, 18 insertions(+) diff --git a/core/jni/AndroidRuntime.cpp b/core/jni/AndroidRuntime.cpp index 2cc1ffc71daed..f096de7800dd5 100644 --- a/core/jni/AndroidRuntime.cpp +++ b/core/jni/AndroidRuntime.cpp @@ -702,6 +702,24 @@ int AndroidRuntime::startVm(JavaVM** pJavaVM, JNIEnv** pEnv) //mOptions.add(opt); } + char lockProfThresholdBuf[sizeof("-Xlockprofthreshold:") + sizeof(propBuf)]; + property_get("dalvik.vm.lockprof.threshold", propBuf, ""); + if (strlen(propBuf) > 0) { + strcpy(lockProfThresholdBuf, "-Xlockprofthreshold:"); + strcat(lockProfThresholdBuf, propBuf); + opt.optionString = lockProfThresholdBuf; + mOptions.add(opt); + } + + char lockProfSampleBuf[sizeof("-Xlockprofsample:") + sizeof(propBuf)]; + property_get("dalvik.vm.lockprof.sample", propBuf, ""); + if (strlen(propBuf) > 0) { + strcpy(lockProfSampleBuf, "-Xlockprofsample:"); + strcat(lockProfSampleBuf, propBuf); + opt.optionString = lockProfSampleBuf; + mOptions.add(opt); + } + #if defined(WITH_JIT) /* Minimal profile threshold to trigger JIT compilation */ char jitThresholdBuf[sizeof("-Xjitthreshold:") + PROPERTY_VALUE_MAX];