--- a/hotspot/src/share/vm/c1/c1_Optimizer.cpp Fri Jul 01 10:37:37 2011 -0700
+++ b/hotspot/src/share/vm/c1/c1_Optimizer.cpp Tue Jul 05 16:07:54 2011 -0700
@@ -642,7 +642,7 @@
void NullCheckVisitor::do_NewTypeArray (NewTypeArray* x) { nce()->handle_NewArray(x); }
void NullCheckVisitor::do_NewObjectArray (NewObjectArray* x) { nce()->handle_NewArray(x); }
void NullCheckVisitor::do_NewMultiArray (NewMultiArray* x) { nce()->handle_NewArray(x); }
-void NullCheckVisitor::do_CheckCast (CheckCast* x) {}
+void NullCheckVisitor::do_CheckCast (CheckCast* x) { nce()->clear_last_explicit_null_check(); }
void NullCheckVisitor::do_InstanceOf (InstanceOf* x) {}
void NullCheckVisitor::do_MonitorEnter (MonitorEnter* x) { nce()->handle_AccessMonitor(x); }
void NullCheckVisitor::do_MonitorExit (MonitorExit* x) { nce()->handle_AccessMonitor(x); }