comparison src/share/vm/c1/c1_GraphBuilder.cpp @ 23050:e8260b6328fb

8068945: Use RBP register as proper frame pointer in JIT compiled code on x86 Summary: Introduce the PreserveFramePointer flag to control if RBP is used as the frame pointer or as a general purpose register. Reviewed-by: kvn, roland, dlong, enevill, shade
author zmajo
date Fri, 29 May 2015 10:58:45 +0200
parents 945284eb609f
children dd9cc155639c 32b682649973 626f594dffa6
comparison
equal deleted inserted replaced
23049:a1642365d69f 23050:e8260b6328fb
4062 // pop MemberName argument 4062 // pop MemberName argument
4063 const int args_base = state()->stack_size() - callee->arg_size(); 4063 const int args_base = state()->stack_size() - callee->arg_size();
4064 ValueType* type = apop()->type(); 4064 ValueType* type = apop()->type();
4065 if (type->is_constant()) { 4065 if (type->is_constant()) {
4066 ciMethod* target = type->as_ObjectType()->constant_value()->as_member_name()->get_vmtarget(); 4066 ciMethod* target = type->as_ObjectType()->constant_value()->as_member_name()->get_vmtarget();
4067 // If the target is another method handle invoke try recursivly to get 4067 // If the target is another method handle invoke, try to recursively get
4068 // a better target. 4068 // a better target.
4069 if (target->is_method_handle_intrinsic()) { 4069 if (target->is_method_handle_intrinsic()) {
4070 if (try_method_handle_inline(target)) { 4070 if (try_method_handle_inline(target)) {
4071 return true; 4071 return true;
4072 } 4072 }