Subversion Repositories HelenOS-historic

Compare Revisions

Ignore whitespace Rev 258 → Rev 259

/SPARTAN/trunk/src/build.amd64
15,7 → 15,7
fi
done
 
for a in ega.h i8042.h i8259.h i8254.h interrupt.h bios mm/memory_init.h boot/memmap.h boot/memmapasm.h; do
for a in atomic.h ega.h i8042.h i8259.h i8254.h interrupt.h bios mm/memory_init.h boot/memmap.h boot/memmapasm.h; do
if [ \! -e amd64/include/$a ]; then
echo ln -sf `pwd`/ia32/include/$a amd64/include/$a
ln -sf `pwd`/ia32/include/$a amd64/include/$a
/SPARTAN/trunk/arch/amd64/include/atomic.h
File deleted
/SPARTAN/trunk/arch/ia32/include/atomic.h
33,17 → 33,17
 
static inline void atomic_inc(volatile int *val) {
#ifdef __SMP__
__asm__ volatile ("lock incl (%0)\n" : : "r" (val));
__asm__ volatile ("lock incl %0\n" : "=m" (*val));
#else
__asm__ volatile ("incl (%0)\n" : : "r" (val));
__asm__ volatile ("incl %0\n" : "=m" (*val));
#endif /* __SMP__ */
}
 
static inline void atomic_dec(volatile int *val) {
#ifdef __SMP__
__asm__ volatile ("lock decl (%0)\n" : : "r" (val));
__asm__ volatile ("lock decl %0\n" : "=m" (*val));
#else
__asm__ volatile ("decl (%0)\n" : : "r" (val));
__asm__ volatile ("decl %0\n" : "=m" (*val));
#endif /* __SMP__ */
}
 
52,9 → 52,8
__asm__ volatile (
"movl $1, %0\n"
"xchgl %0, (%1)\n"
: "=r" (v)
: "r" (val)
"xchgl %0, %1\n"
: "=r" (v),"=m" (*val)
);
return v;