equal
deleted
inserted
replaced
2555 InstanceKlass* ik = InstanceKlass::cast(SystemDictionary::SoftReference_klass()); |
2555 InstanceKlass* ik = InstanceKlass::cast(SystemDictionary::SoftReference_klass()); |
2556 jlong* offset = (jlong*)ik->static_field_addr(static_clock_offset); |
2556 jlong* offset = (jlong*)ik->static_field_addr(static_clock_offset); |
2557 *offset = value; |
2557 *offset = value; |
2558 } |
2558 } |
2559 |
2559 |
|
2560 // Support for java_lang_invoke_DirectMethodHandle |
|
2561 |
|
2562 int java_lang_invoke_DirectMethodHandle::_member_offset; |
|
2563 |
|
2564 oop java_lang_invoke_DirectMethodHandle::member(oop dmh) { |
|
2565 oop member_name = NULL; |
|
2566 bool is_dmh = dmh->is_oop() && java_lang_invoke_DirectMethodHandle::is_instance(dmh); |
|
2567 assert(is_dmh, "a DirectMethodHandle oop is expected"); |
|
2568 if (is_dmh) { |
|
2569 member_name = dmh->obj_field(member_offset_in_bytes()); |
|
2570 } |
|
2571 return member_name; |
|
2572 } |
|
2573 |
|
2574 void java_lang_invoke_DirectMethodHandle::compute_offsets() { |
|
2575 Klass* klass_oop = SystemDictionary::DirectMethodHandle_klass(); |
|
2576 if (klass_oop != NULL && EnableInvokeDynamic) { |
|
2577 compute_offset(_member_offset, klass_oop, vmSymbols::member_name(), vmSymbols::java_lang_invoke_MemberName_signature()); |
|
2578 } |
|
2579 } |
2560 |
2580 |
2561 // Support for java_lang_invoke_MethodHandle |
2581 // Support for java_lang_invoke_MethodHandle |
2562 |
2582 |
2563 int java_lang_invoke_MethodHandle::_type_offset; |
2583 int java_lang_invoke_MethodHandle::_type_offset; |
2564 int java_lang_invoke_MethodHandle::_form_offset; |
2584 int java_lang_invoke_MethodHandle::_form_offset; |
3203 java_lang_ClassLoader::compute_offsets(); |
3223 java_lang_ClassLoader::compute_offsets(); |
3204 java_lang_Thread::compute_offsets(); |
3224 java_lang_Thread::compute_offsets(); |
3205 java_lang_ThreadGroup::compute_offsets(); |
3225 java_lang_ThreadGroup::compute_offsets(); |
3206 if (EnableInvokeDynamic) { |
3226 if (EnableInvokeDynamic) { |
3207 java_lang_invoke_MethodHandle::compute_offsets(); |
3227 java_lang_invoke_MethodHandle::compute_offsets(); |
|
3228 java_lang_invoke_DirectMethodHandle::compute_offsets(); |
3208 java_lang_invoke_MemberName::compute_offsets(); |
3229 java_lang_invoke_MemberName::compute_offsets(); |
3209 java_lang_invoke_LambdaForm::compute_offsets(); |
3230 java_lang_invoke_LambdaForm::compute_offsets(); |
3210 java_lang_invoke_MethodType::compute_offsets(); |
3231 java_lang_invoke_MethodType::compute_offsets(); |
3211 java_lang_invoke_CallSite::compute_offsets(); |
3232 java_lang_invoke_CallSite::compute_offsets(); |
3212 } |
3233 } |