< prev index next >

src/hotspot/cpu/x86/templateTable_x86.cpp

Print this page
rev 50906 : JDK-8206075: Cdd an assertion stmt for Assembler's Label

Check all labels and catch unbound labels. Fix a problem for x86.

*** 2224,2243 **** __ jccb(Assembler::zero, no_mdo); // Increment the MDO backedge counter const Address mdo_backedge_counter(rbx, in_bytes(MethodData::backedge_counter_offset()) + in_bytes(InvocationCounter::counter_offset())); const Address mask(rbx, in_bytes(MethodData::backedge_mask_offset())); ! __ increment_mask_and_jump(mdo_backedge_counter, increment, mask, ! rax, false, Assembler::zero, &backedge_counter_overflow); __ jmp(dispatch); } __ bind(no_mdo); // Increment backedge counter in MethodCounters* __ movptr(rcx, Address(rcx, Method::method_counters_offset())); const Address mask(rcx, in_bytes(MethodCounters::backedge_mask_offset())); __ increment_mask_and_jump(Address(rcx, be_offset), increment, mask, ! rax, false, Assembler::zero, &backedge_counter_overflow); } else { // not TieredCompilation // increment counter __ movptr(rcx, Address(rcx, Method::method_counters_offset())); __ movl(rax, Address(rcx, be_offset)); // load backedge counter __ incrementl(rax, InvocationCounter::count_increment); // increment counter --- 2224,2244 ---- __ jccb(Assembler::zero, no_mdo); // Increment the MDO backedge counter const Address mdo_backedge_counter(rbx, in_bytes(MethodData::backedge_counter_offset()) + in_bytes(InvocationCounter::counter_offset())); const Address mask(rbx, in_bytes(MethodData::backedge_mask_offset())); ! __ increment_mask_and_jump(mdo_backedge_counter, increment, mask, rax, false, Assembler::zero, ! UseOnStackReplacement ? &backedge_counter_overflow : &dispatch); __ jmp(dispatch); } __ bind(no_mdo); // Increment backedge counter in MethodCounters* __ movptr(rcx, Address(rcx, Method::method_counters_offset())); const Address mask(rcx, in_bytes(MethodCounters::backedge_mask_offset())); __ increment_mask_and_jump(Address(rcx, be_offset), increment, mask, ! rax, false, Assembler::zero, ! UseOnStackReplacement ? &backedge_counter_overflow : &dispatch); } else { // not TieredCompilation // increment counter __ movptr(rcx, Address(rcx, Method::method_counters_offset())); __ movl(rax, Address(rcx, be_offset)); // load backedge counter __ incrementl(rax, InvocationCounter::count_increment); // increment counter
< prev index next >