Go to file
Andi Kleen 94f3ccc8d9 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
2013-03-24 00:23:10 +00:00
INSTALL README: Also refer to the online installation instructions. 2012-08-25 20:48:20 +00:00
boehm-gc Use thr_stksegment to determine Solaris stack base 2013-03-06 15:08:58 +00:00
config Add -B$$r/prev-$(TARGET_SUBDIR)/libsanitizer/asan/ 2013-02-25 08:18:39 -08:00
contrib * gennews (files): Add files for GCC 4.8. 2013-03-22 10:47:51 +01:00
fixincludes inclhack.def (feraiseexcept_nosse_invalid): New. 2013-01-16 04:07:20 +00:00
gcc Daily bump. 2013-03-24 00:16:47 +00:00
gnattools Remove obsolete IRIX 6.5 support 2012-03-14 16:33:37 +00:00
include dwarf2.h (enum dwarf_sect): New enum type. 2013-03-01 15:35:58 -08:00
intl
libada Fix typo in ChangeLog 2013-02-13 11:30:32 +01:00
libatomic Avoid non constant memory model uses in libatomic 2013-03-24 00:23:10 +00:00
libbacktrace dwarf.c (read_function_info): Permit fvec parameter to be NULL. 2013-01-31 17:50:47 +00:00
libcpp * cpplib.pot: Regenerate. 2013-03-15 17:43:27 +00:00
libdecnumber Update copyright in libdecnumber. 2013-02-06 22:09:24 +00:00
libffi win64.S: Make use of ffi_closure_win64_inner symbol pc-relative. 2013-03-22 10:38:55 +01:00
libgcc 2013-03-20 Robert Mason <rbmj@verizon.net> 2013-03-20 22:01:25 +00:00
libgfortran re PR fortran/51825 (Fortran runtime error: Cannot match namelist object name) 2013-03-20 08:56:02 +01:00
libgo runtime, testing/quick: libffi doesn't handle complex on Alpha. 2013-03-01 19:26:43 +00:00
libgomp re PR c++/56217 (ICE: OpenMP: when combining shared() and a move constructor) 2013-02-06 11:34:53 +01:00
libiberty make-obstacks-texi.pl: New. 2013-03-06 09:38:22 +01:00
libitm re PR libitm/55693 (libitm.c++/eh-1.C execution test fails on darwin from r193271) 2013-02-11 23:30:10 +00:00
libjava Use pthread_equal rather than != to compare thread IDs. 2013-03-13 21:21:27 +00:00
libmudflap re PR tree-optimization/53265 (Warn when undefined behavior implies smaller iteration count) 2013-03-14 10:13:36 +01:00
libobjc Update copyright years in libobjc. 2013-02-03 11:16:21 +00:00
libquadmath re PR libquadmath/55473 (quadmath.h should have extern "C" for C++ users) 2013-03-07 08:53:10 +01:00
libsanitizer Fix up ChangeLog entry date. 2013-03-22 15:17:24 +01:00
libssp Revert libquadmath and libssp copyright patches. 2013-02-06 22:03:54 +00:00
libstdc++-v3 re PR libstdc++/56678 ([c++11] non-uglified name in <chrono>) 2013-03-22 10:44:42 +00:00
lto-plugin * configure: Regenerated. 2012-09-14 19:42:24 -04:00
maintainer-scripts * crontab: Enable snapshots from gcc-4_8-branch. 2013-03-16 08:22:35 +01:00
zlib 2012-11-16 Matthias Klose <doko@ubuntu.com> 2012-11-16 18:35:05 +00:00
.gitignore * .gitignore: Import from gdb repository. 2013-01-10 10:48:46 -05:00
ABOUT-NLS
COPYING
COPYING.LIB
COPYING.RUNTIME
COPYING3
COPYING3.LIB
ChangeLog MAINTAINERS (Write After Approval): Add myself. 2013-02-21 18:24:18 +00:00
ChangeLog.tree-ssa
MAINTAINERS MAINTAINERS (Write After Approval): Add myself. 2013-02-21 18:24:18 +00:00
Makefile.def Makefile.def (install-target-libsanitizer): Depend on install-target-libstdc++-v3. 2013-01-14 16:15:21 +00:00
Makefile.in Makefile.def (install-target-libsanitizer): Depend on install-target-libstdc++-v3. 2013-01-14 16:15:21 +00:00
Makefile.tpl Makefile.tpl (BOOT_ADAFLAGS): Remove -gnata. 2013-01-11 11:46:21 +00:00
README * README: Document use of ranges of years in copyright notices. 2012-07-16 15:01:34 +01:00
compile
config-ml.in MAINTAINERS (crx port, [...]): Remove. 2011-03-22 19:58:18 +00:00
config.guess config.sub: Merge from config repo. 2013-01-08 22:46:38 +00:00
config.rpath Remove freebsd1 from libtool.m4 macros and config.rpath. 2011-02-13 11:45:53 +00:00
config.sub * config.sub: Update from config repo. 2013-01-11 13:02:58 +00:00
configure configure.ac: Set libgloss_dir for the aarch64*-*-* targets. 2013-02-15 17:45:54 +00:00
configure.ac configure.ac: Set libgloss_dir for the aarch64*-*-* targets. 2013-02-15 17:45:54 +00:00
depcomp
install-sh
libtool-ldflags
libtool.m4 re PR bootstrap/38607 (AIX error messages about TOC during build) 2012-09-14 19:23:41 -04:00
ltgcc.m4
ltmain.sh backport: ltmain.sh (relink): Use absolute path when hardcoding with -L. 2011-01-13 18:51:10 +00:00
ltoptions.m4
ltsugar.m4
ltversion.m4
lt~obsolete.m4
missing
mkdep
mkinstalldirs
move-if-change Import move-if-change script from gnulib. 2011-02-12 15:48:30 +00:00
symlink-tree
ylwrap

README

This directory contains the GNU Compiler Collection (GCC).

The GNU Compiler Collection is free software.  See the files whose
names start with COPYING for copying permission.  The manuals, and
some of the runtime libraries, are under different terms; see the
individual source files for details.

The directory INSTALL contains copies of the installation information
as HTML and plain text.  The source of this information is
gcc/doc/install.texi.  The installation information includes details
of what is included in the GCC sources and what files GCC installs.

See the file gcc/doc/gcc.texi (together with other files that it
includes) for usage and porting information.  An online readable
version of the manual is in the files gcc/doc/gcc.info*.

See http://gcc.gnu.org/bugs/ for how to report bugs usefully.

Copyright years on GCC source files may be listed using range
notation, e.g., 1987-2012, indicating that every year in the range,
inclusive, is a copyrightable year that could otherwise be listed
individually.