summaryrefslogtreecommitdiffstats
path: root/compiler-rt/lib/builtins/atomic.c
diff options
context:
space:
mode:
authorHubert Tong <hubert.reinterpretcast@gmail.com>2019-03-23 18:39:54 +0000
committerHubert Tong <hubert.reinterpretcast@gmail.com>2019-03-23 18:39:54 +0000
commit4e7a218abf9b28be1a882feb49c9058b7a4eb975 (patch)
treea4f3a181d1f0210e30be860465dcffc7e53e80c0 /compiler-rt/lib/builtins/atomic.c
parenta7510baf8477c370a9710a52c7de09a8d4a5396d (diff)
downloadbcm5719-llvm-4e7a218abf9b28be1a882feb49c9058b7a4eb975.tar.gz
bcm5719-llvm-4e7a218abf9b28be1a882feb49c9058b7a4eb975.zip
Fix typos in compiler-rt/lib/builtins/atomic.c
Summary: This patch fixes typos in file compiler-rt/lib/builtins/atomic.c. Reviewers: jasonliu, hubert.reinterpretcast, jfb Reviewed By: jfb Subscribers: t.p.northover, theraven, dberris, jfb, jdoerfert, #sanitizers, llvm-commits Tags: #llvm, #sanitizers Differential Revision: https://reviews.llvm.org/D59228 Patch by Xing Xue. llvm-svn: 356844
Diffstat (limited to 'compiler-rt/lib/builtins/atomic.c')
-rw-r--r--compiler-rt/lib/builtins/atomic.c11
1 files changed, 10 insertions, 1 deletions
diff --git a/compiler-rt/lib/builtins/atomic.c b/compiler-rt/lib/builtins/atomic.c
index 87a7e85a16c..1bca01c82ab 100644
--- a/compiler-rt/lib/builtins/atomic.c
+++ b/compiler-rt/lib/builtins/atomic.c
@@ -135,23 +135,32 @@ static __inline Lock *lock_for_pointer(void *ptr) {
#define LOCK_FREE_CASES() \
do {\
switch (size) {\
+ case 1:\
+ if (IS_LOCK_FREE_1) {\
+ LOCK_FREE_ACTION(uint8_t);\
+ }\
+ break; \
case 2:\
if (IS_LOCK_FREE_2) {\
LOCK_FREE_ACTION(uint16_t);\
}\
+ break; \
case 4:\
if (IS_LOCK_FREE_4) {\
LOCK_FREE_ACTION(uint32_t);\
}\
+ break; \
case 8:\
if (IS_LOCK_FREE_8) {\
LOCK_FREE_ACTION(uint64_t);\
}\
+ break; \
case 16:\
if (IS_LOCK_FREE_16) {\
/* FIXME: __uint128_t isn't available on 32 bit platforms.
LOCK_FREE_ACTION(__uint128_t);*/\
}\
+ break; \
}\
} while (0)
@@ -174,7 +183,7 @@ void __atomic_load_c(int size, void *src, void *dest, int model) {
/// pointer only.
void __atomic_store_c(int size, void *dest, void *src, int model) {
#define LOCK_FREE_ACTION(type) \
- __c11_atomic_store((_Atomic(type)*)dest, *(type*)dest, model);\
+ __c11_atomic_store((_Atomic(type)*)dest, *(type*)src, model);\
return;
LOCK_FREE_CASES();
#undef LOCK_FREE_ACTION
OpenPOWER on IntegriCloud