Mercurial > hg > truffle
diff src/share/vm/runtime/sharedRuntime.hpp @ 13382:570aaefce624
8028319: ConflictingDefaultsTest.testReabstract spins when running with -mode invoke and -Xcomp
Summary: Change _abstract_method_handler to return AbstractMethodError i2c, c2i and c2iv entries.
Reviewed-by: kvn, vlivanov
author | morris |
---|---|
date | Mon, 18 Nov 2013 12:26:51 -0800 |
parents | 28e5aed7f3a6 |
children | 02f27ecb4f3a b8b5791fa045 1174c8abbdb6 55fb97c4c58d |
line wrap: on
line diff
--- a/src/share/vm/runtime/sharedRuntime.hpp Fri Nov 15 07:58:06 2013 -0800 +++ b/src/share/vm/runtime/sharedRuntime.hpp Mon Nov 18 12:26:51 2013 -0800 @@ -56,6 +56,7 @@ // Shared stub locations static RuntimeStub* _wrong_method_blob; + static RuntimeStub* _wrong_method_abstract_blob; static RuntimeStub* _ic_miss_blob; static RuntimeStub* _resolve_opt_virtual_call_blob; static RuntimeStub* _resolve_virtual_call_blob; @@ -206,6 +207,11 @@ return _wrong_method_blob->entry_point(); } + static address get_handle_wrong_method_abstract_stub() { + assert(_wrong_method_abstract_blob!= NULL, "oops"); + return _wrong_method_abstract_blob->entry_point(); + } + #ifdef COMPILER2 static void generate_uncommon_trap_blob(void); static UncommonTrapBlob* uncommon_trap_blob() { return _uncommon_trap_blob; } @@ -481,6 +487,7 @@ // handle ic miss with caller being compiled code // wrong method handling (inline cache misses, zombie methods) static address handle_wrong_method(JavaThread* thread); + static address handle_wrong_method_abstract(JavaThread* thread); static address handle_wrong_method_ic_miss(JavaThread* thread); #ifndef PRODUCT