Quick Links: Empeg FAQ | RioCar.Org | Hijack | BigDisk Builder | jEmplode | emphatic Repairs: Repairs
extern const char xchg_str[]; extern __inline__ unsigned long __xchg(unsigned long x, volatile void *ptr, int size) { switch (size) { case 1: __asm__ __volatile__ ("swpb %0, %1, [%2]" : "=r" (x) : "r" (x), "r" (ptr) : "memory"); break; case 2: abort (); case 4: __asm__ __volatile__ ("swp %0, %1, [%2]" : "=r" (x) : "r" (x), "r" (ptr) : "memory"); break; default: arm_invalidptr(xchg_str, size); } return x; }