summaryrefslogtreecommitdiffstats
path: root/sys/amd64/include/atomic.h
diff options
context:
space:
mode:
authorjhb <jhb@FreeBSD.org>2000-10-28 00:28:15 +0000
committerjhb <jhb@FreeBSD.org>2000-10-28 00:28:15 +0000
commit94e76ebf966448aa915dd27bb2caed2b2cf5108e (patch)
tree970ad5a59339c210234a21ceeca517118f4d80bc /sys/amd64/include/atomic.h
parent25d887ad27679a4a31fb09900f2b17417b939812 (diff)
downloadFreeBSD-src-94e76ebf966448aa915dd27bb2caed2b2cf5108e.zip
FreeBSD-src-94e76ebf966448aa915dd27bb2caed2b2cf5108e.tar.gz
The x86 atomic operations are already locked, so they do not need an
additional locked instruction to guarantee a write barrier for the acquire variants. Approved by: dfr Pointy hat to: jhb
Diffstat (limited to 'sys/amd64/include/atomic.h')
-rw-r--r--sys/amd64/include/atomic.h2
1 files changed, 0 insertions, 2 deletions
diff --git a/sys/amd64/include/atomic.h b/sys/amd64/include/atomic.h
index f6da2d1..252cb0d 100644
--- a/sys/amd64/include/atomic.h
+++ b/sys/amd64/include/atomic.h
@@ -227,7 +227,6 @@ ATOMIC_ASM(subtract, long, "subl %1,%0", v)
static __inline void \
atomic_##NAME##_acq_##TYPE(volatile u_##TYPE *p, u_##TYPE v)\
{ \
- __asm __volatile("lock; addl $0,0(%esp)" : : : "memory");\
atomic_##NAME##_##TYPE(p, v); \
} \
\
@@ -263,7 +262,6 @@ ATOMIC_ACQ_REL(subtract, long)
static __inline u_##TYPE \
atomic_load_acq_##TYPE(volatile u_##TYPE *p) \
{ \
- __asm __volatile("lock; addl $0,0(%esp)" : : : "memory");\
return (*p); \
} \
\
OpenPOWER on IntegriCloud