comparison src/share/vm/opto/matcher.cpp @ 642:660978a2a31a

6791178: Specialize for zero as the compressed oop vm heap base Summary: Use zero based compressed oops if java heap is below 32gb and unscaled compressed oops if java heap is below 4gb. Reviewed-by: never, twisti, jcoomes, coleenp
author kvn
date Thu, 12 Mar 2009 10:37:46 -0700
parents 98cb887364d3
children bd441136a5ce
comparison
equal deleted inserted replaced
641:6af0a709d52b 642:660978a2a31a
1479 assert(m != NULL && m->is_Mem(), "expecting memory node"); 1479 assert(m != NULL && m->is_Mem(), "expecting memory node");
1480 } 1480 }
1481 const Type* mach_at = mach->adr_type(); 1481 const Type* mach_at = mach->adr_type();
1482 // DecodeN node consumed by an address may have different type 1482 // DecodeN node consumed by an address may have different type
1483 // then its input. Don't compare types for such case. 1483 // then its input. Don't compare types for such case.
1484 if (m->adr_type() != mach_at && m->in(MemNode::Address)->is_AddP() && 1484 if (m->adr_type() != mach_at &&
1485 m->in(MemNode::Address)->in(AddPNode::Address)->is_DecodeN()) { 1485 (m->in(MemNode::Address)->is_DecodeN() ||
1486 m->in(MemNode::Address)->is_AddP() &&
1487 m->in(MemNode::Address)->in(AddPNode::Address)->is_DecodeN() ||
1488 m->in(MemNode::Address)->is_AddP() &&
1489 m->in(MemNode::Address)->in(AddPNode::Address)->is_AddP() &&
1490 m->in(MemNode::Address)->in(AddPNode::Address)->in(AddPNode::Address)->is_DecodeN())) {
1486 mach_at = m->adr_type(); 1491 mach_at = m->adr_type();
1487 } 1492 }
1488 if (m->adr_type() != mach_at) { 1493 if (m->adr_type() != mach_at) {
1489 m->dump(); 1494 m->dump();
1490 tty->print_cr("mach:"); 1495 tty->print_cr("mach:");