src/share/vm/prims/whitebox.cpp

changeset 7322
4cb90023bf2b
parent 7267
417e3b8d04c5
child 7325
3c87c13918fb
     1.1 --- a/src/share/vm/prims/whitebox.cpp	Tue Oct 28 09:17:36 2014 +0100
     1.2 +++ b/src/share/vm/prims/whitebox.cpp	Mon Oct 13 16:09:57 2014 -0700
     1.3 @@ -104,6 +104,28 @@
     1.4    return closure.found();
     1.5  WB_END
     1.6  
     1.7 +WB_ENTRY(jboolean, WB_ClassKnownToNotExist(JNIEnv* env, jobject o, jobject loader, jstring name))
     1.8 +  ThreadToNativeFromVM ttnfv(thread);   // can't be in VM when we call JNI
     1.9 +  const char* class_name = env->GetStringUTFChars(name, NULL);
    1.10 +  jboolean result = JVM_KnownToNotExist(env, loader, class_name);
    1.11 +  env->ReleaseStringUTFChars(name, class_name);
    1.12 +  return result;
    1.13 +WB_END
    1.14 +
    1.15 +WB_ENTRY(jobjectArray, WB_GetLookupCacheURLs(JNIEnv* env, jobject o, jobject loader))
    1.16 +  ThreadToNativeFromVM ttnfv(thread);   // can't be in VM when we call JNI
    1.17 +  return JVM_GetResourceLookupCacheURLs(env, loader);
    1.18 +WB_END
    1.19 +
    1.20 +WB_ENTRY(jintArray, WB_GetLookupCacheMatches(JNIEnv* env, jobject o, jobject loader, jstring name))
    1.21 +  ThreadToNativeFromVM ttnfv(thread);   // can't be in VM when we call JNI
    1.22 +  const char* resource_name = env->GetStringUTFChars(name, NULL);
    1.23 +  jintArray result = JVM_GetResourceLookupCache(env, loader, resource_name);
    1.24 +
    1.25 +  env->ReleaseStringUTFChars(name, resource_name);
    1.26 +  return result;
    1.27 +WB_END
    1.28 +
    1.29  WB_ENTRY(jlong, WB_GetCompressedOopsMaxHeapSize(JNIEnv* env, jobject o)) {
    1.30    return (jlong)Arguments::max_heap_for_compressed_oops();
    1.31  }
    1.32 @@ -939,6 +961,11 @@
    1.33    {CC"isObjectInOldGen",   CC"(Ljava/lang/Object;)Z", (void*)&WB_isObjectInOldGen  },
    1.34    {CC"getHeapOopSize",     CC"()I",                   (void*)&WB_GetHeapOopSize    },
    1.35    {CC"isClassAlive0",      CC"(Ljava/lang/String;)Z", (void*)&WB_IsClassAlive      },
    1.36 +  {CC"classKnownToNotExist",
    1.37 +                           CC"(Ljava/lang/ClassLoader;Ljava/lang/String;)Z",(void*)&WB_ClassKnownToNotExist},
    1.38 +  {CC"getLookupCacheURLs", CC"(Ljava/lang/ClassLoader;)[Ljava/net/URL;",    (void*)&WB_GetLookupCacheURLs},
    1.39 +  {CC"getLookupCacheMatches", CC"(Ljava/lang/ClassLoader;Ljava/lang/String;)[I",
    1.40 +                                                      (void*)&WB_GetLookupCacheMatches},
    1.41    {CC"parseCommandLine",
    1.42        CC"(Ljava/lang/String;[Lsun/hotspot/parser/DiagnosticCommand;)[Ljava/lang/Object;",
    1.43        (void*) &WB_ParseCommandLine

mercurial