--- old/src/share/vm/opto/memnode.cpp 2019-10-29 16:05:59.834126189 +0100 +++ new/src/share/vm/opto/memnode.cpp 2019-10-29 16:05:59.550125056 +0100 @@ -2485,7 +2485,9 @@ assert(mem != mem->in(MemNode::Memory), "dead loop in StoreNode::Ideal"); assert(Opcode() == mem->Opcode() || - phase->C->get_alias_index(adr_type()) == Compile::AliasIdxRaw, + phase->C->get_alias_index(adr_type()) == Compile::AliasIdxRaw || + (Opcode() == Op_StoreL && mem->Opcode() == Op_StoreI) || // expanded ClearArrayNode + (is_mismatched_access() || mem->as_Store()->is_mismatched_access()), "no mismatched stores, except on raw memory"); if (mem->outcnt() == 1 && // check for intervening uses