diff options
Diffstat (limited to 'vm')
-rw-r--r-- | vm/Dvm.mk | 5 | ||||
-rw-r--r-- | vm/Init.c | 1 | ||||
-rw-r--r-- | vm/Jni.c | 3 | ||||
-rw-r--r-- | vm/analysis/DexOptimize.c | 1 |
4 files changed, 10 insertions, 0 deletions
@@ -26,6 +26,7 @@ # LOCAL_CFLAGS += -fstrict-aliasing -Wstrict-aliasing=2 -fno-align-jumps #LOCAL_CFLAGS += -DUSE_INDIRECT_REF +LOCAL_CFLAGS += -include "dalvikdefines.h" # # Optional features. These may impact the size or performance of the VM. @@ -64,6 +65,7 @@ ifeq ($(dvm_make_debug_vm),true) # - GDB helpers enabled # - LOGV # - assert() + # - full ELF symbols # LOCAL_CFLAGS += -DWITH_INSTR_CHECKS LOCAL_CFLAGS += -DWITH_EXTRA_OBJECT_VALIDATION @@ -83,6 +85,7 @@ else # !dvm_make_debug_vm # - all development features disabled # - compiler optimizations enabled (redundant for "release" builds) # - (debugging and profiling still enabled) + # - minimize ELF symbols to reduce code size by 10% # #LOCAL_CFLAGS += -DNDEBUG -DLOG_NDEBUG=1 # "-O2" is redundant for device (release) but useful for sim (debug) @@ -91,6 +94,8 @@ else # !dvm_make_debug_vm LOCAL_CFLAGS += -DDVM_SHOW_EXCEPTION=1 # if you want to try with assertions on the device, add: #LOCAL_CFLAGS += -UNDEBUG -DDEBUG=1 -DLOG_NDEBUG=1 -DWITH_DALVIK_ASSERT + # use GCC Visibility to reduce the footprint of runtime library + LOCAL_CFLAGS += -fvisibility=hidden endif # !dvm_make_debug_vm # bug hunting: checksum and verify interpreted stack when making JNI calls @@ -1491,6 +1491,7 @@ static bool dvmInitJDWP(void) * * Returns 0 on success. */ +DVM_EXPORT int dvmPrepForDexOpt(const char* bootClassPath, DexOptimizerMode dexOptMode, DexClassVerifyMode verifyMode, int dexoptFlags) { @@ -4255,6 +4255,7 @@ void dvmLateEnableCheckedJni(void) /* * Not supported. */ +DVM_EXPORT jint JNI_GetDefaultJavaVMInitArgs(void* vm_args) { return JNI_ERR; @@ -4265,6 +4266,7 @@ jint JNI_GetDefaultJavaVMInitArgs(void* vm_args) * * We always have zero or one. */ +DVM_EXPORT jint JNI_GetCreatedJavaVMs(JavaVM** vmBuf, jsize bufLen, jsize* nVMs) { if (gDvm.vmList != NULL) { @@ -4286,6 +4288,7 @@ jint JNI_GetCreatedJavaVMs(JavaVM** vmBuf, jsize bufLen, jsize* nVMs) * The current thread becomes the main VM thread. We return immediately, * which effectively means the caller is executing in a native method. */ +DVM_EXPORT jint JNI_CreateJavaVM(JavaVM** p_vm, JNIEnv** p_env, void* vm_args) { const JavaVMInitArgs* args = (JavaVMInitArgs*) vm_args; diff --git a/vm/analysis/DexOptimize.c b/vm/analysis/DexOptimize.c index a5b8b6fa0..b134a3f27 100644 --- a/vm/analysis/DexOptimize.c +++ b/vm/analysis/DexOptimize.c @@ -508,6 +508,7 @@ bool dvmOptimizeDexFile(int fd, off_t dexOffset, long dexLength, * * Returns "true" on success. */ +DVM_EXPORT bool dvmContinueOptimization(int fd, off_t dexOffset, long dexLength, const char* fileName, u4 modWhen, u4 crc, bool isBootstrap) { |