"	.set	mips0					\n" 
static __inline__ void atomic_sub(int i, atomic_t * v){	if (cpu_has_llsc && R10000_LLSC_WAR) {		unsigned long temp;		__asm__ __volatile__(		"1:	ll	%0, %1		# atomic_sub		\n"		"	subu	%0, %2					\n"		"	sc	%0, %1					\n"		"	beqzl	%0, 1b					\n"		: "=&r" (temp), "=m" (v->counter)		: "Ir" (i), "m" (v->counter));	} else if (cpu_has_llsc) {		unsigned long temp;		__asm__ __volatile__(		"1:	ll	%0, %1		# atomic_sub		\n"		"	subu	%0, %2					\n"		"	sc	%0, %1					\n"		"	beqz	%0, 1b					\n"		: "=&r" (temp), "=m" (v->counter)		: "Ir" (i), "m" (v->counter));	} else {		unsigned long flags;		spin_lock_irqsave(&atomic_lock, flags);		v->counter -= i;		spin_unlock_irqrestore(&atomic_lock, flags);	}}
10457	/local/tlutelli/issta_data/temp/c/2005_temp/2005/10457/aac8aa7717a23a9bf8740dbfb59755b1d62f04bf/atomic.h/clean/include/asm-mips/atomic.h