comparison src/share/vm/graal/graalCompilerToVM.cpp @ 13769:af344056124f

Only use mature method datas
author Tom Rodriguez <tom.rodriguez@oracle.com>
date Wed, 22 Jan 2014 11:10:09 -0800
parents c3370b2e1cbc
children 284aea4028ca
comparison
equal deleted inserted replaced
13768:a7cb9f383ec4 13769:af344056124f
825 MutexLocker locker(MethodCompileQueue_lock, thread); 825 MutexLocker locker(MethodCompileQueue_lock, thread);
826 return CompileBroker::assign_compile_id(method, entry_bci); 826 return CompileBroker::assign_compile_id(method, entry_bci);
827 C2V_END 827 C2V_END
828 828
829 829
830 C2V_VMENTRY(jboolean, isMature, (JNIEnv *env, jobject, jlong metaspace_method_data))
831 MethodData* mdo = asMethodData(metaspace_method_data);
832 return mdo != NULL && mdo->is_mature();
833 C2V_END
834
830 #define CC (char*) /*cast a literal from (const char*)*/ 835 #define CC (char*) /*cast a literal from (const char*)*/
831 #define FN_PTR(f) CAST_FROM_FN_PTR(void*, &(c2v_ ## f)) 836 #define FN_PTR(f) CAST_FROM_FN_PTR(void*, &(c2v_ ## f))
832 837
833 #define TYPE "Lcom/oracle/graal/api/meta/JavaType;" 838 #define TYPE "Lcom/oracle/graal/api/meta/JavaType;"
834 #define METHOD "Lcom/oracle/graal/api/meta/JavaMethod;" 839 #define METHOD "Lcom/oracle/graal/api/meta/JavaMethod;"
844 #define HS_COMPILED_CODE "Lcom/oracle/graal/hotspot/HotSpotCompiledCode;" 849 #define HS_COMPILED_CODE "Lcom/oracle/graal/hotspot/HotSpotCompiledCode;"
845 #define HS_CONFIG "Lcom/oracle/graal/hotspot/HotSpotVMConfig;" 850 #define HS_CONFIG "Lcom/oracle/graal/hotspot/HotSpotVMConfig;"
846 #define HS_INSTALLED_CODE "Lcom/oracle/graal/hotspot/meta/HotSpotInstalledCode;" 851 #define HS_INSTALLED_CODE "Lcom/oracle/graal/hotspot/meta/HotSpotInstalledCode;"
847 #define METASPACE_KLASS "J" 852 #define METASPACE_KLASS "J"
848 #define METASPACE_METHOD "J" 853 #define METASPACE_METHOD "J"
854 #define METASPACE_METHOD_DATA "J"
849 #define METASPACE_CONSTANT_POOL "J" 855 #define METASPACE_CONSTANT_POOL "J"
850 856
851 JNINativeMethod CompilerToVM_methods[] = { 857 JNINativeMethod CompilerToVM_methods[] = {
852 {CC"initializeBytecode", CC"("METASPACE_METHOD"[B)[B", FN_PTR(initializeBytecode)}, 858 {CC"initializeBytecode", CC"("METASPACE_METHOD"[B)[B", FN_PTR(initializeBytecode)},
853 {CC"exceptionTableStart", CC"("METASPACE_METHOD")J", FN_PTR(exceptionTableStart)}, 859 {CC"exceptionTableStart", CC"("METASPACE_METHOD")J", FN_PTR(exceptionTableStart)},
887 {CC"invalidateInstalledCode", CC"("HS_INSTALLED_CODE")V", FN_PTR(invalidateInstalledCode)}, 893 {CC"invalidateInstalledCode", CC"("HS_INSTALLED_CODE")V", FN_PTR(invalidateInstalledCode)},
888 {CC"readUnsafeUncompressedPointer", CC"("OBJECT"J)"OBJECT, FN_PTR(readUnsafeUncompressedPointer)}, 894 {CC"readUnsafeUncompressedPointer", CC"("OBJECT"J)"OBJECT, FN_PTR(readUnsafeUncompressedPointer)},
889 {CC"readUnsafeKlassPointer", CC"("OBJECT")J", FN_PTR(readUnsafeKlassPointer)}, 895 {CC"readUnsafeKlassPointer", CC"("OBJECT")J", FN_PTR(readUnsafeKlassPointer)},
890 {CC"collectCounters", CC"()[J", FN_PTR(collectCounters)}, 896 {CC"collectCounters", CC"()[J", FN_PTR(collectCounters)},
891 {CC"allocateCompileId", CC"("HS_RESOLVED_METHOD"I)I", FN_PTR(allocateCompileId)}, 897 {CC"allocateCompileId", CC"("HS_RESOLVED_METHOD"I)I", FN_PTR(allocateCompileId)},
898 {CC"isMature", CC"("METASPACE_METHOD_DATA")Z", FN_PTR(isMature)},
892 }; 899 };
893 900
894 int CompilerToVM_methods_count() { 901 int CompilerToVM_methods_count() {
895 return sizeof(CompilerToVM_methods) / sizeof(JNINativeMethod); 902 return sizeof(CompilerToVM_methods) / sizeof(JNINativeMethod);
896 } 903 }