Mercurial > hg > graal-jvmci-8
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 } |