mirror of
https://github.com/openjdk/jdk.git
synced 2025-09-17 09:34:38 +02:00
8292584: assert(cb != __null) failed: must be with -XX:-Inline
Reviewed-by: kvn, rpressler
This commit is contained in:
parent
04d8069bac
commit
fa68371bb8
48 changed files with 246 additions and 392 deletions
|
@ -1237,10 +1237,11 @@ void Method::link_method(const methodHandle& h_method, TRAPS) {
|
|||
|
||||
// ONLY USE the h_method now as make_adapter may have blocked
|
||||
|
||||
if (h_method->is_continuation_enter_intrinsic()) {
|
||||
if (h_method->is_continuation_native_intrinsic()) {
|
||||
// the entry points to this method will be set in set_code, called when first resolving this method
|
||||
_from_interpreted_entry = NULL;
|
||||
_from_compiled_entry = NULL;
|
||||
_i2i_entry = NULL;
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -1320,11 +1321,17 @@ void Method::set_code(const methodHandle& mh, CompiledMethod *code) {
|
|||
mh->_from_compiled_entry = code->verified_entry_point();
|
||||
OrderAccess::storestore();
|
||||
|
||||
if (mh->is_continuation_enter_intrinsic()) {
|
||||
if (mh->is_continuation_native_intrinsic()) {
|
||||
assert(mh->_from_interpreted_entry == NULL, "initialized incorrectly"); // see link_method
|
||||
|
||||
// This is the entry used when we're in interpreter-only mode; see InterpreterMacroAssembler::jump_from_interpreted
|
||||
mh->_i2i_entry = ContinuationEntry::interpreted_entry();
|
||||
if (mh->is_continuation_enter_intrinsic()) {
|
||||
// This is the entry used when we're in interpreter-only mode; see InterpreterMacroAssembler::jump_from_interpreted
|
||||
mh->_i2i_entry = ContinuationEntry::interpreted_entry();
|
||||
} else if (mh->is_continuation_yield_intrinsic()) {
|
||||
mh->_i2i_entry = mh->get_i2c_entry();
|
||||
} else {
|
||||
guarantee(false, "Unknown Continuation native intrinsic");
|
||||
}
|
||||
// This must come last, as it is what's tested in LinkResolver::resolve_static_call
|
||||
Atomic::release_store(&mh->_from_interpreted_entry , mh->get_i2c_entry());
|
||||
} else if (!mh->is_method_handle_intrinsic()) {
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue