hotspot/src/cpu/sparc/vm/macroAssembler_sparc.cpp
changeset 35086 bbf32241d851
parent 34211 d25c2fc1e248
child 35090 1f5b6aa795d0
equal deleted inserted replaced
35085:839c8ba29724 35086:bbf32241d851
   768 
   768 
   769   st_ptr(oop_result, vm_result_addr);
   769   st_ptr(oop_result, vm_result_addr);
   770 }
   770 }
   771 
   771 
   772 
   772 
   773 void MacroAssembler::ic_call(address entry, bool emit_delay) {
   773 void MacroAssembler::ic_call(address entry, bool emit_delay, jint method_index) {
   774   RelocationHolder rspec = virtual_call_Relocation::spec(pc());
   774   RelocationHolder rspec = virtual_call_Relocation::spec(pc(), method_index);
   775   patchable_set((intptr_t)Universe::non_oop_word(), G5_inline_cache_reg);
   775   patchable_set((intptr_t)Universe::non_oop_word(), G5_inline_cache_reg);
   776   relocate(rspec);
   776   relocate(rspec);
   777   call(entry, relocInfo::none);
   777   call(entry, relocInfo::none);
   778   if (emit_delay) {
   778   if (emit_delay) {
   779     delayed()->nop();
   779     delayed()->nop();
   780   }
   780   }
   781 }
   781 }
   782 
       
   783 
   782 
   784 void MacroAssembler::card_table_write(jbyte* byte_map_base,
   783 void MacroAssembler::card_table_write(jbyte* byte_map_base,
   785                                       Register tmp, Register obj) {
   784                                       Register tmp, Register obj) {
   786 #ifdef _LP64
   785 #ifdef _LP64
   787   srlx(obj, CardTableModRefBS::card_shift, obj);
   786   srlx(obj, CardTableModRefBS::card_shift, obj);