Mercurial > hg > truffle
comparison src/cpu/sparc/vm/assembler_sparc.inline.hpp @ 6725:da91efe96a93
6964458: Reimplement class meta-data storage to use native memory
Summary: Remove PermGen, allocate meta-data in metaspace linked to class loaders, rewrite GC walking, rewrite and rename metadata to be C++ classes
Reviewed-by: jmasa, stefank, never, coleenp, kvn, brutisso, mgerdin, dholmes, jrose, twisti, roland
Contributed-by: jmasa <jon.masamitsu@oracle.com>, stefank <stefan.karlsson@oracle.com>, mgerdin <mikael.gerdin@oracle.com>, never <tom.rodriguez@oracle.com>
author | coleenp |
---|---|
date | Sat, 01 Sep 2012 13:25:18 -0400 |
parents | 0382d2b469b2 |
children | 7eca5de9e0b6 |
comparison
equal
deleted
inserted
replaced
6724:36d1d483d5d6 | 6725:da91efe96a93 |
---|---|
757 //sethi(al); // sethi is caller responsibility for this one | 757 //sethi(al); // sethi is caller responsibility for this one |
758 ld_ptr(a, temp, ld_offset); | 758 ld_ptr(a, temp, ld_offset); |
759 jmp(temp, jmp_offset); | 759 jmp(temp, jmp_offset); |
760 } | 760 } |
761 | 761 |
762 | |
763 inline void MacroAssembler::set_metadata(Metadata* obj, Register d) { | |
764 set_metadata(allocate_metadata_address(obj), d); | |
765 } | |
766 | |
767 inline void MacroAssembler::set_metadata_constant(Metadata* obj, Register d) { | |
768 set_metadata(constant_metadata_address(obj), d); | |
769 } | |
770 | |
771 inline void MacroAssembler::set_metadata(const AddressLiteral& obj_addr, Register d) { | |
772 assert(obj_addr.rspec().type() == relocInfo::metadata_type, "must be a metadata reloc"); | |
773 set(obj_addr, d); | |
774 } | |
762 | 775 |
763 inline void MacroAssembler::set_oop(jobject obj, Register d) { | 776 inline void MacroAssembler::set_oop(jobject obj, Register d) { |
764 set_oop(allocate_oop_address(obj), d); | 777 set_oop(allocate_oop_address(obj), d); |
765 } | 778 } |
766 | 779 |