mirror of
https://github.com/openjdk/jdk.git
synced 2025-08-28 23:34:52 +02:00
8243287: Removal of Unsafe::defineAnonymousClass
Reviewed-by: iklam, mchung, alanb, dholmes
This commit is contained in:
parent
a564f2cbd5
commit
e14b026841
122 changed files with 328 additions and 3679 deletions
|
@ -117,18 +117,17 @@ class ClassLoaderData : public CHeapObj<mtClass> {
|
|||
Mutex* _metaspace_lock; // Locks the metaspace for allocations and setup.
|
||||
bool _unloading; // true if this class loader goes away
|
||||
bool _has_class_mirror_holder; // If true, CLD is dedicated to one class and that class determines
|
||||
// the CLDs lifecycle. For example, a non-strong hidden class or an
|
||||
// unsafe anonymous class. Arrays of these classes are also assigned
|
||||
// the CLDs lifecycle. For example, a non-strong hidden class.
|
||||
// Arrays of these classes are also assigned
|
||||
// to these class loader datas.
|
||||
|
||||
// Remembered sets support for the oops in the class loader data.
|
||||
bool _modified_oops; // Card Table Equivalent
|
||||
|
||||
int _keep_alive; // if this CLD is kept alive.
|
||||
// Used for non-strong hidden classes, unsafe anonymous classes and the
|
||||
// Used for non-strong hidden classes and the
|
||||
// boot class loader. _keep_alive does not need to be volatile or
|
||||
// atomic since there is one unique CLD per non-strong hidden class
|
||||
// or unsafe anonymous class.
|
||||
// atomic since there is one unique CLD per non-strong hidden class.
|
||||
|
||||
volatile int _claim; // non-zero if claimed, for example during GC traces.
|
||||
// To avoid applying oop closure more than once.
|
||||
|
@ -238,15 +237,15 @@ class ClassLoaderData : public CHeapObj<mtClass> {
|
|||
}
|
||||
|
||||
// Returns true if this class loader data is for the system class loader.
|
||||
// (Note that the class loader data may be for a non-strong hidden class or unsafe anonymous class)
|
||||
// (Note that the class loader data may be for a non-strong hidden class)
|
||||
bool is_system_class_loader_data() const;
|
||||
|
||||
// Returns true if this class loader data is for the platform class loader.
|
||||
// (Note that the class loader data may be for a non-strong hidden class or unsafe anonymous class)
|
||||
// (Note that the class loader data may be for a non-strong hidden class)
|
||||
bool is_platform_class_loader_data() const;
|
||||
|
||||
// Returns true if this class loader data is for the boot class loader.
|
||||
// (Note that the class loader data may be for a non-strong hidden class or unsafe anonymous class)
|
||||
// (Note that the class loader data may be for a non-strong hidden class)
|
||||
inline bool is_boot_class_loader_data() const;
|
||||
|
||||
bool is_builtin_class_loader_data() const;
|
||||
|
@ -267,8 +266,7 @@ class ClassLoaderData : public CHeapObj<mtClass> {
|
|||
return _unloading;
|
||||
}
|
||||
|
||||
// Used to refcount a non-strong hidden class's or unsafe anonymous class's CLD in order to
|
||||
// indicate their aliveness.
|
||||
// Used to refcount a non-strong hidden class's s CLD in order to indicate their aliveness.
|
||||
void inc_keep_alive();
|
||||
void dec_keep_alive();
|
||||
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue