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