extern inline long testandset(int *spinlock)
testandset (int *spinlock)
extern inline long testandset(int *spinlock){  long ret, temp;  __asm__ __volatile__(	"/* Inline spinlock test & set */\n"	"1:\t"	"ldl_l %0,%3\n\t"	"bne %0,2f\n\t"	"or $31,1,%1\n\t"	"stl_c %1,%2\n\t"	"beq %1,1b\n"	"2:\tmb\n"	"/* End spinlock test & set */"	: "=&r"(ret), "=&r"(temp), "=m"(*spinlock)	: "m"(*spinlock)        : "memory");  return ret;}