src/cpu/x86/vm/templateTable_x86_64.cpp

changeset 6064
42790b7e4d48
parent 6059
ea79ab313e98
parent 6039
bd3237e0e18d
child 6876
710a3c8b516e
child 8368
32b682649973
equal deleted inserted replaced
6062:c8fc12209830 6064:42790b7e4d48
2982 __ shrl(flags, ConstantPoolCacheEntry::tos_state_shift); 2982 __ shrl(flags, ConstantPoolCacheEntry::tos_state_shift);
2983 // Make sure we don't need to mask flags after the above shift 2983 // Make sure we don't need to mask flags after the above shift
2984 ConstantPoolCacheEntry::verify_tos_state_shift(); 2984 ConstantPoolCacheEntry::verify_tos_state_shift();
2985 // load return address 2985 // load return address
2986 { 2986 {
2987 const address table_addr = (is_invokeinterface || is_invokedynamic) ? 2987 const address table_addr = (address) Interpreter::invoke_return_entry_table_for(code);
2988 (address)Interpreter::return_5_addrs_by_index_table() :
2989 (address)Interpreter::return_3_addrs_by_index_table();
2990 ExternalAddress table(table_addr); 2988 ExternalAddress table(table_addr);
2991 __ lea(rscratch1, table); 2989 __ lea(rscratch1, table);
2992 __ movptr(flags, Address(rscratch1, flags, Address::times_ptr)); 2990 __ movptr(flags, Address(rscratch1, flags, Address::times_ptr));
2993 } 2991 }
2994 2992

mercurial