Mercurial > hg > graal-jvmci-8
changeset 24131:0e0a4ebf09d7
set_method_data_pointer_for_bcp must be guarded by ProfileInterpreter
author | Tom Rodriguez <tom.rodriguez@oracle.com> |
---|---|
date | Wed, 19 Apr 2017 09:00:56 -0700 |
parents | 0386b21ed2b3 |
children | 42cc0c2dd4a7 |
files | src/cpu/x86/vm/templateInterpreter_x86_32.cpp src/cpu/x86/vm/templateInterpreter_x86_64.cpp src/cpu/x86/vm/templateTable_x86_32.cpp src/cpu/x86/vm/templateTable_x86_64.cpp |
diffstat | 4 files changed, 12 insertions(+), 4 deletions(-) [+] |
line wrap: on
line diff
--- a/src/cpu/x86/vm/templateInterpreter_x86_32.cpp Tue Apr 18 17:14:58 2017 +0200 +++ b/src/cpu/x86/vm/templateInterpreter_x86_32.cpp Wed Apr 19 09:00:56 2017 -0700 @@ -443,7 +443,9 @@ __ call_VM(noreg, CAST_FROM_FN_PTR(address, InterpreterRuntime::frequency_counter_overflow), rax); __ movptr(rbx, Address(rbp, method_offset)); // restore Method* - __ set_method_data_pointer_for_bcp(); + if (ProfileInterpreter) { + __ set_method_data_pointer_for_bcp(); + } // Preserve invariant that rsi/rdi contain bcp/locals of sender frame // and jump to the interpreted entry.
--- a/src/cpu/x86/vm/templateInterpreter_x86_64.cpp Tue Apr 18 17:14:58 2017 +0200 +++ b/src/cpu/x86/vm/templateInterpreter_x86_64.cpp Wed Apr 19 09:00:56 2017 -0700 @@ -413,7 +413,9 @@ c_rarg1); __ movptr(rbx, Address(rbp, method_offset)); // restore Method* - __ set_method_data_pointer_for_bcp(); + if (ProfileInterpreter) { + __ set_method_data_pointer_for_bcp(); + } // Preserve invariant that r13/r14 contain bcp/locals of sender frame // and jump to the interpreted entry. __ jmp(*do_continue, relocInfo::none);
--- a/src/cpu/x86/vm/templateTable_x86_32.cpp Tue Apr 18 17:14:58 2017 +0200 +++ b/src/cpu/x86/vm/templateTable_x86_32.cpp Wed Apr 19 09:00:56 2017 -0700 @@ -1770,7 +1770,9 @@ // Load the MDO in case it was created by frequency_counter_overflow __ bind(maybe_load_mdp); - __ set_method_data_pointer_for_bcp(); + if (ProfileInterpreter) { + __ set_method_data_pointer_for_bcp(); + } __ jmp(dispatch); } }
--- a/src/cpu/x86/vm/templateTable_x86_64.cpp Tue Apr 18 17:14:58 2017 +0200 +++ b/src/cpu/x86/vm/templateTable_x86_64.cpp Wed Apr 19 09:00:56 2017 -0700 @@ -1803,7 +1803,9 @@ // Load the MDO in case it was created by frequency_counter_overflow __ bind(maybe_load_mdp); - __ set_method_data_pointer_for_bcp(); + if (ProfileInterpreter) { + __ set_method_data_pointer_for_bcp(); + } __ jmp(dispatch); } }