mirror of
https://github.com/openjdk/jdk.git
synced 2025-08-28 07:14:30 +02:00
7023639: JSR 292 method handle invocation needs a fast path for compiled code
6984705: JSR 292 method handle creation should not go through JNI Remove assembly code for JDK 7 chained method handles Co-authored-by: John Rose <john.r.rose@oracle.com> Co-authored-by: Michael Haupt <michael.haupt@oracle.com> Reviewed-by: jrose, twisti, kvn, mhaupt
This commit is contained in:
parent
893817c28d
commit
12901d0e5b
181 changed files with 5760 additions and 14402 deletions
|
@ -836,13 +836,6 @@ typedef TwoOopHashtable<Symbol*, mtClass> SymbolTwoOopHashtable;
|
|||
/* CodeBlobs (NOTE: incomplete, but only a little) */ \
|
||||
/***************************************************/ \
|
||||
\
|
||||
X86_ONLY(nonstatic_field(MethodHandles::RicochetFrame, _sender_pc, address)) \
|
||||
X86_ONLY(nonstatic_field(MethodHandles::RicochetFrame, _exact_sender_sp, intptr_t*)) \
|
||||
X86_ONLY(nonstatic_field(MethodHandles::RicochetFrame, _sender_link, intptr_t*)) \
|
||||
X86_ONLY(nonstatic_field(MethodHandles::RicochetFrame, _saved_args_base, intptr_t*)) \
|
||||
\
|
||||
static_field(SharedRuntime, _ricochet_blob, RicochetBlob*) \
|
||||
\
|
||||
nonstatic_field(CodeBlob, _name, const char*) \
|
||||
nonstatic_field(CodeBlob, _size, int) \
|
||||
nonstatic_field(CodeBlob, _header_size, int) \
|
||||
|
@ -887,11 +880,8 @@ typedef TwoOopHashtable<Symbol*, mtClass> SymbolTwoOopHashtable;
|
|||
nonstatic_field(nmethod, _compile_id, int) \
|
||||
nonstatic_field(nmethod, _exception_cache, ExceptionCache*) \
|
||||
nonstatic_field(nmethod, _marked_for_deoptimization, bool) \
|
||||
\
|
||||
nonstatic_field(RicochetBlob, _bounce_offset, int) \
|
||||
nonstatic_field(RicochetBlob, _exception_offset, int) \
|
||||
\
|
||||
unchecked_c2_static_field(Deoptimization, _trap_reason_name, void*) \
|
||||
\
|
||||
unchecked_c2_static_field(Deoptimization, _trap_reason_name, void*) \
|
||||
\
|
||||
/********************************/ \
|
||||
/* JavaCalls (NOTE: incomplete) */ \
|
||||
|
@ -1633,7 +1623,6 @@ typedef TwoOopHashtable<Symbol*, mtClass> SymbolTwoOopHashtable;
|
|||
/*************************************************************/ \
|
||||
\
|
||||
declare_toplevel_type(SharedRuntime) \
|
||||
X86_ONLY(declare_toplevel_type(MethodHandles::RicochetFrame)) \
|
||||
\
|
||||
declare_toplevel_type(CodeBlob) \
|
||||
declare_type(BufferBlob, CodeBlob) \
|
||||
|
@ -1644,7 +1633,6 @@ typedef TwoOopHashtable<Symbol*, mtClass> SymbolTwoOopHashtable;
|
|||
declare_type(SingletonBlob, CodeBlob) \
|
||||
declare_type(SafepointBlob, SingletonBlob) \
|
||||
declare_type(DeoptimizationBlob, SingletonBlob) \
|
||||
declare_type(RicochetBlob, SingletonBlob) \
|
||||
declare_c2_type(ExceptionBlob, SingletonBlob) \
|
||||
declare_c2_type(UncommonTrapBlob, CodeBlob) \
|
||||
\
|
||||
|
@ -2347,7 +2335,7 @@ typedef TwoOopHashtable<Symbol*, mtClass> SymbolTwoOopHashtable;
|
|||
declare_constant(instanceKlass::initialization_error) \
|
||||
\
|
||||
/*********************************/ \
|
||||
/* Symbol* - symbol max length */ \
|
||||
/* Symbol* - symbol max length */ \
|
||||
/*********************************/ \
|
||||
\
|
||||
declare_constant(Symbol::max_symbol_length) \
|
||||
|
@ -2360,21 +2348,16 @@ typedef TwoOopHashtable<Symbol*, mtClass> SymbolTwoOopHashtable;
|
|||
declare_constant(constantPoolOopDesc::_indy_argc_offset) \
|
||||
declare_constant(constantPoolOopDesc::_indy_argv_offset) \
|
||||
\
|
||||
/*********************************************/ \
|
||||
/* ConstantPoolCacheEntry FlagBitValues enum */ \
|
||||
/*********************************************/ \
|
||||
/********************************/ \
|
||||
/* ConstantPoolCacheEntry enums */ \
|
||||
/********************************/ \
|
||||
\
|
||||
declare_constant(ConstantPoolCacheEntry::hotSwapBit) \
|
||||
declare_constant(ConstantPoolCacheEntry::methodInterface) \
|
||||
declare_constant(ConstantPoolCacheEntry::volatileField) \
|
||||
declare_constant(ConstantPoolCacheEntry::vfinalMethod) \
|
||||
declare_constant(ConstantPoolCacheEntry::finalField) \
|
||||
\
|
||||
/******************************************/ \
|
||||
/* ConstantPoolCacheEntry FlagValues enum */ \
|
||||
/******************************************/ \
|
||||
\
|
||||
declare_constant(ConstantPoolCacheEntry::tosBits) \
|
||||
declare_constant(ConstantPoolCacheEntry::is_volatile_shift) \
|
||||
declare_constant(ConstantPoolCacheEntry::is_final_shift) \
|
||||
declare_constant(ConstantPoolCacheEntry::is_forced_virtual_shift) \
|
||||
declare_constant(ConstantPoolCacheEntry::is_vfinal_shift) \
|
||||
declare_constant(ConstantPoolCacheEntry::is_field_entry_shift) \
|
||||
declare_constant(ConstantPoolCacheEntry::tos_state_shift) \
|
||||
\
|
||||
/***************************************/ \
|
||||
/* java_lang_Thread::ThreadStatus enum */ \
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue