mirror of
https://github.com/openjdk/jdk.git
synced 2025-08-28 15:24:43 +02:00
8271939
: Clean up primitive raw accessors in oopDesc
Reviewed-by: stefank, tschatzl
This commit is contained in:
parent
b84a9c7b37
commit
a86ac0d1e3
10 changed files with 13 additions and 43 deletions
|
@ -1022,7 +1022,7 @@ oop HeapShared::archive_reachable_objects_from(int level,
|
|||
// class_data will be restored explicitly at run time.
|
||||
guarantee(orig_obj == SystemDictionary::java_platform_loader() ||
|
||||
orig_obj == SystemDictionary::java_system_loader() ||
|
||||
java_lang_ClassLoader::loader_data_raw(orig_obj) == NULL, "must be");
|
||||
java_lang_ClassLoader::loader_data(orig_obj) == NULL, "must be");
|
||||
java_lang_ClassLoader::release_set_loader_data(archived_obj, NULL);
|
||||
}
|
||||
}
|
||||
|
|
|
@ -1380,14 +1380,6 @@ void java_lang_Class::fixup_module_field(Klass* k, Handle module) {
|
|||
java_lang_Class::set_module(k->java_mirror(), module());
|
||||
}
|
||||
|
||||
int java_lang_Class::oop_size(oop java_class) {
|
||||
assert(_oop_size_offset != 0, "must be set");
|
||||
int size = java_class->int_field(_oop_size_offset);
|
||||
assert(size > 0, "Oop size must be greater than zero, not %d", size);
|
||||
return size;
|
||||
}
|
||||
|
||||
|
||||
void java_lang_Class::set_oop_size(HeapWord* java_class, int size) {
|
||||
assert(_oop_size_offset != 0, "must be set");
|
||||
assert(size > 0, "Oop size must be greater than zero, not %d", size);
|
||||
|
@ -1399,11 +1391,6 @@ int java_lang_Class::static_oop_field_count(oop java_class) {
|
|||
return java_class->int_field(_static_oop_field_count_offset);
|
||||
}
|
||||
|
||||
int java_lang_Class::static_oop_field_count_raw(oop java_class) {
|
||||
assert(_static_oop_field_count_offset != 0, "must be set");
|
||||
return java_class->int_field_raw(_static_oop_field_count_offset);
|
||||
}
|
||||
|
||||
void java_lang_Class::set_static_oop_field_count(oop java_class, int size) {
|
||||
assert(_static_oop_field_count_offset != 0, "must be set");
|
||||
java_class->int_field_put(_static_oop_field_count_offset, size);
|
||||
|
@ -1510,16 +1497,6 @@ oop java_lang_Class::create_basic_type_mirror(const char* basic_type_name, Basic
|
|||
return java_class;
|
||||
}
|
||||
|
||||
|
||||
Klass* java_lang_Class::as_Klass_raw(oop java_class) {
|
||||
//%note memory_2
|
||||
assert(java_lang_Class::is_instance(java_class), "must be a Class object");
|
||||
Klass* k = ((Klass*)java_class->metadata_field_raw(_klass_offset));
|
||||
assert(k == NULL || k->is_klass(), "type check");
|
||||
return k;
|
||||
}
|
||||
|
||||
|
||||
void java_lang_Class::set_klass(oop java_class, Klass* klass) {
|
||||
assert(java_lang_Class::is_instance(java_class), "must be a Class object");
|
||||
java_class->metadata_field_put(_klass_offset, klass);
|
||||
|
@ -4263,10 +4240,10 @@ ClassLoaderData* java_lang_ClassLoader::loader_data_acquire(oop loader) {
|
|||
return HeapAccess<MO_ACQUIRE>::load_at(loader, _loader_data_offset);
|
||||
}
|
||||
|
||||
ClassLoaderData* java_lang_ClassLoader::loader_data_raw(oop loader) {
|
||||
ClassLoaderData* java_lang_ClassLoader::loader_data(oop loader) {
|
||||
assert(loader != NULL, "loader must not be NULL");
|
||||
assert(oopDesc::is_oop(loader), "loader must be oop");
|
||||
return RawAccess<>::load_at(loader, _loader_data_offset);
|
||||
return HeapAccess<>::load_at(loader, _loader_data_offset);
|
||||
}
|
||||
|
||||
void java_lang_ClassLoader::release_set_loader_data(oop loader, ClassLoaderData* new_data) {
|
||||
|
|
|
@ -322,7 +322,6 @@ class java_lang_Class : AllStatic {
|
|||
|
||||
// Conversion
|
||||
static Klass* as_Klass(oop java_class);
|
||||
static Klass* as_Klass_raw(oop java_class);
|
||||
static void set_klass(oop java_class, Klass* klass);
|
||||
static BasicType as_BasicType(oop java_class, Klass** reference_klass = NULL);
|
||||
static Symbol* as_signature(oop java_class, bool intern_if_not_found);
|
||||
|
@ -368,10 +367,8 @@ class java_lang_Class : AllStatic {
|
|||
static void set_source_file(oop java_class, oop source_file);
|
||||
|
||||
static int oop_size(oop java_class);
|
||||
static int oop_size_raw(oop java_class);
|
||||
static void set_oop_size(HeapWord* java_class, int size);
|
||||
static int static_oop_field_count(oop java_class);
|
||||
static int static_oop_field_count_raw(oop java_class);
|
||||
static void set_static_oop_field_count(oop java_class, int size);
|
||||
|
||||
static GrowableArray<Klass*>* fixup_mirror_list() {
|
||||
|
@ -1354,7 +1351,7 @@ class java_lang_ClassLoader : AllStatic {
|
|||
static void serialize_offsets(SerializeClosure* f) NOT_CDS_RETURN;
|
||||
|
||||
static ClassLoaderData* loader_data_acquire(oop loader);
|
||||
static ClassLoaderData* loader_data_raw(oop loader);
|
||||
static ClassLoaderData* loader_data(oop loader);
|
||||
static void release_set_loader_data(oop loader, ClassLoaderData* new_data);
|
||||
|
||||
static oop parent(oop loader);
|
||||
|
|
|
@ -261,9 +261,9 @@ inline bool java_lang_Class::is_primitive(oop java_class) {
|
|||
return is_primitive;
|
||||
}
|
||||
|
||||
inline int java_lang_Class::oop_size_raw(oop java_class) {
|
||||
inline int java_lang_Class::oop_size(oop java_class) {
|
||||
assert(_oop_size_offset != 0, "must be set");
|
||||
int size = java_class->int_field_raw(_oop_size_offset);
|
||||
int size = java_class->int_field(_oop_size_offset);
|
||||
assert(size > 0, "Oop size must be greater than zero, not %d", size);
|
||||
return size;
|
||||
}
|
||||
|
|
|
@ -40,7 +40,7 @@ inline void InstanceClassLoaderKlass::oop_oop_iterate(oop obj, OopClosureType* c
|
|||
InstanceKlass::oop_oop_iterate<T>(obj, closure);
|
||||
|
||||
if (Devirtualizer::do_metadata(closure)) {
|
||||
ClassLoaderData* cld = java_lang_ClassLoader::loader_data_raw(obj);
|
||||
ClassLoaderData* cld = java_lang_ClassLoader::loader_data(obj);
|
||||
// cld can be null if we have a non-registered class loader.
|
||||
if (cld != NULL) {
|
||||
Devirtualizer::do_cld(closure, cld);
|
||||
|
@ -62,7 +62,7 @@ inline void InstanceClassLoaderKlass::oop_oop_iterate_bounded(oop obj, OopClosur
|
|||
|
||||
if (Devirtualizer::do_metadata(closure)) {
|
||||
if (mr.contains(obj)) {
|
||||
ClassLoaderData* cld = java_lang_ClassLoader::loader_data_raw(obj);
|
||||
ClassLoaderData* cld = java_lang_ClassLoader::loader_data(obj);
|
||||
// cld can be null if we have a non-registered class loader.
|
||||
if (cld != NULL) {
|
||||
Devirtualizer::do_cld(closure, cld);
|
||||
|
|
|
@ -56,7 +56,7 @@ instanceOop InstanceMirrorKlass::allocate_instance(Klass* k, TRAPS) {
|
|||
}
|
||||
|
||||
int InstanceMirrorKlass::oop_size(oop obj) const {
|
||||
return java_lang_Class::oop_size_raw(obj);
|
||||
return java_lang_Class::oop_size(obj);
|
||||
}
|
||||
|
||||
int InstanceMirrorKlass::compute_static_oop_field_count(oop obj) {
|
||||
|
|
|
@ -38,7 +38,7 @@
|
|||
template <typename T, class OopClosureType>
|
||||
void InstanceMirrorKlass::oop_oop_iterate_statics(oop obj, OopClosureType* closure) {
|
||||
T* p = (T*)start_of_static_fields(obj);
|
||||
T* const end = p + java_lang_Class::static_oop_field_count_raw(obj);
|
||||
T* const end = p + java_lang_Class::static_oop_field_count(obj);
|
||||
|
||||
for (; p < end; ++p) {
|
||||
Devirtualizer::do_oop(closure, p);
|
||||
|
@ -50,7 +50,7 @@ void InstanceMirrorKlass::oop_oop_iterate(oop obj, OopClosureType* closure) {
|
|||
InstanceKlass::oop_oop_iterate<T>(obj, closure);
|
||||
|
||||
if (Devirtualizer::do_metadata(closure)) {
|
||||
Klass* klass = java_lang_Class::as_Klass_raw(obj);
|
||||
Klass* klass = java_lang_Class::as_Klass(obj);
|
||||
// We'll get NULL for primitive mirrors.
|
||||
if (klass != NULL) {
|
||||
if (klass->class_loader_data() == NULL) {
|
||||
|
@ -97,7 +97,7 @@ void InstanceMirrorKlass::oop_oop_iterate_statics_bounded(oop obj,
|
|||
OopClosureType* closure,
|
||||
MemRegion mr) {
|
||||
T* p = (T*)start_of_static_fields(obj);
|
||||
T* end = p + java_lang_Class::static_oop_field_count_raw(obj);
|
||||
T* end = p + java_lang_Class::static_oop_field_count(obj);
|
||||
|
||||
T* const l = (T*)mr.start();
|
||||
T* const h = (T*)mr.end();
|
||||
|
@ -123,7 +123,7 @@ void InstanceMirrorKlass::oop_oop_iterate_bounded(oop obj, OopClosureType* closu
|
|||
|
||||
if (Devirtualizer::do_metadata(closure)) {
|
||||
if (mr.contains(obj)) {
|
||||
Klass* klass = java_lang_Class::as_Klass_raw(obj);
|
||||
Klass* klass = java_lang_Class::as_Klass(obj);
|
||||
// We'll get NULL for primitive mirrors.
|
||||
if (klass != NULL) {
|
||||
Devirtualizer::do_klass(closure, klass);
|
||||
|
|
|
@ -186,7 +186,6 @@ void oopDesc::address_field_put(int offset, address value) { HeapAcce
|
|||
void oopDesc::release_address_field_put(int offset, address value) { HeapAccess<MO_RELEASE>::store_at(as_oop(), offset, value); }
|
||||
|
||||
Metadata* oopDesc::metadata_field(int offset) const { return HeapAccess<>::load_at(as_oop(), offset); }
|
||||
Metadata* oopDesc::metadata_field_raw(int offset) const { return RawAccess<>::load_at(as_oop(), offset); }
|
||||
void oopDesc::metadata_field_put(int offset, Metadata* value) { HeapAccess<>::store_at(as_oop(), offset, value); }
|
||||
|
||||
Metadata* oopDesc::metadata_field_acquire(int offset) const { return HeapAccess<MO_ACQUIRE>::load_at(as_oop(), offset); }
|
||||
|
|
|
@ -147,7 +147,6 @@ class oopDesc {
|
|||
void obj_field_put_volatile(int offset, oop value);
|
||||
|
||||
Metadata* metadata_field(int offset) const;
|
||||
Metadata* metadata_field_raw(int offset) const;
|
||||
void metadata_field_put(int offset, Metadata* value);
|
||||
|
||||
Metadata* metadata_field_acquire(int offset) const;
|
||||
|
@ -165,7 +164,6 @@ class oopDesc {
|
|||
void bool_field_put_volatile(int offset, jboolean contents);
|
||||
|
||||
jint int_field(int offset) const;
|
||||
jint int_field_raw(int offset) const;
|
||||
void int_field_put(int offset, jint contents);
|
||||
|
||||
jshort short_field(int offset) const;
|
||||
|
|
|
@ -239,7 +239,6 @@ inline jshort oopDesc::short_field(int offset) const { return Hea
|
|||
inline void oopDesc::short_field_put(int offset, jshort value) { HeapAccess<>::store_at(as_oop(), offset, value); }
|
||||
|
||||
inline jint oopDesc::int_field(int offset) const { return HeapAccess<>::load_at(as_oop(), offset); }
|
||||
inline jint oopDesc::int_field_raw(int offset) const { return RawAccess<>::load_at(as_oop(), offset); }
|
||||
inline void oopDesc::int_field_put(int offset, jint value) { HeapAccess<>::store_at(as_oop(), offset, value); }
|
||||
|
||||
inline jlong oopDesc::long_field(int offset) const { return HeapAccess<>::load_at(as_oop(), offset); }
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue