summaryrefslogtreecommitdiffhomepage
path: root/include
diff options
context:
space:
mode:
authormidipix <writeonce@midipix.org>2016-05-23 00:17:40 -0400
committermidipix <writeonce@midipix.org>2016-05-23 04:20:37 -0400
commit8ce0ee786539ba865367dbe68185ffed0ff700a7 (patch)
treed891fe7945ddc2f25dcf69118e22c7b1047cdd90 /include
parent381f65e77bcc81945e20829756a3da4a3d5c8624 (diff)
downloadntapi-8ce0ee786539ba865367dbe68185ffed0ff700a7.tar.bz2
ntapi-8ce0ee786539ba865367dbe68185ffed0ff700a7.tar.xz
nt_atomic.h: i386: implement at_store_64() in terms or at_locked_cas_64.
Diffstat (limited to 'include')
-rw-r--r--include/ntapi/bits/i386/nt_atomic_i386_asm__gcc.h10
1 files changed, 3 insertions, 7 deletions
diff --git a/include/ntapi/bits/i386/nt_atomic_i386_asm__gcc.h b/include/ntapi/bits/i386/nt_atomic_i386_asm__gcc.h
index 1e9ed71..adf000f 100644
--- a/include/ntapi/bits/i386/nt_atomic_i386_asm__gcc.h
+++ b/include/ntapi/bits/i386/nt_atomic_i386_asm__gcc.h
@@ -468,13 +468,9 @@ static __inline__ void at_store_64(
prev = *dst;
cmp = prev;
- __atomic_compare_exchange_n(
- dst,
- &cmp,
- xchg,
- 0,
- __ATOMIC_SEQ_CST,
- __ATOMIC_SEQ_CST);
+ prev = at_locked_cas_64(
+ dst,cmp,xchg);
+
} while (cmp != prev);
}