src/cpu/x86/vm/templateTable_x86_32.cpp

changeset 9604
da2e98c027fd
parent 8997
f8a45a60bc6b
child 9637
eef07cd490d4
     1.1 --- a/src/cpu/x86/vm/templateTable_x86_32.cpp	Thu Dec 06 13:26:54 2018 -0500
     1.2 +++ b/src/cpu/x86/vm/templateTable_x86_32.cpp	Thu Dec 20 20:11:38 2018 +0000
     1.3 @@ -1,5 +1,5 @@
     1.4  /*
     1.5 - * Copyright (c) 1997, 2017, Oracle and/or its affiliates. All rights reserved.
     1.6 + * Copyright (c) 1997, 2018, Oracle and/or its affiliates. All rights reserved.
     1.7   * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
     1.8   *
     1.9   * This code is free software; you can redistribute it and/or modify it
    1.10 @@ -1640,15 +1640,16 @@
    1.11          // Increment the MDO backedge counter
    1.12          const Address mdo_backedge_counter(rbx, in_bytes(MethodData::backedge_counter_offset()) +
    1.13                                                  in_bytes(InvocationCounter::counter_offset()));
    1.14 -        __ increment_mask_and_jump(mdo_backedge_counter, increment, mask,
    1.15 -                                   rax, false, Assembler::zero, &backedge_counter_overflow);
    1.16 +        __ increment_mask_and_jump(mdo_backedge_counter, increment, mask, rax, false, Assembler::zero,
    1.17 +                                   UseOnStackReplacement ? &backedge_counter_overflow : NULL);
    1.18          __ jmp(dispatch);
    1.19        }
    1.20        __ bind(no_mdo);
    1.21        // Increment backedge counter in MethodCounters*
    1.22        __ movptr(rcx, Address(rcx, Method::method_counters_offset()));
    1.23        __ increment_mask_and_jump(Address(rcx, be_offset), increment, mask,
    1.24 -                                 rax, false, Assembler::zero, &backedge_counter_overflow);
    1.25 +                                 rax, false, Assembler::zero,
    1.26 +                                 UseOnStackReplacement ? &backedge_counter_overflow : NULL);
    1.27      } else {
    1.28        // increment counter
    1.29        __ movptr(rcx, Address(rcx, Method::method_counters_offset()));

mercurial