< prev index next >

src/hotspot/share/oops/instanceKlass.cpp

Print this page
@@ -2586,11 +2586,17 @@
    }
  
    // Initialize @ValueBased class annotation
    if (DiagnoseSyncOnValueBasedClasses && has_value_based_class_annotation()) {
      set_is_value_based();
-     set_prototype_header(markWord::prototype());
+     markWord prototype = markWord::prototype();
+ #ifdef _LP64
+     if (UseCompactObjectHeaders) {
+       prototype = prototype.set_klass(this);
+     }
+ #endif
+     set_prototype_header(prototype);
    }
  }
  
  // Check if a class or any of its supertypes has a version older than 50.
  // CDS will not perform verification of old classes during dump time because
< prev index next >