summaryrefslogtreecommitdiffstats
path: root/include/asm-i386/mutex.h
diff options
context:
space:
mode:
authorAndi Kleen <ak@suse.de>2006-09-26 10:52:31 +0200
committerAndi Kleen <andi@basil.nowhere.org>2006-09-26 10:52:31 +0200
commit01215ad8d83e18321d99e9b5750a6f21cac243a2 (patch)
treeaad34bac0001d2b2788dcb5c68566372db7968c3 /include/asm-i386/mutex.h
parent0577f148b5e9a773020e3da1e6332a7c6df9d601 (diff)
downloadlinux-01215ad8d83e18321d99e9b5750a6f21cac243a2.tar.gz
linux-01215ad8d83e18321d99e9b5750a6f21cac243a2.tar.bz2
linux-01215ad8d83e18321d99e9b5750a6f21cac243a2.zip
[PATCH] i386: Remove lock section support in mutex.h
Lock sections don't work the new dwarf2 unwinder This generates slightly smaller code. It adds one more taken jump to the fast path. Cc: jbeulich@novell.com Signed-off-by: Andi Kleen <ak@suse.de>
Diffstat (limited to 'include/asm-i386/mutex.h')
-rw-r--r--include/asm-i386/mutex.h16
1 files changed, 4 insertions, 12 deletions
diff --git a/include/asm-i386/mutex.h b/include/asm-i386/mutex.h
index 05a538531229..7a17d9e58ad6 100644
--- a/include/asm-i386/mutex.h
+++ b/include/asm-i386/mutex.h
@@ -30,14 +30,10 @@ do { \
\
__asm__ __volatile__( \
LOCK_PREFIX " decl (%%eax) \n" \
- " js 2f \n" \
+ " jns 1f \n" \
+ " call "#fail_fn" \n" \
"1: \n" \
\
- LOCK_SECTION_START("") \
- "2: call "#fail_fn" \n" \
- " jmp 1b \n" \
- LOCK_SECTION_END \
- \
:"=a" (dummy) \
: "a" (count) \
: "memory", "ecx", "edx"); \
@@ -86,14 +82,10 @@ do { \
\
__asm__ __volatile__( \
LOCK_PREFIX " incl (%%eax) \n" \
- " jle 2f \n" \
+ " jg 1f \n" \
+ " call "#fail_fn" \n" \
"1: \n" \
\
- LOCK_SECTION_START("") \
- "2: call "#fail_fn" \n" \
- " jmp 1b \n" \
- LOCK_SECTION_END \
- \
:"=a" (dummy) \
: "a" (count) \
: "memory", "ecx", "edx"); \