diff options
author | Andi Kleen <ak@suse.de> | 2006-09-29 19:47:55 -0400 |
---|---|---|
committer | Andi Kleen <andi@basil.nowhere.org> | 2006-09-29 19:47:55 -0400 |
commit | c84ef5305930d19bdd6cd576b3a3a73786a82e57 (patch) | |
tree | 26f9b94efa67ce79cf89dee251ac519804cab793 /include/asm-x86_64 | |
parent | 34596dc9e59d7bece16fe5aba08116b49465da26 (diff) |
[PATCH] Use early clobber in semaphores
New code clobbers the result always early, so tell gcc about it
Signed-off-by: Andi Kleen <ak@suse.de>
Diffstat (limited to 'include/asm-x86_64')
-rw-r--r-- | include/asm-x86_64/semaphore.h | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/include/asm-x86_64/semaphore.h b/include/asm-x86_64/semaphore.h index 107bd90429e8..1194888536b9 100644 --- a/include/asm-x86_64/semaphore.h +++ b/include/asm-x86_64/semaphore.h | |||
@@ -132,7 +132,7 @@ static inline int down_interruptible(struct semaphore * sem) | |||
132 | "jns 2f\n\t" | 132 | "jns 2f\n\t" |
133 | "call __down_failed_interruptible\n" | 133 | "call __down_failed_interruptible\n" |
134 | "2:\n" | 134 | "2:\n" |
135 | :"=a" (result), "=m" (sem->count) | 135 | :"=&a" (result), "=m" (sem->count) |
136 | :"D" (sem) | 136 | :"D" (sem) |
137 | :"memory"); | 137 | :"memory"); |
138 | return result; | 138 | return result; |
@@ -153,7 +153,7 @@ static inline int down_trylock(struct semaphore * sem) | |||
153 | "jns 2f\n\t" | 153 | "jns 2f\n\t" |
154 | "call __down_failed_trylock\n\t" | 154 | "call __down_failed_trylock\n\t" |
155 | "2:\n" | 155 | "2:\n" |
156 | :"=a" (result), "=m" (sem->count) | 156 | :"=&a" (result), "=m" (sem->count) |
157 | :"D" (sem) | 157 | :"D" (sem) |
158 | :"memory","cc"); | 158 | :"memory","cc"); |
159 | return result; | 159 | return result; |