comparison src/cpu/sparc/vm/c1_LIRAssembler_sparc.cpp @ 12955:252d541466ea

8008242: VerifyOops is broken on SPARC Summary: Fixed displacement issues in SPARC macroassembler and ensure that getClass intrinsic temporary result is T_METADATA Reviewed-by: kvn, twisti
author morris
date Fri, 18 Oct 2013 12:15:32 -0700
parents d13d7aba8c12
children 8085ce95b6f5 8cdf3f43f63e
comparison
equal deleted inserted replaced
12954:e3b736cf4fa3 12955:252d541466ea
2563 Label next_test; 2563 Label next_test;
2564 // See if the receiver is receiver[n]. 2564 // See if the receiver is receiver[n].
2565 Address receiver_addr(mdo, md->byte_offset_of_slot(data, ReceiverTypeData::receiver_offset(i)) - 2565 Address receiver_addr(mdo, md->byte_offset_of_slot(data, ReceiverTypeData::receiver_offset(i)) -
2566 mdo_offset_bias); 2566 mdo_offset_bias);
2567 __ ld_ptr(receiver_addr, tmp1); 2567 __ ld_ptr(receiver_addr, tmp1);
2568 __ verify_oop(tmp1); 2568 __ verify_klass_ptr(tmp1);
2569 __ cmp_and_brx_short(recv, tmp1, Assembler::notEqual, Assembler::pt, next_test); 2569 __ cmp_and_brx_short(recv, tmp1, Assembler::notEqual, Assembler::pt, next_test);
2570 Address data_addr(mdo, md->byte_offset_of_slot(data, ReceiverTypeData::receiver_count_offset(i)) - 2570 Address data_addr(mdo, md->byte_offset_of_slot(data, ReceiverTypeData::receiver_count_offset(i)) -
2571 mdo_offset_bias); 2571 mdo_offset_bias);
2572 __ ld_ptr(data_addr, tmp1); 2572 __ ld_ptr(data_addr, tmp1);
2573 __ add(tmp1, DataLayout::counter_increment, tmp1); 2573 __ add(tmp1, DataLayout::counter_increment, tmp1);