src/share/vm/compiler/oopMap.cpp
Index Unified diffs Context diffs Sdiffs Wdiffs Patch New Old Previous File Next File
*** old/src/share/vm/compiler/oopMap.cpp	Thu Jul  3 10:47:59 2008
--- new/src/share/vm/compiler/oopMap.cpp	Thu Jul  3 10:47:58 2008

*** 186,199 **** --- 186,195 ---- } else { set_xxx(reg, OopMapValue::derived_oop_value, derived_from_local_register); } } void OopMap::set_stack_obj(VMReg reg) { set_xxx(reg, OopMapValue::stack_obj, VMRegImpl::Bad()); } // OopMapSet OopMapSet::OopMapSet() { set_om_size(MinOopMapAllocation); set_om_count(0);
*** 397,408 **** --- 393,403 ---- omv = oms.current(); oop* loc = fr->oopmapreg_to_location(omv.reg(),reg_map); if ( loc != NULL ) { if ( omv.type() == OopMapValue::oop_value ) { #ifdef ASSERT ! if (COMPILER2_PRESENT(!DoEscapeAnalysis &&) (((uintptr_t)loc & (sizeof(*loc)-1)) != 0) || ! if ((((uintptr_t)loc & (sizeof(*loc)-1)) != 0) || !Universe::heap()->is_in_or_null(*loc)) { tty->print_cr("# Found non oop pointer. Dumping state at failure"); // try to dump out some helpful debugging information trace_codeblob_maps(fr, reg_map); omv.print();
*** 429,449 **** --- 424,433 ---- oop_fn->do_oop(nl); } } } } #ifdef COMPILER2 if (DoEscapeAnalysis) { for (OopMapStream oms(map, OopMapValue::stack_obj); !oms.is_done(); oms.next()) { omv = oms.current(); assert(omv.is_stack_loc(), "should refer to stack location"); oop loc = (oop) fr->oopmapreg_to_location(omv.reg(),reg_map); oop_fn->do_oop(&loc); } } #endif // COMPILER2 } // Update callee-saved register info for the following frame void OopMapSet::update_register_map(const frame *fr, RegisterMap *reg_map) {
*** 538,550 **** --- 522,531 ---- break; case OopMapValue::derived_oop_value: st->print("Derived_oop_" ); optional->print_on(st); break; case OopMapValue::stack_obj: st->print("Stack"); break; default: ShouldNotReachHere(); } }

src/share/vm/compiler/oopMap.cpp
Index Unified diffs Context diffs Sdiffs Wdiffs Patch New Old Previous File Next File