equal
deleted
inserted
replaced
54 bool is_optimized, TRAPS); |
54 bool is_optimized, TRAPS); |
55 |
55 |
56 // Shared stub locations |
56 // Shared stub locations |
57 |
57 |
58 static RuntimeStub* _wrong_method_blob; |
58 static RuntimeStub* _wrong_method_blob; |
|
59 static RuntimeStub* _wrong_method_abstract_blob; |
59 static RuntimeStub* _ic_miss_blob; |
60 static RuntimeStub* _ic_miss_blob; |
60 static RuntimeStub* _resolve_opt_virtual_call_blob; |
61 static RuntimeStub* _resolve_opt_virtual_call_blob; |
61 static RuntimeStub* _resolve_virtual_call_blob; |
62 static RuntimeStub* _resolve_virtual_call_blob; |
62 static RuntimeStub* _resolve_static_call_blob; |
63 static RuntimeStub* _resolve_static_call_blob; |
63 |
64 |
204 static address get_handle_wrong_method_stub() { |
205 static address get_handle_wrong_method_stub() { |
205 assert(_wrong_method_blob!= NULL, "oops"); |
206 assert(_wrong_method_blob!= NULL, "oops"); |
206 return _wrong_method_blob->entry_point(); |
207 return _wrong_method_blob->entry_point(); |
207 } |
208 } |
208 |
209 |
|
210 static address get_handle_wrong_method_abstract_stub() { |
|
211 assert(_wrong_method_abstract_blob!= NULL, "oops"); |
|
212 return _wrong_method_abstract_blob->entry_point(); |
|
213 } |
|
214 |
209 #ifdef COMPILER2 |
215 #ifdef COMPILER2 |
210 static void generate_uncommon_trap_blob(void); |
216 static void generate_uncommon_trap_blob(void); |
211 static UncommonTrapBlob* uncommon_trap_blob() { return _uncommon_trap_blob; } |
217 static UncommonTrapBlob* uncommon_trap_blob() { return _uncommon_trap_blob; } |
212 #endif // COMPILER2 |
218 #endif // COMPILER2 |
213 |
219 |
479 jint length, JavaThread* thread); |
485 jint length, JavaThread* thread); |
480 |
486 |
481 // handle ic miss with caller being compiled code |
487 // handle ic miss with caller being compiled code |
482 // wrong method handling (inline cache misses, zombie methods) |
488 // wrong method handling (inline cache misses, zombie methods) |
483 static address handle_wrong_method(JavaThread* thread); |
489 static address handle_wrong_method(JavaThread* thread); |
|
490 static address handle_wrong_method_abstract(JavaThread* thread); |
484 static address handle_wrong_method_ic_miss(JavaThread* thread); |
491 static address handle_wrong_method_ic_miss(JavaThread* thread); |
485 |
492 |
486 #ifndef PRODUCT |
493 #ifndef PRODUCT |
487 |
494 |
488 // Collect and print inline cache miss statistics |
495 // Collect and print inline cache miss statistics |