diff options
| author | 2013-12-03 00:10:13 +0000 | |
|---|---|---|
| committer | 2013-12-03 00:10:13 +0000 | |
| commit | 36c245ace557aeb569e546b82baec6fe1491d733 (patch) | |
| tree | 46572d1f13df220a68c27216526ccc6ebf60641b | |
| parent | 3c9a73626677585d11736b3a3e296022cfa24677 (diff) | |
| parent | dae9f5a5158257c65fae014b38bde08741b97e62 (diff) | |
am dae9f5a5: am f3a2430a: am 738fa2f6: Merge "Add dalvik.vm.gctype to enable switching between different GCs."
* commit 'dae9f5a5158257c65fae014b38bde08741b97e62':
Add dalvik.vm.gctype to enable switching between different GCs.
| -rw-r--r-- | core/jni/AndroidRuntime.cpp | 8 |
1 files changed, 8 insertions, 0 deletions
diff --git a/core/jni/AndroidRuntime.cpp b/core/jni/AndroidRuntime.cpp index d501dd827bec..783e79443170 100644 --- a/core/jni/AndroidRuntime.cpp +++ b/core/jni/AndroidRuntime.cpp @@ -447,6 +447,7 @@ int AndroidRuntime::startVm(JavaVM** pJavaVM, JNIEnv** pEnv) char heapgrowthlimitOptsBuf[sizeof("-XX:HeapGrowthLimit=")-1 + PROPERTY_VALUE_MAX]; char heapminfreeOptsBuf[sizeof("-XX:HeapMinFree=")-1 + PROPERTY_VALUE_MAX]; char heapmaxfreeOptsBuf[sizeof("-XX:HeapMaxFree=")-1 + PROPERTY_VALUE_MAX]; + char gctypeOptsBuf[sizeof("-Xgc:")-1 + PROPERTY_VALUE_MAX]; char heaptargetutilizationOptsBuf[sizeof("-XX:HeapTargetUtilization=")-1 + PROPERTY_VALUE_MAX]; char jitcodecachesizeOptsBuf[sizeof("-Xjitcodecachesize:")-1 + PROPERTY_VALUE_MAX]; char extraOptsBuf[PROPERTY_VALUE_MAX]; @@ -582,6 +583,13 @@ int AndroidRuntime::startVm(JavaVM** pJavaVM, JNIEnv** pEnv) mOptions.add(opt); } + strcpy(gctypeOptsBuf, "-Xgc:"); + property_get("dalvik.vm.gctype", gctypeOptsBuf+5, ""); + if (gctypeOptsBuf[5] != '\0') { + opt.optionString = gctypeOptsBuf; + mOptions.add(opt); + } + /* * Enable or disable dexopt features, such as bytecode verification and * calculation of register maps for precise GC. |