From 98ba7bd5d1942edd7c2881cc6fd0e777ae8baa2e Mon Sep 17 00:00:00 2001 From: Brian Carlstrom Date: Mon, 10 Mar 2014 10:20:01 -0700 Subject: Only pass -Xprofile-* options to ART Bug: 13391896 Change-Id: I5d6a3b900c9b20f02e1d4ccb73f712e9260c7dfd --- core/jni/AndroidRuntime.cpp | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/core/jni/AndroidRuntime.cpp b/core/jni/AndroidRuntime.cpp index e623d5d..98f7716 100644 --- a/core/jni/AndroidRuntime.cpp +++ b/core/jni/AndroidRuntime.cpp @@ -749,10 +749,11 @@ int AndroidRuntime::startVm(JavaVM** pJavaVM, JNIEnv** pEnv) mOptions.add(opt); } - // libart tolerates libdvm flags, but not vice versa, so only pass these if libart. + // libart tolerates libdvm flags, but not vice versa, so only pass some options if libart. property_get("persist.sys.dalvik.vm.lib.1", dalvikVmLibBuf, "libdvm.so"); - if (strncmp(dalvikVmLibBuf, "libart", 6) == 0) { + bool libart = (strncmp(dalvikVmLibBuf, "libart", 6) == 0); + if (libart) { // Extra options for DexClassLoader. property_get("dalvik.vm.dex2oat-flags", dex2oatFlagsBuf, ""); parseExtraOpts(dex2oatFlagsBuf, "-Xcompiler-option"); @@ -783,7 +784,7 @@ int AndroidRuntime::startVm(JavaVM** pJavaVM, JNIEnv** pEnv) /* * Set profiler options */ - { + if (libart) { char period[sizeof("-Xprofile-period:") + PROPERTY_VALUE_MAX]; char duration[sizeof("-Xprofile-duration:") + PROPERTY_VALUE_MAX]; char interval[sizeof("-Xprofile-interval:") + PROPERTY_VALUE_MAX]; -- cgit v1.1