diff src/share/vm/classfile/systemDictionary.cpp @ 14909:4ca6dc0799b6

Backout jdk9 merge
author Gilles Duboscq <duboscq@ssw.jku.at>
date Tue, 01 Apr 2014 13:57:07 +0200
parents d8041d695d19
children a20be10ad437
line wrap: on
line diff
--- a/src/share/vm/classfile/systemDictionary.cpp	Tue Apr 01 14:09:03 2014 +0200
+++ b/src/share/vm/classfile/systemDictionary.cpp	Tue Apr 01 13:57:07 2014 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 1997, 2014, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 1997, 2013, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -1049,9 +1049,6 @@
       add_to_hierarchy(k, CHECK_NULL); // No exception, but can block
 
       // But, do not add to system dictionary.
-
-      // compiled code dependencies need to be validated anyway
-      notice_modification();
     }
 
     // Rewrite and patch constant pool here.
@@ -2650,6 +2647,23 @@
   constraints()->verify(dictionary(), placeholders());
 }
 
+
+void SystemDictionary::verify_obj_klass_present(Symbol* class_name,
+                                                ClassLoaderData* loader_data) {
+  GCMutexLocker mu(SystemDictionary_lock);
+  Symbol* name;
+
+  Klass* probe = find_class(class_name, loader_data);
+  if (probe == NULL) {
+    probe = SystemDictionary::find_shared_class(class_name);
+    if (probe == NULL) {
+      name = find_placeholder(class_name, loader_data);
+    }
+  }
+  guarantee(probe != NULL || name != NULL,
+            "Loaded klasses should be in SystemDictionary");
+}
+
 // utility function for class load event
 void SystemDictionary::post_class_load_event(const Ticks& start_time,
                                              instanceKlassHandle k,