Merge "Pass -XX:PerfettoHprof=true to ART."

This commit is contained in:
Florian Mayer
2020-05-18 20:37:09 +00:00
committed by Gerrit Code Review

View File

@@ -693,6 +693,7 @@ int AndroidRuntime::startVm(JavaVM** pJavaVM, JNIEnv** pEnv, bool zygote, bool p
char dex2oatImageFlagsBuf[PROPERTY_VALUE_MAX]; char dex2oatImageFlagsBuf[PROPERTY_VALUE_MAX];
char extraOptsBuf[PROPERTY_VALUE_MAX]; char extraOptsBuf[PROPERTY_VALUE_MAX];
char voldDecryptBuf[PROPERTY_VALUE_MAX]; char voldDecryptBuf[PROPERTY_VALUE_MAX];
char perfettoHprofOptBuf[sizeof("-XX:PerfettoHprof=") + PROPERTY_VALUE_MAX];
enum { enum {
kEMDefault, kEMDefault,
kEMIntPortable, kEMIntPortable,
@@ -807,6 +808,16 @@ int AndroidRuntime::startVm(JavaVM** pJavaVM, JNIEnv** pEnv, bool zygote, bool p
addOption("-verbose:gc"); addOption("-verbose:gc");
//addOption("-verbose:class"); //addOption("-verbose:class");
// On Android, we always want to allow loading the PerfettoHprof plugin.
// Even with this option set, we will still only actually load the plugin
// if we are on a userdebug build or the app is debuggable or profileable.
// This is enforced in art/runtime/runtime.cc.
//
// We want to be able to disable this, because this does not work on host,
// and we do not want to enable it in tests.
parseRuntimeOption("dalvik.vm.perfetto_hprof", perfettoHprofOptBuf, "-XX:PerfettoHprof=",
"true");
if (primary_zygote) { if (primary_zygote) {
addOption("-Xprimaryzygote"); addOption("-Xprimaryzygote");
} }