aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--arch/s390/include/asm/cmpxchg.h8
1 files changed, 4 insertions, 4 deletions
diff --git a/arch/s390/include/asm/cmpxchg.h b/arch/s390/include/asm/cmpxchg.h
index 13c8b2eb6983..26f2cb1aa9ff 100644
--- a/arch/s390/include/asm/cmpxchg.h
+++ b/arch/s390/include/asm/cmpxchg.h
@@ -113,9 +113,9 @@ static inline unsigned long __cmpxchg(void *ptr, unsigned long old,
113 " nr %1,%5\n" 113 " nr %1,%5\n"
114 " jnz 0b\n" 114 " jnz 0b\n"
115 "1:" 115 "1:"
116 : "=&d" (prev), "=&d" (tmp), "=Q" (*(int *) ptr) 116 : "=&d" (prev), "=&d" (tmp), "+Q" (*(int *) addr)
117 : "d" (old << shift), "d" (new << shift), 117 : "d" (old << shift), "d" (new << shift),
118 "d" (~(255 << shift)), "Q" (*(int *) ptr) 118 "d" (~(255 << shift))
119 : "memory", "cc"); 119 : "memory", "cc");
120 return prev >> shift; 120 return prev >> shift;
121 case 2: 121 case 2:
@@ -134,9 +134,9 @@ static inline unsigned long __cmpxchg(void *ptr, unsigned long old,
134 " nr %1,%5\n" 134 " nr %1,%5\n"
135 " jnz 0b\n" 135 " jnz 0b\n"
136 "1:" 136 "1:"
137 : "=&d" (prev), "=&d" (tmp), "=Q" (*(int *) ptr) 137 : "=&d" (prev), "=&d" (tmp), "+Q" (*(int *) addr)
138 : "d" (old << shift), "d" (new << shift), 138 : "d" (old << shift), "d" (new << shift),
139 "d" (~(65535 << shift)), "Q" (*(int *) ptr) 139 "d" (~(65535 << shift))
140 : "memory", "cc"); 140 : "memory", "cc");
141 return prev >> shift; 141 return prev >> shift;
142 case 4: 142 case 4: