mirror of
https://github.com/openjdk/jdk.git
synced 2025-08-28 15:24:43 +02:00
8192025: Less referential references
Reviewed-by: coleenp, eosterlund, mchung, ahgross, rhalade
This commit is contained in:
parent
9714f829c9
commit
1ac19a3166
8 changed files with 107 additions and 4 deletions
|
@ -3556,6 +3556,34 @@ void java_lang_ref_SoftReference::set_clock(jlong value) {
|
|||
base->long_field_put(static_clock_offset, value);
|
||||
}
|
||||
|
||||
// Support for java_lang_ref_ReferenceQueue
|
||||
|
||||
oop java_lang_ref_ReferenceQueue::NULL_queue() {
|
||||
InstanceKlass* ik = SystemDictionary::ReferenceQueue_klass();
|
||||
oop mirror = ik->java_mirror();
|
||||
return mirror->obj_field(static_NULL_queue_offset);
|
||||
}
|
||||
|
||||
oop java_lang_ref_ReferenceQueue::ENQUEUED_queue() {
|
||||
InstanceKlass* ik = SystemDictionary::ReferenceQueue_klass();
|
||||
oop mirror = ik->java_mirror();
|
||||
return mirror->obj_field(static_ENQUEUED_queue_offset);
|
||||
}
|
||||
|
||||
void java_lang_ref_ReferenceQueue::compute_offsets() {
|
||||
InstanceKlass* k = SystemDictionary::ReferenceQueue_klass();
|
||||
compute_offset(static_NULL_queue_offset,
|
||||
k,
|
||||
vmSymbols::referencequeue_null_name(),
|
||||
vmSymbols::referencequeue_signature(),
|
||||
true /* is_static */);
|
||||
compute_offset(static_ENQUEUED_queue_offset,
|
||||
k,
|
||||
vmSymbols::referencequeue_enqueued_name(),
|
||||
vmSymbols::referencequeue_signature(),
|
||||
true /* is_static */);
|
||||
}
|
||||
|
||||
// Support for java_lang_invoke_DirectMethodHandle
|
||||
|
||||
int java_lang_invoke_DirectMethodHandle::_member_offset;
|
||||
|
@ -4193,6 +4221,8 @@ int java_lang_ref_Reference::referent_offset;
|
|||
int java_lang_ref_Reference::queue_offset;
|
||||
int java_lang_ref_Reference::next_offset;
|
||||
int java_lang_ref_Reference::discovered_offset;
|
||||
int java_lang_ref_ReferenceQueue::static_NULL_queue_offset;
|
||||
int java_lang_ref_ReferenceQueue::static_ENQUEUED_queue_offset;
|
||||
int java_lang_ref_SoftReference::timestamp_offset;
|
||||
int java_lang_ref_SoftReference::static_clock_offset;
|
||||
int java_lang_ClassLoader::parent_offset;
|
||||
|
@ -4437,6 +4467,7 @@ void JavaClasses::compute_offsets() {
|
|||
java_lang_StackTraceElement::compute_offsets();
|
||||
java_lang_StackFrameInfo::compute_offsets();
|
||||
java_lang_LiveStackFrameInfo::compute_offsets();
|
||||
java_lang_ref_ReferenceQueue::compute_offsets();
|
||||
|
||||
// generated interpreter code wants to know about the offsets we just computed:
|
||||
AbstractAssembler::update_delayed_values();
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue