< prev index next >

agent/src/share/classes/sun/jvm/hotspot/gc/g1/G1CollectedHeap.java

Print this page
rev 8719 : 8131319: Move G1Allocator::_summary_bytes_used back to G1CollectedHeap
Reviewed-by:
rev 8720 : [mq]: fix-sa-agent


  62                     initialize(VM.getVM().getTypeDataBase());
  63                 }
  64             });
  65     }
  66 
  67     static private synchronized void initialize(TypeDataBase db) {
  68         Type type = db.lookupType("G1CollectedHeap");
  69 
  70         hrmFieldOffset = type.getField("_hrm").getOffset();
  71         summaryBytesUsedField = type.getCIntegerField("_summary_bytes_used");
  72         g1mmField = type.getAddressField("_g1mm");
  73         oldSetFieldOffset = type.getField("_old_set").getOffset();
  74         humongousSetFieldOffset = type.getField("_humongous_set").getOffset();
  75     }
  76 
  77     public long capacity() {
  78         return hrm().capacity();
  79     }
  80 
  81     public long used() {
  82         return summaryBytesUsedField.getValue();
  83     }
  84 
  85     public long n_regions() {
  86         return hrm().length();
  87     }
  88 
  89     private HeapRegionManager hrm() {
  90         Address hrmAddr = addr.addOffsetTo(hrmFieldOffset);
  91         return (HeapRegionManager) VMObjectFactory.newObject(HeapRegionManager.class,
  92                                                          hrmAddr);
  93     }
  94 
  95     public G1MonitoringSupport g1mm() {
  96         Address g1mmAddr = g1mmField.getValue(addr);
  97         return (G1MonitoringSupport) VMObjectFactory.newObject(G1MonitoringSupport.class, g1mmAddr);
  98     }
  99 
 100     public HeapRegionSetBase oldSet() {
 101         Address oldSetAddr = addr.addOffsetTo(oldSetFieldOffset);
 102         return (HeapRegionSetBase) VMObjectFactory.newObject(HeapRegionSetBase.class,




  62                     initialize(VM.getVM().getTypeDataBase());
  63                 }
  64             });
  65     }
  66 
  67     static private synchronized void initialize(TypeDataBase db) {
  68         Type type = db.lookupType("G1CollectedHeap");
  69 
  70         hrmFieldOffset = type.getField("_hrm").getOffset();
  71         summaryBytesUsedField = type.getCIntegerField("_summary_bytes_used");
  72         g1mmField = type.getAddressField("_g1mm");
  73         oldSetFieldOffset = type.getField("_old_set").getOffset();
  74         humongousSetFieldOffset = type.getField("_humongous_set").getOffset();
  75     }
  76 
  77     public long capacity() {
  78         return hrm().capacity();
  79     }
  80 
  81     public long used() {
  82         return summaryBytesUsedField.getValue(addr);
  83     }
  84 
  85     public long n_regions() {
  86         return hrm().length();
  87     }
  88 
  89     private HeapRegionManager hrm() {
  90         Address hrmAddr = addr.addOffsetTo(hrmFieldOffset);
  91         return (HeapRegionManager) VMObjectFactory.newObject(HeapRegionManager.class,
  92                                                          hrmAddr);
  93     }
  94 
  95     public G1MonitoringSupport g1mm() {
  96         Address g1mmAddr = g1mmField.getValue(addr);
  97         return (G1MonitoringSupport) VMObjectFactory.newObject(G1MonitoringSupport.class, g1mmAddr);
  98     }
  99 
 100     public HeapRegionSetBase oldSet() {
 101         Address oldSetAddr = addr.addOffsetTo(oldSetFieldOffset);
 102         return (HeapRegionSetBase) VMObjectFactory.newObject(HeapRegionSetBase.class,


< prev index next >