comparison src/share/vm/oops/method.cpp @ 9025:ff5a32117e02

Implement fast invocation of installed code (direct tail call to the target machine code address).
author Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
date Fri, 12 Apr 2013 01:53:52 +0200
parents b9a918201d47
children 22851e342f0e
comparison
equal deleted inserted replaced
9024:2b840ae76df1 9025:ff5a32117e02
1012 } 1012 }
1013 1013
1014 // Test if this method is an internal MH primitive method. 1014 // Test if this method is an internal MH primitive method.
1015 bool Method::is_method_handle_intrinsic() const { 1015 bool Method::is_method_handle_intrinsic() const {
1016 vmIntrinsics::ID iid = intrinsic_id(); 1016 vmIntrinsics::ID iid = intrinsic_id();
1017 return (MethodHandles::is_signature_polymorphic(iid) && 1017 return ((MethodHandles::is_signature_polymorphic(iid) &&
1018 MethodHandles::is_signature_polymorphic_intrinsic(iid)); 1018 MethodHandles::is_signature_polymorphic_intrinsic(iid))) || iid == vmIntrinsics::_CompilerToVMImpl_executeCompiledMethod;
1019 } 1019 }
1020 1020
1021 bool Method::has_member_arg() const { 1021 bool Method::has_member_arg() const {
1022 vmIntrinsics::ID iid = intrinsic_id(); 1022 vmIntrinsics::ID iid = intrinsic_id();
1023 return (MethodHandles::is_signature_polymorphic(iid) && 1023 return (MethodHandles::is_signature_polymorphic(iid) &&