src/cpu/mips/vm/macroAssembler_mips.cpp

changeset 8002
f543ff2cabcf
parent 8001
76b73e112cb7
child 8004
941851413ebf
equal deleted inserted replaced
8001:76b73e112cb7 8002:f543ff2cabcf
1775 BarrierSet* bs = Universe::heap()->barrier_set(); 1775 BarrierSet* bs = Universe::heap()->barrier_set();
1776 assert(bs->kind() == BarrierSet::CardTableModRef, "Wrong barrier set kind"); 1776 assert(bs->kind() == BarrierSet::CardTableModRef, "Wrong barrier set kind");
1777 CardTableModRefBS* ct = (CardTableModRefBS*)bs; 1777 CardTableModRefBS* ct = (CardTableModRefBS*)bs;
1778 assert(sizeof(*ct->byte_map_base) == sizeof(jbyte), "adjust this code"); 1778 assert(sizeof(*ct->byte_map_base) == sizeof(jbyte), "adjust this code");
1779 1779
1780 li(AT, (long)ct->byte_map_base); 1780 set64(AT, (long)ct->byte_map_base);
1781 #ifdef _LP64 1781 #ifdef _LP64
1782 dadd(AT, AT, obj); 1782 dadd(AT, AT, obj);
1783 #else 1783 #else
1784 add(AT, AT, obj); 1784 add(AT, AT, obj);
1785 #endif 1785 #endif
1786 if (UseConcMarkSweepGC) sync();
1786 sb(R0, AT, 0); 1787 sb(R0, AT, 0);
1787 sync();
1788 } 1788 }
1789 1789
1790 // Defines obj, preserves var_size_in_bytes, okay for t2 == var_size_in_bytes. 1790 // Defines obj, preserves var_size_in_bytes, okay for t2 == var_size_in_bytes.
1791 void MacroAssembler::tlab_allocate(Register obj, Register var_size_in_bytes, int con_size_in_bytes, 1791 void MacroAssembler::tlab_allocate(Register obj, Register var_size_in_bytes, int con_size_in_bytes,
1792 Register t1, Register t2, Label& slow_case) { 1792 Register t1, Register t2, Label& slow_case) {

mercurial