agent/src/share/classes/sun/jvm/hotspot/opto/Block.java
Index Unified diffs Context diffs Sdiffs Patch New Old Previous File Next File JDK-8033260 Cdiff agent/src/share/classes/sun/jvm/hotspot/opto/Block.java

agent/src/share/classes/sun/jvm/hotspot/opto/Block.java

Print this page
rev 5903 : 8033260: assert(lrg._area >= 0.0) failed: negative spill area
Summary: Change type from float to double on block frequency, and add check for +Inf - +Inf operation
Reviewed-by:

*** 46,76 **** succsField = type.getAddressField("_succs"); numSuccsField = new CIntField(type.getCIntegerField("_num_succs"), 0); preOrderField = new CIntField(type.getCIntegerField("_pre_order"), 0); domDepthField = new CIntField(type.getCIntegerField("_dom_depth"), 0); idomField = type.getAddressField("_idom"); ! freqField = type.getJFloatField("_freq"); } private static AddressField nodesField; private static AddressField succsField; private static CIntField numSuccsField; private static CIntField preOrderField; private static CIntField domDepthField; private static AddressField idomField; ! private static JFloatField freqField; public Block(Address addr) { super(addr); } public int preOrder() { return (int)preOrderField.getValue(getAddress()); } ! public float freq() { ! return (float)freqField.getValue(getAddress()); } public Node_List nodes() { return new Node_List(getAddress().addOffsetTo(nodesField.getOffset())); } --- 46,76 ---- succsField = type.getAddressField("_succs"); numSuccsField = new CIntField(type.getCIntegerField("_num_succs"), 0); preOrderField = new CIntField(type.getCIntegerField("_pre_order"), 0); domDepthField = new CIntField(type.getCIntegerField("_dom_depth"), 0); idomField = type.getAddressField("_idom"); ! freqField = type.getJDoubleField("_freq"); } private static AddressField nodesField; private static AddressField succsField; private static CIntField numSuccsField; private static CIntField preOrderField; private static CIntField domDepthField; private static AddressField idomField; ! private static JDoubleField freqField; public Block(Address addr) { super(addr); } public int preOrder() { return (int)preOrderField.getValue(getAddress()); } ! public double freq() { ! return (double)freqField.getValue(getAddress()); } public Node_List nodes() { return new Node_List(getAddress().addOffsetTo(nodesField.getOffset())); }
agent/src/share/classes/sun/jvm/hotspot/opto/Block.java
Index Unified diffs Context diffs Sdiffs Patch New Old Previous File Next File