Mercurial > hg > truffle
diff src/share/vm/runtime/sharedRuntime.hpp @ 9023:f94bb5d20e5d
Rename MethodInvalidatedException to InvalidInstalledCodeException (and make it a checked exception). Make sure that a compiled code object can always be directly called without first doing a check on the native method pointer.
author | Thomas Wuerthinger <thomas.wuerthinger@oracle.com> |
---|---|
date | Thu, 11 Apr 2013 17:36:46 +0200 |
parents | 5fc51c1ecdeb |
children | 836a62f43af9 |
line wrap: on
line diff
--- a/src/share/vm/runtime/sharedRuntime.hpp Thu Apr 11 13:03:20 2013 +0200 +++ b/src/share/vm/runtime/sharedRuntime.hpp Thu Apr 11 17:36:46 2013 +0200 @@ -55,6 +55,7 @@ // Shared stub locations + static RuntimeStub* _deoptimized_installed_code_blob; static RuntimeStub* _wrong_method_blob; static RuntimeStub* _ic_miss_blob; static RuntimeStub* _resolve_opt_virtual_call_blob; @@ -209,6 +210,11 @@ return _wrong_method_blob->entry_point(); } + static address get_deoptimized_installed_code_stub() { + assert(_deoptimized_installed_code_blob!= NULL, "oops"); + return _deoptimized_installed_code_blob->entry_point(); + } + #ifdef COMPILER2 static void generate_uncommon_trap_blob(void); static UncommonTrapBlob* uncommon_trap_blob() { return _uncommon_trap_blob; } @@ -486,6 +492,9 @@ static address handle_wrong_method(JavaThread* thread); static address handle_wrong_method_ic_miss(JavaThread* thread); + // handle deoptimized installed code + static address handle_deoptimized_installed_code(JavaThread* thread); + #ifndef PRODUCT // Collect and print inline cache miss statistics