hotspot/src/share/vm/c1/c1_Canonicalizer.cpp
changeset 33638 ef49ed90010b
parent 33589 7cbd1b2c139b
parent 33633 8a83967eb351
child 36058 caff909b4e1f
--- a/hotspot/src/share/vm/c1/c1_Canonicalizer.cpp	Thu Nov 05 19:31:57 2015 +0100
+++ b/hotspot/src/share/vm/c1/c1_Canonicalizer.cpp	Fri Nov 06 11:34:03 2015 +0100
@@ -728,7 +728,9 @@
         set_canonical(new IfInstanceOf(inst->klass(), inst->obj(), true, inst->state_before()->bci(), is_inst_sux, no_inst_sux));
       }
     }
-  } else if (rt == objectNull && (l->as_NewInstance() || l->as_NewArray())) {
+  } else if (rt == objectNull &&
+           (l->as_NewInstance() || l->as_NewArray() ||
+             (UseNewCode && l->as_Local() && l->as_Local()->is_receiver()))) {
     if (x->cond() == Instruction::eql) {
       BlockBegin* sux = x->fsux();
       set_canonical(new Goto(sux, x->state_before(), is_safepoint(x, sux)));