Subversion Repositories HelenOS

Compare Revisions

Ignore whitespace Rev 1691 → Rev 1690

/kernel/trunk/arch/ia32/include/atomic.h
52,11 → 52,12
 
static inline long atomic_postinc(atomic_t *val)
{
long r = 1;
long r;
 
__asm__ volatile (
"lock xaddl %1, %0\n"
: "=m" (val->count) : "r" (r)
"movl $1, %0\n"
"lock xaddl %0, %1\n"
: "=r" (r), "=m" (val->count)
);
 
return r;
64,11 → 65,12
 
static inline long atomic_postdec(atomic_t *val)
{
long r = -1;
long r;
__asm__ volatile (
"lock xaddl %1, %0\n"
: "=m" (val->count) : "r"(r)
"movl $-1, %0\n"
"lock xaddl %0, %1\n"
: "=r" (r), "=m" (val->count)
);
return r;