< prev index next >
src/share/vm/prims/whitebox.cpp
Print this page
rev 11625 : Initial change
rev 11626 : Added exception
@@ -348,10 +348,15 @@
WB_ENTRY(jlong, WB_GetHeapSpaceAlignment(JNIEnv* env, jobject o))
size_t alignment = Universe::heap()->collector_policy()->space_alignment();
return (jlong)alignment;
WB_END
+WB_ENTRY(jlong, WB_GetHeapAlignment(JNIEnv* env, jobject o))
+ size_t alignment = Universe::heap()->collector_policy()->heap_alignment();
+ return (jlong)alignment;
+WB_END
+
#if INCLUDE_ALL_GCS
WB_ENTRY(jboolean, WB_G1IsHumongous(JNIEnv* env, jobject o, jobject obj))
G1CollectedHeap* g1 = G1CollectedHeap::heap();
oop result = JNIHandles::resolve(obj);
const HeapRegion* hr = g1->heap_region_containing(result);
@@ -399,18 +404,25 @@
WB_ENTRY(jint, WB_G1RegionSize(JNIEnv* env, jobject o))
return (jint)HeapRegion::GrainBytes;
WB_END
WB_ENTRY(jlong, WB_PSVirtualSpaceAlignment(JNIEnv* env, jobject o))
- ParallelScavengeHeap* ps = ParallelScavengeHeap::heap();
- size_t alignment = ps->gens()->virtual_spaces()->alignment();
- return (jlong)alignment;
+#if INCLUDE_ALL_GCS
+ if (UseParallelGC) {
+ return ParallelScavengeHeap::heap()->gens()->virtual_spaces()->alignment();
+ }
+#endif // INCLUDE_ALL_GCS
+ THROW_MSG_0(vmSymbols::java_lang_RuntimeException(), "WB_PSVirtualSpaceAlignment: Parallel GC is not enabled");
WB_END
WB_ENTRY(jlong, WB_PSHeapGenerationAlignment(JNIEnv* env, jobject o))
- size_t alignment = ParallelScavengeHeap::heap()->generation_alignment();
- return (jlong)alignment;
+#if INCLUDE_ALL_GCS
+ if (UseParallelGC) {
+ return ParallelScavengeHeap::heap()->generation_alignment();
+ }
+#endif // INCLUDE_ALL_GCS
+ THROW_MSG_0(vmSymbols::java_lang_RuntimeException(), "WB_PSHeapGenerationAlignment: Parallel GC is not enabled");
WB_END
WB_ENTRY(jobject, WB_G1AuxiliaryMemoryUsage(JNIEnv* env))
ResourceMark rm(THREAD);
G1CollectedHeap* g1h = G1CollectedHeap::heap();
@@ -1691,10 +1703,11 @@
{CC"getHeapOopSize", CC"()I", (void*)&WB_GetHeapOopSize },
{CC"getVMPageSize", CC"()I", (void*)&WB_GetVMPageSize },
{CC"getVMAllocationGranularity", CC"()J", (void*)&WB_GetVMAllocationGranularity },
{CC"getVMLargePageSize", CC"()J", (void*)&WB_GetVMLargePageSize},
{CC"getHeapSpaceAlignment", CC"()J", (void*)&WB_GetHeapSpaceAlignment},
+ {CC"getHeapAlignment", CC"()J", (void*)&WB_GetHeapAlignment},
{CC"isClassAlive0", CC"(Ljava/lang/String;)Z", (void*)&WB_IsClassAlive },
{CC"parseCommandLine0",
CC"(Ljava/lang/String;C[Lsun/hotspot/parser/DiagnosticCommand;)[Ljava/lang/Object;",
(void*) &WB_ParseCommandLine
},
< prev index next >