1. 02 Oct, 2017 1 commit
    • Clean up more fallout from r252976. · bc437a56
      libatomic/ChangeLog:
      2017-10-02  Martin Sebor  <msebor@redhat.com>
      
      	PR c/81854
      	* acinclude.m4 (LIBAT_CHECK_IFUNC): Have ifunc resolver return
      	a function pointer rather than void* to avoid GCC 8 warnings.
      	* configure: Regenerate.
      	* libatomic_i.h: Declare ifunc resolvers to return function
      	pointers rather than void*.
      
      From-SVN: r253372
      Martin Sebor committed
  2. 12 May, 2017 1 commit
    • Load new scanlang.exp · 62ffe920
      	libitm:
      	* testsuite/lib/libitm.exp: Load scanlang.exp.
      
      	libgomp:
      	* testsuite/lib/libgomp.exp: Load scanlang.exp.
      
      	libatomic:
      	* testsuite/lib/libatomic.exp: Load scanlang.exp.
      
      From-SVN: r247959
      Rainer Orth committed
  3. 06 Feb, 2017 1 commit
  4. 01 Feb, 2017 1 commit
    • Fix __atomic to not implement atomic loads with CAS. · 969a32ce
      gcc/
      	* builtins.c (fold_builtin_atomic_always_lock_free): Make "lock-free"
      	conditional on existance of a fast atomic load.
      	* optabs-query.c (can_atomic_load_p): New function.
      	* optabs-query.h (can_atomic_load_p): Declare it.
      	* optabs.c (expand_atomic_exchange): Always delegate to libatomic if
      	no fast atomic load is available for the particular size of access.
      	(expand_atomic_compare_and_swap): Likewise.
      	(expand_atomic_load): Likewise.
      	(expand_atomic_store): Likewise.
      	(expand_atomic_fetch_op): Likewise.
      	* testsuite/lib/target-supports.exp
      	(check_effective_target_sync_int_128): Remove x86 because it provides
      	no fast atomic load.
      	(check_effective_target_sync_int_128_runtime): Likewise.
      
      libatomic/
      	* acinclude.m4: Add #define FAST_ATOMIC_LDST_*.
      	* auto-config.h.in: Regenerate.
      	* config/x86/host-config.h (FAST_ATOMIC_LDST_16): Define to 0.
      	(atomic_compare_exchange_n): New.
      	* glfree.c (EXACT, LARGER): Change condition and add comments.
      
      From-SVN: r245098
      Torvald Riegel committed
  5. 30 Jan, 2017 1 commit
  6. 21 Jan, 2017 1 commit
    • re PR other/79046 (g++ -print-file-name=plugin uses full version number in path) · 73aa401e
      	PR other/79046
      libatomic/
      	* testsuite/Makefile.am (gcc_version): Use @get_gcc_base_ver@ instead
      	of cat to get version from BASE-VER file.
      	* testsuite/Makefile.in: Regenerated.
      libffi/
      	* configure.ac: Add GCC_BASE_VER.
      	* include/Makefile.am (gcc_version): Use @get_gcc_base_ver@ instead
      	of cat to get version from BASE-VER file.
      	* configure: Regenerated.
      	* testsuite/Makefile.in: Regenerated.
      	* include/Makefile.in: Regenerated.
      	* Makefile.in: Regenerated.
      	* man/Makefile.in: Regenerated.
      libgomp/
      	* testsuite/Makefile.am (gcc_version): Use @get_gcc_base_ver@ instead
      	of cat to get version from BASE-VER file.
      	* testsuite/Makefile.in: Regenerated.
      libitm/
      	* testsuite/Makefile.am (gcc_version): Use @get_gcc_base_ver@ instead
      	of cat to get version from BASE-VER file.
      	* testsuite/Makefile.in: Regenerated.
      libmpx/
      	* mpxrt/Makefile.am (gcc_version): Use @get_gcc_base_ver@ instead
      	of cat to get version from BASE-VER file.
      	* mpxwrap/Makefile.am (gcc_version): Likewise.
      	* mpxrt/Makefile.in: Regenerated.
      	* mpxwrap/Makefile.in: Regenerated.
      liboffloadmic/
      	* plugin/configure.ac: Add GCC_BASE_VER.
      	* plugin/Makefile.am (gcc_version): Use @get_gcc_base_ver@ instead
      	of cat to get version from BASE-VER file.
      	* plugin/configure: Regenerated.
      	* plugin/aclocal.m4: Regenerated.
      	* plugin/Makefile.in: Regenerated.
      libsanitizer/
      	* interception/Makefile.am (gcc_version): Use @get_gcc_base_ver@
      	instead of cat to get version from BASE-VER file.
      	* asan/Makefile.am (gcc_version): Likewise.
      	* ubsan/Makefile.am (gcc_version): Likewise.
      	* sanitizer_common/Makefile.am (gcc_version): Likewise.
      	* lsan/Makefile.am (gcc_version): Likewise.
      	* tsan/Makefile.am (gcc_version): Likewise.
      	* interception/Makefile.in: Regenerated.
      	* asan/Makefile.in: Regenerated.
      	* ubsan/Makefile.in: Regenerated.
      	* sanitizer_common/Makefile.in: Regenerated.
      	* lsan/Makefile.in: Regenerated.
      	* tsan/Makefile.in: Regenerated.
      libvtv/
      	* testsuite/Makefile.am (gcc_version): Use @get_gcc_base_ver@ instead
      	of cat to get version from BASE-VER file.
      	* testsuite/Makefile.in: Regenerated.
      
      From-SVN: r244742
      Jakub Jelinek committed
  7. 17 Jan, 2017 1 commit
    • re PR other/79046 (g++ -print-file-name=plugin uses full version number in path) · 3c36aa6b
      	PR other/79046
      	* configure: Regenerated.
      config/
      	* acx.m4 (GCC_BASE_VER): New m4 function.
      	(ACX_TOOL_DIRS): Require GCC_BASE_VER, for
      	--with-gcc-major-version-only use just major number from BASE-VER.
      gcc/
      	* configure.ac: Add GCC_BASE_VER.
      	* Makefile.in (version): Use @get_gcc_base_ver@ instead of cat to get
      	version from BASE-VER file.
      	(CFLAGS-gcc.o): Add -DBASEVER=$(BASEVER_s).
      	(gcc.o): Depend on $(BASEVER).
      	* common.opt (dumpfullversion): New option.
      	* gcc.c (driver_handle_option): Handle OPT_dumpfullversion.
      	* doc/invoke.texi: Document -dumpfullversion.
      	* doc/install.texi: Document --with-gcc-major-version-only.
      	* configure: Regenerated.
      libatomic/
      	* configure.ac: Add GCC_BASE_VER.
      	* Makefile.am (gcc_version): Use @get_gcc_base_ver@ instead of cat to
      	get version from BASE-VER file.
      	* testsuite/Makefile.in: Regenerated.
      	* configure: Regenerated.
      	* Makefile.in: Regenerated.
      libgomp/
      	* configure.ac: Add GCC_BASE_VER.
      	* Makefile.am (gcc_version): Use @get_gcc_base_ver@ instead of cat to
      	get version from BASE-VER file.
      	* testsuite/Makefile.in: Regenerated.
      	* configure: Regenerated.
      	* Makefile.in: Regenerated.
      libgcc/
      	* configure.ac: Add GCC_BASE_VER.
      	* Makefile.in (version): Use @get_gcc_base_ver@ instead of cat to get
      	version from BASE-VER file.
      	* configure: Regenerated.
      libssp/
      	* configure.ac: Add GCC_BASE_VER.
      	* Makefile.am (gcc_version): Use @get_gcc_base_ver@ instead of cat to
      	get version from BASE-VER file.
      	* configure: Regenerated.
      	* Makefile.in: Regenerated.
      liboffloadmic/
      	* configure.ac: Add GCC_BASE_VER.
      	* Makefile.am (gcc_version): Use @get_gcc_base_ver@ instead of cat to
      	get version from BASE-VER file.
      	* aclocal.m4: Include ../config/acx.m4.
      	* configure: Regenerated.
      	* Makefile.in: Regenerated.
      libquadmath/
      	* configure.ac: Add GCC_BASE_VER.
      	* Makefile.am (gcc_version): Use @get_gcc_base_ver@ instead of cat to
      	get version from BASE-VER file.
      	* configure: Regenerated.
      	* Makefile.in: Regenerated.
      libmpx/
      	* configure.ac: Add GCC_BASE_VER.
      	* Makefile.am (gcc_version): Use @get_gcc_base_ver@ instead of cat to
      	get version from BASE-VER file.
      	* configure: Regenerated.
      	* Makefile.in: Regenerated.
      libada/
      	* configure.ac: Add GCC_BASE_VER.
      	* Makefile.in (version): Use @get_gcc_base_ver@ instead of cat to get
      	version from BASE-VER file.
      	* configure: Regenerated.
      lto-plugin/
      	* configure.ac: Add GCC_BASE_VER.
      	* Makefile.am (gcc_version): Use @get_gcc_base_ver@ instead of cat to
      	get version from BASE-VER file.
      	* configure: Regenerated.
      	* Makefile.in: Regenerated.
      libitm/
      	* configure.ac: Add GCC_BASE_VER.
      	* Makefile.am (gcc_version): Use @get_gcc_base_ver@ instead of cat to
      	get version from BASE-VER file.
      	* testsuite/Makefile.in: Regenerated.
      	* configure: Regenerated.
      	* Makefile.in: Regenerated.
      fixincludes/
      	* configure.ac: Add GCC_BASE_VER.
      	* Makefile.in (gcc_version): Use @get_gcc_base_ver@ instead of cat to
      	get version from BASE-VER file.
      	* configure: Regenerated.
      libcilkrts/
      	* configure.ac: Add GCC_BASE_VER.
      	* Makefile.am (gcc_version): Use @get_gcc_base_ver@ instead of cat to
      	get version from BASE-VER file.
      	* aclocal.m4: Include ../config/acx.m4.
      	* configure: Regenerated.
      	* Makefile.in: Regenerated.
      libcc1/
      	* configure.ac: Add GCC_BASE_VER.  For --with-gcc-major-version-only
      	use just major number from BASE-VER.
      	* configure: Regenerated.
      	* Makefile.in: Regenerated.
      libobjc/
      	* configure.ac: Add GCC_BASE_VER.
      	* Makefile.in (gcc_version): Use @get_gcc_base_ver@ instead of cat to
      	get version from BASE-VER file.
      	* configure: Regenerated.
      libstdc++-v3/
      	* configure.ac: Add GCC_BASE_VER.
      	* fragment.am (gcc_version): Use @get_gcc_base_ver@ instead of cat to
      	get version from BASE-VER file.
      	* po/Makefile.in: Regenerated.
      	* libsupc++/Makefile.in: Regenerated.
      	* testsuite/Makefile.in: Regenerated.
      	* src/Makefile.in: Regenerated.
      	* configure: Regenerated.
      	* Makefile.in: Regenerated.
      	* include/Makefile.in: Regenerated.
      	* doc/Makefile.in: Regenerated.
      	* python/Makefile.in: Regenerated.
      	* src/c++11/Makefile.in: Regenerated.
      	* src/c++98/Makefile.in: Regenerated.
      	* src/filesystem/Makefile.in: Regenerated.
      libvtv/
      	* configure.ac: Add GCC_BASE_VER.
      	* Makefile.am (gcc_version): Use @get_gcc_base_ver@ instead of cat to
      	get version from BASE-VER file.
      	* testsuite/Makefile.in: Regenerated.
      	* configure: Regenerated.
      	* Makefile.in: Regenerated.
      libsanitizer/
      	* configure.ac: Add GCC_BASE_VER.
      	* Makefile.am (gcc_version): Use @get_gcc_base_ver@ instead of cat to
      	get version from BASE-VER file.
      	* libbacktrace/Makefile.in: Regenerated.
      	* interception/Makefile.in: Regenerated.
      	* asan/Makefile.in: Regenerated.
      	* ubsan/Makefile.in: Regenerated.
      	* configure: Regenerated.
      	* sanitizer_common/Makefile.in: Regenerated.
      	* lsan/Makefile.in: Regenerated.
      	* Makefile.in: Regenerated.
      	* tsan/Makefile.in: Regenerated.
      libgfortran/
      	* configure.ac: Add GCC_BASE_VER.
      	* Makefile.am (gcc_version): Use @get_gcc_base_ver@ instead of cat to
      	get version from BASE-VER file.
      	* configure: Regenerated.
      	* Makefile.in: Regenerated.
      
      From-SVN: r244521
      Jakub Jelinek committed
  8. 01 Jan, 2017 1 commit
  9. 15 Nov, 2016 1 commit
    • config-ml.in: Remove references to GCJ. · 84c1b9d3
      <toplevel>
      
      2016-11-15  Matthias Klose  <doko@ubuntu.com>
      
      	* config-ml.in: Remove references to GCJ.
      	* configure.ac: Likewise.
      	* configure: Regenerate.
      
      config/
      
      2016-11-15  Matthias Klose  <doko@ubuntu.com>
      
      	multi.m4: Don't set GCJ.
      
      gcc/
      
      2016-11-15  Matthias Klose  <doko@ubuntu.com>
      
      	* doc/install.texi: Remove references to gcj/libjava.
      	* doc/invoke.texi: Likewise.
      
      */ (where necessary)
      
      2016-11-15  Matthias Klose  <doko@ubuntu.com>
      
      	* configure: Regenerate.
      
      From-SVN: r242433
      Matthias Klose committed
  10. 10 May, 2016 1 commit
  11. 27 Apr, 2016 1 commit
    • [libatomic] Add RTEMS support · c47194d2
      gcc/
      
      	* config/rtems.h (LIB_SPEC): Add -latomic.
      
      libatomic/
      
      	* configure.tgt (configure_tgt_pre_target_cpu_XCFLAGS): New variable.
      	(*-*-rtems*): New supported target.
      	* config/rtems/host-config.h: New file.
      	* config/rtems/lock.c: Likewise.
      
      From-SVN: r235466
      Sebastian Huber committed
  12. 25 Apr, 2016 1 commit
  13. 20 Apr, 2016 1 commit
  14. 06 Jan, 2016 1 commit
    • Fix libatomic multilib parallel build (PR other/67627) · 7c961392
      The all-multi target may be built in parallel with the %_.lo
      targets which generate make dependencies that are parsed during
      the build of all-multi.
      
      This patch forces all-multi to only run after the *_.lo targets
      are done.
      
      libatomic:
      	PR other/67627
      	* Makefile.am (all-multi): Add dependency.
      	* Makefile.in: Regenerate.
      
      From-SVN: r232102
      Szabolcs Nagy committed
  15. 04 Jan, 2016 1 commit
  16. 18 Nov, 2015 1 commit
    • Add out-of-line versions of some <stdatomic.h> functions (PR c/65083). · c29c36ad
      PR c/65083 notes that some functions in <stdatomic.h> are normal
      functions, not generic functions, and so need to have out-of-line
      copies that can be called when macro expansion is suppressed (unlike
      the generic functions where DR#419 makes it undefined if you suppress
      a macro expansion).
      
      This patch adds such out-of-line definitions in libatomic for those
      six functions, at a new LIBATOMIC_1.2 symbol version, as trivial
      wrappers to the <stdatomic.h> macros, along with declarations of those
      functions in <stdatomic.h>.  Tests are added that are based on the
      corresponding tests for the macros, but with parentheses around the
      function names to force the out-of-line functions to be used.
      
      Bootstrapped with no regressions on x86_64-pc-linux-gnu.
      
      gcc:
      	* ginclude/stdatomic.h (atomic_thread_fence, atomic_signal_fence)
      	(atomic_flag_test_and_set, atomic_flag_test_and_set_explicit)
      	(atomic_flag_clear, atomic_flag_clear_explicit): Declare as
      	functions before defining as macros.
      
      gcc/testsuite:
      	* gcc.dg/atomic/stdatomic-fence-2.c,
      	gcc.dg/atomic/stdatomic-flag-2.c: New tests.
      
      libatomic:
      	* fence.c, flag.c: New files.
      	* Makefile.am (libatomic_la_SOURCES): Add fence.c and flag.c.
      	* Makefile.in: Regenerate.
      	* configure.ac (libtool_VERSION): Change to 3:0:2.
      	* configure: Regenerate.
      	* libatomic.map (LIBATOMIC_1.2): New symbol version.
      
      From-SVN: r230578
      Joseph Myers committed
  17. 09 Oct, 2015 1 commit
    • Testsuite: add dg-{begin|end}-multiline-output commands · 9e531d37
      This patch adds an easy way to write tests for expected multiline
      output.  For example we can test carets and underlines for
      a particular diagnostic with:
      
      /* { dg-begin-multiline-output "" }
       typedef struct _GMutex GMutex;
                      ^~~~~~~
         { dg-end-multiline-output "" } */
      
      multiline.exp is used by prune.exp; hence we need to load it before
      prune.exp via *load_gcc_lib* for the testsuites of the various
      non-"gcc" support libraries (e.g. boehm-gc).
      
      gcc/testsuite/ChangeLog:
      	* lib/multiline.exp: New file.
      	* lib/prune.exp: Load multiline.exp.
      	(prune_gcc_output): Call into multiline.exp to handle any
      	multiline output directives.
      	* lib/libgo.exp: Load multiline.exp before prune.exp, using
      	load_gcc_lib.
      
      boehm-gc/ChangeLog:
      	* testsuite/lib/boehm-gc.exp: Load multiline.exp before
      	prune.exp, using load_gcc_lib.
      
      libatomic/ChangeLog:
      	* testsuite/lib/libatomic.exp: Load multiline.exp before
      	prune.exp, using load_gcc_lib.
      
      libgomp/ChangeLog:
      	* testsuite/lib/libgomp.exp: Load multiline.exp before prune.exp,
      	using load_gcc_lib.
      
      libitm/ChangeLog:
      	* testsuite/lib/libitm.exp: Load multiline.exp before prune.exp,
      	using load_gcc_lib.
      
      libvtv/ChangeLog:
      	* testsuite/lib/libvtv.exp: Load multiline.exp before prune.exp,
      	using load_gcc_lib.
      
      From-SVN: r228655
      David Malcolm committed
  18. 14 Jul, 2015 1 commit
  19. 21 Jan, 2015 1 commit
  20. 16 Jan, 2015 1 commit
  21. 09 Jan, 2015 1 commit
    • configure.ac: Don't add ${libgcj} for arm*-*-freebsd*. · 82a19768
      toplevel:
      
          * configure.ac: Don't add ${libgcj} for arm*-*-freebsd*.
          * configure: Regenerate.
      gcc:
          * config.gcc (arm*-*-freebsd*): New configuration.
          * config/arm/freebsd.h: New file.
          * config.host: Add extra components for arm*-*-freebsd*.
          * config/arm/arm.h: Introduce MAX_SYNC_LIBFUNC_SIZE.
          * config/arm/arm.c (arm_init_libfuncs): Use MAX_SYNC_LIBFUNC_SIZE.
      
      libgcc:
      
          * config.host (arm*-*-freebsd*): Add new configuration for
          arm*-*-freebsd*.
          * config/arm/freebsd-atomic.c: New file.
          * config/arm/t-freebsd: Likewise.
          * config/arm/unwind-arm.h: Add __FreeBSD__ to the list of
          'PC-relative indirect' OS's.
      
      libatomic:
      
          * configure.tgt: Exclude arm*-*-freebsd* from try_ifunc.
      
      libstdc++-v3:
      
          * configure.host: Add arm*-*-freebsd* port_specific_symbol_files.
      
      From-SVN: r219388
      Andreas Tobler committed
  22. 05 Jan, 2015 1 commit
  23. 12 Dec, 2014 1 commit
  24. 21 Nov, 2014 1 commit
    • Always use PIC option with -shared in libtool · a699d672
      Libtool needs to pass PIC option -shared when creating shared object to
      link regular object files with slim-lto archive.
      
      	PR bootstrap/63784
      	* libtool.m4: Add $pic_flag with -shared.
      
      boehm-gc/
      
      	PR bootstrap/63784
      	* configure: Regenerated.
      
      gcc/
      
      	PR bootstrap/63784
      	* configure: Regenerated.
      
      libatomic/
      
      	PR bootstrap/63784
      	* configure: Regenerated.
      
      libbacktrace/
      
      	PR bootstrap/63784
      	* configure: Regenerated.
      
      libcc1/
      
      	PR bootstrap/63784
      	* configure: Regenerated.
      
      libcilkrts/
      
      	PR bootstrap/63784
      	* configure: Regenerated.
      
      libffi/
      
      	PR bootstrap/63784
      	* configure: Regenerated.
      
      libgfortran/
      
      	PR bootstrap/63784
      	* configure: Regenerated.
      
      libgomp/
      
      	PR bootstrap/63784
      	* configure: Regenerated.
      
      libitm/
      
      	PR bootstrap/63784
      	* configure: Regenerated.
      
      libjava/
      
      	PR bootstrap/63784
      	* configure: Regenerated.
      
      libjava/classpath/
      
      	PR bootstrap/63784
      	* configure: Regenerated.
      
      libobjc/
      
      	PR bootstrap/63784
      	* configure: Regenerated.
      
      libquadmath/
      
      	PR bootstrap/63784
      	* configure: Regenerated.
      
      libsanitizer/
      
      	PR bootstrap/63784
      	* configure: Regenerated.
      
      libssp/
      
      	PR bootstrap/63784
      	* configure: Regenerated.
      
      libstdc++-v3/
      
      	PR bootstrap/63784
      	* configure: Regenerated.
      
      libvtv/
      
      	PR bootstrap/63784
      	* configure: Regenerated.
      
      lto-plugin/
      
      	PR bootstrap/63784
      	* configure: Regenerated.
      
      From-SVN: r217937
      H.J. Lu committed
  25. 14 Nov, 2014 1 commit
  26. 11 Nov, 2014 1 commit
    • re PR target/63610 (Fixing the libtool bug for Yosemite (darwin14)) · ebf6d33b
      toplevel:
      2014-11-11  Francois-Xavier Coudert  <fxcoudert@gcc.gnu.org>
      
      	PR target/63610
      	* libtool.m4: Fix globbing of darwin versions.
      
      boehm-gc/
      2014-11-11  Francois-Xavier Coudert  <fxcoudert@gcc.gnu.org>
      
      	PR target/63610
      	* configure: Regenerate.
      
      gcc/
      2014-11-11  Francois-Xavier Coudert  <fxcoudert@gcc.gnu.org>
      
      	PR target/63610
      	* configure: Regenerate.
      
      libatomic/
      2014-11-11  Francois-Xavier Coudert  <fxcoudert@gcc.gnu.org>
      
      	PR target/63610
      	* configure: Regenerate.
      
      libbacktrace/
      2014-11-11  Francois-Xavier Coudert  <fxcoudert@gcc.gnu.org>
      
      	PR target/63610
      	* configure: Regenerate.
      
      libcc1/
      2014-11-11  Francois-Xavier Coudert  <fxcoudert@gcc.gnu.org>
      
      	PR target/63610
      	* configure: Regenerate.
      
      libcilkrts/
      2014-11-11  Francois-Xavier Coudert  <fxcoudert@gcc.gnu.org>
      
      	PR target/63610
      	* configure: Regenerate.
      
      libffi/
      2014-11-11  Francois-Xavier Coudert  <fxcoudert@gcc.gnu.org>
      
      	PR target/63610
      	* configure: Regenerate.
      
      libgfortran/
      2014-11-11  Francois-Xavier Coudert  <fxcoudert@gcc.gnu.org>
      
      	PR target/63610
      	* configure: Regenerate.
      
      libgomp/
      2014-11-11  Francois-Xavier Coudert  <fxcoudert@gcc.gnu.org>
      
      	PR target/63610
      	* configure: Regenerate.
      
      libitm/
      2014-11-11  Francois-Xavier Coudert  <fxcoudert@gcc.gnu.org>
      
      	PR target/63610
      	* configure: Regenerate.
      
      libobjc/
      2014-11-11  Francois-Xavier Coudert  <fxcoudert@gcc.gnu.org>
      
      	PR target/63610
      	* configure: Regenerate.
      
      libquadmath/
      2014-11-11  Francois-Xavier Coudert  <fxcoudert@gcc.gnu.org>
      
      	PR target/63610
      	* configure: Regenerate.
      
      libsanitizer/
      2014-11-11  Francois-Xavier Coudert  <fxcoudert@gcc.gnu.org>
      
      	PR target/63610
      	* configure: Regenerate.
      
      libssp/
      2014-11-11  Francois-Xavier Coudert  <fxcoudert@gcc.gnu.org>
      
      	PR target/63610
      	* configure: Regenerate.
      
      libstdc++-v3/
      2014-11-11  Francois-Xavier Coudert  <fxcoudert@gcc.gnu.org>
      
      	PR target/63610
      	* configure: Regenerate.
      
      libvtv/
      2014-11-11  Francois-Xavier Coudert  <fxcoudert@gcc.gnu.org>
      
      	PR target/63610
      	* configure: Regenerate.
      
      lto-plugin/
      2014-11-11  Francois-Xavier Coudert  <fxcoudert@gcc.gnu.org>
      
      	PR target/63610
      	* configure: Regenerate.
      
      libjava/
      2014-11-11  Francois-Xavier Coudert  <fxcoudert@gcc.gnu.org>
      
      	PR target/63610
      	* configure: Regenerate.
      
      libjava/classpath/
      2014-11-11  Francois-Xavier Coudert  <fxcoudert@gcc.gnu.org>
      
      	PR target/63610
      	* configure: Regenerate.
      
      zlib/
      2014-11-11  Francois-Xavier Coudert  <fxcoudert@gcc.gnu.org>
      
      	PR target/63610
      	* configure: Regenerate.
      
      From-SVN: r217366
      Francois-Xavier Coudert committed
  27. 19 Aug, 2014 1 commit
  28. 18 Jul, 2014 1 commit
  29. 17 Jun, 2014 1 commit
    • Makefile.am (libatomic_la_LDFLAGS): Add lt_host_flags. · dc3368d0
      	* Makefile.am (libatomic_la_LDFLAGS): Add lt_host_flags.
      	* configure.ac (ACX_LT_HOST_FLAGS): New.
      	(target_thread_file): New.
      	* configure.tgt (mingw): Add mingw support.
      	* config/mingw/host-config.h: New file.
      	* config/mingw/lock.c: Likewise.
      	* Makefile.in: Regenerated.
      	* configure: Likewise.
      	* aclocal.m4: Likewise.
      	* testsuite/Makefile.in: Likewise.
      
      From-SVN: r211747
      Kai Tietz committed
  30. 20 Feb, 2014 1 commit
  31. 02 Jan, 2014 1 commit
  32. 09 Dec, 2013 2 commits
  33. 18 Nov, 2013 1 commit
    • atomic-compare-exchange-1.c, [...]: Declare main as returning int. · a2ca7c8c
      	* testsuite/libatomic.c/atomic-compare-exchange-1.c,
      	testsuite/libatomic.c/atomic-compare-exchange-2.c,
      	testsuite/libatomic.c/atomic-compare-exchange-3.c,
      	testsuite/libatomic.c/atomic-compare-exchange-4.c,
      	testsuite/libatomic.c/atomic-compare-exchange-5.c,
      	testsuite/libatomic.c/atomic-exchange-1.c,
      	testsuite/libatomic.c/atomic-exchange-2.c,
      	testsuite/libatomic.c/atomic-exchange-3.c,
      	testsuite/libatomic.c/atomic-exchange-4.c,
      	testsuite/libatomic.c/atomic-exchange-5.c,
      	testsuite/libatomic.c/atomic-generic.c,
      	testsuite/libatomic.c/atomic-load-1.c,
      	testsuite/libatomic.c/atomic-load-2.c,
      	testsuite/libatomic.c/atomic-load-3.c,
      	testsuite/libatomic.c/atomic-load-4.c,
      	testsuite/libatomic.c/atomic-load-5.c,
      	testsuite/libatomic.c/atomic-op-1.c,
      	testsuite/libatomic.c/atomic-op-2.c,
      	testsuite/libatomic.c/atomic-op-3.c,
      	testsuite/libatomic.c/atomic-op-4.c,
      	testsuite/libatomic.c/atomic-op-5.c,
      	testsuite/libatomic.c/atomic-store-1.c,
      	testsuite/libatomic.c/atomic-store-2.c,
      	testsuite/libatomic.c/atomic-store-3.c,
      	testsuite/libatomic.c/atomic-store-4.c,
      	testsuite/libatomic.c/atomic-store-5.c: Declare main as returning
      	int.  Do not require built-in sync support or add target-specific
      	options.
      	* testsuite/libatomic.c/atomic-exchange-1.c,
      	testsuite/libatomic.c/atomic-exchange-2.c,
      	testsuite/libatomic.c/atomic-exchange-3.c,
      	testsuite/libatomic.c/atomic-exchange-4.c,
      	testsuite/libatomic.c/atomic-exchange-5.c: Separate increments of
      	count from expression using value of count.
      
      From-SVN: r204953
      Joseph Myers committed
  34. 10 Nov, 2013 1 commit
  35. 07 Nov, 2013 1 commit
    • tree-core.h (enum cv_qualifier): Add TYPE_QUAL_ATOMIC. · 267bac10
      gcc:
      2013-11-05  Andrew MacLeod  <amacleod@redhat.com>
      	    Joseph Myers  <joseph@codesourcery.com>
      
      	* tree-core.h (enum cv_qualifier): Add TYPE_QUAL_ATOMIC.
      	(enum tree_index): Add TI_ATOMICQI_TYPE, TI_ATOMICHI_TYPE,
      	TI_ATOMICSI_TYPE, TI_ATOMICDI_TYPE and TI_ATOMICTI_TYPE.
      	(struct tree_base): Add atomic_flag field.
      	* tree.h (TYPE_ATOMIC): New accessor macro.
      	(TYPE_QUALS, TYPE_QUALS_NO_ADDR_SPACE): Add TYPE_QUAL_ATOMIC.
      	(TYPE_QUALS_NO_ADDR_SPACE_NO_ATOMIC): New macro.
      	(atomicQI_type_node, atomicHI_type_node, atomicSI_type_node)
      	(atomicDI_type_node, atomicTI_type_node): New macros for type
      	nodes.
      	* tree.c (set_type_quals): Set TYPE_ATOMIC.
      	(find_atomic_core_type): New function.
      	(build_qualified_type): Adjust alignment for qualified types.
      	(build_atomic_base): New function
      	(build_common_tree_nodes): Build atomicQI_type_node,
      	atomicHI_type_node, atomicSI_type_node, atomicDI_type_node and
      	atomicTI_type_node.
      	* print-tree.c (print_node): Print atomic qualifier.
      	* tree-pretty-print.c (dump_generic_node): Print atomic type
      	attribute.
      	* target.def (atomic_assign_expand_fenv): New hook.
      	* doc/tm.texi.in (TARGET_ATOMIC_ASSIGN_EXPAND_FENV): New @hook.
      	* doc/tm.texi: Regenerate.
      	* targhooks.c (default_atomic_assign_expand_fenv): New function.
      	* targhooks.h (default_atomic_assign_expand_fenv): Declare.
      	* sync-builtins.def (__atomic_feraiseexcept): New built-in
      	function.
      	* config/i386/i386-builtin-types.def (VOID_FTYPE_PUSHORT): New
      	function type.
      	* config/i386/i386.c (enum ix86_builtins): Add
      	IX86_BUILTIN_FNSTENV, IX86_BUILTIN_FLDENV, IX86_BUILTIN_FNSTSW and
      	IX86_BUILTIN_FNCLEX.
      	(bdesc_special_args): Add __builtin_ia32_fnstenv,
      	__builtin_ia32_fldenv, __builtin_ia32_fnstsw and
      	__builtin_ia32_fnclex.
      	(ix86_expand_builtin): Handle the new built-in functions.
      	(ix86_atomic_assign_expand_fenv): New function.
      	(TARGET_ATOMIC_ASSIGN_EXPAND_FENV): New macro.
      	* config/i386/i386.md (UNSPECV_FNSTENV, UNSPECV_FLDENV)
      	(UNSPECV_FNSTSW, UNSPECV_FNCLEX): New unspecs.
      	(fnstenv, fldenv, fnstsw, fnclex): New insns.
      
      gcc/c-family:
      2013-11-05  Andrew MacLeod  <amacleod@redhat.com>
      	    Joseph Myers  <joseph@codesourcery.com>
      
      	* c-common.h (enum rid): Add RID_ATOMIC.
      	* c-common.c (c_common_reswords): Add _Atomic.
      	(sync_resolve_params): Use TYPE_MAIN_VARIANT on pointer argument.
      	(keyword_is_type_qualifier): Accept RID_ATOMIC.
      	* c-format.c (check_format_types): Check for extra _Atomic
      	qualifiers in format argument.
      	* c-pretty-print.c (pp_c_cv_qualifiers): Handle atomic qualifier.
      	(pp_c_type_qualifier_list): Mention _Atomic in comment.
      
      gcc/c:
      2013-11-05  Joseph Myers  <joseph@codesourcery.com>
      	    Andrew MacLeod  <amacleod@redhat.com>
      
      	* c-aux-info.c (gen_type): Handle atomic qualifier.
      	* c-decl.c (validate_proto_after_old_defn): Do not remove atomic
      	qualifiers when compating types.
      	(shadow_tag_warned): Handle atomic_p in declspecs.
      	(quals_from_declspecs): Likewise.
      	(start_decl): Use c_type_promotes_to when promoting argument
      	types.
      	(grokdeclarator): Handle _Atomic.
      	(get_parm_info): Diagnose any qualifier on "void" as only
      	parameter.
      	(store_parm_decls_oldstyle): Do not remove atomic qualifiers when
      	comparing types.  Use c_type_promotes_to when promoting argument
      	types.
      	(finish_function): Use c_type_promotes_to when promoting argument
      	types.
      	(build_null_declspecs): Handle atomic_p in declspecs.
      	(declspecs_add_qual): Handle RID_ATOMIC.
      	* c-parser.c (c_token_starts_typename, c_token_is_qualifier)
      	(c_token_starts_declspecs): Handle RID_ATOMIC.
      	(c_parser_declspecs): Handle atomic type specifiers and
      	qualifiers.
      	(c_parser_typeof_specifier): Remove const and _Atomic qualifiers
      	from types of expressions with atomic type.
      	(c_parser_direct_declarator_inner): Use convert_lvalue_to_rvalue.
      	(c_parser_attribute_any_word): Handle RID_ATOMIC.
      	(c_parser_initializer, c_parser_initelt, c_parser_initval)
      	(c_parser_statement_after_labels, c_parser_switch_statement)
      	(c_parser_for_statement, c_parser_expr_no_commas)
      	(c_parser_conditional_expression, c_parser_binary_expression)
      	(c_parser_cast_expression, c_parser_unary_expression)
      	(c_parser_postfix_expression)
      	(c_parser_postfix_expression_after_primary, c_parser_expression):
      	Use convert_lvalue_to_rvalue.
      	(c_parser_expression_conv, c_parser_expr_list): Document
      	conversion of lvalues to rvalues.  Use convert_lvalue_to_rvalue.
      	(c_parser_objc_synchronized_statement): Use
      	convert_lvalue_to_rvalue.
      	(c_parser_objc_selector): Handle RID_ATOMIC.
      	(c_parser_objc_receiver, c_parser_array_notation): Use
      	convert_lvalue_to_rvalue.
      	* c-tree.h (ctsk_typeof): Adjust comment to mention use for
      	_Atomic (type-name).
      	(struct c_declspecs): Add atomic_p field.
      	(convert_lvalue_to_rvalue): Declare.
      	* c-typeck.c (c_type_promotes_to): Promote atomic types to
      	corresponding atomic types.
      	(qualify_type): Don't add _Atomic qualifiers from second argument.
      	(comp_target_types): Do not allow _Atomic mismatches.
      	(type_lists_compatible_p): Do not remove atomic qualifiers when
      	comparing types.
      	(really_atomic_lvalue, convert_lvalue_to_rvalue)
      	(build_atomic_assign): New functions.
      	(build_unary_op): Use build_atomic_assign for atomic increment and
      	decrement.
      	(build_conditional_expr): Do not treat _Atomic void as a qualified
      	version of void.
      	(build_modify_expr): Use build_atomic_assign for atomic LHS.
      	(find_anonymous_field_with_type, convert_to_anonymous_field)
      	(convert_for_assignment): Do not remove atomic qualifiers when
      	comparing types.
      	(digest_init): Do not accept initialization of arrays of atomic
      	elements by string constants.
      	(build_asm_expr): Use convert_lvalue_to_rvalue.
      	(build_binary_op): Do not treat _Atomic void as a qualified
      	version of void.
      
      gcc/objc:
      2013-11-05  Andrew MacLeod  <amacleod@redhat.com>
      
      	* objc-act.c (objc_push_parm): Handle atomic qualifier.
      
      gcc/testsuite:
      2013-11-05  Joseph Myers  <joseph@codesourcery.com>
      
      	* lib/target-supports.exp
      	(check_effective_target_fenv_exceptions): New function.
      	* lib/atomic-dg.exp, gcc.dg/atomic/atomic.exp: New files.
      	* gcc.dg/atomic/c11-atomic-exec-1.c,
      	gcc.dg/atomic/c11-atomic-exec-2.c,
      	gcc.dg/atomic/c11-atomic-exec-3.c,
      	gcc.dg/atomic/c11-atomic-exec-4.c,
      	gcc.dg/atomic/c11-atomic-exec-5.c, gcc.dg/c11-atomic-1.c,
      	gcc.dg/c11-atomic-2.c, gcc.dg/c11-atomic-3.c,
      	gcc.dg/c90-atomic-1.c, gcc.dg/c99-atomic-1.c: New tests.
      
      libatomic:
      2013-11-05  Joseph Myers  <joseph@codesourcery.com>
      
      	* fenv.c: New file.
      	* libatomic.map (LIBATOMIC_1.1): New symbol version.  Include
      	__atomic_feraiseexcept.
      	* configure.ac (libtool_VERSION): Change to 2:0:1.
      	(fenv.h): Test for header.
      	* Makefile.am (libatomic_la_SOURCES): Add fenv.c.
      	* Makefile.in, auto-config.h.in, configure: Regenerate.
      
      From-SVN: r204544
      Joseph Myers committed
  36. 17 Oct, 2013 1 commit
  37. 20 Sep, 2013 1 commit
  38. 24 Mar, 2013 1 commit
    • Avoid non constant memory model uses in libatomic · 94f3ccc8
      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
      Andi Kleen committed
  39. 14 Jan, 2013 1 commit