powerpc: atomic: Implement acquire/release/relaxed variants for xchg
authorBoqun Feng <boqun.feng@gmail.com>
Tue, 15 Dec 2015 14:24:16 +0000 (22:24 +0800)
committerMichael Ellerman <mpe@ellerman.id.au>
Wed, 17 Feb 2016 13:11:31 +0000 (00:11 +1100)
commit26760fc19a7e663e4f49d586aca6740fb21d887d
tree8c73bf998f486b3d16129566cae55049e27c764f
parentdc53617c4a3f6ca35641dfd4279720365ce9f4da
powerpc: atomic: Implement acquire/release/relaxed variants for xchg

Implement xchg{,64}_relaxed and atomic{,64}_xchg_relaxed, based on these
_relaxed variants, release/acquire variants and fully ordered versions
can be built.

Note that xchg{,64}_relaxed and atomic_{,64}_xchg_relaxed are not
compiler barriers.

Signed-off-by: Boqun Feng <boqun.feng@gmail.com>
Signed-off-by: Michael Ellerman <mpe@ellerman.id.au>
arch/powerpc/include/asm/atomic.h
arch/powerpc/include/asm/cmpxchg.h