summaryrefslogtreecommitdiff
path: root/arch
diff options
context:
space:
mode:
Diffstat (limited to 'arch')
-rw-r--r--arch/microblaze/atomic.h4
1 files changed, 3 insertions, 1 deletions
diff --git a/arch/microblaze/atomic.h b/arch/microblaze/atomic.h
index 90fcd8b6..da9949aa 100644
--- a/arch/microblaze/atomic.h
+++ b/arch/microblaze/atomic.h
@@ -95,7 +95,9 @@ static inline void a_dec(volatile int *x)
static inline void a_store(volatile int *p, int x)
{
- *p=x;
+ __asm__ __volatile__ (
+ "swi %1, %0"
+ : "=m"(*p) : "r"(x) : "memory" );
}
static inline void a_spin()