11 * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License 12 * version 2 for more details (a copy is included in the LICENSE file that 13 * accompanied this code). 14 * 15 * You should have received a copy of the GNU General Public License version 16 * 2 along with this work; if not, write to the Free Software Foundation, 17 * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. 18 * 19 * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA 20 * or visit www.oracle.com if you need additional information or have any 21 * questions. 22 */ 23 package jdk.vm.ci.hotspot; 24 25 import jdk.vm.ci.meta.DeoptimizationReason; 26 import jdk.vm.ci.meta.JavaMethodProfile; 27 import jdk.vm.ci.meta.JavaTypeProfile; 28 import jdk.vm.ci.meta.ProfilingInfo; 29 import jdk.vm.ci.meta.TriState; 30 31 public final class HotSpotProfilingInfo implements ProfilingInfo { 32 33 private final HotSpotMethodData methodData; 34 private final HotSpotResolvedJavaMethod method; 35 36 private boolean isMature; 37 private int position; 38 private int hintPosition; 39 private int hintBCI; 40 private HotSpotMethodDataAccessor dataAccessor; 41 42 private boolean includeNormal; 43 private boolean includeOSR; 44 45 public HotSpotProfilingInfo(HotSpotMethodData methodData, HotSpotResolvedJavaMethod method, boolean includeNormal, boolean includeOSR) { 46 this.methodData = methodData; 47 this.method = method; 48 this.includeNormal = includeNormal; 49 this.includeOSR = includeOSR; 50 this.isMature = methodData.isProfileMature(); 51 hintPosition = 0; 52 hintBCI = -1; 53 } 54 55 @Override 56 public int getCodeSize() { 57 return method.getCodeSize(); 58 } 59 60 public int getDecompileCount() { 61 return methodData.getDecompileCount(); 62 } 63 64 public int getOverflowRecompileCount() { 65 return methodData.getOverflowRecompileCount(); | 11 * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License 12 * version 2 for more details (a copy is included in the LICENSE file that 13 * accompanied this code). 14 * 15 * You should have received a copy of the GNU General Public License version 16 * 2 along with this work; if not, write to the Free Software Foundation, 17 * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. 18 * 19 * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA 20 * or visit www.oracle.com if you need additional information or have any 21 * questions. 22 */ 23 package jdk.vm.ci.hotspot; 24 25 import jdk.vm.ci.meta.DeoptimizationReason; 26 import jdk.vm.ci.meta.JavaMethodProfile; 27 import jdk.vm.ci.meta.JavaTypeProfile; 28 import jdk.vm.ci.meta.ProfilingInfo; 29 import jdk.vm.ci.meta.TriState; 30 31 final class HotSpotProfilingInfo implements ProfilingInfo { 32 33 private final HotSpotMethodData methodData; 34 private final HotSpotResolvedJavaMethod method; 35 36 private boolean isMature; 37 private int position; 38 private int hintPosition; 39 private int hintBCI; 40 private HotSpotMethodDataAccessor dataAccessor; 41 42 private boolean includeNormal; 43 private boolean includeOSR; 44 45 HotSpotProfilingInfo(HotSpotMethodData methodData, HotSpotResolvedJavaMethod method, boolean includeNormal, boolean includeOSR) { 46 this.methodData = methodData; 47 this.method = method; 48 this.includeNormal = includeNormal; 49 this.includeOSR = includeOSR; 50 this.isMature = methodData.isProfileMature(); 51 hintPosition = 0; 52 hintBCI = -1; 53 } 54 55 @Override 56 public int getCodeSize() { 57 return method.getCodeSize(); 58 } 59 60 public int getDecompileCount() { 61 return methodData.getDecompileCount(); 62 } 63 64 public int getOverflowRecompileCount() { 65 return methodData.getOverflowRecompileCount(); |