1. 19 Aug, 2014 1 commit
  2. 18 Jul, 2014 1 commit
  3. 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
  4. 20 Feb, 2014 1 commit
  5. 02 Jan, 2014 1 commit
  6. 09 Dec, 2013 2 commits
  7. 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
  8. 10 Nov, 2013 1 commit
  9. 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
  10. 17 Oct, 2013 1 commit
  11. 20 Sep, 2013 1 commit
  12. 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
  13. 14 Jan, 2013 1 commit
  14. 18 Dec, 2012 1 commit
  15. 04 Dec, 2012 1 commit
  16. 22 Nov, 2012 1 commit
  17. 04 Nov, 2012 2 commits
  18. 23 Oct, 2012 1 commit
  19. 20 Sep, 2012 1 commit
  20. 14 Sep, 2012 1 commit
  21. 22 May, 2012 1 commit
  22. 16 May, 2012 1 commit
    • Regenerate configure files for libtool.m4 change · e6d5f8c9
      boehm-gc/
      
      	* configure: Regenerated.
      
      gcc/
      
      	* configure: Regenerated.
      
      libatomic/
      
      	* configure: Regenerated.
      
      libffi/
      
      	* configure: Regenerated.
      
      libgfortran/
      
      	* configure: Regenerated.
      
      libgomp/
      
      	* configure: Regenerated.
      
      libitm/
      
      	* configure: Regenerated.
      
      libjava/classpath/
      
      	* configure: Regenerated.
      
      libjava/
      
      	* configure: Regenerated.
      
      libmudflap/
      
      	* configure: Regenerated.
      
      libobjc/
      
      	* configure: Regenerated.
      
      libquadmath/
      
      	* configure: Regenerated.
      
      libssp/
      
      	* configure: Regenerated.
      
      libstdc++-v3/
      
      	* configure: Regenerated.
      
      lto-plugin/
      
      	* configure: Regenerated.
      
      zlib/
      
      	* configure: Regenerated.
      
      From-SVN: r187616
      H.J. Lu committed
  23. 10 May, 2012 1 commit
  24. 07 May, 2012 2 commits
  25. 03 May, 2012 2 commits
  26. 01 May, 2012 1 commit