1. 30 Jun, 2015 5 commits
  2. 29 Jun, 2015 23 commits
    • nvptx.md (nvptx_reorg_subreg): New fn, broken out of ... · 517665b3
      	* config/nvptx/nvptx.md (nvptx_reorg_subreg): New fn, broken out of ...
      	(nvptx_reorg): Here.  Keep the non-subreg pieces.
      
      From-SVN: r225154
      Nathan Sidwell committed
    • re PR c++/65977 (Constexpr should be allowed in declaration of friend template specialization) · 71506d41
      /cp
      2015-06-29  Paolo Carlini  <paolo.carlini@oracle.com>
      
      	PR c++/65977
      	* decl.c (grokfndecl): Allow constexpr declarations of friend
      	template specializations.
      
      /testsuite
      2015-06-29  Paolo Carlini  <paolo.carlini@oracle.com>
      
      	PR c++/65977
      	* g++.dg/cpp0x/constexpr-friend-3.C: New.
      	* g++.dg/cpp0x/constexpr-friend-2.C: Adjust.
      
      From-SVN: r225148
      Paolo Carlini committed
    • Use PIE_SPEC/NO_PIE_SPEC for crtend.o/crtendS.o · 9b552079
      We need to link with crtend.o and crtendS.o properly for GCC configured
      to generate PIE by default.
      
      	* config/gnu-user.h (GNU_USER_TARGET_ENDFILE_SPEC): Use
      	PIE_SPEC and NO_PIE_SPEC if HAVE_LD_PIE is defined.
      
      From-SVN: r225144
      H.J. Lu committed
    • stl_iterator_base_types.h (_Iter_base): Limit definition to pre-C++11 mode. · 24167c42
      2015-06-29  François Dumont  <fdumont@gcc.gnu.org>
      
      	* include/bits/stl_iterator_base_types.h (_Iter_base): Limit definition
      	to pre-C++11 mode.
      	* include/debug/functions.h
      	(__gnu_debug::__valid_range, __gnu_debug::__base): Move...
      	* include/debug/safe_iterator.h
      	(__gnu_debug::_Sequence_traits): New.
      	(__gnu_debug::__get_distance_from_begin): New.
      	(__gnu_debug::__get_distance_to_end): New.
      	(__gnu_debug::_Safe_iterator<>::_M_valid_range): Expose iterator range
      	distance information. Add optional check_dereferenceable parameter,
      	default true.
      	(__gnu_debug::_Distance_precision, __gnu_debug::__get_distance): Move
      	default definition...
      	(__gnu_debug::__get_distance): New overload for _Safe_iterator.
      	(__gnu_debug::__unsafe): Likewise.
      	* include/debug/helper_functions.h: ...here. New.
      	(__gnu_debug::__unsafe): New helper function to remove safe iterator
      	layer.
      	* include/debug/stl_iterator.h: New. Include latter.
      	* include/bits/stl_iterator.h: Include latter in debug mode.
      	* include/debug/stl_iterator.tcc: Adapt.
      	* include/debug/safe_local_iterator.h (__gnu_debug::__get_distance): Add
      	overload for _Safe_local_iterator.
      	(__gnu_debug::__unsafe): Likewise.
      	* include/debug/safe_local_iterator.tcc: Adapt.
      	* include/debug/macros.h (__glibcxx_check_valid_range2): New.
      	(__glibcxx_check_insert_range): Add _Dist parameter.
      	(__glibcxx_check_insert_range_after): Likewise.
      	(__glibcxx_check_string, __glibcxx_check_string_len): Implement using
      	_GLIBCXX_DEBUG_PEDASSERT.
      	* include/debug/deque (deque<>::assign): Remove iterator debug layer
      	when possible.
      	(deque<>::insert): Likewise.
      	* include/debug/forward_list (__glibcxx_check_valid_fl_range): New.
      	(forward_list<>::splice_after): Use latter.
      	(forward_list<>::assign): Remove iterator debug layer when possible.
      	(forward_list<>::insert_after): Likewise.
      	(__gnu_debug::_Sequence_traits<>): Partial specialization.
      	* include/debug/list (list<>::assign): Remove iterator debug layer when
      	possible.
      	(list<>::insert): Likewise.
      	[__gnu_debug::_Sequence_traits<>]: Partial specialization pre C++11 ABI.
      	* include/debug/map.h (map<>::insert): Remove iterator debug layer when
      	possible.
      	* include/debug/multimap.h (multimap<>::insert): Likewise.
      	* include/debug/set.h (set<>::insert): Likewise.
      	* include/debug/multiset.h (multiset<>::insert): Likewise.
      	* include/debug/string (basic_string<>::append, basic_string<>::assign,
      	basic_string<>::insert, basic_string<>::replace): Likewise.
      	* include/debug/unordered_map
      	(unordered_map<>::insert, unordered_multimap<>::insert): Likewise.
      	* include/debug/unordered_set
      	(unordered_set<>::insert, unordered_multiset<>insert): Likewise.
      	* include/debug/vector
      	(vector<>::assign, vector<>::insert): Likewise.
      	* include/Makefile.am: Add new debug headers.
      	* include/Makefile.in: Regenerate.
      
      From-SVN: r225143
      François Dumont committed
    • re PR ada/63310 (Ada bootstrap error with -fcompare-debug) · 755c71fa
      	PR ada/63310
      	* gcc-interface/utils.c (gnat_write_global_declarations): Always
      	build the dummy global variable if code was generated.
      
      From-SVN: r225139
      Eric Botcazou committed
    • i386.md (*jcc_1): Use %! · 94f11af1
      	* config/i386/i386.md (*jcc_1): Use %! in asm template.
      	Set attribute "length_nobnd" instead of "length".
      	(*jcc_2): Ditto.
      	(jump): Ditto.
      	(*jcc_1_bnd, *jcc_2_bnd, jump_bnd): Remove insn patterns.
      
      From-SVN: r225138
      Uros Bizjak committed
    • nios2.c (nios2_delegitimize_address): Make assert less restrictive. · 030b9d90
      2015-06-29  Sandra Loosemore  <sandra@codesourcery.com>
      
      	gcc/
      	* config/nios2/nios2.c (nios2_delegitimize_address): Make
      	assert less restrictive.
      
      From-SVN: r225137
      Sandra Loosemore committed
    • Wunused-parameter warnings are given from cgraph::finalize_function, · da2e71c9
      which is the middle-end. This is an oddity compared to other
      -Wunused-* warnings. Moreover, Fortran has its own definition of
      -Wunused-parameter that conflicts with the middle-end definition.
      
      This patch moves the middle-end part of Wunused-parameter to the C/C++
      FEs. I'm not sure if other FEs expected this warning to work. If so,
      they do not seem to test for it. Ada, for example, explicitly disables
      it.
      
      gcc/ChangeLog:
      
      2015-06-29  Manuel López-Ibáñez  <manu@gcc.gnu.org>
      
      	PR fortran/66605
      	* cgraphunit.c (cgraph_node::finalize_function): Do not call
      	do_warn_unused_parameter.
      	* function.c (do_warn_unused_parameter): Move from here.
      	* function.h (do_warn_unused_parameter): Do not declare.
      
      gcc/c-family/ChangeLog:
      
      2015-06-29  Manuel López-Ibáñez  <manu@gcc.gnu.org>
      
      	PR fortran/66605
      	* c-common.c (do_warn_unused_parameter): Move here.
      	* c-common.h (do_warn_unused_parameter): Declare.
      
      gcc/ada/ChangeLog:
      
      2015-06-29  Manuel López-Ibáñez  <manu@gcc.gnu.org>
      
      	PR fortran/66605
      	* gcc-interface/misc.c (gnat_post_options): No need to disable
      	warn_unused_parameter anymore.
      
      gcc/cp/ChangeLog:
      
      2015-06-29  Manuel López-Ibáñez  <manu@gcc.gnu.org>
      
      	PR fortran/66605
      	* decl.c (finish_function): Call do_warn_unused_parameter.
      
      gcc/testsuite/ChangeLog:
      
      2015-06-29  Manuel López-Ibáñez  <manu@gcc.gnu.org>
      
      	PR fortran/66605
      	* gfortran.dg/wunused-parameter.f90: New test.
      
      gcc/c/ChangeLog:
      
      2015-06-29  Manuel López-Ibáñez  <manu@gcc.gnu.org>
      
      	PR fortran/66605
      	* c-decl.c (finish_function): Call do_warn_unused_parameter.
      
      From-SVN: r225135
      Manuel López-Ibáñez committed
    • re PR target/65697 (__atomic memory barriers not strong enough for __sync builtins) · 77f3f9bf
      2015-06-29  Matthew Wahab  <matthew.wahab@arm.com>
      
      	PR target/65697
      	* gcc.target/arm/armv-sync-comp-swap.c: New.
      	* gcc.target/arm/armv-sync-op-acquire.c: New.
      	* gcc.target/arm/armv-sync-op-full.c: New.
      	* gcc.target/arm/armv-sync-op-release.c: New.
      
      From-SVN: r225134
      Matthew Wahab committed
    • re PR target/65697 (__atomic memory barriers not strong enough for __sync builtins) · a96297a2
      2015-06-29  Matthew Wahab  <matthew.wahab@arm.com>
      
      	PR target/65697
      	* config/armc/arm.c (arm_split_compare_and_swap): For ARMv8, replace an
      	initial acquire barrier with final barrier.
      
      From-SVN: r225133
      Matthew Wahab committed
    • re PR target/65697 (__atomic memory barriers not strong enough for __sync builtins) · 6b3a1ce9
      2015-06-29  Matthew Wahab  <matthew.wahab@arm.com>
      
      	PR target/65697
      	* config/armc/arm.c (arm_split_atomic_op): For ARMv8, replace an
      	initial acquire barrier with final barrier.
      
      From-SVN: r225132
      Matthew Wahab committed
    • * sv.po: Update. · e85f8bb8
      From-SVN: r225130
      Joseph Myers committed
    • i386: Implement asm flag outputs · f767f583
              * config/i386/constraints.md (Bf): New constraint.
              * config/i386/i386-c.c (ix86_target_macros): Define
              __GCC_ASM_FLAG_OUTPUTS__.
              * config/i386/i386.c (ix86_md_asm_adjust): Handle =@cc* constraints
              as flags outputs.
              * doc/extend.texi (FlagOutputOperands): Document them.
      testsuite/
              * gcc.target/i386/asm-flag-1.c: New.
              * gcc.target/i386/asm-flag-2.c: New.
              * gcc.target/i386/asm-flag-3.c: New.
              * gcc.target/i386/asm-flag-4.c: New.
              * gcc.target/i386/asm-flag-5.c: New.
      
      From-SVN: r225122
      Richard Henderson committed
    • [AArch64] Generalize TLSLE macro and pattern names · 8fd17b98
      2015-06-29  Jiong Wang  <jiong.wang@arm.com>
      
      	* config/arch64/aarch64.md (UNSPEC_TLSLE): New enumeration.
      	* config/arch64/aarch64.md (tlsle_small): Rename to tlsle and use new
      	unspec name.
      	(tlsle_small_<mode>): Rename to tlsle_<mode> and use new unspec name.
      	* config/arch64/aarch64-protos.h (arch64_symbol_type): Rename
      	SYMBOL_SMALL_TPREL to SYMBOL_TLSLE.
      	(aarch64_symbol_context): Ditto.
      	* config/aarch64/aarch64.c (aarch64_load_symref_appropriately): Ditto
      	and use new pattern name.
      	(aarch64_expand_mov_immediate): Ditto.
      	(aarch64_print_operand): Ditto.
      	(aarch64_classify_tls_symbol): Ditto.
      
      From-SVN: r225121
      Jiong Wang committed
    • fold-const.c (fold_binary_loc): Move X - (X / Y) * Y -> X % Y to ... · f461569a
      	* fold-const.c (fold_binary_loc): Move X - (X / Y) * Y -> X % Y to ...
      	* match.pd: ... pattern here.
      
      Co-Authored-By: Marc Glisse <marc.glisse@inria.fr>
      
      From-SVN: r225120
      Marek Polacek committed
    • Simplify structure try_transform_to_exit_first_loop_alt · fd7b3ef5
      2015-06-29  Tom de Vries  <tom@codesourcery.com>
      
      	* tree-parloops.c (try_transform_to_exit_first_loop_alt): Simplify
      	function structure.
      
      From-SVN: r225119
      Tom de Vries committed
    • invoke.texi (Aarch64 Options, -march): Split out arch and feature description... · 1f8c015b
      2015-06-29  Matthew Wahab  <matthew.wahab@arm.com>
      
      	* doc/invoke.texi (Aarch64 Options, -march): Split out arch and
      	feature description, split out the native option, add a link to
      	the feature documentation, rearrange and slightly rewrite text.
      	(Aarch64 options, -mcpu): Likewise.
      	(Aarch64 options, Feature Modifiers): Add an anchor.  Mention
      	+rdma implies Adv. SIMD.
      
      From-SVN: r225118
      Matthew Wahab committed
    • re PR c/66322 (Linus Torvalds: -Wswitch-bool produces dubious warnings, fails to… · b155cfd9
      re PR c/66322 (Linus Torvalds: -Wswitch-bool produces dubious warnings, fails to notice really bad things)
      
      	PR c/66322
      	* c-common.c (check_case_bounds): Add bool * parameter.  Set
      	OUTSIDE_RANGE_P.
      	(c_add_case_label): Add bool * parameter.  Pass it down to
      	check_case_bounds.
      	(c_do_switch_warnings): Add bool parameters.  Implement -Wswitch-bool
      	warning here.
      	* c-common.h (c_add_case_label, c_do_switch_warnings): Update
      	declarations.
      
      	* c-typeck.c (struct c_switch): Add BOOL_COND_P and OUTSIDE_RANGE_P.
      	(c_start_case): Set BOOL_COND_P and OUTSIDE_RANGE_P.  Don't warn
      	about -Wswitch-bool here.
      	(do_case): Update c_add_case_label call.
      	(c_finish_case): Update c_do_switch_warnings call.
      
      	* decl.c (struct cp_switch): Add OUTSIDE_RANGE_P.
      	(push_switch): Set OUTSIDE_RANGE_P.
      	(pop_switch): Update c_do_switch_warnings call.
      	(finish_case_label): Update c_add_case_label call.
      	* semantics.c (finish_switch_cond): Don't warn about -Wswitch-bool
      	here.
      
      	* function.c (stack_protect_epilogue): Remove a cast to int.
      	* doc/invoke.texi: Update -Wswitch-bool description.
      
      	* c-c++-common/pr60439.c: Add dg-prune-output and add switch cases.
      	* c-c++-common/pr66322.c: New test.
      	* g++.dg/eh/scope1.C: Remove dg-warning.
      
      From-SVN: r225116
      Marek Polacek committed
    • genmatch.c (add_operator): Treat ADDR_EXPR as atom. · 99e943a2
      2015-06-29  Richard Biener  <rguenther@suse.de>
      
      	* genmatch.c (add_operator): Treat ADDR_EXPR as atom.
      	* fold-const.c (fold_binary_loc): Move &A - &B simplification
      	via ptr_difference_const ...
      	* match.pd: ... here.
      	When matching (X ^ Y) == Y also match with swapped operands.
      
      From-SVN: r225115
      Richard Biener committed
    • lto-streamer.h (LTO_major_version): Bump to 5. · 2dcaddb8
      2015-06-29  Richard Biener  <rguenther@suse.de>
      
      	* lto-streamer.h (LTO_major_version): Bump to 5.
      
      From-SVN: r225113
      Richard Biener committed
    • re PR tree-optimization/66677 (ICE: in vect_transform_stmt, at tree-vect-stmts.c:7626) · d90f8440
      2015-06-29  Richard Biener  <rguenther@suse.de>
      
      	PR tree-optimization/66677
      	* tree-vect-stmts.c (vect_transform_stmt): Make assert about
      	STMT_VINFO_VEC_STMT clobbering less strict.
      
      	* gcc.dg/vect/pr66677.c: New testcase.
      
      From-SVN: r225112
      Richard Biener committed
    • Daily bump. · 04ab3d3a
      From-SVN: r225111
      GCC Administrator committed
    • re PR tree-optimization/64130 (vrp: handle non zero constant divided by range cannot be zero.) · c44b2a4f
      gcc/ChangeLog:
      
      2015-06-29  Kugan Vivekanandarajah  <kuganv@linaro.org>
      
      	PR middle-end/64130
      	* tree-vrp.c (extract_range_from_binary_expr_1): For unsigned
      	division, compute max and min when value ranges for dividend and
      	divisor are available.
      
      
      gcc/testsuite/ChangeLog:
      
      2015-06-29  Kugan Vivekanandarajah  <kuganv@linaro.org>
      
      	PR middle-end/64130
      	* gcc.dg/tree-ssa/pr64130.c: New test.
      
      From-SVN: r225108
      Kugan Vivekanandarajah committed
  3. 28 Jun, 2015 4 commits
  4. 27 Jun, 2015 5 commits
  5. 26 Jun, 2015 3 commits