def marked(self, obj): # should work both if tid contains a CombinedSymbolic (for dying # objects, at this point), or a plain integer. return MovingGCBase.header(self, obj).tid & GCFLAG_MARKBIT
def header_forwarded(self, addr): # like header(), but asserts that we have a forwarding header hdr = MovingGCBase.header(self, addr) if not we_are_translated(): assert is_valid_int(hdr.tid) return hdr
def header(self, addr): # like header(), but asserts that we have a normal header hdr = MovingGCBase.header(self, addr) if not we_are_translated(): assert isinstance(hdr.tid, llgroup.CombinedSymbolic) return hdr
def marked(self, obj): # should work both if tid contains a CombinedSymbolic (for dying # objects, at this point), or a plain integer. return MovingGCBase.header(self, obj).tid & GCFLAG_MARKBIT
def header_forwarded(self, addr): # like header(), but asserts that we have a forwarding header hdr = MovingGCBase.header(self, addr) if not we_are_translated(): assert isinstance(hdr.tid, int) return hdr
def header(self, addr): # like header(), but asserts that we have a normal header hdr = MovingGCBase.header(self, addr) if not we_are_translated(): assert isinstance(hdr.tid, llgroup.CombinedSymbolic) return hdr