Mercurial > hg > truffle
comparison src/cpu/x86/vm/methodHandles_x86.cpp @ 4852:6d00795f99a1
Merge
author | dsamersoff |
---|---|
date | Wed, 25 Jan 2012 15:03:42 -0800 |
parents | 15d394228cfa |
children | 82e5a84b7436 |
comparison
equal
deleted
inserted
replaced
4851:a42c07c38c47 | 4852:6d00795f99a1 |
---|---|
1003 bool has_mh = (strstr(adaptername, "return/") == NULL); // return adapters don't have rcx_mh | 1003 bool has_mh = (strstr(adaptername, "return/") == NULL); // return adapters don't have rcx_mh |
1004 intptr_t* last_sp = (intptr_t*) saved_bp[frame::interpreter_frame_last_sp_offset]; | 1004 intptr_t* last_sp = (intptr_t*) saved_bp[frame::interpreter_frame_last_sp_offset]; |
1005 intptr_t* base_sp = last_sp; | 1005 intptr_t* base_sp = last_sp; |
1006 typedef MethodHandles::RicochetFrame RicochetFrame; | 1006 typedef MethodHandles::RicochetFrame RicochetFrame; |
1007 RicochetFrame* rfp = (RicochetFrame*)((address)saved_bp - RicochetFrame::sender_link_offset_in_bytes()); | 1007 RicochetFrame* rfp = (RicochetFrame*)((address)saved_bp - RicochetFrame::sender_link_offset_in_bytes()); |
1008 if (!UseRicochetFrames || Universe::heap()->is_in((address) rfp->saved_args_base())) { | 1008 if (Universe::heap()->is_in((address) rfp->saved_args_base())) { |
1009 // Probably an interpreter frame. | 1009 // Probably an interpreter frame. |
1010 base_sp = (intptr_t*) saved_bp[frame::interpreter_frame_monitor_block_top_offset]; | 1010 base_sp = (intptr_t*) saved_bp[frame::interpreter_frame_monitor_block_top_offset]; |
1011 } | 1011 } |
1012 intptr_t mh_reg = (intptr_t)mh; | 1012 intptr_t mh_reg = (intptr_t)mh; |
1013 const char* mh_reg_name = "rcx_mh"; | 1013 const char* mh_reg_name = "rcx_mh"; |
1102 |(1<<java_lang_invoke_AdapterMethodHandle::OP_ROT_ARGS) | 1102 |(1<<java_lang_invoke_AdapterMethodHandle::OP_ROT_ARGS) |
1103 |(1<<java_lang_invoke_AdapterMethodHandle::OP_DUP_ARGS) | 1103 |(1<<java_lang_invoke_AdapterMethodHandle::OP_DUP_ARGS) |
1104 |(1<<java_lang_invoke_AdapterMethodHandle::OP_DROP_ARGS) | 1104 |(1<<java_lang_invoke_AdapterMethodHandle::OP_DROP_ARGS) |
1105 //OP_COLLECT_ARGS is below... | 1105 //OP_COLLECT_ARGS is below... |
1106 |(1<<java_lang_invoke_AdapterMethodHandle::OP_SPREAD_ARGS) | 1106 |(1<<java_lang_invoke_AdapterMethodHandle::OP_SPREAD_ARGS) |
1107 |(!UseRicochetFrames ? 0 : | 1107 |( |
1108 java_lang_invoke_MethodTypeForm::vmlayout_offset_in_bytes() <= 0 ? 0 : | 1108 java_lang_invoke_MethodTypeForm::vmlayout_offset_in_bytes() <= 0 ? 0 : |
1109 ((1<<java_lang_invoke_AdapterMethodHandle::OP_PRIM_TO_REF) | 1109 ((1<<java_lang_invoke_AdapterMethodHandle::OP_PRIM_TO_REF) |
1110 |(1<<java_lang_invoke_AdapterMethodHandle::OP_COLLECT_ARGS) | 1110 |(1<<java_lang_invoke_AdapterMethodHandle::OP_COLLECT_ARGS) |
1111 |(1<<java_lang_invoke_AdapterMethodHandle::OP_FOLD_ARGS) | 1111 |(1<<java_lang_invoke_AdapterMethodHandle::OP_FOLD_ARGS) |
1112 )) | 1112 )) |