agent/src/share/classes/sun/jvm/hotspot/ci/ciMethodData.java
Index Unified diffs Context diffs Sdiffs Patch New Old Previous File Next File hotspot Sdiff agent/src/share/classes/sun/jvm/hotspot/ci

agent/src/share/classes/sun/jvm/hotspot/ci/ciMethodData.java

Print this page
rev 8167 : 8077832: SA's dumpreplaydata, dumpcfg and buildreplayjars are broken
Summary: SA code out of sync with hotspot code
Reviewed-by:


 131 
 132   int extraDataSize() {
 133     return (int)extraDataSizeField.getValue(getAddress());
 134   }
 135 
 136   int state() {
 137     return (int)stateField.getValue(getAddress());
 138   }
 139 
 140   int currentMileage() {
 141     return (int)currentMileageField.getValue(getAddress());
 142   }
 143 
 144   boolean outOfBounds(int dataIndex) {
 145     return dataIndex >= dataSize();
 146   }
 147 
 148   ParametersTypeData<ciKlass,ciMethod> parametersTypeData() {
 149     Address base = getAddress().addOffsetTo(origField.getOffset());
 150     int di = (int)parametersTypeDataDi.getValue(base);
 151     if (di == -1) {
 152       return null;
 153     }
 154     DataLayout dataLayout = new DataLayout(dataField.getValue(getAddress()), di);
 155     return new ParametersTypeData<ciKlass,ciMethod>(this, dataLayout);
 156   }
 157 
 158   ProfileData dataAt(int dataIndex) {
 159     if (outOfBounds(dataIndex)) {
 160       return null;
 161     }
 162     DataLayout dataLayout = new DataLayout(dataField.getValue(getAddress()), dataIndex);
 163 
 164     switch (dataLayout.tag()) {
 165     case DataLayout.noTag:
 166     default:
 167       throw new InternalError();
 168     case DataLayout.bitDataTag:
 169       return new BitData(dataLayout);
 170     case DataLayout.counterDataTag:
 171       return new CounterData(dataLayout);




 131 
 132   int extraDataSize() {
 133     return (int)extraDataSizeField.getValue(getAddress());
 134   }
 135 
 136   int state() {
 137     return (int)stateField.getValue(getAddress());
 138   }
 139 
 140   int currentMileage() {
 141     return (int)currentMileageField.getValue(getAddress());
 142   }
 143 
 144   boolean outOfBounds(int dataIndex) {
 145     return dataIndex >= dataSize();
 146   }
 147 
 148   ParametersTypeData<ciKlass,ciMethod> parametersTypeData() {
 149     Address base = getAddress().addOffsetTo(origField.getOffset());
 150     int di = (int)parametersTypeDataDi.getValue(base);
 151     if (di == -1 || di == -2) {
 152       return null;
 153     }
 154     DataLayout dataLayout = new DataLayout(dataField.getValue(getAddress()), di);
 155     return new ParametersTypeData<ciKlass,ciMethod>(this, dataLayout);
 156   }
 157 
 158   ProfileData dataAt(int dataIndex) {
 159     if (outOfBounds(dataIndex)) {
 160       return null;
 161     }
 162     DataLayout dataLayout = new DataLayout(dataField.getValue(getAddress()), dataIndex);
 163 
 164     switch (dataLayout.tag()) {
 165     case DataLayout.noTag:
 166     default:
 167       throw new InternalError();
 168     case DataLayout.bitDataTag:
 169       return new BitData(dataLayout);
 170     case DataLayout.counterDataTag:
 171       return new CounterData(dataLayout);


agent/src/share/classes/sun/jvm/hotspot/ci/ciMethodData.java
Index Unified diffs Context diffs Sdiffs Patch New Old Previous File Next File