src/share/vm/opto/callnode.cpp

changeset 658
1dd146f17531
parent 598
885ed790ecf0
child 670
9c2ecc2ffb12
equal deleted inserted replaced
657:2a1a77d3458f 658:1dd146f17531
630 // 630 //
631 bool CallNode::may_modify(const TypePtr *addr_t, PhaseTransform *phase) { 631 bool CallNode::may_modify(const TypePtr *addr_t, PhaseTransform *phase) {
632 const TypeOopPtr *adrInst_t = addr_t->isa_oopptr(); 632 const TypeOopPtr *adrInst_t = addr_t->isa_oopptr();
633 633
634 // if not an InstPtr or not an instance type, assume the worst 634 // if not an InstPtr or not an instance type, assume the worst
635 if (adrInst_t == NULL || !adrInst_t->is_instance_field()) { 635 if (adrInst_t == NULL || !adrInst_t->is_known_instance_field()) {
636 return true; 636 return true;
637 } 637 }
638 Compile *C = phase->C; 638 Compile *C = phase->C;
639 int offset = adrInst_t->offset(); 639 int offset = adrInst_t->offset();
640 assert(adrInst_t->klass_is_exact() && offset >= 0, "should be valid offset"); 640 assert(adrInst_t->klass_is_exact() && offset >= 0, "should be valid offset");

mercurial