static inline int SHORTLOCK(struct sShortSpinlock *Lock)
{
+ #if 1
// Coped from linux, yes, but I know what it does now :)
Uint tmp;
__asm__ __volatile__ (
: "r" (&Lock->Lock), "r" (1)
: "cc" // Condition codes clobbered
);
+ #else
+ int v = 1;
+ while( v )
+ __asm__ __volatile__ (
+ "swp %0, [%1]"
+ : "=r" (v) : "r" (&Lock->Lock)
+ : "cc"
+ );
+ #endif
return 1;
}