hotspot/src/share/vm/opto/graphKit.cpp
changeset 2154 72a9b7284ccf
parent 2105 347008ce7984
parent 2131 98f9cef66a34
child 2259 d3c946e7f127
equal deleted inserted replaced
2106:ec595a5e793e 2154:72a9b7284ccf
  1146   BoolTest::mask btest = assert_null ? BoolTest::eq : BoolTest::ne;
  1146   BoolTest::mask btest = assert_null ? BoolTest::eq : BoolTest::ne;
  1147   BoolNode *btst = new (C, 2) BoolNode( chk, btest);
  1147   BoolNode *btst = new (C, 2) BoolNode( chk, btest);
  1148   Node   *tst = _gvn.transform( btst );
  1148   Node   *tst = _gvn.transform( btst );
  1149 
  1149 
  1150   //-----------
  1150   //-----------
  1151   // if peephole optimizations occured, a prior test existed.
  1151   // if peephole optimizations occurred, a prior test existed.
  1152   // If a prior test existed, maybe it dominates as we can avoid this test.
  1152   // If a prior test existed, maybe it dominates as we can avoid this test.
  1153   if (tst != btst && type == T_OBJECT) {
  1153   if (tst != btst && type == T_OBJECT) {
  1154     // At this point we want to scan up the CFG to see if we can
  1154     // At this point we want to scan up the CFG to see if we can
  1155     // find an identical test (and so avoid this test altogether).
  1155     // find an identical test (and so avoid this test altogether).
  1156     Node *cfg = control();
  1156     Node *cfg = control();
  1194   // must-be-null assertion has failed.  This could cause performance
  1194   // must-be-null assertion has failed.  This could cause performance
  1195   // problems for a method after its first do_null_assert failure.
  1195   // problems for a method after its first do_null_assert failure.
  1196   // Consider using 'Reason_class_check' instead?
  1196   // Consider using 'Reason_class_check' instead?
  1197 
  1197 
  1198   // To cause an implicit null check, we set the not-null probability
  1198   // To cause an implicit null check, we set the not-null probability
  1199   // to the maximum (PROB_MAX).  For an explicit check the probablity
  1199   // to the maximum (PROB_MAX).  For an explicit check the probability
  1200   // is set to a smaller value.
  1200   // is set to a smaller value.
  1201   if (null_control != NULL || too_many_traps(reason)) {
  1201   if (null_control != NULL || too_many_traps(reason)) {
  1202     // probability is less likely
  1202     // probability is less likely
  1203     ok_prob =  PROB_LIKELY_MAG(3);
  1203     ok_prob =  PROB_LIKELY_MAG(3);
  1204   } else if (!assert_null &&
  1204   } else if (!assert_null &&