diff options
author | Torvald Riegel <triegel@redhat.com> | 2014-10-29 19:14:14 +0100 |
---|---|---|
committer | Torvald Riegel <triegel@redhat.com> | 2014-10-31 12:00:38 +0100 |
commit | ff9dbdc048f8341c5f1bc6a6982b669b49a40983 (patch) | |
tree | a9892da9b3867c93227507fb8bf018b852019dfa /sysdeps/sparc/sparc32 | |
parent | b4f6688462ba4f7fb4766f11ed5b70c70ea0623a (diff) | |
download | glibc-ff9dbdc048f8341c5f1bc6a6982b669b49a40983.tar.gz glibc-ff9dbdc048f8341c5f1bc6a6982b669b49a40983.tar.xz glibc-ff9dbdc048f8341c5f1bc6a6982b669b49a40983.zip |
Fix SPARC atomic_write_barrier.
Diffstat (limited to 'sysdeps/sparc/sparc32')
-rw-r--r-- | sysdeps/sparc/sparc32/bits/atomic.h | 4 | ||||
-rw-r--r-- | sysdeps/sparc/sparc32/sparcv9/bits/atomic.h | 2 |
2 files changed, 3 insertions, 3 deletions
diff --git a/sysdeps/sparc/sparc32/bits/atomic.h b/sysdeps/sparc/sparc32/bits/atomic.h index 39c2b37655..251e65662d 100644 --- a/sysdeps/sparc/sparc32/bits/atomic.h +++ b/sysdeps/sparc/sparc32/bits/atomic.h @@ -343,8 +343,8 @@ extern uint64_t _dl_hwcap __attribute__((weak)); #define atomic_write_barrier() \ do { \ if (__atomic_is_v9) \ - /* membar #StoreLoad | #StoreStore */ \ - __asm __volatile (".word 0x8143e00a" : : : "memory"); \ + /* membar #LoadStore | #StoreStore */ \ + __asm __volatile (".word 0x8143e00c" : : : "memory"); \ else \ __asm __volatile ("" : : : "memory"); \ } while (0) diff --git a/sysdeps/sparc/sparc32/sparcv9/bits/atomic.h b/sysdeps/sparc/sparc32/sparcv9/bits/atomic.h index 4835019202..310e6365e9 100644 --- a/sysdeps/sparc/sparc32/sparcv9/bits/atomic.h +++ b/sysdeps/sparc/sparc32/sparcv9/bits/atomic.h @@ -96,4 +96,4 @@ typedef uintmax_t uatomic_max_t; #define atomic_read_barrier() \ __asm __volatile ("membar #LoadLoad | #LoadStore" : : : "memory") #define atomic_write_barrier() \ - __asm __volatile ("membar #StoreLoad | #StoreStore" : : : "memory") + __asm __volatile ("membar #LoadStore | #StoreStore" : : : "memory") |