< prev index next >
test/lib/sun/hotspot/code/BlobType.java
Print this page
rev 1255 : imported patch 8059613.jdk9-hs-comp.diff
@@ -30,30 +30,32 @@
import sun.hotspot.WhiteBox;
public enum BlobType {
// Execution level 1 and 4 (non-profiled) nmethods (including native nmethods)
- MethodNonProfiled(0, "CodeHeap 'non-profiled nmethods'"),
+ MethodNonProfiled(0, "CodeHeap 'non-profiled nmethods'", "NonProfiledCodeHeapSize"),
// Execution level 2 and 3 (profiled) nmethods
- MethodProfiled(1, "CodeHeap 'profiled nmethods'"),
+ MethodProfiled(1, "CodeHeap 'profiled nmethods'", "ProfiledCodeHeapSize"),
// Non-nmethods like Buffers, Adapters and Runtime Stubs
- NonNMethod(2, "CodeHeap 'non-nmethods'") {
+ NonNMethod(2, "CodeHeap 'non-nmethods'", "NonNMethodCodeHeapSize") {
@Override
public boolean allowTypeWhenOverflow(BlobType type) {
return super.allowTypeWhenOverflow(type)
|| type == BlobType.MethodNonProfiled;
}
},
// All types (No code cache segmentation)
- All(3, "CodeCache");
+ All(3, "CodeCache", "ReservedCodeCacheSize");
public final int id;
- private final String beanName;
+ public final String sizeOptionName;
+ public final String beanName;
- private BlobType(int id, String beanName) {
+ private BlobType(int id, String beanName, String sizeOptionName) {
this.id = id;
this.beanName = beanName;
+ this.sizeOptionName = sizeOptionName;
}
public MemoryPoolMXBean getMemoryPool() {
for (MemoryPoolMXBean bean : ManagementFactory.getMemoryPoolMXBeans()) {
String name = bean.getName();
@@ -85,6 +87,10 @@
// there is no MethodProfiled in non tiered world or pure C1
result.remove(MethodProfiled);
}
return result;
}
+
+ public long getSize() {
+ return WhiteBox.getWhiteBox().getUintxVMFlag(sizeOptionName);
+ }
}
< prev index next >