1. 26 Nov, 2011 11 commits
  2. 25 Nov, 2011 15 commits
  3. 24 Nov, 2011 12 commits
    • optab.c (maybe_emit_atomic_exchange): New. · 744accb2
      
      2011-11-24  Andrew MacLeod  <amacleod@redhat.com>
      
      	* optab.c (maybe_emit_atomic_exchange): New.  Try to emit an
      	atomic_exchange pattern.
      	(maybe_emit_sync_lock_test_and_set): New.  Try to emit an exchange
      	using __sync_lock_test_and_set.
      	(maybe_emit_compare_and_swap_exchange_loop): New. Try to emit an
      	exchange using a compare_and_swap loop.
      	(expand_sync_lock_test_and_set): New.  Expand sync_lock_test_and_set.
      	(expand_atomic_test_and_set): New.  Expand test_and_set operation.
      	(expand_atomic_exchange): Use new maybe_emit_* functions.
      	(expand_atomic_store): Use new maybe_emit_* functions.
      	* builtins.c (expand_builtin_sync_lock_test_and_set): Call
      	expand_sync_lock_test_and_set routine.
      	(expand_builtin_atomic_exchange): Remove parameter from call.
      	(expand_builtin_atomic_clear): Use atomic_clear pattern if present.
      	(expand_builtin_atomic_test_and_set): Add target and simply call
      	expand_atomic_test_and_set.
      	(expand_builtin): Add target to expand_builtin_atomic_test_and_set.
      	* expr.h (expand_atomic_exchange): Add parameter.
      	(expand_sync_lock_test_and_set): New prototype.
      	(expand_atomic_test_and_set, expand_atomic_clear): New prototypes.
      
      From-SVN: r181702
      Andrew MacLeod committed
    • Revert revision 181357. · bee51209
      gcc/
      
      2011-11-24  H.J. Lu  <hongjiu.lu@intel.com>
      
      	PR target/51134
      	* config/i386/i386.h (processor_costs): Revert revision 181357.
      	* config/i386/i386.c (cost models): Likewise.
      	(core_cost): Likewise.
      	(promote_duplicated_reg): Likewise.
      	(promote_duplicated_reg_to_size): Likewise.
      	(processor_target): Likewise.
      	(expand_set_or_movmem_via_loop_with_iter): Likewise.
      	(expand_set_or_movmem_via_loop): Likewise.
      	(emit_strset): Likewise.
      	(expand_movmem_epilogue): Likewise.
      	(expand_setmem_epilogue): Likewise.
      	(expand_movmem_prologue): Likewise.
      	(expand_setmem_prologue): Likewise.
      	(expand_constant_movmem_prologue): Likewise.
      	(expand_constant_setmem_prologue): Likewise.
      	(decide_alg): Likewise.
      	(decide_alignment): Likewise.
      	(ix86_expand_movmem): Likewise.
      	(ix86_expand_setmem): Likewise.
      	(ix86_slow_unaligned_access): Likewise.
      	* config/i386/i386.md (strset): Likewise.
      	* config/i386/sse.md (vec_dupv4si): Likewise.
      	(vec_dupv2di): Likewise.
      
      gcc/testsuite/
      
      2011-11-24  H.J. Lu  <hongjiu.lu@intel.com>
      
      	PR target/51134
      	* gcc.target/i386/sw-1.c: Revert revision 181357.
      
      From-SVN: r181701
      H.J. Lu committed
    • avr.md (*rotlhi2.15): Set length to 4. · f456d737
      	* config/avr/avr.md (*rotlhi2.15): Set length to 4.
      
      From-SVN: r181700
      Georg-Johann Lay committed
    • re PR fortran/51218 (Potential optimization bug due to implicit_pure?) · 3d2cea8c
      2011-11-24  Tobias Burnus  <burnus@net-b.de>
      
              PR fortran/51218
              * resolve.c (pure_subroutine): If called subroutine is
              impure, unset implicit_pure.
              (resolve_function): Move impure check to simplify code.
      
      2011-11-24  Tobias Burnus  <burnus@net-b.de>
      
              PR fortran/51218
              * gfortran.dg/implicit_pure_1.f90: New.
      
      From-SVN: r181698
      Tobias Burnus committed
    • Fix several atomic tests on 32-bit x86 (PR testsuite/51258) · 603518ca
      	PR testsuite/51258
      	* gcc.dg/atomic-compare-exchange-5.c: Add -mcx16 on i?86-*-*.
      	* gcc.dg/atomic-exchange-5.c: Likewise.
      	* gcc.dg/atomic-load-5.c: Likewise.
      	* gcc.dg/atomic-op-5.c: Likewise.
      	* gcc.dg/atomic-store-5.c: Likewise.
      	* gcc.dg/simulate-thread/atomic-other-int128.c: Fix typo.
      
      From-SVN: r181697
      Rainer Orth committed
    • Fix bootstrap error in s-taprop-tru64.adb · bf75cdbe
      	* s-taprop-tru64.adb (Create_Task): Use Unrestricted_Access.
      
      From-SVN: r181696
      Rainer Orth committed
    • re PR rtl-optimization/50290 (ICE: in distribute_notes, at combine.c:13282 with… · 49ec778e
      re PR rtl-optimization/50290 (ICE: in distribute_notes, at combine.c:13282 with -O2 -fwhole-program -fno-tree-loop-optimize -fno-tree-vrp -funroll-loops)
      
      	PR rtl-optimization/50290
      	* gcc.dg/pr50290.c: New test.
      
      From-SVN: r181694
      Jakub Jelinek committed
    • tree-data-ref.c (initialize_data_dependence_relation): Update · fea99a37
      
              * tree-data-ref.c (initialize_data_dependence_relation): Update
              * comment for the 
              self dependence case.
              (compute_self_dependence): Remove.
              * tree-vect-data-refs.c (vect_analyze_data_refs): Remove call to 
              compute_self_dependenc.
      
      From-SVN: r181691
      Razya Ladelsky committed
    • re PR c++/51290 (Bogus warning: zero as null pointer constant with static_cast) · 36b0e751
      /cp
      2011-11-24  Paolo Carlini  <paolo.carlini@oracle.com>
      
      	PR c++/51290
      	* class.c (build_base_path): For the null pointer check use
      	nullptr_node instead of integer_zero_node.
      
      /testsuite
      2011-11-24  Paolo Carlini  <paolo.carlini@oracle.com>
      
      	PR c++/51290
      	* g++.dg/warn/Wzero-as-null-pointer-constant-3.C: New.
      
      From-SVN: r181690
      Paolo Carlini committed
    • re PR bootstrap/50888 (Bootstrap failure in libjava against latest git glibc) · 282d42f2
      	PR bootstrap/50888
      	* prims.cc: Don't include ctype.h.
      	(c_isspace): Define.
      	(next_property_key, next_property_value): Use it instead
      	of isspace.
      
      From-SVN: r181685
      Jakub Jelinek committed
    • c-decl.c (warn_if_shadowing): Don't warn if shadowed identifier is from system header. · 1d551e4d
      	* c-decl.c (warn_if_shadowing): Don't warn if shadowed
      	identifier is from system header.
      
      From-SVN: r181684
      Alan Modra committed
    • Daily bump. · 58494d50
      From-SVN: r181683
      GCC Administrator committed
  4. 23 Nov, 2011 2 commits
    • re PR libstdc++/41975 ([C++0x] [DR579] unordered_set::erase performs worse when nearly empty) · da29608a
      2011-11-23  François Dumont <fdumont@gcc.gnu.org>
      
      	PR libstdc++/41975
      	* include/bits/hashtable.h (_Hashtable<>): Major data model
      	modification to limit performance impact of empty buckets in
      	erase(iterator) implementation.
      	* include/bits/hashtable_policy.h (_Hashtable_iterator,
      	_Hashtable_const_iterator): Remove not used anymore.
      	* include/bits/hashtable_policy.h (_Prime_rehash_policy): Remove
      	_M_grow_factor, just use natural evolution of prime numbers. Add
      	_M_prev_size to know when the number of buckets can be reduced.
      	* include/bits/unordered_set.h (__unordered_set<>,
      	__unordered_multiset<>), unordered_map.h (__unordered_map<>,
      	__unordered_multimap<>): Change default value of cache hash code
      	template parameter, false for integral types with noexcept hash
      	functor, true otherwise.
      	* include/debug/unordered_map, unordered_set: Adapt transformation
      	from iterator/const_iterator to respectively
      	local_iterator/const_local_iterator.
      	* testsuite/performance/23_containers/copy_construct/unordered_set.cc:
      	New.
      	* testsuite/23_containers/unordered_set/instantiation_neg.cc: New.
      	* testsuite/23_containers/unordered_set/hash_policy/rehash.cc: New.
      	* testsuite/23_containers/unordered_multiset/cons/copy.cc: New.
      	* testsuite/23_containers/unordered_multiset/erase/1.cc,
      	24061-multiset.cc: Add checks on the number of bucket elements.
      	* testsuite/23_containers/unordered_multiset/insert/multiset_range.cc,
      	multiset_single.cc, multiset_single_move.cc: Likewise.
      
      From-SVN: r181677
      François Dumont committed
    • re PR target/51261 (-fcompare-debug with memset()) · 2ff12653
      	PR target/51261
      	* config/i386/i386.c (decide_alg): Initialize *dynamic_check
      	even if !optimize.
      
      	* gcc.dg/pr51261.c: New test.
      
      From-SVN: r181676
      Jakub Jelinek committed