Mercurial > hg > truffle
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(); |