Ejemplo n.º 1
0
	object *resolve_forwarding(object *untagged)
	{
		parent->check_data_pointer(untagged);

		/* is there another forwarding pointer? */
		while(untagged->forwarding_pointer_p())
			untagged = untagged->forwarding_pointer();

		/* we've found the destination */
		return untagged;
	}
Ejemplo n.º 2
0
	gc_bignum(bignum **addr_, factor_vm *vm) : addr(addr_), parent_vm(vm) {
		if(*addr_)
			parent_vm->check_data_pointer(*addr_);
		parent_vm->gc_bignums.push_back((cell)addr);
	}