--- old/src/share/vm/opto/escape.cpp 2013-10-08 12:06:06.000000000 -0700 +++ new/src/share/vm/opto/escape.cpp 2013-10-08 12:06:06.000000000 -0700 @@ -780,6 +780,7 @@ } } else { // Allocate instance if (cik->is_subclass_of(_compile->env()->Thread_klass()) || + cik->is_subclass_of(_compile->env()->Reference_klass()) || !cik->is_instance_klass() || // StressReflectiveCode cik->as_instance_klass()->has_finalizer()) { es = PointsToNode::GlobalEscape;