< prev index next > src/hotspot/cpu/ppc/frame_ppc.inline.hpp
Print this page
return result;
}
inline frame frame::sender_for_compiled_frame(RegisterMap *map) const {
assert(map != nullptr, "map must be set");
+ assert(!_cb->is_nmethod() || !_cb->as_nmethod()->needs_stack_repair(), "unsupported");
intptr_t* sender_sp = this->sender_sp();
address sender_pc = this->sender_pc();
if (map->update_map()) {
// Tell GC to use argument oopmaps for some runtime stubs that need it.
// For C1, the runtime stub might not have oop maps, so set this flag
// outside of update_register_map.
+ #ifdef COMPILER1
+ DEBUG_ONLY(nmethod* nm = _cb->as_nmethod_or_null());
+ assert(nm == nullptr || !nm->is_compiled_by_c1() || !nm->method()->has_scalarized_args() ||
+ pc() >= nm->verified_inline_entry_point(), "unsupported");
+ #endif
if (!_cb->is_nmethod()) { // compiled frames do not use callee-saved registers
map->set_include_argument_oops(_cb->caller_must_gc_arguments(map->thread()));
if (oop_map() != nullptr) {
_oop_map->update_register_map(this, map);
}
< prev index next >