mirror of
https://gcc.gnu.org/git/gcc.git
synced 2024-11-27 05:44:15 +08:00
Avoid non constant memory model uses in libatomic
x86 ends up using non constant memory models for some of the libatomic functions. These all end up as __ATOMIC_SEQ_CST. Just use this directly. This avoids a new warning for non constant memory models, which broke the bootstrap with -Werror Passed bootstrap and test on x86_64-linux. libatomic/: 2013-03-23 Andi Kleen <ak@linux.intel.com> * gcas.c: (EXACT_INLINE): Use __ATOMIC_SEQ_CST. * gexch.c: (EXACT_INLINE): Use __ATOMIC_SEQ_CST. * gload.c: (EXACT_INLINE): Use __ATOMIC_SEQ_CST. * gstore.c: (EXACT_INLINE): Use __ATOMIC_SEQ_CST. diff --git a/libatomic/gcas.c b/libatomic/gcas.c index edbf611..e3d77f3 100644 --- a/libatomic/gcas.c +++ b/libatomic/gcas.c @@ -32,7 +32,7 @@ # define EXACT_INLINE(N) \ if (C2(HAVE_ATOMIC_CAS_,N)) \ return __atomic_compare_exchange_n \ - (PTR(N,mptr), PTR(N,eptr), *PTR(N,dptr), false, smodel, fmodel) + (PTR(N,mptr), PTR(N,eptr), *PTR(N,dptr), false, __ATOMIC_SEQ_CST, __ATOMIC_SEQ_CST) #else # define EXACT_INLINE(N) #endif diff --git a/libatomic/gexch.c b/libatomic/gexch.c index 1999067..c8c8658 100644 --- a/libatomic/gexch.c +++ b/libatomic/gexch.c @@ -33,7 +33,7 @@ if (C2(HAVE_ATOMIC_EXCHANGE_,N)) \ { \ *PTR(N,rptr) = __atomic_exchange_n \ - (PTR(N,mptr), *PTR(N,vptr), smodel); \ + (PTR(N,mptr), *PTR(N,vptr), __ATOMIC_SEQ_CST); \ return; \ } #else diff --git a/libatomic/gload.c b/libatomic/gload.c index df318d5..85865bd 100644 --- a/libatomic/gload.c +++ b/libatomic/gload.c @@ -32,7 +32,7 @@ # define EXACT_INLINE(N, DEST, SRC, DONE) \ if (C2(HAVE_ATOMIC_LDST_,N)) \ { \ - DEST = __atomic_load_n (SRC, smodel); \ + DEST = __atomic_load_n (SRC, __ATOMIC_SEQ_CST); \ DONE; \ } #else diff --git a/libatomic/gstore.c b/libatomic/gstore.c index d571e58..84f9a8d 100644 --- a/libatomic/gstore.c +++ b/libatomic/gstore.c @@ -32,7 +32,7 @@ # define EXACT_INLINE(N) \ if (C2(HAVE_ATOMIC_LDST_,N)) \ { \ - __atomic_store_n (PTR(N,mptr), *PTR(N,vptr), smodel); \ + __atomic_store_n (PTR(N,mptr), *PTR(N,vptr), __ATOMIC_SEQ_CST); \ return; \ } #else From-SVN: r197017
This commit is contained in:
parent
0b8799fbf3
commit
94f3ccc8d9
@ -32,7 +32,7 @@
|
||||
# define EXACT_INLINE(N) \
|
||||
if (C2(HAVE_ATOMIC_CAS_,N)) \
|
||||
return __atomic_compare_exchange_n \
|
||||
(PTR(N,mptr), PTR(N,eptr), *PTR(N,dptr), false, smodel, fmodel)
|
||||
(PTR(N,mptr), PTR(N,eptr), *PTR(N,dptr), false, __ATOMIC_SEQ_CST, __ATOMIC_SEQ_CST)
|
||||
#else
|
||||
# define EXACT_INLINE(N)
|
||||
#endif
|
||||
|
@ -33,7 +33,7 @@
|
||||
if (C2(HAVE_ATOMIC_EXCHANGE_,N)) \
|
||||
{ \
|
||||
*PTR(N,rptr) = __atomic_exchange_n \
|
||||
(PTR(N,mptr), *PTR(N,vptr), smodel); \
|
||||
(PTR(N,mptr), *PTR(N,vptr), __ATOMIC_SEQ_CST); \
|
||||
return; \
|
||||
}
|
||||
#else
|
||||
|
@ -32,7 +32,7 @@
|
||||
# define EXACT_INLINE(N, DEST, SRC, DONE) \
|
||||
if (C2(HAVE_ATOMIC_LDST_,N)) \
|
||||
{ \
|
||||
DEST = __atomic_load_n (SRC, smodel); \
|
||||
DEST = __atomic_load_n (SRC, __ATOMIC_SEQ_CST); \
|
||||
DONE; \
|
||||
}
|
||||
#else
|
||||
|
@ -32,7 +32,7 @@
|
||||
# define EXACT_INLINE(N) \
|
||||
if (C2(HAVE_ATOMIC_LDST_,N)) \
|
||||
{ \
|
||||
__atomic_store_n (PTR(N,mptr), *PTR(N,vptr), smodel); \
|
||||
__atomic_store_n (PTR(N,mptr), *PTR(N,vptr), __ATOMIC_SEQ_CST); \
|
||||
return; \
|
||||
}
|
||||
#else
|
||||
|
Loading…
Reference in New Issue
Block a user