src/hotspot/share/classfile/systemDictionary.hpp
changeset 51329 9c68699bebe5
parent 51180 b7eb9cc56277
child 51371 3ab8b84e93cd
equal deleted inserted replaced
51328:fad2334b2906 51329:9c68699bebe5
   278   static Klass* resolve_or_null(Symbol* class_name, TRAPS);
   278   static Klass* resolve_or_null(Symbol* class_name, TRAPS);
   279 
   279 
   280   // Resolve a superclass or superinterface. Called from ClassFileParser,
   280   // Resolve a superclass or superinterface. Called from ClassFileParser,
   281   // parse_interfaces, resolve_instance_class_or_null, load_shared_class
   281   // parse_interfaces, resolve_instance_class_or_null, load_shared_class
   282   // "child_name" is the class whose super class or interface is being resolved.
   282   // "child_name" is the class whose super class or interface is being resolved.
   283   static Klass* resolve_super_or_fail(Symbol* child_name,
   283   static InstanceKlass* resolve_super_or_fail(Symbol* child_name,
   284                                       Symbol* class_name,
   284                                               Symbol* class_name,
   285                                       Handle class_loader,
   285                                               Handle class_loader,
   286                                       Handle protection_domain,
   286                                               Handle protection_domain,
   287                                       bool is_superclass,
   287                                               bool is_superclass,
   288                                       TRAPS);
   288                                               TRAPS);
   289 
   289 
   290   // Parse new stream. This won't update the dictionary or
   290   // Parse new stream. This won't update the dictionary or
   291   // class hierarchy, simply parse the stream. Used by JVMTI RedefineClasses.
   291   // class hierarchy, simply parse the stream. Used by JVMTI RedefineClasses.
   292   // Also used by Unsafe_DefineAnonymousClass
   292   // Also used by Unsafe_DefineAnonymousClass
   293   static InstanceKlass* parse_stream(Symbol* class_name,
   293   static InstanceKlass* parse_stream(Symbol* class_name,
   636   static LoaderConstraintTable* constraints() { return _loader_constraints; }
   636   static LoaderConstraintTable* constraints() { return _loader_constraints; }
   637   static ResolutionErrorTable* resolution_errors() { return _resolution_errors; }
   637   static ResolutionErrorTable* resolution_errors() { return _resolution_errors; }
   638   static SymbolPropertyTable* invoke_method_table() { return _invoke_method_table; }
   638   static SymbolPropertyTable* invoke_method_table() { return _invoke_method_table; }
   639 
   639 
   640   // Basic loading operations
   640   // Basic loading operations
   641   static Klass* resolve_instance_class_or_null(Symbol* class_name, Handle class_loader, Handle protection_domain, TRAPS);
   641   static InstanceKlass* resolve_instance_class_or_null_helper(Symbol* name,
       
   642                                                               Handle class_loader,
       
   643                                                               Handle protection_domain,
       
   644                                                               TRAPS);
       
   645   static InstanceKlass* resolve_instance_class_or_null(Symbol* class_name, Handle class_loader, Handle protection_domain, TRAPS);
   642   static Klass* resolve_array_class_or_null(Symbol* class_name, Handle class_loader, Handle protection_domain, TRAPS);
   646   static Klass* resolve_array_class_or_null(Symbol* class_name, Handle class_loader, Handle protection_domain, TRAPS);
   643   static InstanceKlass* handle_parallel_super_load(Symbol* class_name, Symbol* supername, Handle class_loader, Handle protection_domain, Handle lockObject, TRAPS);
   647   static InstanceKlass* handle_parallel_super_load(Symbol* class_name, Symbol* supername, Handle class_loader, Handle protection_domain, Handle lockObject, TRAPS);
   644   // Wait on SystemDictionary_lock; unlocks lockObject before
   648   // Wait on SystemDictionary_lock; unlocks lockObject before
   645   // waiting; relocks lockObject with correct recursion count
   649   // waiting; relocks lockObject with correct recursion count
   646   // after waiting, but before reentering SystemDictionary_lock
   650   // after waiting, but before reentering SystemDictionary_lock