#include <9pm/u.h>
#include <9pm/libc.h>
#undef lock
void
incref(Ref *ref)
{
_asm {
mov eax, ref
lock inc [eax]
}
}
int
decref(Ref *ref)
{
int x;
_asm {
mov eax, ref
lock dec [eax]
jz iszero
mov x, 1
jmp retrn
iszero:
mov x, 0
retrn:
}
return x;
}