< prev index next >

src/share/vm/opto/memnode.cpp

Print this page
@  rev 9077 : 8233023: assert(Opcode() == mem->Opcode() || phase->C->get_alias_index(adr_type()) == Compile::AliasIdxRaw) failed: no mismatched stores, except on raw memory
|  Summary: Include missing verification code from JDK-8140309 backport
~  Reviewed-by: duke

*** 2483,2493 **** mem->Opcode() != Op_StoreCM) { // Looking at a dead closed cycle of memory? assert(mem != mem->in(MemNode::Memory), "dead loop in StoreNode::Ideal"); assert(Opcode() == mem->Opcode() || ! phase->C->get_alias_index(adr_type()) == Compile::AliasIdxRaw, "no mismatched stores, except on raw memory"); if (mem->outcnt() == 1 && // check for intervening uses mem->as_Store()->memory_size() <= this->memory_size()) { // If anybody other than 'this' uses 'mem', we cannot fold 'mem' away. --- 2483,2495 ---- mem->Opcode() != Op_StoreCM) { // Looking at a dead closed cycle of memory? assert(mem != mem->in(MemNode::Memory), "dead loop in StoreNode::Ideal"); assert(Opcode() == mem->Opcode() || ! 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 mem->as_Store()->memory_size() <= this->memory_size()) { // If anybody other than 'this' uses 'mem', we cannot fold 'mem' away.
< prev index next >