Mercurial > hg > truffle
comparison src/share/vm/c1/c1_LIR.hpp @ 1507:cd5dbf694d45
6939134: JSR 292 adjustments to method handle invocation
Summary: split MethodHandle.invoke into invokeExact and invokeGeneric; also clean up JVM-to-Java interfaces
Reviewed-by: twisti
author | jrose |
---|---|
date | Sat, 01 May 2010 02:42:18 -0700 |
parents | 9f5b60a14736 |
children | c18cbe5936b8 61b2245abf36 |
comparison
equal
deleted
inserted
replaced
1506:2338d41fbd81 | 1507:cd5dbf694d45 |
---|---|
1060 bool is_method_handle_invoke() const { | 1060 bool is_method_handle_invoke() const { |
1061 return | 1061 return |
1062 is_invokedynamic() // An invokedynamic is always a MethodHandle call site. | 1062 is_invokedynamic() // An invokedynamic is always a MethodHandle call site. |
1063 || | 1063 || |
1064 (method()->holder()->name() == ciSymbol::java_dyn_MethodHandle() && | 1064 (method()->holder()->name() == ciSymbol::java_dyn_MethodHandle() && |
1065 method()->name() == ciSymbol::invoke_name()); | 1065 methodOopDesc::is_method_handle_invoke_name(method()->name()->sid())); |
1066 } | 1066 } |
1067 | 1067 |
1068 intptr_t vtable_offset() const { | 1068 intptr_t vtable_offset() const { |
1069 assert(_code == lir_virtual_call, "only have vtable for real vcall"); | 1069 assert(_code == lir_virtual_call, "only have vtable for real vcall"); |
1070 return (intptr_t) addr(); | 1070 return (intptr_t) addr(); |