hotspot/src/share/vm/oops/instanceKlass.cpp
changeset 14477 95e66ea71f71
parent 14385 959bbcc16725
child 14490 5bb45ed999ee
--- a/hotspot/src/share/vm/oops/instanceKlass.cpp	Fri Nov 09 08:36:17 2012 -0800
+++ b/hotspot/src/share/vm/oops/instanceKlass.cpp	Mon Nov 12 14:03:53 2012 -0800
@@ -1052,6 +1052,13 @@
 }
 
 void InstanceKlass::call_class_initializer_impl(instanceKlassHandle this_oop, TRAPS) {
+  if (ReplayCompiles &&
+      (ReplaySuppressInitializers == 1 ||
+       ReplaySuppressInitializers >= 2 && this_oop->class_loader() != NULL)) {
+    // Hide the existence of the initializer for the purpose of replaying the compile
+    return;
+  }
+
   methodHandle h_method(THREAD, this_oop->class_initializer());
   assert(!this_oop->is_initialized(), "we cannot initialize twice");
   if (TraceClassInitialization) {