Mercurial > hg > graal-jvmci-8
comparison src/cpu/x86/vm/interp_masm_x86_64.cpp @ 13086:096c224171c4
Merge with http://hg.openjdk.java.net/hsx/hsx25/hotspot/
author | Doug Simon <doug.simon@oracle.com> |
---|---|
date | Wed, 20 Nov 2013 00:10:38 +0100 |
parents | 359f7e70ae7f ea79ab313e98 |
children | b51e29501f30 be896a1983c0 |
comparison
equal
deleted
inserted
replaced
12782:92b7ec34ddfa | 13086:096c224171c4 |
---|---|
21 * questions. | 21 * questions. |
22 * | 22 * |
23 */ | 23 */ |
24 | 24 |
25 #include "precompiled.hpp" | 25 #include "precompiled.hpp" |
26 #include "interp_masm_x86_64.hpp" | 26 #include "interp_masm_x86.hpp" |
27 #include "interpreter/interpreter.hpp" | 27 #include "interpreter/interpreter.hpp" |
28 #include "interpreter/interpreterRuntime.hpp" | 28 #include "interpreter/interpreterRuntime.hpp" |
29 #include "oops/arrayOop.hpp" | 29 #include "oops/arrayOop.hpp" |
30 #include "oops/markOop.hpp" | 30 #include "oops/markOop.hpp" |
31 #include "oops/methodData.hpp" | 31 #include "oops/methodData.hpp" |
190 | 190 |
191 void InterpreterMacroAssembler::get_unsigned_2_byte_index_at_bcp( | 191 void InterpreterMacroAssembler::get_unsigned_2_byte_index_at_bcp( |
192 Register reg, | 192 Register reg, |
193 int bcp_offset) { | 193 int bcp_offset) { |
194 assert(bcp_offset >= 0, "bcp is still pointing to start of bytecode"); | 194 assert(bcp_offset >= 0, "bcp is still pointing to start of bytecode"); |
195 movl(reg, Address(r13, bcp_offset)); | 195 load_unsigned_short(reg, Address(r13, bcp_offset)); |
196 bswapl(reg); | 196 bswapl(reg); |
197 shrl(reg, 16); | 197 shrl(reg, 16); |
198 } | 198 } |
199 | 199 |
200 | 200 |
1064 // the next bytecode | 1064 // the next bytecode |
1065 update_mdp_by_constant(mdp, in_bytes(BranchData::branch_data_size())); | 1065 update_mdp_by_constant(mdp, in_bytes(BranchData::branch_data_size())); |
1066 bind(profile_continue); | 1066 bind(profile_continue); |
1067 } | 1067 } |
1068 } | 1068 } |
1069 | |
1070 | 1069 |
1071 void InterpreterMacroAssembler::profile_call(Register mdp) { | 1070 void InterpreterMacroAssembler::profile_call(Register mdp) { |
1072 if (ProfileInterpreter) { | 1071 if (ProfileInterpreter) { |
1073 Label profile_continue; | 1072 Label profile_continue; |
1074 | 1073 |