hotspot/src/cpu/ppc/vm/nativeInst_ppc.cpp
changeset 22849 b8670e920530
parent 22824 28258dd5cb2e
child 22861 f5c393d456fc
equal deleted inserted replaced
22848:c1a044cf0c07 22849:b8670e920530
   186 
   186 
   187   if (MacroAssembler::is_load_const_at(addr)) {
   187   if (MacroAssembler::is_load_const_at(addr)) {
   188     return MacroAssembler::get_const(addr);
   188     return MacroAssembler::get_const(addr);
   189   } else if (MacroAssembler::is_set_narrow_oop(addr, cb->content_begin())) {
   189   } else if (MacroAssembler::is_set_narrow_oop(addr, cb->content_begin())) {
   190     narrowOop no = (narrowOop)MacroAssembler::get_narrow_oop(addr, cb->content_begin());
   190     narrowOop no = (narrowOop)MacroAssembler::get_narrow_oop(addr, cb->content_begin());
   191     return (intptr_t)oopDesc::decode_heap_oop(no);
   191     return cast_from_oop<intptr_t>(oopDesc::decode_heap_oop(no));
   192   } else {
   192   } else {
   193     assert(MacroAssembler::is_load_const_from_method_toc_at(addr), "must be load_const_from_pool");
   193     assert(MacroAssembler::is_load_const_from_method_toc_at(addr), "must be load_const_from_pool");
   194 
   194 
   195     address ctable = cb->content_begin();
   195     address ctable = cb->content_begin();
   196     int offset = MacroAssembler::get_offset_of_load_const_from_method_toc_at(addr);
   196     int offset = MacroAssembler::get_offset_of_load_const_from_method_toc_at(addr);
   256     while (iter.next()) {
   256     while (iter.next()) {
   257       if (iter.type() == relocInfo::oop_type) {
   257       if (iter.type() == relocInfo::oop_type) {
   258         oop_Relocation *r = iter.oop_reloc();
   258         oop_Relocation *r = iter.oop_reloc();
   259         if (oop_addr == NULL) {
   259         if (oop_addr == NULL) {
   260           oop_addr = r->oop_addr();
   260           oop_addr = r->oop_addr();
   261           *oop_addr = (oop)data;
   261           *oop_addr = cast_to_oop(data);
   262         } else {
   262         } else {
   263           assert(oop_addr == r->oop_addr(), "must be only one set-oop here") ;
   263           assert(oop_addr == r->oop_addr(), "must be only one set-oop here") ;
   264         }
   264         }
   265       }
   265       }
   266       if (iter.type() == relocInfo::metadata_type) {
   266       if (iter.type() == relocInfo::metadata_type) {