comparison src/cpu/sparc/vm/interp_masm_sparc.cpp @ 3852:fdb992d83a87

7071653: JSR 292: call site change notification should be pushed not pulled Reviewed-by: kvn, never, bdelsart
author twisti
date Tue, 16 Aug 2011 04:14:05 -0700
parents 3d42f82cd811
children 2fe087c3e814
comparison
equal deleted inserted replaced
3851:95134e034042 3852:fdb992d83a87
756 sll(tmp, exact_log2(in_words(ConstantPoolCacheEntry::size()) * BytesPerWord), tmp); 756 sll(tmp, exact_log2(in_words(ConstantPoolCacheEntry::size()) * BytesPerWord), tmp);
757 add(LcpoolCache, tmp, cache); 757 add(LcpoolCache, tmp, cache);
758 } 758 }
759 759
760 760
761 void InterpreterMacroAssembler::get_cache_and_index_and_bytecode_at_bcp(Register cache,
762 Register temp,
763 Register bytecode,
764 int byte_no,
765 int bcp_offset,
766 size_t index_size) {
767 get_cache_and_index_at_bcp(cache, temp, bcp_offset, index_size);
768 ld_ptr(cache, constantPoolCacheOopDesc::base_offset() + ConstantPoolCacheEntry::indices_offset(), bytecode);
769 const int shift_count = (1 + byte_no) * BitsPerByte;
770 srl( bytecode, shift_count, bytecode);
771 and3(bytecode, 0xFF, bytecode);
772 }
773
774
761 void InterpreterMacroAssembler::get_cache_entry_pointer_at_bcp(Register cache, Register tmp, 775 void InterpreterMacroAssembler::get_cache_entry_pointer_at_bcp(Register cache, Register tmp,
762 int bcp_offset, size_t index_size) { 776 int bcp_offset, size_t index_size) {
763 assert(bcp_offset > 0, "bcp is still pointing to start of bytecode"); 777 assert(bcp_offset > 0, "bcp is still pointing to start of bytecode");
764 assert_different_registers(cache, tmp); 778 assert_different_registers(cache, tmp);
765 assert_not_delayed(); 779 assert_not_delayed();