diff options
Diffstat (limited to 'arch/powerpc/include/asm/atomic.h')
| -rw-r--r-- | arch/powerpc/include/asm/atomic.h | 48 | 
1 files changed, 24 insertions, 24 deletions
diff --git a/arch/powerpc/include/asm/atomic.h b/arch/powerpc/include/asm/atomic.h index e2a4c26ad37..02e41b53488 100644 --- a/arch/powerpc/include/asm/atomic.h +++ b/arch/powerpc/include/asm/atomic.h @@ -49,13 +49,13 @@ static __inline__ int atomic_add_return(int a, atomic_t *v)  	int t;  	__asm__ __volatile__( -	PPC_RELEASE_BARRIER +	PPC_ATOMIC_ENTRY_BARRIER  "1:	lwarx	%0,0,%2		# atomic_add_return\n\  	add	%0,%1,%0\n"  	PPC405_ERR77(0,%2)  "	stwcx.	%0,0,%2 \n\  	bne-	1b" -	PPC_ACQUIRE_BARRIER +	PPC_ATOMIC_EXIT_BARRIER  	: "=&r" (t)  	: "r" (a), "r" (&v->counter)  	: "cc", "memory"); @@ -85,13 +85,13 @@ static __inline__ int atomic_sub_return(int a, atomic_t *v)  	int t;  	__asm__ __volatile__( -	PPC_RELEASE_BARRIER +	PPC_ATOMIC_ENTRY_BARRIER  "1:	lwarx	%0,0,%2		# atomic_sub_return\n\  	subf	%0,%1,%0\n"  	PPC405_ERR77(0,%2)  "	stwcx.	%0,0,%2 \n\  	bne-	1b" -	PPC_ACQUIRE_BARRIER +	PPC_ATOMIC_EXIT_BARRIER  	: "=&r" (t)  	: "r" (a), "r" (&v->counter)  	: "cc", "memory"); @@ -119,13 +119,13 @@ static __inline__ int atomic_inc_return(atomic_t *v)  	int t;  	__asm__ __volatile__( -	PPC_RELEASE_BARRIER +	PPC_ATOMIC_ENTRY_BARRIER  "1:	lwarx	%0,0,%1		# atomic_inc_return\n\  	addic	%0,%0,1\n"  	PPC405_ERR77(0,%1)  "	stwcx.	%0,0,%1 \n\  	bne-	1b" -	PPC_ACQUIRE_BARRIER +	PPC_ATOMIC_EXIT_BARRIER  	: "=&r" (t)  	: "r" (&v->counter)  	: "cc", "xer", "memory"); @@ -163,13 +163,13 @@ static __inline__ int atomic_dec_return(atomic_t *v)  	int t;  	__asm__ __volatile__( -	PPC_RELEASE_BARRIER +	PPC_ATOMIC_ENTRY_BARRIER  "1:	lwarx	%0,0,%1		# atomic_dec_return\n\  	addic	%0,%0,-1\n"  	PPC405_ERR77(0,%1)  "	stwcx.	%0,0,%1\n\  	bne-	1b" -	PPC_ACQUIRE_BARRIER +	PPC_ATOMIC_EXIT_BARRIER  	: "=&r" (t)  	: "r" (&v->counter)  	: "cc", "xer", "memory"); @@ -194,7 +194,7 @@ static __inline__ int __atomic_add_unless(atomic_t *v, int a, int u)  	int t;  	__asm__ __volatile__ ( -	PPC_RELEASE_BARRIER +	PPC_ATOMIC_ENTRY_BARRIER  "1:	lwarx	%0,0,%1		# __atomic_add_unless\n\  	cmpw	0,%0,%3 \n\  	beq-	2f \n\ @@ -202,7 +202,7 @@ static __inline__ int __atomic_add_unless(atomic_t *v, int a, int u)  	PPC405_ERR77(0,%2)  "	stwcx.	%0,0,%1 \n\  	bne-	1b \n" -	PPC_ACQUIRE_BARRIER +	PPC_ATOMIC_EXIT_BARRIER  "	subf	%0,%2,%0 \n\  2:"  	: "=&r" (t) @@ -226,7 +226,7 @@ static __inline__ int atomic_dec_if_positive(atomic_t *v)  	int t;  	__asm__ __volatile__( -	PPC_RELEASE_BARRIER +	PPC_ATOMIC_ENTRY_BARRIER  "1:	lwarx	%0,0,%1		# atomic_dec_if_positive\n\  	cmpwi	%0,1\n\  	addi	%0,%0,-1\n\ @@ -234,7 +234,7 @@ static __inline__ int atomic_dec_if_positive(atomic_t *v)  	PPC405_ERR77(0,%1)  "	stwcx.	%0,0,%1\n\  	bne-	1b" -	PPC_ACQUIRE_BARRIER +	PPC_ATOMIC_EXIT_BARRIER  	"\n\  2:"	: "=&b" (t)  	: "r" (&v->counter) @@ -285,12 +285,12 @@ static __inline__ long atomic64_add_return(long a, atomic64_t *v)  	long t;  	__asm__ __volatile__( -	PPC_RELEASE_BARRIER +	PPC_ATOMIC_ENTRY_BARRIER  "1:	ldarx	%0,0,%2		# atomic64_add_return\n\  	add	%0,%1,%0\n\  	stdcx.	%0,0,%2 \n\  	bne-	1b" -	PPC_ACQUIRE_BARRIER +	PPC_ATOMIC_EXIT_BARRIER  	: "=&r" (t)  	: "r" (a), "r" (&v->counter)  	: "cc", "memory"); @@ -319,12 +319,12 @@ static __inline__ long atomic64_sub_return(long a, atomic64_t *v)  	long t;  	__asm__ __volatile__( -	PPC_RELEASE_BARRIER +	PPC_ATOMIC_ENTRY_BARRIER  "1:	ldarx	%0,0,%2		# atomic64_sub_return\n\  	subf	%0,%1,%0\n\  	stdcx.	%0,0,%2 \n\  	bne-	1b" -	PPC_ACQUIRE_BARRIER +	PPC_ATOMIC_EXIT_BARRIER  	: "=&r" (t)  	: "r" (a), "r" (&v->counter)  	: "cc", "memory"); @@ -351,12 +351,12 @@ static __inline__ long atomic64_inc_return(atomic64_t *v)  	long t;  	__asm__ __volatile__( -	PPC_RELEASE_BARRIER +	PPC_ATOMIC_ENTRY_BARRIER  "1:	ldarx	%0,0,%1		# atomic64_inc_return\n\  	addic	%0,%0,1\n\  	stdcx.	%0,0,%1 \n\  	bne-	1b" -	PPC_ACQUIRE_BARRIER +	PPC_ATOMIC_EXIT_BARRIER  	: "=&r" (t)  	: "r" (&v->counter)  	: "cc", "xer", "memory"); @@ -393,12 +393,12 @@ static __inline__ long atomic64_dec_return(atomic64_t *v)  	long t;  	__asm__ __volatile__( -	PPC_RELEASE_BARRIER +	PPC_ATOMIC_ENTRY_BARRIER  "1:	ldarx	%0,0,%1		# atomic64_dec_return\n\  	addic	%0,%0,-1\n\  	stdcx.	%0,0,%1\n\  	bne-	1b" -	PPC_ACQUIRE_BARRIER +	PPC_ATOMIC_EXIT_BARRIER  	: "=&r" (t)  	: "r" (&v->counter)  	: "cc", "xer", "memory"); @@ -418,13 +418,13 @@ static __inline__ long atomic64_dec_if_positive(atomic64_t *v)  	long t;  	__asm__ __volatile__( -	PPC_RELEASE_BARRIER +	PPC_ATOMIC_ENTRY_BARRIER  "1:	ldarx	%0,0,%1		# atomic64_dec_if_positive\n\  	addic.	%0,%0,-1\n\  	blt-	2f\n\  	stdcx.	%0,0,%1\n\  	bne-	1b" -	PPC_ACQUIRE_BARRIER +	PPC_ATOMIC_EXIT_BARRIER  	"\n\  2:"	: "=&r" (t)  	: "r" (&v->counter) @@ -450,14 +450,14 @@ static __inline__ int atomic64_add_unless(atomic64_t *v, long a, long u)  	long t;  	__asm__ __volatile__ ( -	PPC_RELEASE_BARRIER +	PPC_ATOMIC_ENTRY_BARRIER  "1:	ldarx	%0,0,%1		# __atomic_add_unless\n\  	cmpd	0,%0,%3 \n\  	beq-	2f \n\  	add	%0,%2,%0 \n"  "	stdcx.	%0,0,%1 \n\  	bne-	1b \n" -	PPC_ACQUIRE_BARRIER +	PPC_ATOMIC_EXIT_BARRIER  "	subf	%0,%2,%0 \n\  2:"  	: "=&r" (t)  |