Skip to content
Permalink
Browse files
8264340: [lworld] [AArch64] TestLWorld.java assertion failure in OopF…
…low::build_oop_map

Reviewed-by: thartmann
  • Loading branch information
nick-arm authored and TobiHartmann committed Aug 3, 2021
1 parent 9fe2304 commit ca9a0bcd9dbc9024fd632180adce00aa91c45637
Showing with 13 additions and 0 deletions.
  1. +13 −0 src/hotspot/share/opto/output.cpp
@@ -3160,6 +3160,19 @@ void Scheduling::ComputeRegisterAntidependencies(Block *b) {
break;
}
}

// Do not allow a CheckCastPP node whose input is a raw pointer to
// float past a safepoint. This can occur when a buffered inline
// type is allocated in a loop and the CheckCastPP from that
// allocation is reused outside the loop. If the use inside the
// loop is scalarized the CheckCastPP will no longer be connected
// to the loop safepoint. See JDK-8264340.
if (m->is_Mach() && m->as_Mach()->ideal_Opcode() == Op_CheckCastPP) {
Node *def = m->in(1);
if (def != NULL && def->bottom_type()->base() == Type::RawPtr) {
last_safept_node->add_prec(m);
}
}
}

if( n->jvms() ) { // Precedence edge from derived to safept

0 comments on commit ca9a0bc

Please sign in to comment.